Domain Driven Design

Softwaredesign, das zu dem passt, was die Anwender wirklich wollen

Bereits 2003 beschrieb Eric Evans in seinem Buch "Domain Driven Design" [Evans03] die Notwendigkeit der engen Zusammenarbeit von Softwareentwicklern und Domänenexperten bei der erfolgreichen Entwicklung von Softwaresystemen. Findet diese enge Zusammenarbeit nicht statt, besteht die Gefahr, Lösungen zu entwickeln, die an den Bedürfnissen der Anwender zu guten Teilen vorbei gehen und die Domäne nur unzureichend abbilden. Die enge Zusammenarbeit mit den Fachexperten des Kunden deckt sich mit den Anforderungen der agilen Softwareentwicklung, wie sie andrena seit jeher betreibt.

Darüber hinaus definiert Evans in seinem Buch eine Reihe von Praktiken, die dabei helfen, verschiedene Bereiche eines komplexen Systems in mehrere kleinere Teile zu trennen. Dieses Vorgehen hat in letzter Zeit insbesondere durch das zunehmende Aufkommen von Microservices an Relevanz gewonnen.

andrena bietet in diesem Rahmen einen Workshop an, um ein klares Verständnis einer Fachdomäne zu erlangen. Dazu wird die Methode "Event Storming" genutzt und die Domäne als Summe ihrer fachlichen Ereignisse dargestellt. Dazu kommt die Identifikation der verschiedenen Bereiche und Bausteine, aus denen eine Anwendung für die betreffende Domäne aufgebaut sein sollte.

[Evans03]: Evans, E.: Domain-Driven Design: Tackling Complexity in the Heart of Software, Addison-Wesley, 2003, ISBN 0132181274, 9780132181273

Stefan Dürrfeld, Softwareentwickler

„Die enge Zusammenarbeit mit den Fachexperten des Kunden ist für mich sehr wichtig, um ein tiefgehendes Verständnis der Fachdomäne zu erlangen und Entwicklungen an den Kundenbedürfnissen vorbei möglichst zu vermeiden. Das Ausrichten des Codes an der Fachlichkeit -wie von DDD propagiert- hilft mir dabei, die Sprache der Fachexperten zu übernehmen und mich besser mit ihnen über die Software auszutauschen."

 

Fachartikel zu Domain Driven Design
Podcast-Folgen bei "andrena entwickelt"
Vorträge (Links zu externen Seiten) und Workshops