Прецедент (UML)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Прецеде́нт (англ. Use Case), также: вариант использования, сценарий использования — спецификация последовательностей действий (варианты последовательностей и ошибочные последовательности) в Унифицированном языке моделирования (UML), которые может осуществлять система, подсистема или класс, взаимодействуя с внешними актерами (англ. Actors).

Прецеденты были предложены Иваром Якобсоном и значительно популяризированы Алистером Коберном.

Назначение[править | править исходный текст]

Прецеденты служат для документирования функциональных требований к программным системам. Прецедент описывает некоторый целостный фрагмент поведения системы, не вдаваясь при этом в особенности внутренней структуры субъекта. Определение прецедента содержит все свойственные ему виды поведения: основную последовательность, различные варианты стандартного поведения и различные исключительные ситуации с указанием ответной реакции на них. С точки зрения пользователя некоторые из видов поведения выглядят как ошибочные. Однако для системы ошибочная ситуация является одним из вариантов поведения, который должен быть описан и обработан.

Прецедент описывает взаимодействие программной системы с актёрами в виде последовательности сообщений. В понятие актёр входят люди, компьютерные системы и процессы.

При проектировании программной системы производится поиск таких классов для реализации прецедента, которые удачно сочетали бы в себе требуемые роли и не приводящие к излишнему усложнению системы. Реализацию прецедента можно смоделировать в виде одной или нескольких коопераций (реализаций прецедента).

Один и тот же прецедент может быть описан с различной степенью детализации.

В MSF используются аналоги прецедентов — сценарии (англ. Scenario).

Нотация[править | править исходный текст]

На диаграммах прецедентов в UML прецедент отображается в виде эллипса. Внутри эллипса или под ним указывается имя элемента.

К прецедентам в UML применимы следующие виды отношений:

  • Ассоциация (англ. Association) — может указывать на то, что актёр инициирует соответствующий вариант использования.

В том числе между прецедентами:

  • Расширение (англ. Extend) — разновидность отношения зависимости между базовым вариантом использования и его специальным случаем.
  • Включение (англ. Include) — определяет взаимосвязь базового варианта использования с другим вариантом использования, функциональное поведение которого всегда задействуется базовым вариантом использования.
  • Обобщение (англ. Generalization, наследование) — моделирует соответствующую общность ролей.

См. также[править | править исходный текст]

Ссылки[править | править исходный текст]

  1. Лекция: Элементы графической нотации диаграммы вариантов использования
  2. Лекция: Спецификация требований и рекомендации по написанию эффективных вариантов использования
  3. Перечень статей по теме Use-cases сайта BeamTeam.ru