Практическая работа 1. Диаграммы прецедентов
Теория
Введение
В современной практике проектирования сложных систем и, в частности программного обеспечения, в настоящее время стали широко применяться визуальные модели, которые представляют собой средства для описания, проектирования и документирования архитектуры системы. Таким образом, модели строятся для того, чтобы понять и осмыслить структуру и поведение будущей системы, облегчить управление процессом ее создания и уменьшить возможный риск, а также документировать принимаемые проектные решения.
Одним из факторов, от которых зависит успех проекта, является наличие строгого стандартного языка моделирования. Таким языком является универсальный язык моделирования UML (Unified Modeling Language). Построение моделей и диаграмм UML выполняется с помощью различных программных систем автоматизации проектирования, так называемых CASE –средств (Computer Aided Software Engineering). В качестве такого средства все часто используется Rational Rose.
Средства UML
Универсальный язык моделирования UML содержит стандартный набор диаграмм и нотаций самых разнообразных видов. Стандарт UML версии 1.1, принятый OMG в 1997 году, предлагает следующий набор диаграмм для моделирования:
· диаграммы вариантов использования или диаграммы прецедентов (use case diagrams), используемые для моделирования бизнес-процессов организации и требований к создаваемой системе;
· диаграммы классов (class diagrams) – для моделирования статической структуры классов системы и связей между ними;
· диаграммы поведения системы (behavior diagrams):
o диаграммы взаимодействия (interaction diagrams);
- диаграммы последовательности (sequence diagrams);
- кооперативные диаграммы (collaboration diagrams) – для моделирования процесса обмена сообщениями между объектами;
o диаграммы состояний (statechart diagrams) – для моделирования поведения объектов системы при переходе из одного состояния в другое;
o диаграммы деятельности (activity diagrams) - для моделирования поведения системы в рамках различных вариантов использования, или моделирования деятельности;
· диаграммы реализации (implementation diagrams);
o диаграммы компонентов (component diagrams) – для моделирования иерархии компонентов (подсистем) системы;
o диаграммы размещения (deployment diagrams) – для моделирования физической архитектуры системы.
Запуск Rational Rose(StarUML):
Откроется диалоговое окно для создания новой модели с тремя вкладками:
- New (Approaches) –новая модель (подходы);
- Existing(Open Files) – существующая модель с последующим выбором файла модели из папки на диске;
- Recent – последние используемые модели с последующим выбором из списка нужной модели.
Для создания новой модели нажать клавишу Cancel. Откроется окно экрана интерфейса Rational Rose (StarUML) со следующими элементами:
- браузер (browser) объектов модели используется для быстрой навигации по модели;
- окно документации (documentation window) используется для работы с текстовым описанием элементов модели;
- панели инструментов (toolbars) и строка меню – в верхней части экрана;
- окно диаграммы (diagram window) с панелью элементов, которые можно наносить на диаграмму – для просмотра и редактирования одной или нескольких диаграмм UML.
Браузер– это иерархическая структура, позволяющая осуществлять навигацию по модели. С помощью браузера можно:
- добавлять к модели элементы;
- просматривать существующие элементы модели;
- просматривать существующие связи между элементами модели;
- перемещать элементы модели;
- переименовывать элементы модели;
- добавлять элементы модели на диаграмму;
- связывать элемент с файлом или адресом Интернета;
- группировать элементы в пакеты;
- работать с детализированной спецификацией элемента;
- открывать диаграмму.
Браузер поддерживает четыре представления (view):
- вариантов использования – прецедентов (папка, или пакет Use Case View);
- компонентов (папка, или пакет Component View);
- размещения (папка, или пакет Deployment View);
- логическое представление (папка, или пакет Logical View).
Представление вариантов использования содержит всех актеров, все прецеденты и диаграммы для конкретной системы.
Логическое представление концентрируется на том, как система будет реализовывать поведение, описанное в вариантах использования. Оно дает подробную картину составных частей системы и описывает взаимодействие этих частей. Логическое представление включает, помимо прочего, конкретные требуемые классы, диаграммы классов и диаграммы состояний. С их помощью конструируется детальный проект создаваемой системы. Логическое представление содержит:
- Классы;
- Диаграммы классов. Как правило, для описания системы используется несколько диаграмм классов, каждая из которых отображает некоторое подмножество всех классов системы.
- Диаграммы взаимодействия, применяемые для отображения объектов, участвующих в одном потоке событий прецедента.
- Диаграммы состояний.
- Пакеты, являющиеся группами взаимосвязанных классов.
Представление компонентов содержит:
- Компоненты, являющиеся физическими модулями системы;
- Диаграммы компонентов;
- Пакеты, являющиеся группами связанных компонентов.
Представление размещения соответствует физическому размещению системы, которое может отличаться от ее логической архитектуры. Представление размещения может содержать:
- Процессы, являющиеся потоками, исполняемыми в отведенной для них области памяти.
- Процессоры, включающие любые компьютеры, способные обрабатывать данные. Любой процесс выполняется на одном или нескольких процессорах.
- Устройства, т.е. любая аппаратура, не способная обрабатывать данные (терминалы ввода-вывода, принтеры и пр.).
- Диаграмма размещения.
Диаграммы вариантов использования
(диаграммы прецедентов – Use Case)
Прецедент (вариант использования) – это последовательность действий, выполняемых системой в ответ на событие, инициируемое некоторым внешним воздействием (действующим лицом – актером). Прецедент описывает типичное взаимодействие между пользователем и системой.
Актер (действующее лицо) – это роль, которую пользователь играет по отношению к системе. Несмотря на то, что актер изображается на диаграмме в виде стилизованной человеческой фигурки, актером может быть внешняя система (подсистема), которой необходима информация от данной системы, или которая сообщает некоторую информацию данной системе. Таким образом, актерами могут быть:
- пользователи системы;
- другие системы, взаимодействующие с данной;
- время, если от него зависит запуск каких-либо событий в системе.
Таким образом, прецеденты (варианты использования) – это функции, выполняемые системой, а актеры (действующие лица) – это заинтересованные лица по отношению к создаваемой системе.
В языке UML для прецедентов и актеров поддерживается несколько типов связей. Это - связи коммуникации (communication), включения (include), расширения (extend) и обобщения (generalization).
Связь коммуникации (communication) –однонаправленная обычная связь. Направление стрелки указывает, кто инициирует коммуникацию.
Связь включения (include )– применяется тогда, когда имеется какой-либо фрагмент поведения системы, который повторяется более чем в одном прецеденте (например, прецедент аутентифицировать пользователя). Направление связи в этом случае указывается от базового прецедента к используемому.
Связь расширения (extend ) – применяется при описании
- изменений в нормальном поведении системы;
- дополнительных режимах;
- режимов, которые запускаются только при определенных условиях, например, сигнал тревоги;
- альтернативных потоков, которые запускаются по выбору актера.
Связь обобщения –показывает, что у нескольких актеров имеются общие черты. Например, клиенты могут быть корпоративные и индивидуальные.
Практическая работа 1. Диаграммы прецедентов.
Создание диаграммы прецедентов