DDD: как жить в проекте без требований (обсуждение на Flow-2023)
Обсуждение с Юрой Куприяновым 4-5.09.2023 на online FlowConf Дискуссия на сайте конференции Видео доступно на сайте конференции для участников
Domain-driven design (DDD)– эффективный метод создания проектных решений через работу с моделями. Эффективность особенно проявляется на этапе развития системы, но для этого необходимы предпосылки на начальном этапе создания продукта.
Метод принципиально отличается от обычного создания дизайна системы на основе требований, но эти отличия обычно не осознаются: им пытаются дополнить привычный способ работы, а не заменить. Различие примерно такое же, как между Agile-методами и традиционным «водопадом»: в Agile мы переходим от поэтапной разработки по фазам к инкрементальной, где после каждого спринта получается работоспособный продукт. Так и в DDD – вместо дизайна по требованиям мы каждую функциональность сразу превращаем в часть модели и обсуждаем новые фичи в терминах изменения этой модели.
Чтобы такой метод работал эффективно, необходимы и другие составляющие: единый язык проекта, деление предметной области на ограниченные контексты, трассировка модели в код и другие. Приходите, чтобы обсудить ключевые отличия метода DDD и прояснить проблемные вопросы.
Презентация
Презентация использовалась для иллюстрации отдельных тезисов в ходе обсуждения. Целостного рассказа по ней не было.
Скачать весь pdf