Работа с прецедентами


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

Поведение прецедента описывается потоком событий. Начальное описание выполняется в текстовой форме, прозрачной для пользователя системы. В потоке событий выделяют:

● основной поток и альтернативные потоки поведения;

● как и когда стартует и заканчивается прецедент;

● когда прецедент взаимодействует с актерами;

● какими данными обмениваются актер и система.

Для уточнения и формализации потоков событий используют диаграммы последовательности. Обычно одна диаграмма последовательности определяет главный поток в прецеденте, а другие диаграммы — потоки исключений.

В общем случае один прецедент описывает набор последовательностей, в котором каждая последовательность представляет возможный поток событий. Каждая последовательность называется сценарием. Сценарий — конкретная последовательность действий, которая иллюстрирует поведение. Сценарии являются для прецедента почти тем же, чем являются экземпляры для класса. Говорят, что сценарий — это экземпляр прецедента.

Спецификация прецедента

Спецификация прецедента — основной источник информации для выполнения анализа и проектирования системы. Очень важно, чтобы содержание спецификации было представлено в полной и конструктивной форме. В общем случае спецификация включает

● главный поток,

● подпотоки

В качестве шаблона спецификации представим описание элемента Use Case «Покупать авиабилет» для модели информационной системы авиакассы (рис. 3.7).

Рисунок 3.7. Диаграмма прецедентов для модели информационной системы авиакассы

Предусловие: перед началом этого прецедента должен быть выполнен прецедент «Заполнить базу данных авиарейсов».

Главный поток.

Этот прецедент начинается, когда покупатель регистрируется в системе и вводит свой пароль. Система проверяет, правилен ли пароль (Е-1), и предлагает покупателю выбрать одно из действий: СОЗДАТЬ, УДАЛИТЬ, ПРОВЕРИТЬ, ВЫПОЛНИТЬ, ВЫХОД.

1. Если выбрано действие СОЗДАТЬ, выполняется подпоток S-1: создать заказ авиабилета.

2. Если выбрано действие УДАЛИТЬ, выполняется подпоток S-2: удалить заказ авиабилета.

3. Если выбрано действие ПРОВЕРИТЬ, выполняется подпоток S-3: проверить заказ авиабилета.

4. Если выбрано действие ВЫПОЛНИТЬ, выполняется подпоток S-4: реализовать заказ авиабилета.

5. Если выбрано действие ВЫХОД, прецедентзаканчивается.

Подпотоки

S-1: создать заказ авиабилета. Система отображает диалоговое окно, содержащее поля для пункта назначения и даты полета. Покупатель вводит пункт назначения и дату полета (Е-2). Система отображает параметры авиарейсов (Е-3). Покупатель выбирает авиарейс. Система связывает покупателя с выбранным авиарейсом (Е-4). Возврат к началу прецедент.

S-2: удалить заказ авиабилета. Система отображает параметры заказа. Покупатель подтверждает решение о ликвидации заказа (Е-5). Система удаляет связь с покупателем (Е-6). Возврат к началу прецедент.

S-3: проверить заказ авиабилета. Система выводит (Е-7) и отображает параметры заказа авиабилета: номер рейса, пункт назначения, дата, время, место, цену. Когда покупатель указывает, что он закончил проверку, выполняется возврат к началу прецедент.

S-4: реализовать заказ авиабилета. Система запрашивает параметры кредитной карты покупателя. Покупатель вводит параметры своей кредитной карты (Е-8). Возврат к началу прецедент.

Альтернативные потоки

Е-1: введен неправильный ID-номер покупателя. Покупатель может повторить ввод ID-номера или прекратить прецедент.

Е-2: введены неправильные пункт назначения/дата полета. Покупатель может повторить ввод пункта назначения/даты полета или прекратить прецедент.

Е-3: нет подходящих авиарейсов. Покупатель информируется, что в данное время такой полет невозможен. Возврат к началу прецедент.

Е-4: не может быть создана связь между покупателем и авиарейсом.Информация сохраняется, система создаст эту связь позже. Прецедент продолжается.

Е-5: введен неправильный номер заказа. Покупатель может повторить ввод правильного номера заказа или прекратить прецедент.

Е-6: не может быть удалена связь между покупателем и авиарейсом.Информация сохраняется, система будет удалять эту связь позже. Прецедент продолжается.

Е-7: система не может вывести информацию заказа. Возврат к началу прецедент.

Е-8: некорректные параметры кредитной карты. Покупатель может повторить ввод параметров карты или прекратить прецедент.

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

Выводы:

1 Отношение «включает» применяется, если несколько прецедентов имеют общее поведение. Цель: устранить повторения, ликвидировать избыточность.

2 Кроме того, отношение «включает» часто используют для ограничения сложности большого прецедента.

3 Отношение «расширяет» применяется, когда описывается вариация, дополняющая нормальное поведение.



Дата добавления: 2021-05-28; просмотров: 346;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.01 сек.