КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Визуализация взаимосвязей прецедентовВыше рассмотрены два типа взаимоотношений между прецедентами. Первый, включение, позволяет повторно использовать шаги одного прецедента в другом. Второй, расширение, позволяет создавать новый прецедент путем добавления некоторых шагов в существующий прецедент. Существуют еще два способа взаимосвязи — обобщение (generalization) и группировка (grouping). Как и в случае классов, обобщение означает наследование одного прецедента другим. Группировка — простой способ создания набора прецедентов. Включение Рассмотрим прецеденты Заправка автомата и Сбор денег. Они оба начинаются с разблокирования и открытия автомата и заканчиваются закрытием и блокировкой. Прецедент Проникновение внутрь включает первые два шага, а Выход наружу — два остальных. Прецеденты Заправка автомата и Сбор денег включают в себя прецеденты Проникновение внутрь и Выход наружу. Чтобы графически отобразить включение прецедентов, используется обозначение зависимости между классами в виде соединительной пунктирной линии со стрелкой, указывающей на тот класс, от которого зависит другой. Прямо над линией вписывается стереотип — слово «включает» в двойных прямых кавычках. На рис. 4 показано отношение включения в модели прецедентов для автомата по продаже лимонада. Нужно отметить, что включенный прецедент никогда не используется самостоятельно. Он лишь является частью включающего его прецедента. В текстовом описании указывается последовательность шагов и отмечаются включенные прецеденты. Первый шаг прецедента Заправка автомата — это реализация включенного прецедента (Проникновение внутрь). Рис. 4. Модель прецедентов для автомата по продаже лимонада с включением Расширение Прецедент Заправка автомата из рассмотренного примера может стать основой для другого прецедента — Заправка с учетом спроса. В отличие от равномерного пополнения запасов всех сортов сиропа, этот прецедент позволяет пополнять автомат с учетом спроса. Новый прецедент будет расширять исходный, называемый также базовым, за счет добавления новых шагов. Расширение может происходить только в заданных точках последовательности шагов базового прецедента.Такие места называются точками расширения. В прецеденте Заправка автомата новые шаги (поставки соответственно спросу) могут добавляться, когда специалист по заправке открыл автомат и приступает к наполнению отсеков для разных марок лимонада. Для этого примера точка расширения будет "наполнять отсеки". Подобно включению, расширение отображается линией зависимости (пунктир со стрелкой) со стереотипом «расширяет». Внутри базового прецедента под его именем располагается точка расширения. На рис. 5 показан пример расширения для прецедентов Заправка автомата и Заправка с учетом спроса, а также Пример включения для прецедентов Заправка автомата и Выход наружу. Рис. 5. Диаграмма прецедентов с отношениями включения и расширения Обобщение Прецеденты, подобно классам, могут наследовать друг друга. При наследовании дочерний прецедент наследует последовательность действий (behavior) от базового и добавляет свою собственную очередность шагов. Дочерний прецедент можно применить там, где применяется родительский. Возвращаясь к примеру автомата по продаже лимонада, можно описать прецедент Покупка стакана лимонада, который наследует свойства прецедента Покупка лимонада. В дочерний прецедент можно добавить новые действия, такие как добавить лед и смешать разные марки лимонада. Обобщение прецедентов, подобно обобщению классов, отображается на диаграмме сплошной линией с не закрашенным треугольником, указывающим на родителя (рис. 6). Рис. 6. Один прецедент может наследовать смысловое значение и последовательность действий другого Отношение обобщения может существовать также и между исполнителями. Специалиста по заправке автомата и инкассатора можно считать представителями поставщика. В терминах модели Специалист по заправке и Инкассатор являются дочерними объектами по отношению к объекту Представитель поставщика, что отображено на рис. 7. Рис. 7. Подобно классам и прецедентам, исполнители могут находиться во взаимоотношениях обобщения Группировка Иногда диаграммы прецедентов получаются очень сложными, и возникает необходимость сгруппировать изображенные на них прецеденты. Такое может произойти, если система состоит из множества подсистем, или при интервьюировании пользователей во время формулировки требований к системе возникает потребность в систематизации требований тех из них, которые определяются прецедентами. Наиболее подходящим способом организации в этих случаях является группировка связанных прецедентов в пакеты. Вспомним, что пакет изображается в виде папки с закладкой. Сгруппированные прецеденты размещаются внутри этой папки.
|