Файл: РАБОТА 4 Диаграмма прецедентов.docx

ВУЗ: Не указан

Категория: Решение задач

Дисциплина: Проектирование информационных систем

Добавлен: 25.10.2018

Просмотров: 624

Скачиваний: 5

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

РАБОТА 3. РАЗРАБОТКА ДИАГРАММЫ ПРЕЦЕДЕНТОВ

Диаграммы классов позволяют представлять внутреннее устрой­ство модели предметной области проекта разрабатываемой системы [3]. Однако для построения диаграмм классов необходимо общее понима­ние возможных действий, выполняемых системой, также необходимо понимание того, какие исполнители и внешние системы взаимодейст­вуют разрабатываемой системой. Кроме того, для выполнения грамот­ного моделирования предметной области проекта важно определить границы системы и действия, попадающие в эти границы.

    1. Понятия актёра и прецедента

Язык UML предоставляет удобное средство для моделирования действий, взаимосвязей между ними, исполнителей и других важных элементов проектируемой системы с помощью диаграмм прецедентов [1]. Для понимания диаграмм прецедентов важно определить два поня­тия: исполнитель (actor, актёр) и прецедент.

В рамках диаграммы прецедентов исполнитель описывает один из двух объектов реального мира:

  • Пользователей системы, конкретнее роль, которую испол­няет данный пользователь или пользователи по отношению к разраба­тываемой системе.

  • Внешнюю систему или сущность, взаимодействующую с разрабатываемой системой, но располагающуюся за её пределами.

Графически исполнитель или актёр обозначается в виде схема­тичной фигуры человека, пример которой представлен на рис. 5.1. Ка­ждый актёр обладает текстовым идентификатором, размещаемым на диаграмме непосредственно под фигурой. В качестве идентификатора актёра следует использовать имя роли, исполняемой данным актёром, но не конкретное имя человека, исполняющего эту роль. При этом важ­но помнить, что один и тот же человек (пользователь) по отношению к системе может исполнять разные роли в различные моменты времени.

о

Актер 1



Рис. 5.1 Графическое обозначение актёра на диаграмме прецедентов.

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

Графически прецедент обозначается в виде эллипса с идентифи­катором прецедента, размещённом внутри этого эллипса. Пример гра­фического обозначения прецедента представлен на рис. 5.2.




Рис. 5.2. Графическое обозначение прецедента.




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

Для получения диаграммы прецедентов необходимо графически связать актёров и прецеденты с помощью связи, обозначаемой, как ас­социация. Такая связь обозначается сплошной тонкой линией и связы­вает актёра и прецедент, в котором он участвует. Отношение ассоциа­ции указывает, какую конкретную роль играет актёр при взаимодейст­вии с экземпляром прецедента. Отношение ассоциации может иметь дополнительные условные обозначения, такие, как имя и кратность, применимые к каждому из концов линии ассоциации. Пример связи ас­социации между актёром и прецедентом представлен на рис. 5.3.

Рис. 5.3. Пример ассоциации актёра и прецедента на диаграмме прецедентов.



Кратность ассоциации определяет возможное количество элемен­тов, участвующих в данной связи с каждой из её сторон. Для кратности ассоциации в рамках диаграммы прецедентов применимы следующие значения:

1 - только один элемент.

  • - любое количество элементов от 0 до бесконечности.

  1. .1 - от нуля до одного элементов.

  1. 1 - только один элемент.

  1. * - любое количество элементов от 1 до бесконечности.


    1. Отношения между прецедентами

Диаграмма прецедентов предназначена не только для выявления действий, выполняемых разрабатываемой системой, но и для упроще­ния формируемых прецедентов путём выделения общих действий раз­личных прецедентов и выделения их в отдельные прецеденты с добав­лением связей между прецедентами. Такое использование диаграммы прецедентов похоже на структурирование алгоритма за счёт разбиения его на подпрограммы.

Для оптимизации прецедентов в языке UML предусмотрены три связи между прецедентами: включение, расширение и наследование (обобщение).

Отношение включения используется в том случае, если один пре­цедент явно включает в себя ход действий другого прецедента. Это от­ношение в Microsoft Visio обозначается сплошной линией с треуголь­ной стрелкой и стереотипом <<uses>>. При этом стрелка направляется к включаемому прецеденту от базового прецедента, т.е. прецедента, в который включается включаемый прецедент. Отношение включения предназначено для выделения поведения, наблюдаемого во множестве прецедентов.

Отношение расширения практически аналогично отношению включения, но отличается тем, что базовый прецедент неявно включает в себя поведение другого прецедента в одной или нескольких указан­ных точках, называемых точками расширения. Это отношение в Microsoft Visio обозначается сплошной линией с треугольной стрелкой и стереотипом <<extends>>. При этом стрелка направляется к включае­мому прецеденту от базового прецедента, т.е. прецедента, в который включается включаемый прецедент. Отношения расширения часто ис­пользуются для описания поведения системы при выполнении или не выполнении какого-либо условия.


Отношение наследования прецедентов полностью аналогично на­следованию для классов. При этом прецедент-предок определяет пове­дение, наследуемое прецедентами-потомками. Графическое представ­ление отношения обобщения прецедентов аналогично графическому представлению отношения обобщения для классов.

Следует отметить, что отношение обобщения (наследования) применимо не только для классов и прецедентов, но и для актёров.

    1. Обозначение границ разрабатываемой системы

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

