Диаграммы UML
Что такое UML?
UML или Unified Modeling Language — язык графического описания для объектного моделирования в области разработки программного обеспечения. Но использование UML не ограничивается IT, другая большая сфера практического применения UML — моделирование бизнес-процессов, системного проектирования и отображения организационных структур. UML дает возможность разработчикам программного обеспечения достигнуть соглашения в графических обозначениях для представления общих понятий и сконцентрироваться на проектировании и разработке.
Преимущества UML
- В UML используются графические обозначения для элементов моделируемой системы, при этом схемы UML достаточно просты для понимания;
- UML делает возможным описывать системы практически со всех возможных точек зрения, учитывая различные аспекты;
- UML объектно-ориентирован: его методы анализа и построения семанитически близки к методам программирования, используемым в современных языках ООП;
- UML — открытый стандарт. Стандарт развивается и эволюционирует от версии к версии, отвечая самым современным требованиям к описанию систем;
- содержит механизм расширения, позволяющий вводить дополнительные текстовые и графические типы, что делает возможным применение UML не только в сфере IT.
Типы диаграмм UML
В UML 14 типов диаграмм. Их можно разделить на 2 категории:
- структурные, представляющие информационную структуру;
- поведенческие, представляющие поведение системы и различные аспекты взаимодействий. Отдельным подвидом диаграмм поведения считаются диаграммы взаимодействия.

Иерархия типов диаграмм UML,
представленная диаграммой классов
Структурные диаграммы
- Диаграмма классов является ключевым элементом в объектно-ориентированном моделировании. С помощью этой диаграммы (собственно, через классы, их атрибуты, методы и зависимости между классами) описывается модель предметной области и структура моделируемой системы.
- Диаграмма компонентов отображает разбиение программного кода на крупные блоки (структурные компоненты) и показывает зависимости между ними. Компонентами могут быть пакеты, модули, библиотеки, файлы и т.д.
- Объектная диаграмма показывает полный или частичный срез моделируемой системы в заданный момент времени. Она представляет экземплеры классов (объекты), их состояние (текущие значения аттрибутов) и отношения между ними.
- Диаграмма композитной структуры демонстрирует внутреннюю структуру классов и, по возможности, взаимодействия между элементами этой структуры.
- Диаграмма пакетов показывает пакеты и отношения между ними. Этот вид диаграмм служит для упрощения структуры модели (и, соответственно, работы с ней) через объединение элементов модели в группы по некоторым критериям.
- Диаграмма развертывания моделирует развертывание программных компонентов (артефактов) на вычислительных ресурсах/аппаратных компонентах (узлах).
- Диаграмма профилей описывает механизм расширения, позволяющий приспособить UML к разнообразным предметным областям и сферам деятельности.

Пример UML-диаграммы классов
Диаграммы поведения
- Диаграмма деятельности показывает действия (actions) из которых состоит некоторая деятельность (activity). Диаграммы деятельности используются для моделирования бизнесс-процессов, технологических процессов, последовательных и параллельных вычислений.
- Диаграмма вариантов использования (или диаграмма прецедентов) описывает отношения между актёрами (действующими лицами) и вариантами использования моделируемой системы (ее возможностями). Основное назначение диаграммы — быть универсальным средством для заказчиков, разработчиков и конечных пользователей, с помощью которого можно было бы совместно обсуждать систему — ее возможности и поведение.
- Диаграмма состояний изображает динамическое поведение сущности, показывая как эта сущность в зависимости от своего текущего состояния реагирует на различные события. По сути это диаграмма состояний из теории атоматов.
- Диаграмма коммуникации (в ранних версиях диаграмма кооперации) показывает взаимодействия между частями композитной структуры и ролями кооперации. На диаграмме явно указываются отношения между элементами (объектами).
- Диаграмма последовательности используется для визуализации последовательности взаимодействий объектов. Показывает жизненный цикл заданного объекта и взаимодействие актеров (действующих лиц) в рамках некоторого варианта использования, последовательность сообщений которыми они обмениваются.
- Диаграмма обзора взаимодействия включает часть диаграммы последовательности и конструкции потока управления. Помогает рассмотреть взаимодействие объектов с различных точек зрения.
- Диаграмма синхронизации — отдельный подвид диаграмм взаимодействия, специализируйющийся на тайминге. Диаграммы этого вида используются для исследования поведения объектов в течение определенного периода времени.
Несмотря на то, что в UML есть все средства для моделирования бизнес-процессов, в настоящее время в этой области все больше применяется нотация BPMN. Подробней о моделировании бизнес-процессов и способах их графического представления читайте на странице Графическое описание архитектуры предприятия.