Прецедент (UML)
Материал из Википедии — свободной энциклопедии
Прецеде́нт (англ. Use Case, а также: вариант использования, сценарий использования) — спецификация последовательности действий (варианты последовательности), которые может осуществлять система, подсистема или класс, взаимодействуя с внешними актёрами (англ. Actors).
Прецеденты были предложены Иваром Якобсоном и значительно популяризированы Алистером Коберном.
[править] Назначение
Прецеденты служат для документирования функциональных требований к программным системам. Прецедент описывает некоторый целостный фрагмент поведения системы, не вдаваясь, при этом, в особенности внутренней структуры субъекта. Определение прецедента содержит все свойственные ему виды поведения: основную последовательность, различные варианты стандартного поведения и возможные при этом исключительные ситуации с указанием ответной реакции на них. С точки зрения пользователя, некоторые из видов поведения выглядят как ошибочные. Однако для системы ошибочная ситуация является одним из вариантов поведения, который должен быть описан и обработан.
Прецедент описывает взаимодействие программной системы с актёрами, имеющее вид последовательности сообщений. В понятие актёр входят люди, компьютерные системы и процессы.
Задачей проектирования программной системы является поиск таких классов для реализации прецедента, которые удачно сочетали бы в себе нужные роли и не создавали при этом излишних сложностей. Реализацию прецедента можно смоделировать в виде одной или нескольких коопераций. Кооперация — это реализация прецедента.
В MSF используются аналоги прецедентов — сценарии (англ. Scenario).
[править] Нотация
На диаграммах прецедентов в UML прецедент отображается в виде эллипса. Внутри эллипса или под ним указывается имя элемента.
К прецедентам в UML применимы следующие виды отношений:
- Ассоциация (англ. Association)
- Расширить (англ. Extend)
- Включить (англ. Include)
- Обобщение (англ. Generalization, наследование)