Для отделения прецедентов, относящихся к разрабатываемой сис­теме, в UML предусмотрен элемент - система, обозначаемый прямо­угольником [1]. Пример обозначения границ системы представлен на рис. 5.4. Здесь в состав разрабатываемой системы входят прецеденты «Сценарий выполнения 1-4», в то время как прецеденты «Сценарий выполнения 5-6» не входят в состав разрабатываемой системы. Кроме того, видно, что Актёр 1 взаимодействует с прецедентами «Сценарий выполнения 1» и «Сценарий выполнения 5».


Система

Рис. 5.4. Обозначение границ разрабатываемой системы на диаграмме прецедентов.



    1. Создание диаграммы прецедентов

Диаграмма прецедентов в среде Microsoft Visio обозначается, как «Схема сценариев выполнения». Для создания такой диаграммы следу­ет использовать пункт «Создать/Схема сценариев выполнения» контек­стного меню пакетов и подсистем, отображаемых в окне «Проводник по моделям». В результате выбора этого пункта меню создаётся новая страница документа.

Добавление фигур, предназначенных для создания диаграмм пре­цедентов допустимо и на страницы структурных схем Microsoft Visio,


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

    1. Используемые фигуры

Фигура «Актер» представляет одну или несколько

обобщённых ролей внешнего по отношению к проектируемой системе объекта. Таким образом, один физический объект может быть пред­ставлен несколькими актёрами.

Для присвоения актёру имени следует воспользоваться окном свойств его фигуры или в окне «Проводник по моделям». Для подклю­чения актёра к прецедентам следует использовать фигуру «Сообще­ние».


Фигура «Актёр», как и класс, обладает атрибутами и операциями, а также поддерживает наследование. Иными словами, актёры могут на­следовать друг друга. Атрибуты и операции актёра задаются в диалого­вом окне его свойств или окне «Проводник по моделям».

Фигура «Прецедент» обозначает множество событий, происходящих при использовании той или иной системы актёром для достижения какой-либо цели. Как правило, прецедент представляет со­вокупность или последовательность выполняемых процедур. В среде Microsoft Visio фигура «Прецедент» обозначается, как фигура «Сцена­рий выполнения».

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

Атрибуты, операции и точки расширения прецедента задаются в диалоговом окне его свойств.

|_ Сообщение

Фигура «Связь ассоциации» предназначена для связы­вания актёра и прецедента. В среде Microsoft Visio фигура «Связь ассо­циации» обозначается, как фигура «Сообщение».

Данная фигура, как линия, имеет два окончания, которые можно именовать и указывать рядом с ними кратность связи. Для настройки названий окончаний фигуры «Связь ассоциации» следует использовать её окно свойств.

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

. ^

Фигура «Связь включения» предназначена для ооо- значения связи между двумя прецедентами, при которой один преце­дент (базовый) обязательно включает в себя поведение, определенное другим прецедентом. Стрелка фигуры «Связь включения» указывает на базовый прецедент. В среде Microsoft Visio фигура «Связь включения» обозначается, как фигура «Использование».

^

Фигура «Связь расширения» предназначена для ооо- значения связи между двумя прецедентами, при которой один преце­дент (базовый) может включать в себя поведение, определенное другим прецедентом. Стрелка фигуры «Связь расширения» указывает на базо­вый прецедент. В среде Microsoft Visio фигура «Связь расширения» обозначается, как фигура «Расширение».


Фигура «Граница системы» обозначает прецеденты, реализуемые в рамках разрабатываемой системы. Данная фигура пред­ставляет собой прямоугольник, внутри которого размещены прецеден­ты, входящие в состав разрабатываемой системы. Для задания названия системы следует использовать двойной клик мыши по данной фигуре или клавишу F2.

Примечание Перемещение границы системы не приводит к одновременному пе­ремещению прецедентов, размещённых внутри этой фигуры.

Фигура «Ограничение» определяет условия и выска­зывания, необходимые для выполнения для того, чтобы система была признана правильной. При использовании данной фигуры применяются ограничения, выражаемые в виде текста, заключенного в фигурные скобки ({ }).

Ограничение должно быть связано с одним или с несколькими элементами, например, с прецедентами. Для организации связи между ограничением и элементом перетащите мышью управляющий маркер фигуры «Ограничение» и присоедините его к точке соединения на дру­гом элементе.

Для фигуры «Ограничение» в среде Microsoft Visio по умолчанию применимы следующие стереотипы, поясняющие назначение данного ограничения: invariant (инвариантное к началу или завершению выпол­нения), precondition (ограничение начала выполнения) и postcondition (ограничение завершения выполнения).

Стереотип, имя и тело ограничения задаются в диалоговом окне его свойств. Обозначение стереотипа, имени и внешней границы фигу­ры «Ограничение» может быть отключено в диалоговом окне «Свойст­ва ограничения UML», вызываемого из контекстного меню данной фи­гуры.

    1. Задание

  1. Создание новой диаграммы прецедентов. Добавьте в ос­новной пакет новую диаграмму прецедентов и обозначьте страницу, соответствующую данной диаграмме «Прецеденты системы».

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

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

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

  5. Определение границ разрабатываемой системы. Помес­тите на диаграмме прецедентов фигуру границы системы и назначьте для этой границы наиболее подходящее название. Определите преце­денты, относящиеся к разрабатываемой системе и перенесите внутрь границы системы.