DDD — про что это?

Domain Driven Design - Принцип проектирования и разработки систем и процессов

Что это?

DDD(Domain Driven Design) — принцип проектирования и разработки систем и процессов, который регламентирует, что Бизнес-модели и схемы их взаимодействий должны быть единообразными, как в программном коде так и БП(бизнесс-процессах).

Основные тезисы подхода:

Единый язык

(ubiquitous language)

  • Построен на основе терминов предметной области
  • Его понимают и ИТ-специалисты, и эксперты бизнеса
  • На нем описана модель ИТ-системы и ее место в бизнес-процессах

Единая модель

  • Аналитик собирает требования и строит модель — сначала предметной области,
    затем системы
  • Артефакты модели описывают систему и ее использование в бизнес-процессах
    предприятия
  • Разработчик реализует модель
  • Артефакты модели можно проследить в коде

Плюсы единой модели

  • Верификация постановок бизнес-специалистами
  • Общее понимание требований на стороне бизнеса
  • Обсуждение модели бизнесом и ИT, поиск баланса в сложных вопросах
  • Перенос моделей из других предметных областей
  • Бизнес представляет потенциальные возможности системы и сложность различных доработок
  • На этапе эксплуатации — эффективное общение бизнес-пользователей и ИT без квалифицированных переводчиков-аналитиков

Модель предметной области — модульная

Предметную область делим на ограниченные контексты

  • Для каждого из них — свой единый язык и своя модель
  • Целостность удерживает карта контекстов
  • Для изоляции и выделения общего в моделях работают методы ООП
  • Модели учитывают позицию фирмы: поставки и продажи — разные контексты и модели, хотя сделка одна — оптовая купля-продажа

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *