Как выбрать UML-диаграмму
Канонические диаграммы UML
Заголовок раздела «Канонические диаграммы UML»В UML обычно выделяют структурные и поведенческие диаграммы. Структурные показывают состав и связи системы, поведенческие — её работу во времени. Диаграммы взаимодействия являются подгруппой поведенческих.
| Группа | Диаграммы |
|---|---|
| Структурные | классов, объектов, пакетов, компонентов, внутренней структуры, развёртывания, профилей |
| Поведенческие | использования, деятельности, состояний, последовательности, коммуникации, обзора взаимодействия, синхронизации |
Этот список не является чек-листом проекта. Для небольшой ИС чаще всего достаточно диаграмм использования, деятельности, классов, последовательности, компонентов и развёртывания; остальные добавляют, когда появляется соответствующий вопрос.
Выбор диаграммы по вопросу
Заголовок раздела «Выбор диаграммы по вопросу»| Вопрос | Основная диаграмма | Что она не заменяет |
|---|---|---|
| Кто и ради чего взаимодействует с системой? | Использования | спецификацию и сценарии |
| Как выполняется работа? | Деятельности | структуру объектов и компонентов |
| Какие понятия, связи и правила существуют? | Классов | порядок действий |
| Как меняется важный объект? | Состояний | полный процесс разных участников |
| Кто кому отправляет сообщения? | Последовательности | физическое размещение |
| Как сгруппированы модули? | Пакетов | контракты компонентов |
| Какие программные части и интерфейсы есть? | Компонентов | внутреннее устройство реализации |
| Где работают артефакты? | Развёртывания | логические зависимости модулей |
Диаграмма классов, состояний и последовательности может относиться к одному объекту, но их не нужно механически строить для каждого класса. Полезны только те представления, которые помогают принять решение, обнаружить противоречие или объяснить решение другому участнику.
Редкие диаграммы применяют по дополнительному условию: коммуникации — когда важнее сеть связей, чем вертикальный порядок; обзор взаимодействия — когда большой сценарий состоит из нескольких взаимодействий; синхронизации — когда существенны интервалы времени.
В модели
Заголовок раздела «В модели»Выбор представления начинается с нотаций и представлений. Связи между требованиями, сценариями, моделями и диаграммами проверяются в материале о согласованности и трассируемости.
C4 помогает выбрать масштаб архитектурной карты. UML-диаграмму добавляют, когда нужна её точная семантика, а не второй общий обзор системы.