SlideShare una empresa de Scribd logo
1 de 21
Domain Driven Design (DDD)
Зачем он нужен и с чего
начать?
AgilePizza # 69
3. Тамуз, 5777
#agilepizza #scrumguides @defimenko
Дмитрий “Damiano” Ефименко.
Киев, Украина, Simple Fintech фюрер.
Создаю команды и процессы.
Перекладываю чужие деньги.
Инженер, играющий тренер.
Продуктомасонъ, правдорезъ, 20+.
Знакомство
#agilepizza #scrumguides @defimenko
#agilepizza #scrumguides @defimenko
#agilepizza #scrumguides @defimenko
Идея
Хотелка
Сценарий
(поведение)
Сценарий
(приемка)
Объекты
Роли
Действия
Состояния
Модель
ГУЙ
Приложение
Хранилище
Модель
чтения
ГУЙ
Шина
Хранилище
Модель
записиИли Или ...
#agilepizza #scrumguides @defimenko
Модель
предметной
области
ГУЙ Хранилище
Бизнес-логика
Киты
#agilepizza #scrumguides @defimenko
Модель
Архитектура
Дизайн
ПО как Обеспечение ПО как Область
Класс Сущность
Наследование Обобщение
Свойство Аттрибут
Метод Операция
Ссылка Ассоциация
Модель
#agilepizza #scrumguides @defimenko
Реализуемость
Простота
Унификация языка
Контексты
Концептуальные
зависимости
Архитектура
#agilepizza #scrumguides @defimenko
Слои
Архитектура
#agilepizza #scrumguides @defimenko
Слои
Ядро
Архитектура
#agilepizza #scrumguides @defimenko
Слои
Ядро
Инкапсуляция
Архитектура
#agilepizza #scrumguides @defimenko
Слои
Ядро
Инкапсуляция
Унификация и
разделения
Дизайн
#agilepizza #scrumguides @defimenko
Высокоуровневый
фреймворк
Шаблоны
ОРМ
© Domain-Driven Design Quickly
#agilepizza #scrumguides @defimenko
#agilepizza #scrumguides @defimenko
С чего начать?
#agilepizza #scrumguides @defimenko
Общий язык
С чего начать?
#agilepizza #scrumguides @defimenko
Общий язык
Процессы
С чего начать?
#agilepizza #scrumguides @defimenko
Общий язык
Процессы
Контексты
Чего почитать?
#agilepizza #scrumguides @defimenko
https://www.infoq.com/domain-driven-
design
https://martinfowler.com/tags/domain%
20driven%20design.html
http://domaindrivendesign.org/
Вопросы?
Спасибо за внимание!
#agilepizza #scrumguides @defimenko
Если вы испуганы, одиноки,
вам стыдно или просто
хочется поговорить «об
этом» - вы знаете, где меня
найти…
d.efimenko
d.efimenko

Más contenido relacionado

Similar a Domain Driven Design (DDD) – зачем он нужен и с чего начать?

IDM - это непросто!
IDM - это непросто!IDM - это непросто!
IDM - это непросто!Sergey Soldatov
 
Agile days `16 summary
Agile days `16 summaryAgile days `16 summary
Agile days `16 summaryAnton Zhukov
 
Старт семинара "Автоматизация управления строительными проектами". Комплексн...
Старт семинара "Автоматизация управления строительными проектами".  Комплексн...Старт семинара "Автоматизация управления строительными проектами".  Комплексн...
Старт семинара "Автоматизация управления строительными проектами". Комплексн...Alexey Zotov
 
Управление разработкой продукта
Управление разработкой продуктаУправление разработкой продукта
Управление разработкой продуктаAlexey Filimonov
 
Способы создания качественного программного продукта
Способы создания качественного программного продуктаСпособы создания качественного программного продукта
Способы создания качественного программного продуктаIngria. Technopark St. Petersburg
 
Управление разработкой продукта
Управление разработкой продуктаУправление разработкой продукта
Управление разработкой продуктаAlexey Filimonov
 
'Сrafting software architecture decisions' by Maksym Klymyshyn at ODESSA'2020
'Сrafting software architecture decisions' by Maksym Klymyshyn at ODESSA'2020 'Сrafting software architecture decisions' by Maksym Klymyshyn at ODESSA'2020
'Сrafting software architecture decisions' by Maksym Klymyshyn at ODESSA'2020 OdessaJS Conf
 
