<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Dienstekomposition</id>
	<title>Dienstekomposition - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Dienstekomposition"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Dienstekomposition&amp;action=history"/>
	<updated>2026-06-03T20:49:25Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Dienstekomposition&amp;diff=1389960&amp;oldid=prev</id>
		<title>imported&gt;Predatorix: /* Abgrenzung Orchestrierung und Choreographie */ vektorisierte Version eingebunden</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Dienstekomposition&amp;diff=1389960&amp;oldid=prev"/>
		<updated>2024-08-17T16:02:14Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Abgrenzung Orchestrierung und Choreographie: &lt;/span&gt; vektorisierte Version eingebunden&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Dienstekomposition&amp;#039;&amp;#039;&amp;#039; ({{enS|service composition}}) ist ein Begriff aus der [[Informatik]] und beschreibt die Art und Weise, wie Dienste miteinander verknüpft sind. Da der Begriff meistens im Bereich der [[Serviceorientierte Architektur|serviceorientierten Architektur]] verwendet wird, ist er auch unter &amp;#039;&amp;#039;Web Service Composition&amp;#039;&amp;#039; geläufig. Es werden zwei Arten der Kompositionen unterschieden: &amp;#039;&amp;#039;Orchestrierung&amp;#039;&amp;#039; und &amp;#039;&amp;#039;Choreographie&amp;#039;&amp;#039;. Eine Dienstekomposition kann aus einer oder beiden Arten bestehen.&lt;br /&gt;
