Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Uml Book (Rus).doc
Скачиваний:
15
Добавлен:
11.08.2019
Размер:
58.74 Mб
Скачать

Термины и понятия

Прецедентом (Use case) называется описание множества последовательностей действий (включая варианты), выполняемых системой для того, чтобы актер мог получить определенный результат. Графически прецедент изображается в виде эллипса. Нотация прецедента похожа на нотацию кооперации (см. главу 27).

Имена

Любой прецедент должен иметь имя, отличающее его от других прецедентов. Оно должно быть уникально внутри объемлющего пакета (см. главу 12). Имя пре­цедента представляет собой текстовую строку. Взятое само по себе, оно называет­ся простым именем. К составному имени спереди добавлено имя пакета, в кото­ром он находится. Обычно при изображении прецедента указывают только его имя, как показано на рис. 16.2.

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

Прецеденты и актеры

Актер представляет собой связное множество ролей, которые пользователи прецедентов исполняют во время взаимодействия с ними. Обычно актер представ­ляет роль, которую в данной системе играет человек, аппаратное устройство или даже другая система. Например, если вы работаете в банке, то можете играть роль СотрудникКредитногоОтдела. Если в этом банке у вас имеется счет, вы играете роль Клиента. Таким образом, экземпляр актера представляет собой конкретную личность, взаимодействующую с системой определенным обра­зом. Хотя вы и используете актеров в своих моделях, они не являются частью системы, так как существу­ют вне ее.

Как показано на рис. 16.3, актеров изображают в виде человеческих фигурок. Можно определить общие типы актеров (например, Клиент) и затем специализировать их (например, создав разновид­ность КоммерческийКлиент) с помощью отноше­ний обобщения (см. главы 5 и 10).

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

Актеров можно связывать с прецедентами только отношениями ассоциации (см. главы 5 и 10). Ассоциация между актером и прецедентом показывает, что они обща­ются друг с другом, возможно, посылая или принимая сообщения (см. главу 15).

Прецеденты и поток событий

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

Можно специфицировать поведение прецедента путем описания потока собы­тий в текстовой форме - в виде, понятном для постороннего читателя. В описание необходимо включить указание на то, как и когда прецедент начинается и закан­чивается, когда он взаимодействует с актерами и какими объектами они обмени­ваются. Важно обозначить также основной и альтернативный потоки поведения системы.

Например, в контексте банкомата можно было бы следующим образом описать прецедент ValidateUser (ПроверитьПользователя).

Основной поток событий. Прецедент начинается, когда система запрашивает у клиента его персональный идентификационный номер (PIN). Клиент (Customer) может ввести его с клавиатуры. Завершается ввод нажатием клавиши Enter. Пос­ле этого система проверяет введенный PIN и, если он правильный, подтверждает ввод. На этом прецедент заканчивается.

Исключительный поток событий. Клиент может прекратить транзакцию в лю­бой момент, нажав клавишу Cancel. Это действие начинает прецедент заново. Никаких изменений на счету клиента на производится.

Исключительный поток событий. Клиент может в любой момент до нажатия клавиши Enter стереть свой PIN и ввести новый.

Исключительный поток событий. Если клиент ввел неправильный PIN, преце­дент запускается сначала. Если это происходит три раза подряд, система отменяет всю транзакцию и не позволяет данному клиенту снова начать работу с банкома­том в течение 60 секунд.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]