Предпроектная работа над сайтом
Предпроектная работа над сайтомПредпроектная работа над сайтом
Предпроектная работа над сайтомNimax
 
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центрМониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центрsportgid
 
Управление проектами
Управление проектами Управление проектами
Управление проектами Nimax
 
5 правил успешной разработки приложений для бренда
5 правил успешной разработки приложений для бренда 5 правил успешной разработки приложений для бренда
5 правил успешной разработки приложений для бренда Heads&Hands
 
Что нужно знать о JavaScript при разработке Smart Contracts
Что нужно знать о JavaScript при разработке Smart ContractsЧто нужно знать о JavaScript при разработке Smart Contracts
Что нужно знать о JavaScript при разработке Smart ContractsAndrew Mikhailov
 
IT Talk SPb «Дизайн-процессы в энтерпрайз-проекте. Советы и рекомендации»
IT Talk SPb «Дизайн-процессы в энтерпрайз-проекте. Советы и рекомендации»IT Talk SPb «Дизайн-процессы в энтерпрайз-проекте. Советы и рекомендации»
IT Talk SPb «Дизайн-процессы в энтерпрайз-проекте. Советы и рекомендации»Masha Kolga
 
It talk SPb «дизайн процессы в энтерпрайз-проекте. советы и рекомендации»
It talk SPb «дизайн процессы в энтерпрайз-проекте. советы и рекомендации»It talk SPb «дизайн процессы в энтерпрайз-проекте. советы и рекомендации»
It talk SPb «дизайн процессы в энтерпрайз-проекте. советы и рекомендации»DataArt
 
Проектирование интерфейсов
Проектирование интерфейсовПроектирование интерфейсов
Проектирование интерфейсовVladimir Zimin
 
SearchInform. Сергей Ананич. "Нестандартные методы применения DLP-систем в би...
SearchInform. Сергей Ананич. "Нестандартные методы применения DLP-систем в би...SearchInform. Сергей Ананич. "Нестандартные методы применения DLP-систем в би...
SearchInform. Сергей Ананич. "Нестандартные методы применения DLP-систем в би...Expolink
 
SearchInform. Евгений Матюшенок. "Нестандартные методы применения DLP-систем ...
SearchInform. Евгений Матюшенок. "Нестандартные методы применения DLP-систем ...SearchInform. Евгений Матюшенок. "Нестандартные методы применения DLP-систем ...
SearchInform. Евгений Матюшенок. "Нестандартные методы применения DLP-систем ...Expolink
 

Similar a Domain Driven Design (DDD) – зачем он нужен и с чего начать? (20)

IDM - это непросто!
IDM - это непросто!IDM - это непросто!
IDM - это непросто!
 
Agile days `16 summary
Agile days `16 summaryAgile days `16 summary
Agile days `16 summary
 
Старт семинара "Автоматизация управления строительными проектами". Комплексн...
Старт семинара "Автоматизация управления строительными проектами".  Комплексн...Старт семинара "Автоматизация управления строительными проектами".  Комплексн...
Старт семинара "Автоматизация управления строительными проектами". Комплексн...
 
Управление разработкой продукта
Управление разработкой продуктаУправление разработкой продукта
Управление разработкой продукта
 
Способы создания качественного программного продукта
Способы создания качественного программного продуктаСпособы создания качественного программного продукта
Способы создания качественного программного продукта
 
Управление разработкой продукта
Управление разработкой продуктаУправление разработкой продукта
Управление разработкой продукта
 
'Сrafting software architecture decisions' by Maksym Klymyshyn at ODESSA'2020
'Сrafting software architecture decisions' by Maksym Klymyshyn at ODESSA'2020 'Сrafting software architecture decisions' by Maksym Klymyshyn at ODESSA'2020
'Сrafting software architecture decisions' by Maksym Klymyshyn at ODESSA'2020
 
Предпроектная работа над сайтом
Предпроектная работа над сайтомПредпроектная работа над сайтом
Предпроектная работа над сайтом
 
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центрМониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
 
AgilePlanning
AgilePlanningAgilePlanning
AgilePlanning
 
Управление проектами
Управление проектами Управление проектами
Управление проектами
 
5 правил успешной разработки приложений для бренда
5 правил успешной разработки приложений для бренда 5 правил успешной разработки приложений для бренда
5 правил успешной разработки приложений для бренда
 
Что нужно знать о JavaScript при разработке Smart Contracts
Что нужно знать о JavaScript при разработке Smart ContractsЧто нужно знать о JavaScript при разработке Smart Contracts
Что нужно знать о JavaScript при разработке Smart Contracts
 
