Теоретическая часть
Существует множество технологий и инструментальных средств, с помощью которых можно реализовать в некотором смысле оптимальный проект ИС, начиная с этапа анализа и заканчивая созданием программного кода системы. В большинстве случаев эти технологии предъявляют весьма жесткие требования к процессу разработки и используемым ресурсам, а попытки трансформировать их под конкретные проекты оказываются безуспешными. Эти технологии представлены CASE-средствами верхнего уровня или CASE-средствами полного жизненного цикла (upper CASE tools или fulllife-cycle CASE tools). Они не позволяют оптимизировать деятельность на уровне отдельных элементов проекта, и, как следствие, многие разработчики перешли на так называемые CASE-средства нижнего уровня (lower CASE tools). Однако они столкнулись с новой проблемой — проблемой организации взаимодействия между различными командами, реализующими проект.
Унифицированный язык объектно-ориентированного моделирования UnifiedModelingLanguage (UML) явился средством достижения компромисса между этими подходами. Существует достаточное количество инструментальных средств, поддерживающих с помощью UML жизненный цикл информационных систем, и, одновременно, UML является достаточно гибким для настройки и поддержки специфики деятельности различных команд разработчиков.
Создание UML началось в октябре 1994 г., когда Джим Рамбо и ГрадиБуч из RationalSoftwareCorporation стали работать над объединением своих методов OMT и Booch. В настоящее время консорциум пользователей UML Partners включает в себя представителей таких грандов информационных технологий, как RationalSoftware, Microsoft, IBM, Hewlett-Packard, Oracle, DEC, Unisys, IntelliCorp, PlatinumTechnology.
UML представляет собой объектно-ориентированный язык моделирования, обладающий следующими основными характеристиками:
- является языком визуального моделирования, который обеспечивает разработку репрезентативных моделей для организации взаимодействия заказчика и разработчика ИС, различных групп разработчиков ИС;
- содержит механизмы расширения и специализации базовых концепций языка.
UML — это стандартная нотация визуального моделирования программных систем, принятая консорциумом ObjectManagingGroup (OMG) осенью 1997 г., и на сегодняшний день она поддерживается многими объектно-ориентированными CASE-продуктами.
UML включает внутренний набор средств моделирования, которые сейчас приняты во многих методах и средствах моделирования. Эти концепции необходимы в большинстве прикладных задач, хотя не каждая концепция необходима в каждой части каждого приложения. Пользователям языка предоставлены возможности:
- строить модели на основе средств ядра, без использования механизмов расширения для большинства типовых приложений;
- добавлять при необходимости новые элементы и условные обозначения, если они не входят в ядро, или специализировать компоненты, систему условных обозначений (нотацию) и ограничения для конкретных предметных областей.
Рисунок 1 - Интегрированная модель сложной системы в нотации языка UML
Стандарт UML предлагает следующий набор диаграмм для моделирования:
· диаграммы вариантов использования (usecasediagrams) – для моделирования бизнес-процессов организации и требований к создаваемой системе);
· диаграммы классов (classdiagrams) – для моделирования статической структуры классов системы и связей между ними;
· диаграммы поведения системы (behaviordiagrams):
o диаграммы взаимодействия (interaction diagrams):
§ диаграммы последовательности (sequence diagrams) и
§ кооперативные диаграммы (collaborationdiagrams) – для моделирования процесса обмена сообщениями между объектами;
o диаграммы состояний (statechartdiagrams) – для моделирования поведения объектов системы при переходе из одного состояния в другое;
o диаграммы деятельностей (activitydiagrams) – для моделирования поведения системы в рамках различных вариантов использования, или моделирования деятельностей;
· диаграммы реализации (implementationdiagrams):
o диаграммы компонентов (componentdiagrams) – для моделирования иерархии компонентов (подсистем) системы;
o диаграммы развертывания (deploymentdiagrams) – для моделирования физической архитектуры системы.
Диаграммы вариантов использования
Понятие варианта использования (usecase) впервые ввел Ивар Якобсон и придал ему такую значимость, что в настоящее время вариант использования превратился в основной элемент разработки и планирования проекта.
Вариант использования представляет собой последовательность действий (транзакций), выполняемых системой в ответ на событие, инициируемое некоторым внешним объектом (действующим лицом). Вариант использования описывает типичное взаимодействие между пользователем и системой. В простейшем случае вариант использования определяется в процессе обсуждения с пользователем тех функций, которые он хотел бы реализовать. На языке UML вариант использования изображают следующим образом:
Рисунок 2 - Вариант использования
Действующее лицо (actor) – это роль, которую пользователь играет по отношению к системе. Действующие лица представляют собой роли, а не конкретных людей или наименования работ. Несмотря на то, что на диаграммах вариантов использования они изображаются в виде стилизованных человеческих фигурок, действующее лицо может также быть внешней системой, которой необходима некоторая информация от данной системы. Показывать на диаграмме действующих лиц следует только в том случае, когда им действительно необходимы некоторые варианты использования. На языке UML действующие лица представляют в виде фигур:
Рисунок 3 - Действующее лицо (актер)
Действующие лица делятся на три основных типа:
- пользователи;
- системы;
- другие системы, взаимодействующие с данной;
- время.
Время становится действующим лицом, если от него зависит запуск каких-либо событий в системе.
Связи между вариантами использования и действующими лицами
В языке UML на диаграммах вариантов использования поддерживается несколько типов связей между элементами диаграммы. Это связи коммуникации (communication), включения (include), расширения (extend) и обобщения (generalization).
Связь коммуникации – это связь между вариантом использования и действующим лицом. На языке UML связи коммуникации показывают с помощью однонаправленной ассоциации (сплошной линии).
Рисунок 4 - Пример связи коммуникации
Связь включения применяется в тех ситуациях, когда имеется какой-либо фрагмент поведения системы, который повторяется более чем в одном варианте использования. С помощью таких связей обычно моделируют многократно используемую функциональность.
Связь расширения применяется при описании изменений в нормальном поведении системы. Она позволяет варианту использования только при необходимости использовать функциональные возможности другого.
Рисунок 5 - Пример связи включения и расширения
С помощью связи обобщения показывают, что у нескольких действующих лиц имеются общие черты.
Рисунок 6 - Пример связи обобщения
Дата добавления: 2021-07-22; просмотров: 350;