Что такое UML ?
UML (Unified Modeling Language — унифицированный язык моделирования) – язык графического описания для объектного моделирования в области разработки программного обеспечения, его также используют для моделирования бизнес-процессов, системного моделирования и отображения организационных структур.
Необходимость в таком языке ярко иллюстрирует эта юмористичная картинка.

То есть UML – это некий стандарт для описания различных процессов. Его используют разработчики, аналитики, архитектор, с его помощью можно понятно доносить мысли и общаться между собой. Такой подход с использованием универсального языка значительно сократит время коммуникаций между сотрудниками и уменьшит время для поставки конечного продукта пользователю.
Все UML диаграммы по своей сущности делятся на два вида:
- Структурные диаграммы – описывают структуру сложных объектов и систем, показывают статическую структуру системы и ее частей на разных уровнях абстракции и реализации, а также их взаимосвязь
- Диаграммы поведения – иллюстрируют взаимодействие с системой и процесс её работы, основное внимание здесь уделяется динамическим аспектам системы программного обеспечения или процесса
К структурным диаграммам относят следующие 7 типов диаграмм:
- Диаграмма составной структуры
- Диаграмма развертывания
- Диаграмма пакетов
- Диаграмма профилей
- Диаграмма классов. (Аналогом диаграммы классов (UML) может быть ER-модель, которая используется при проектировании баз-данных (реляционной модели).
- Диаграмма объектов
- Диаграмма компонентов
А к диаграммам поведения относят следующие типы диаграмм:
- Диаграмма активности
- Диаграмма прецедентов
- Диаграмма состояний
- Диаграмма последовательности
- Диаграмма коммуникаций
- Диаграмма обзора взаимодействия
- Временная диаграмма
Чтобы рассмотреть четыре из них детальней, кликните на ссылки выше.
В книге Мартина Фаулера “Основы UML”. В главе про моделирование процессов с помощью диаграммы классов (стр. 77) Мартин даёт следующие, понравившиеся мне советы:
1. Не пытайтесь задействовать сразу все доступные понятия. Начните с самых простых, описанных в этой главе: классов, ассоциаций, атрибутов, обобщений и ограничений.
2. Я пришел к выводу, что концептуальные диаграммы классов очень полезны при изучении делового языка. Чтобы при этом все получалось, необходимо всячески избегать обсуждения программного обеспечения и применять очень простые обозначения.
3. Не надо строить модели для всего на свете, вместо этого следует сконцентрироваться на ключевых аспектах. Лучше создать мало диаграмм, которые постоянно применяются в работе и отражают все внесенные изменения, чем иметь дело с большим количеством забытых и устаревших моделей.