дайджест челны сентябрь2
дайджест челны сентябрь2дайджест челны сентябрь2
дайджест челны сентябрь2
 
Agile architecture
Agile architectureAgile architecture
Agile architecture
 
IT Talk SPb «Дизайн-процессы в энтерпрайз-проекте. Советы и рекомендации»
IT Talk SPb «Дизайн-процессы в энтерпрайз-проекте. Советы и рекомендации»IT Talk SPb «Дизайн-процессы в энтерпрайз-проекте. Советы и рекомендации»
IT Talk SPb «Дизайн-процессы в энтерпрайз-проекте. Советы и рекомендации»
 
It talk SPb «дизайн процессы в энтерпрайз-проекте. советы и рекомендации»
It talk SPb «дизайн процессы в энтерпрайз-проекте. советы и рекомендации»It talk SPb «дизайн процессы в энтерпрайз-проекте. советы и рекомендации»
It talk SPb «дизайн процессы в энтерпрайз-проекте. советы и рекомендации»
 
Проектирование интерфейсов
Проектирование интерфейсовПроектирование интерфейсов
Проектирование интерфейсов
 
SearchInform. Сергей Ананич. "Нестандартные методы применения DLP-систем в би...
SearchInform. Сергей Ананич. "Нестандартные методы применения DLP-систем в би...SearchInform. Сергей Ананич. "Нестандартные методы применения DLP-систем в би...
SearchInform. Сергей Ананич. "Нестандартные методы применения DLP-систем в би...
 
SearchInform. Евгений Матюшенок. "Нестандартные методы применения DLP-систем ...
SearchInform. Евгений Матюшенок. "Нестандартные методы применения DLP-систем ...SearchInform. Евгений Матюшенок. "Нестандартные методы применения DLP-систем ...
SearchInform. Евгений Матюшенок. "Нестандартные методы применения DLP-систем ...
 

Más de Dmitriy Yefimenko

2019 04-20 kyiv pm day - manage goals
2019 04-20 kyiv pm day - manage goals2019 04-20 kyiv pm day - manage goals
2019 04-20 kyiv pm day - manage goalsDmitriy Yefimenko
 
2019 04-20 kyiv pm day - failcon
2019 04-20 kyiv pm day - failcon2019 04-20 kyiv pm day - failcon
2019 04-20 kyiv pm day - failconDmitriy Yefimenko
 
2018 11-10 - lviv pm day - req. management fails
2018 11-10 - lviv pm day - req. management fails2018 11-10 - lviv pm day - req. management fails
2018 11-10 - lviv pm day - req. management failsDmitriy Yefimenko
 
2018 11-10 - lviv pm day - product mindset
2018 11-10 - lviv pm day - product mindset2018 11-10 - lviv pm day - product mindset
2018 11-10 - lviv pm day - product mindsetDmitriy Yefimenko
 
2018 10-13 - pm day kyiv - product mindset
2018 10-13 - pm day kyiv - product mindset2018 10-13 - pm day kyiv - product mindset
2018 10-13 - pm day kyiv - product mindsetDmitriy Yefimenko
 
Практики трансформаций
Практики трансформацийПрактики трансформаций
Практики трансформацийDmitriy Yefimenko
 
XP Days 2017 Tansformation practices
XP Days 2017 Tansformation practicesXP Days 2017 Tansformation practices
XP Days 2017 Tansformation practicesDmitriy Yefimenko
 
практики успешных продуктовых команд
практики успешных продуктовых командпрактики успешных продуктовых команд
практики успешных продуктовых командDmitriy Yefimenko
 
2017 03-28 управление требованиями на agile проектах-web academy
2017 03-28 управление требованиями на agile проектах-web academy2017 03-28 управление требованиями на agile проектах-web academy
2017 03-28 управление требованиями на agile проектах-web academyDmitriy Yefimenko
 
идеальный релиз v2
идеальный релиз v2идеальный релиз v2
идеальный релиз v2Dmitriy Yefimenko
 
Идеальный релиз
Идеальный релизИдеальный релиз
Идеальный релизDmitriy Yefimenko
 
Productonomicon. antipatterns
Productonomicon. antipatternsProductonomicon. antipatterns
Productonomicon. antipatternsDmitriy Yefimenko
 
практическое граблеведение
практическое граблеведениепрактическое граблеведение
практическое граблеведениеDmitriy Yefimenko
 
