EMACSWAY_LOG Telegram 1611
Forwarded from Ivan
Здесь фундаментальное непонимание того, что такое DDD.

Главную цель DDD Evans позаимствовал из MODEL-DRIVEN DESIGN:

💬 MODEL-DRIVEN DESIGN discards the dichotomy of analysis model and design to search out a single model that serves both purposes.
-- "Domain-Driven Design: Tackling Complexity in the Heart of Software" by Eric Evans


В DDD нет "программной модели" в вакууме. Есть единая, вездесущая модель, которая одинакова и для Problem Space (предметка) и для Solution Space (модель, воплощенная системой).

Единство и вездесущность модели обеспечивается посредством Ubiquitous Language, на котором общаются и эксперты предметной области, и разработчики.

В Event Storming это достигается тем, что этап моделирования системы может делаться прямо на тех же стикерах, которые получились в результате исследования предметной области.

Это главный постулат DDD.

Стремясь его достигнуть, Evans столкнулся с проблемой, что различные эксперты предметки, имеющие различные интересы и обязанности, один и тот же оригинал моделирования называют разными терминами. Был "покупатель", стал "плательщик", и станет "получателем".

Тогда он понял, что выбор термина зависит от того, какую проблему решает модель. А граница согласованности языка определяет границу модели. Так он открыл Bounded Context.

Потом он понял, что модель - это то, что позволяет гранулировать знание о системе. Это знание нельзя разорвать между командами разработки, т.к. резко подскочит коммуникативная нагрузка между командами. И нельзя смешивать несколько знаний воедино, т.к. нарушится главный посулат модели - упрощение, и возрастет паразитная когнитивная нагрузка. Так он открыл границы автономности команды разработки.
11👍8🔥3😁1



tgoop.com/emacsway_log/1611
Create:
Last Update:

Здесь фундаментальное непонимание того, что такое DDD.

Главную цель DDD Evans позаимствовал из MODEL-DRIVEN DESIGN:

💬 MODEL-DRIVEN DESIGN discards the dichotomy of analysis model and design to search out a single model that serves both purposes.
-- "Domain-Driven Design: Tackling Complexity in the Heart of Software" by Eric Evans


В DDD нет "программной модели" в вакууме. Есть единая, вездесущая модель, которая одинакова и для Problem Space (предметка) и для Solution Space (модель, воплощенная системой).

Единство и вездесущность модели обеспечивается посредством Ubiquitous Language, на котором общаются и эксперты предметной области, и разработчики.

В Event Storming это достигается тем, что этап моделирования системы может делаться прямо на тех же стикерах, которые получились в результате исследования предметной области.

Это главный постулат DDD.

Стремясь его достигнуть, Evans столкнулся с проблемой, что различные эксперты предметки, имеющие различные интересы и обязанности, один и тот же оригинал моделирования называют разными терминами. Был "покупатель", стал "плательщик", и станет "получателем".

Тогда он понял, что выбор термина зависит от того, какую проблему решает модель. А граница согласованности языка определяет границу модели. Так он открыл Bounded Context.

Потом он понял, что модель - это то, что позволяет гранулировать знание о системе. Это знание нельзя разорвать между командами разработки, т.к. резко подскочит коммуникативная нагрузка между командами. И нельзя смешивать несколько знаний воедино, т.к. нарушится главный посулат модели - упрощение, и возрастет паразитная когнитивная нагрузка. Так он открыл границы автономности команды разработки.

BY emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.


Share with your friend now:
tgoop.com/emacsway_log/1611

View MORE
Open in Telegram


Telegram News

Date: |

Telegram Android app: Open the chats list, click the menu icon and select “New Channel.” How to build a private or public channel on Telegram? Telegram has announced a number of measures aiming to tackle the spread of disinformation through its platform in Brazil. These features are part of an agreement between the platform and the country's authorities ahead of the elections in October. Don’t publish new content at nighttime. Since not all users disable notifications for the night, you risk inadvertently disturbing them. To edit your name or bio, click the Menu icon and select “Manage Channel.”
from us


Telegram emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
FROM American