Унифицированный язык моделирования (UML) в настоящий момент является стандартом де-факто при описании (документирования) результатов проектирования и разработки объектно-ориентированных систем. Начало разработки UML было положено в 1994 г. Гради Бучем и Джеймсом Рамбо, работавшим в компании Rational Software. Осенью 1995 г. к ним присоединился Ивар Якобсон и в октябре того же года была выпущена предварительная версия 0.8 унифицированного метода. С этого времени было выпущено несколько версий спецификации UML.
Нотация представляет собой графическую интерпретацию семантики для ее визуального представления.
В UML определено три типа сущностей:
Диаграмма представляет собой группировку элементов нотации для отображения некоторого аспекта разрабатываемой информационной системы. Диаграммы представляют собой, как правило, связный граф, в котором сущности являются вершинами, а отношения – дугами. В следующей таблице дана краткая характеристика диаграмм UML:
| Диаграмма | Назначение |
|---|---|
| Вариантов использования (use case) |
Отображает функции системы, взаимодействие между актерами и функциями |
| Классов (class) |
Отображает набор классов, интерфейсов и отношений между ними |
| Пакетов (package) |
Отображает набор пакетов и отношений между ними |
| Автоматов (state machine) |
Отображает состояния сущности и переходы между ними в процессе ее жизненного цикла |
| Деятельности (activity) |
Отображает бизнес-процессы в системе (описание алгоритмов поведения) |
| Последовательности (sequence) |
Отображает последовательность передачи сообщений между объектами и актерами |
| Коммуникации (communication) |
Аналогична диаграмме последовательности, но основной акцент делается на структуру взаимодействия между объектами |
| Компонентов (component) |
Отображает компоненты системы (программы, библиотеки, таблицы и т.д.) и связи между ними |
| Развертывания (deployment) |
Отображает размещение компонентов по узлам сети, а также ее конфигурацию |
Часть диаграмм после их построения требует развития и уточнения в рамках разработки следующей модели (технологического процесса). Так, например, диаграммы вариантов использования должны быть уточнены при разработке модели анализа. В моделях вариантов использования и анализа разрабатывается и уточняется диаграмма классов анализа, а в модели проектирования – итоговая детализированная диаграмма классов. Как правило, диаграмма классов анализа и диаграмма классов существуют независимо.