productonomicon. antipatterns
productonomicon. antipatternsproductonomicon. antipatterns
productonomicon. antipatternsDmitriy Yefimenko
 
качество продуктовой команды
качество продуктовой командыкачество продуктовой команды
качество продуктовой командыDmitriy Yefimenko
 
продуктовая команда. ценности, принципы, практики
продуктовая команда. ценности, принципы, практикипродуктовая команда. ценности, принципы, практики
продуктовая команда. ценности, принципы, практикиDmitriy Yefimenko
 
Productonomicon. antipatterns
Productonomicon. antipatternsProductonomicon. antipatterns
Productonomicon. antipatternsDmitriy Yefimenko
 
2012-11-27 - QAClub - Процессы тестирования в продуктовой компании
2012-11-27 - QAClub - Процессы тестирования в продуктовой компании2012-11-27 - QAClub - Процессы тестирования в продуктовой компании
2012-11-27 - QAClub - Процессы тестирования в продуктовой компанииDmitriy Yefimenko
 
построение системы учебы на ошибках
построение системы учебы на ошибкахпостроение системы учебы на ошибках
построение системы учебы на ошибкахDmitriy Yefimenko
 

Más de Dmitriy Yefimenko (20)

2019 04-20 kyiv pm day - manage goals
2019 04-20 kyiv pm day - manage goals2019 04-20 kyiv pm day - manage goals
2019 04-20 kyiv pm day - manage goals
 
2019 04-20 kyiv pm day - failcon
2019 04-20 kyiv pm day - failcon2019 04-20 kyiv pm day - failcon
2019 04-20 kyiv pm day - failcon
 
2018 11-10 - lviv pm day - req. management fails
2018 11-10 - lviv pm day - req. management fails2018 11-10 - lviv pm day - req. management fails
2018 11-10 - lviv pm day - req. management fails
 
2018 11-10 - lviv pm day - product mindset
2018 11-10 - lviv pm day - product mindset2018 11-10 - lviv pm day - product mindset
2018 11-10 - lviv pm day - product mindset
 
2018 10-13 - pm day kyiv - product mindset
2018 10-13 - pm day kyiv - product mindset2018 10-13 - pm day kyiv - product mindset
2018 10-13 - pm day kyiv - product mindset
 
Практики трансформаций
Практики трансформацийПрактики трансформаций
Практики трансформаций
 
XP Days 2017 Tansformation practices
XP Days 2017 Tansformation practicesXP Days 2017 Tansformation practices
XP Days 2017 Tansformation practices
 
практики успешных продуктовых команд
практики успешных продуктовых командпрактики успешных продуктовых команд
практики успешных продуктовых команд
 
2017 03-28 управление требованиями на agile проектах-web academy
2017 03-28 управление требованиями на agile проектах-web academy2017 03-28 управление требованиями на agile проектах-web academy
2017 03-28 управление требованиями на agile проектах-web academy
 
идеальный релиз v2
идеальный релиз v2идеальный релиз v2
идеальный релиз v2
 
Идеальный релиз
Идеальный релизИдеальный релиз
Идеальный релиз
 
Perfecrt release
Perfecrt releasePerfecrt release
Perfecrt release
 
Productonomicon. antipatterns
Productonomicon. antipatternsProductonomicon. antipatterns
Productonomicon. antipatterns
 
практическое граблеведение
практическое граблеведениепрактическое граблеведение
практическое граблеведение
 
productonomicon. antipatterns
productonomicon. antipatternsproductonomicon. antipatterns
productonomicon. antipatterns
 
качество продуктовой команды
качество продуктовой командыкачество продуктовой команды
качество продуктовой команды
 
продуктовая команда. ценности, принципы, практики
продуктовая команда. ценности, принципы, практикипродуктовая команда. ценности, принципы, практики
продуктовая команда. ценности, принципы, практики
 
Productonomicon. antipatterns
Productonomicon. antipatternsProductonomicon. antipatterns
Productonomicon. antipatterns
 
2012-11-27 - QAClub - Процессы тестирования в продуктовой компании
2012-11-27 - QAClub - Процессы тестирования в продуктовой компании2012-11-27 - QAClub - Процессы тестирования в продуктовой компании
2012-11-27 - QAClub - Процессы тестирования в продуктовой компании
 
построение системы учебы на ошибках
построение системы учебы на ошибкахпостроение системы учебы на ошибках
построение системы учебы на ошибках
 

Domain Driven Design (DDD) – зачем он нужен и с чего начать?

Notas del editor

  1. И вот он – расставания слайд…