&lt;br /&gt;
== Orchestrierung ==&lt;br /&gt;
Orchestrierung (englisch &amp;#039;&amp;#039;{{lang|en|orchestration}}&amp;#039;&amp;#039;, Instrumentierung, Inszenierung) ist das flexible Kombinieren mehrerer Services zu einer Komposition. Diese Komposition beschreibt einen ausführbaren [[Geschäftsprozess]]. Sowohl unternehmensinterne als auch unternehmensexterne Dienste können kombiniert werden. Der Prozessfluss wird durch einen Teilnehmer gesteuert. Jeder Dienst hat dabei einen eingeschränkten Sichtbereich (englisch &amp;#039;&amp;#039;{{lang|en|scope}}&amp;#039;&amp;#039;) und kann für Prozesse nur innerhalb seines Sichtbereichs entscheiden. Aktivitäten hinter einem direkten Kommunikationspartner bleiben verborgen.&lt;br /&gt;
[[WS-Business Process Execution Language|WS-BPEL]] ist ein Beispiel für eine Sprache zur Orchestrierung von [[Webservice]]s.&lt;br /&gt;
&lt;br /&gt;
== Choreographie ==&lt;br /&gt;
Bei der Choreographie (englisch &amp;#039;&amp;#039;{{lang|en|choreography}}&amp;#039;&amp;#039;) beschreibt jeder Dienst seine eigene Aufgabe in der gesamten Komposition. Es gibt keinen zentralen Punkt, der die Korrektheit sicherstellt und die Aufgabenerfüllung steuert. Der Fokus liegt auf dem Nachrichtenaustausch zwischen den Diensten. [[WS-Choreography Description Language|WS-CDL]] ist ein Beispiel für eine Choreographiesprache.&lt;br /&gt;
&lt;br /&gt;
== Abgrenzung Orchestrierung und Choreographie ==&lt;br /&gt;
[[Datei:Orchestration vs choreography_de.svg|mini|Abgrenzung Orchestrierung und Choreographie]]&lt;br /&gt;
Die Orchestrierung enthält eine Beschreibung der Services, ihre Bedingungen zum Aufruf sowie Abhängigkeiten und Alternativen. Dabei ist der Prozess aus der Perspektive eines der „Beteiligten“ gesehen, das heißt, dieser ruft andere Prozesse auf. Im Gegensatz dazu beschreibt Choreographie, wie die einzelnen Prozesse untereinander agieren. Entsprechend dem Schema rechts ist die Orchestrierung die lokale Beschreibung eines (Geschäfts-)Prozesses (blau umrahmt), wohingegen die Choreographie die Interaktion mehrerer Prozesse umfasst (rot umrahmt).&lt;br /&gt;
&lt;br /&gt;
Man kann den Unterschied zwischen Orchestrierung und Choreographie auch anschaulich am Beispiel einer Straßenkreuzung erklären:&lt;br /&gt;
Orchestrierung entspricht einer Ampelsteuerung zur zentralen Steuerung sämtlicher Fahrzeuge durch Lichtzeichen. Choreographie entspricht dagegen einem Kreisverkehr ohne zentrale Steuerung. Allgemeine Regeln im Kreisverkehr legen fest, wie Fahrzeuge in den Kreisverkehr einbiegen und diesen dann wieder verlassen.&amp;lt;ref&amp;gt;Nicolai Josuttis: &amp;#039;&amp;#039;SOA in der Praxis&amp;#039;&amp;#039;. 2008, S.&amp;amp;nbsp;121&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ein weiteres Beispiel wäre die Situation in einem klassischen Orchester: Betrachtet man aus der Sicht eines Orchestermitglieds eine Einzelstimme, dann entspricht dies der Choreographie. Schaut man hingegen durch die Augen des [[Dirigent]]en auf die [[Partitur]], dann bekommt man einen Überblick über das, was insgesamt abläuft. Folglich entspricht dies der Orchestrierung.&lt;br /&gt;
&lt;br /&gt;
== Beispiele ==&lt;br /&gt;
Als Beispiel für eine Orchestrierungssprache wäre [[WS-Business Process Execution Language|WS-BPEL]] zu nennen. Im Gegensatz dazu wäre [[WS-Choreography Description Language|WS-CDL]] ein Beispiel für eine Choreographiesprache. Dienstkomposition wurde auch in öffentlich geförderten Forschungsprojekten beforscht, welche für verschiedene Domänen und verschiedene Beschreibungssprachen Dienstkomposition untersuchen. Ein Beispiel für eine solche Domäne ist die Elektromobilität und die dazugehörigen Dienstleistungen&amp;lt;ref&amp;gt;Endbericht des Forschungsprojektes EMD: &amp;#039;&amp;#039;Erweiterbare und adaptive Elektro-Mobilitätsdienste&amp;#039;&amp;#039;, 2016, https://edocs.tib.eu/files/e01fb16/87395324X.pdf&amp;lt;/ref&amp;gt;. Ein mehr technisches Beispiel ist der Ansatz SEMAPLAN von Akkiraju&amp;lt;ref&amp;gt;{{Literatur |Autor=R. Akkiraju, B. Srivastava, A. Ivan, R. Goodwin, T. Syeda-Mahmood |Titel=SEMAPLAN: Combining Planning with Semantic Matching to Achieve Web Service Composition |Sammelwerk=2006 IEEE International Conference on Web Services (ICWS&amp;#039;06) |Verlag=IEEE |Ort=Chicago |Datum=2006-09 |ISBN= |Seiten=37–44 |Online=https://ieeexplore.ieee.org/document/4032010/ |Abruf=2019-01-21 |DOI=10.1109/ICWS.2006.119}}&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Diensteorchestrierung aus Konzeptsicht ==&lt;br /&gt;
Ein anderer Ansatz, Orchestrierung in der [[Informationstechnik|IT]] zu beschreiben, nutzt eine weiter gefasste und undifferenzierte Sicht auf die nötigen Konzeptebenen und Technologien, die bei der Zusammenarbeit von Services zur gemeinsamen Leistungserbringung relevant sind. Die Orchestrierung spielt sich demzufolge in einem weiten Feld ab und berührt u.&amp;amp;nbsp;a. folgende Bereiche:&lt;br /&gt;
* [[Geschäftsprozessmodellierung]]&lt;br /&gt;
* [[Prozessmanagement|Prozesssteuerung]] und -beschreibung&lt;br /&gt;
* [[Verzeichnisdienst|Serviceverzeichnis]]&lt;br /&gt;
* [[WSDL|Servicebeschreibung]]&lt;br /&gt;
* Kommunikationsabsicherung und Methoden-Aufrufe&lt;br /&gt;
* Nachrichtenprotokolle und -struktur.&lt;br /&gt;
&lt;br /&gt;
Für diese Konzeptebenen gibt es unterschiedliche Lösungen, die jeweils eigene technologische Schwerpunkte setzen.&lt;br /&gt;
&lt;br /&gt;
=== Diensteorchestrierung in statischen Prozessumgebungen ===&lt;br /&gt;
&lt;br /&gt;
Für verschiedene Anwendungsbereiche wurde das Zusammenspiel bestimmter Techniken auf einigen Konzeptebenen vielfach erprobt, wodurch sich gewisse Best-Practices etabliert haben. So wird in Umgebungen, die eine serviceorientierte Architektur auf Basis von [[Webservice]] ermöglichen und zusätzlich eher statische Prozesse implementieren (wie beispielsweise die Schnittstelle von [[Google AdWords]]), sehr häufig das Dreigespann [[Web Services Description Language|WSDL]], [[Universal Description, Discovery and Integration|UDDI]] und [[SOAP]] eingesetzt. Hierbei werden sowohl die Beschreibung und Identifikation der Dienste als auch der Aufbau und die zuverlässige Durchführung der Kommunikation zwischen den Systembeteiligten ermöglicht.&lt;br /&gt;
&lt;br /&gt;
=== Diensteorchestrierung in dynamischen Prozessumgebungen ===&lt;br /&gt;
Beim Einsatz von [[Serviceorientierte Architektur|SOA]] in dynamischen Umgebungen, in denen das System sich auf flexibel ändernde Prozessabläufe und unvorhersehbare Dienst-Verfügbarkeiten einstellen muss, stößt die oben genannte Technologiekombination an Grenzen.&lt;br /&gt;
&lt;br /&gt;
In solchen Umgebungen stehen zusätzlich zu den oben genannten Herausforderungen zur Dienste-Beschreibung und System-Kommunikation andere Aspekte im Fokus der SOA-Lösung. Der dynamischen Dienste-Analyse, -Generierung und -Bindung kommt dann eine besondere Bedeutung zu. Diese setzt sowohl eine semantische Beschreibung der Dienste als auch eine Art intelligent agierender Orchestrierungsschicht voraus, die die Funktion eines rein passiven Dienste-Verzeichnisses (wie beispielsweise UDDI) entscheidend erweitert.&lt;br /&gt;
&lt;br /&gt;
Solche semantischen bzw. ontologischen Ansätze zur Diensteorchestrierung finden sich beispielsweise beim [[Adaptive Services Grid]], wobei bislang keine Fälle von dynamischer Dienstekomposition bekannt sind. Statt semantischer Verfahren wäre auch eine einfache thematische Gliederung oder eine Standardisierung von Parametern innerhalb einer Plattform eine Alternative.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Softwarearchitektur]]&lt;br /&gt;
[[Kategorie:Webservice]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Predatorix</name></author>
	</entry>
</feed>