System Design Space

    Глава 211

    Обновлено: 9 февраля 2026 г. в 20:31

    UML: диаграммы как язык архитектуры

    Прогресс части0/5

    Оригинальная глава о UML: ключевые диаграммы, польза и практическое применение.

    Источник

    Полезные диаграммы из UML

    Подборка диаграмм, которые действительно полезны в проектировании.

    Открыть пост

    UML - это унифицированный язык моделирования, который вырос из трех нотаций Гради Буча, Джеймса Рамбо и Айвара Якобсона. Он остается удобным способом обсуждать архитектуру, дизайн решений и поведение системы. Эта глава сфокусирована на диаграммах и их пользе, а не только на книгах и стандартах. Если хотите обзор всех нотаций, загляните в вводную главу раздела. А если интересна эволюция архитектуры и взгляд одного из соавторов UML, посмотрите выпуск с Гради Бучем.

    Почему UML полезен в System Design

    Общий язык архитектуры

    UML помогает обсуждать систему без двусмысленностей между инженерами и бизнесом.

    Фокус на решениях

    Диаграммы фиксируют компромиссы, зависимости и ключевые архитектурные выборы.

    Объяснение сложного

    Один лист с диаграммой часто заменяет десятки страниц текста.

    Основа для эволюции

    Модели помогают планировать изменения и не терять контекст системы.

    Главные UML диаграммы и их задача

    Фильм

    Evolution of software architecture

    Выпуск с Гради Бучем о UML, абстракции и роли архитектора.

    Смотреть обзор

    UML уже не доминирует на рынке - часто выбирают C4 Model или другие способы моделирования. Но эти диаграммы до сих пор помогают быстро разложить систему на части, обсудить сценарии и увидеть компромиссы.

    Use Case

    Сценарии, роли и цели. Суть в текстовых happy path и exceptional flow, а не в человечках.

    Driver

    Parking System

    Book spot
    <<include>>
    Check availability
    Enter parking
    <<include>>
    Validate plate
    Pay session
    <<extend>>
    Refund
    Cancel booking
    optional
    Operator

    Уровни моделирования UML (M0-M3)

    UML описывает модели на разных уровнях абстракции. Это помогает не смешивать реальные объекты, модели и правила их построения.

    M0

    Real World / Instances

    Конкретные объекты и их связи в реальной системе. Object diagram - снимок состояния.

    M1

    Models

    Пользовательские модели UML: use case, class, sequence и другие диаграммы.

    M2

    Metamodel

    Спецификация UML: понятия Class, Association, Attribute и правила их использования.

    M3

    Meta-metamodel (MOF)

    MOF описывает метамодели и может быть применен не только к UML.

    Подробный разбор уровней - в посте Уровни моделирования в UML и почему их всего 4.

    Почему уровней всего четыре

    Самоописание MOF

    M3 описывает сам себя, поэтому дополнительный уровень не нужен.

    Нет бесконечной рекурсии

    Если ввести M4, потребуется M5, M6 и так далее.

    Практическая достаточность

    M0-M3 покрывают все задачи моделирования в инженерной практике.

    MOF - Meta-Object Facility: ссылка на описание.

    Примеры уровней в разных областях

    Пример из HR

    • M0 - сотрудник Иван Петров, родившийся 15.03.1990
    • M1 - класс "Сотрудник" с полями имя, дата_рождения
    • M2 - понятия "Класс", "Атрибут", "Связь" в UML
    • M3 - мета-класс и мета-атрибут как шаблон для M2

    Пример из строительства

    • M0 - мебель и люди в комнатах
    • M1 - планы комнат с расположением объектов
    • M2 - архитектура здания и его структура
    • M3 - строительные нормы и правила проектирования

    Пример из лингвистики

    • M0 - предложение "Иван читает книгу"
    • M1 - правила русского языка и части речи
    • M2 - термины "фонема", "морфема" и другие
    • M3 - философия языка и мета-уровень описания

    Как применять UML на практике

    • Не рисуйте все подряд - выбирайте диаграмму под цель разговора.
    • Начинайте с простого: use case или sequence, затем углубляйтесь.
    • Держите модели актуальными и используйте их в обсуждениях.
    • Комбинируйте UML с C4 и ArchiMate, если нужно показать контекст.

    Связанные материалы