Frage

Kontext:   Also, ich bin versucht, ein lächerlich komplexes Domänenmodell zu bauen. Im Gespräch mit den Benutzern, gibt es mehr Möglichkeiten, das System (Beispiel: ein Weg ist, aus der Sicht des Arbeitnehmers, eine andere Art und Weise ist aus der Sicht des Arbeitgebers) verwendet werden. In Wirklichkeit sind sie mehr Anwendungen, die die Kerndomäne wiederverwendet.

Frage:   Ist es falsch, die Domain aus mehreren Perspektiven zu schaffen? Um zum Beispiel der Domain zu bauen, wie das Geschäft würde bedeuten ausgeführt alle Arten von Beziehungsklassen schaffen, die zusätzliche Informationen über das Unternehmen tragen und so weiter ... Wenn jedoch aus einer bestimmten Perspektive ausgeführt wird, das Bild ist viel klarer, da die meisten die Beziehungsklassen können in ihre Muttergesellschaft gerollt werden.

Ideen? Widerlegungen? Bin ich völlig off-base?

War es hilfreich?

Lösung

Nein, das ist absolut angemessen. Evans nennt diese 'Perspektiven' Bounded Contexts in seinem Buch.

Statt ein wirklich komplexes Domänenmodell zu haben, versuchen, einen einfaches Gebäude, die wirklich gut die Domäne in einer bestimmten Art und Weise adressiert. Bounded Contexts können miteinander verbunden werden, um ein Netz von kleineren, einfacher, direkter Domain-Modelle zu bilden.

Andere Tipps

Ich glaube nicht, sollten Sie versuchen, die ‚Kerndomäne‘ vorne vordefinieren. Lassen Sie es den Entwicklungsprozess entstehen über. Darüber hinaus alles, was nicht gemeinsam mit den 2 (oder mehr) Perspektiven ist nicht im ‚Kern‘ sein.

beispielsweise einen Teil des Systems aus der Sicht employeer bauen. Dies könnte Sie auffordern Entitäten wie ‚Projekt‘ zu schaffen, ‚Aufgabe‘ und ‚Kunde‘. Dann baut einen Teil aus der employeer Perspektive. Dies könnte Sie auffordern, neue Einheiten zu bauen, und die Wiederverwendung ‚Projekt‘ und ‚Aufgabe‘. Das ist, wenn ich ‚Projekt‘ bewegen würde und ‚Aufgabe‘ auf die ‚Kern-Bibliothek‘ vom Rest des Systems geteilt wird.

Manchmal werden Sie gemeinsame Einheiten finden, aber auf unterschiedliche Weise zusammen. In diesem Fall sollte die Beziehung durch den Kontext injiziert werden, statt mit den Entitäten integrierten selbst zu werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top