Ein weiterer Schlüsselaspekt des Servicemodells, der während der Spezifikation entwickelt werden muss,
ist die Erfassung der wechselseitigen Abhängigkeiten von Services. Verschiedene Abhängigkeiten werden per se als Teil des Servicemodells erfasst. Sie
können offensichtlich wie die Beziehung zwischen einem Service und seiner Spezifikation oder aber komplexer sein, wie
z. B. die logische Beziehung zwischen zwei unabhängigen Services, da sie beide dieselbe Spezifikation implementieren.
Diese (in im Servicemodell und im Bericht Serviceabhängigkeiten beschriebenen) Abhängigkeiten tragen wesentlich dazu bei, die
Möglichkeit der Implementierung eines Service als autonome Einheit zu verstehen, und beeinflussen die Entstehung des
Service in dem Sinne, dass die Änderungsmöglichkeiten eines Service mit wachsender Zahl von Abhängigkeiten immer
geringer werden.
Serviceabhängigkeiten beschreiben die Beziehungen zwischen Services, die sich aus dem größeren Kontext der Verwendung
der Services ergeben. Wenn ein Service durch die Komposition anderer Services entsteht, ist er von den Services
abhängig, aus denen er sich zusammensetzt. Services, die im Kontext eines Geschäftsprozesses verwendet werden, haben
eine prozessbezogene Abhängigkeit, die sich aus der inhärenten Abfolge von Schritten im Geschäftsprozess ergibt. Diese
Abfolge diktiert die Reihenfolge, in der Services verwendet werden.
-
Funktionale Abhängigkeiten / Kompositionsabhängigkeit infolge der Komposition mehrerer Services
-
-
Beispiel: Der Service "Fahrzeug reservieren" hängt funktional von den Services "Preise prüfen" und
"Reservierung vornehmen" ab.
-
Zeitliche Abhängigkeit - Bei dieser Abhängigkeit gibt es eine Vor- oder Nachbedingung oder eine
Verarbeitungsanforderung, die bei Kompositionen oder Choreographien berücksichtigt werden muss.
-
-
Abhängigkeit von Vorbedingungen - Bevor mit der Ausführung des aktuellen Aufrufs begonnen werden
kann, muss ein anderer Service erfolgreich aufgerufen worden sein.
-
Verarbeitungsabhängigkeit - Für einen erfolgreichen Abschluss des aktuell ausgeführten Service ist
der Aufruf eines anderen Service erforderlich.
-
Abhängigkeit von Nachbedingungen - Diese Abhängigkeit tritt auf, wenn ein Service nach seiner
Ausrührung den Aufruf eines weiteren Service erfordert.
Diese Abhängigkeiten können oft Bestandteil des Entscheidungsprozesses sein, den ein Serviceclient durchlaufen muss,
wenn er einen Service wiederverwenden möchte, insbesondere, wenn mehrere Implementierungen zur Auswahl stehen.
Die wichtigen Abhängigkeiten/Zuordnungen im Servicemodell sind folgende:
-
Die Beziehung zwischen einem Service und den Serviceprovidern, die ihn implementieren.
-
Die Beziehung zwischen einem Service und der Servicespezifikation, die er implementiert.
-
Die Beziehung zwischen einem Service und jeder Servicespezifikation, die er erfordert.
-
Die Beziehung zwischen einem Service und jedem Servicekanal, der ihn mit anderen Services verbindet, mit anderen
Worten, mit dem Service am anderen Ende des Kanals.
-
Die Beziehung zwischen einem Service und jeder Servicespezifikation, in der der Service erscheint.
Daher ist es wichtig, dass alle Servicespezifikationen vollständig sind, nicht nur im Hinblick auf die Operationen und
Nachrichten, die sie bieten, sondern auch hinsichtlich aller Abhängigkeiten, wie z. B. erforderlicher Schnittstellen
für Callback-Operationen. Der Bericht Serviceabhängigkeiten enthält eine Übersicht über die wichtigen Abhängigkeiten
für das Servicemodell.
|