5 Ways to Fail DDD Implementation

Years after the release of Domain-Driven Design, Evans' ideas entered the mainstream. Development through modeling was supposed to reduce uncertainty and allow software development in fewer iterations. It should have been, but nothing came of it.


In interviews and mitaps I hear


We tried to implement DDD, but we didn’t succeed

DDD is another meme behind which there was a sound and obvious idea: a program is an implementation of a process model. It was assumed that just as physicists solve their problems with the help of mathematical models, programmers solve their problems with ... And this is where the problems begin.


Under cat: 5 ways to fail on the introduction of DDD


image


Attempts to follow the book of Evans verbatim


Most books on development methods have the same disease - well-articulated ideas / heuristics / practical examples of pages 20 are strong. The rest is occupied by inspirational and useless listings. As a test, you can take the "Domain Driving Design" or "Fakuler Refactring" and stick all the listings with stickers. For perception, nothing will change. Similar works with most examples in Evans' book. And all interview transcripts can be replaced with a list


  • .
  • .
  • , .

. , ( ) , , . , , . — , "".
, , . :


  • , .
  • , . " " .
  • " ". .

\


  • !
  • !

, , .


— .
- , " — , \ — ". , . "" "", . , .


, Prolog Lisp. , , , , .


, , - .



: " ".
-, .
-, , .


, , , . .
DDD . . — . , :


- .
, . ?


. , .
. ( ..


- .
:
4 ,
.

:
?
:
10 — " ?"
, . .

, .
— "", , .
" ", , , ..
- .


— . , , ( , ).


UML


" — UML?"
.
UML . UML, . , . , , : , .
UML . — Java- , Java .
UML — .



.
, . , — Java , .
Java — .


— . . , , . , , .


" " .


Coda


Each context by model.
Each model has a free view.
Each problem is solved.
To each decision on implementation.
Object-oriented description of business processes - in the trash.


All Articles