OOAD - модель анализа UML
Унифицированный язык моделирования (UML) - это графический язык для OOAD, который предоставляет стандартный способ написания проекта программной системы. Это помогает визуализировать, определять, конструировать и документировать артефакты объектно-ориентированной системы. Он используется для изображения структур и взаимосвязей в сложной системе.
Краткая история
Он был разработан в 1990-х годах как объединение нескольких методов, в первую очередь техники OOAD Грэди Буча, OMT (метод объектного моделирования) Джеймса Рамбо и OOSE (объектно-ориентированное программное обеспечение) Ивара Якобсона. UML попытался стандартизировать семантические модели, синтаксические обозначения и диаграммы OOAD.
Системы и модели в UML
System- Набор элементов, организованных для достижения определенных целей, образуют систему. Системы часто делятся на подсистемы и описываются набором моделей.
Model - Модель - это упрощенная, полная и последовательная абстракция системы, созданная для лучшего понимания системы.
View - Вид - это проекция модели системы с определенной точки зрения.
Концептуальная модель UML
Концептуальная модель UML включает в себя три основных элемента:
- Основные строительные блоки
- Rules
- Общие механизмы
Основные строительные блоки
Три строительных блока UML:
- Things
- Relationships
- Diagrams
вещи
В UML есть четыре типа вещей, а именно:
Structural Things- Это существительные моделей UML, представляющие статические элементы, которые могут быть физическими или концептуальными. Структурные элементы - это класс, интерфейс, сотрудничество, вариант использования, активный класс, компоненты и узлы.
Behavioral Things- Это глаголы моделей UML, представляющие динамическое поведение во времени и пространстве. Два типа поведенческих вещей - это взаимодействие и конечный автомат.
Grouping Things- Они составляют организационные части моделей UML. Есть только один вид группировки, т. Е. Упаковка.
Annotational Things - Это объяснения в моделях UML, представляющие комментарии, применяемые для описания элементов.
Отношения
Отношения - это связь между вещами. Четыре типа отношений, которые могут быть представлены в UML:
Dependency- Это семантические отношения между двумя вещами, при которых изменение одного влечет за собой изменение другого. Первая вещь независимая, а вторая вещь зависимая.
Association - Это структурные отношения, представляющие собой группу связей, имеющих общую структуру и общее поведение.
Generalization - Это представляет собой отношение обобщения / специализации, в котором подклассы наследуют структуру и поведение от суперклассов.
Realization - Это семантическая связь между двумя или более классификаторами, такая, что один классификатор устанавливает контракт, соблюдение которого гарантируют другие классификаторы.
Диаграммы
Диаграмма - это графическое представление системы. Он состоит из группы элементов, как правило, в форме графика. UML включает в себя девять диаграмм, а именно:
- Диаграмма классов
- Диаграмма объекта
- Диаграмма вариантов использования
- Диаграмма последовательности
- Диаграмма сотрудничества
- Диаграмма состояния
- Диаграмма деятельности
- Схема компонентов
- Схема развертывания
Правила
UML имеет ряд правил, так что модели являются семантически самосогласованными и гармонично связаны с другими моделями в системе. UML имеет семантические правила для следующего:
- Names
- Scope
- Visibility
- Integrity
- Execution
Общие механизмы
UML имеет четыре общих механизма:
- Specifications
- Adornments
- Общие подразделения
- Механизмы расширяемости
Характеристики
В UML за каждой графической нотацией стоит текстовая инструкция, обозначающая синтаксис и семантику. Это спецификации. Спецификации обеспечивают семантическую объединительную плату, которая содержит все части системы и отношения между различными путями.
Украшения
Каждый элемент в UML имеет уникальное графическое обозначение. Кроме того, существуют обозначения для представления важных аспектов элемента, таких как имя, область действия, видимость и т. Д.
Общие подразделения
Объектно-ориентированные системы можно разделить по-разному. Два распространенных способа разделения:
Division of classes and objects- Класс - это абстракция группы похожих объектов. Объект - это конкретный экземпляр, реально существующий в системе.
Division of Interface and Implementation- Интерфейс определяет правила взаимодействия. Реализация - это конкретная реализация правил, определенных в интерфейсе.
Механизмы расширяемости
UML - это открытый язык. Возможности UML можно расширять контролируемым образом в соответствии с требованиями системы. Механизмы расширяемости -
Stereotypes - Он расширяет словарный запас UML, с помощью которого можно создавать новые строительные блоки из существующих.
Tagged Values - Расширяет свойства строительных блоков UML.
Constraints - Расширяет семантику строительных блоков UML.