Bestimmte Lösungsklassen stützen sich häufig auf die Verwendung von Geschäftsregeln, um die Variabilität der
Lösung zu extrahieren und so zu externalisieren, dass die Regeln außerhalb der Hauptanwendungslogik weiterentwickelt
werden können. Aus einem Geschäftsmodell, das Geschäftsentitäten und Geschäftsregeln enthält, können Services definiert
werden, die die Geschäftsregeln kapseln und so aus der übrigen Logik der Lösung externalisieren. Das folgende Diagramm
veranschaulicht ein kleines, beispielhaftes Geschäftsanalysemodell, das zwei der Geschäftsentität "Auftrag" zugeordnete
Geschäftsregeln zeigt. Diese Regeln entsprechen bei ihrer Zuordnung zu einer Geschäftsentität am wahrscheinlichsten
Invarianten der Entität und werden demzufolge bei einer Änderung des Entitätszustands als solche bewertet. Regeln
können auch Aktionen oder Prozessen zugeordnet werden und werden häufiger als Vor- oder Nachbedingungen der Aktion
ausgewertet.
Bei der Modellierung des obigen Beispiels wird davon ausgegangen, dass eine rückverfolgbare Beziehung zwischen den von
den Geschäftsregeln abgeleiteten Servicespezifikationen sowie zwischen den von der Geschäftsentität abgeleiteten
Nachrichten besteht.
In vielen Fällen werden komplexe Regeln zu Regelgruppen zusammengefasst, die der viel eher der Unterteilung der
Services entsprechen und z. B. die Möglichkeit bieten, ein Dokument an den Validierungsservice zu übergeben, der dann
die Regelgruppe auswerten und die Ergebnisse zurückgeben kann. Anhand des obigen Beispiels kann man sich leicht
vorstellen, dass die Validierungsservices eine ziemlich komplexe Gruppe von Regeln für die Validierung der
Kompatibilität bestellter Artikel, der Stückzahlen usw. verkörpern.
|