Donnerstag, 5. Juli 2012

Domain-Driven Design (DDD), was ist das?

Gewöhnlich versucht der Softwareentwickler bei Projektstart sofort mittels UML ein Klassendiagramm zu entwerfen. Bei dieser Vorgehnsweise ist das Problem, dass keine Modellierung und somit keine Abstraktion stattfindet.

Mit Domain-Driven Design schafft man sich mit einem entsprechendem Domänenmodell ein passendes Abstraktionsniveau, mit dem eine gemeinsame Sprache gesprochen werden kann (Ubiquitäre Sprache). Der Kunde/Anwender ist somit auf demselben Gesprächslevel wie das Entwicklerteam. Man spricht sozusagen eine gemeinsame Sprache mit der ein einheitliches Verständnis erreicht wird.

Die Basis von Domain-Driven Design sind eine gemeinsame, domänenspezifische Sprache und ein Domänenmodell.

Die Vorteile von Domain-Driven Design
Der große Vorteil von Domain-Driven Design ist die anforderungsorientierte Darstellung von Geschäfts- und Fachlogik (das Domänenmodell) in einer nutzerorientierten gemeinsamen Sprache (Ubiquitäre Sprache). Das Ergebnis: Schnellere Analyse-, Design- und Entwicklungsprozesse und Nutzer-/Anwendergerechtere Softwarelösungen. Diese Lösungen bilden die Domäne des Kunden adäquat ab, können leicht geändert werden und lassen sich optimal weiterentwickeln.

Hier einige interessante Links zum Thema Domain-Driven Design:
http://ralfw.blogspot.de/2009/09/modelle-fur-geschaftsanwendungen-mit.html
http://de.wikipedia.org/wiki/Domain-Driven_Design
http://www.slideshare.net/markusgoldbeck/domain-driven-design-10513309
http://domaindrivendesign.org/


Keine Kommentare: