Herausforderung Brownfield, Teil 6: Partitionen durch Refaktorisierung evolvierbar machen

Seite 4: Exkurs: Bounded Context, Partition

Inhaltsverzeichnis

Bounded Context: Ein Anwendungssystem besteht mindestens aus einem Bounded Context. Dieser zeichnet sich dadurch aus, dass er die Hoheit über eigene Ressourcen hat (oft eine Datenbank). Gegebenenfalls besteht eine Anwendung aber auch aus mehreren Bounded Contexts, zwischen denen gezielt Informationen transferiert werden. Durch die Aufteilung behält jeder Context die Hoheit über seine Ressourcen. Dadurch lässt sich beispielsweise eine angemessene Technik auswählen, ohne dass davon die anderen Bounded Contexts der Anwendung betroffen sind. Ein solcher Context betrachtet das gesamte Anwendungssystem in einem bestimmten Kontext, daher der Name. Begriffe wie Kunde und Produkt können in verschiedenen Kontexten eine jeweils leicht andere Bedeutung haben.

Partition: Innerhalb eines Bounded Context liegen ein oder mehrere Partitionen. Sie können alle auf die Ressourcen des Bounded Context zugreifen. Die Ressourcen werden somit von den Partitionen innerhalb eines Bounded Context geteilt. Schemaänderungen oder Ähnliches wirken sich daher eventuell auf mehrere Partitionen aus. Ferner betrifft die Technikauswahl des Bounded Context alle darin enthaltenen Partitionen. Ein direkter Zugriff einer Partition auf die Ressourcen eines anderen Bounded Context ist nicht möglich. Partitionen dienen vor allem dazu, die unterschiedlichen Bedürfnisse verschiedener Rollen zu befriedigen. Eine Partition zur Massendatenerfassung benötigt beispielsweise eine andere Benutzerführung als ein Management-Informations System.

Siehe auch Teil 5. (ane)