Web-Service-Lösung für eine serviceorientierte Architektur
Sie können Web-Services in einer SOA-Umgebung (Service-Oriented Architecture, serviceorientierte Architektur) verwenden.
Mit Hilfe von Web-Services kann eine SOA implementiert werden. Der Hauptansatz von Web-Services ist die Erstellung funktionaler Bausteine, die über Standard-Internet-Protokolle zugänglich sind und von Plattformen und Programmiersprachen unabhängig sind. Die Services können neue Anwendungen sein oder vorhandene traditionelle Systeme integrieren, um diese netzfähig zu machen. Ein Service kann sich zum Erreichen seiner Zielsetzungen auf andere Services stützen.
- Service-Provider
Der Service-Provider erstellt einen Web-Service und veröffentlicht die zugehörigen Schnittstellen- und Zugriffsinformationen in der Service-Registry. Jeder Provider muss entscheiden, welche Services veröffentlicht werden und welche Kompromisse zwischen Sicherheit und bequemer Verfügbarkeit zu treffen sind. Außerdem muss er den Preis für die Services festlegen oder aber bei kostenloser Bereitstellung entscheiden, wie die Services veröffentlicht werden, um anderweitigen Nutzen daraus zu ziehen. Der Provider muss darüber hinaus entscheiden, welcher Kategorie der Service für einen bestimmten Broker-Service zuzuordnen ist und welche Art von Vereinbarungen zwischen Handelspartnern erforderlich sind, damit der Service verwendet werden kann.
- Service-Broker
Der Service-Broker, auch Service-Registry genannt, ist dafür verantwortlich, die Zugriffsinformationen für Web-Service-Schnittstelle und -Implementierung allen potenziellen Anforderern des Service bereitzustellen. Der Benutzer des Broker muss den Wirkungsbereich des Broker festlegen. Öffentliche Broker sind im gesamten Internet verfügbar, wohingegen private Broker nur einer begrenzten Zielgruppe zugänglich sind, z. B. den Benutzern eines Intranets. Außerdem müssen gewisse Entscheidungen bezüglich der Menge der angebotenen Informationen getroffen werden. Einige Broker spezialisieren sich auf die Bereitstellung möglichst vieler Listen. Andere Broker legen ihr Interesse verstärkt darauf, möglichst vertrauenswürdige Services bereitzustellen. Einige Broker decken eine große Bandbreite von Services ab und andere konzentrieren sich auf eine bestimmte Branche. Es gibt außerdem Broker, die andere Broker katalogisieren. Je nach Geschäftsmodell können Broker versuchen, die Suchanforderungen, die Anzahl der Listen und die Genauigkeit der Listen zu optimieren. Die UDDI-Spezifikation (Universal Description Discovery and Integration) definiert eine Methode zur Veröffentlichung und Erkennung von Informationen zu Web-Services.
- Serviceanforderer
Der Serviceanforderer oder Web-Service-Client sucht über verschiedene Suchoperationen Einträge in der Broker-Registry und stellt dann eine Bindung zum Service-Provider her, um einen seiner Web-Services aufzurufen.

Merkmale der SOA:
- Ein Client ist an einen Service gebunden. Deshalb findet die Integration des Servers außerhalb des Sichtbereichs der Clientanwendungsprogramme statt.
- Alte und neue Funktionsbausteine oder Anwendungen und Systeme werden zu Komponenten zusammengefasst, die als Services arbeiten.
- Funktionale Komponenten und die zugehörigen Schnittstellen sind voneinander getrennt und lassen damit eine einfachere Integration neuer Schnittstellen zu.
- In komplexen Anwendungen kann die Steuerung von Geschäftsprozesseen isoliert werden. Es kann eine Engine für Geschäftsregeln integriert werden, die den Workflow eines definierten Geschäftsprozesses steuert. In Abhängigkeit vom Status des Workflow ruft die Engine die entsprechenden Services auf.
- Services können dynamisch zur Laufzeit integriert werden.
- Bindungen werden in Konfigurationsdateien definiert und können einfach an neue Anforderungen angepasst werden.
Eigenschaften einer serviceorientierten Architektur:
- Web-Services sind in sich geschlossen.
Auf der Clientseite ist keine zusätzliche Software erforderlich. Eine Programmiersprache mit XML- und HTTP-Clientunterstützung reicht für den Einstieg aus. Auf der Serverseite werden lediglich ein Web-Server und ein SOAP-Server benötigt. Es ist möglich, eine vorhandene Anwendung für die Unterstützung von Web-Services zu konfigurieren, ohne eine einzige Zeile Code schreiben zu müssen.
- Web-Services sind selbst beschreibend.
Weder der Client noch der Server muss sich um etwas anderes kümmern als das Format und den Inhalt der Anforderungs- und Antwortnachrichten (locker gebundene Anwendungsintegration). Die Definition des Nachrichtenformats wird mit der Nachricht übergeben. Es sind keine externen Metadatenrepositorys oder Tools für Codegenerierung erforderlich.
- Web-Services können über das Internet veröffentlicht, gesucht und aufgerufen werden.
Diese Technologie verwendet etablierte Lightweight-Internet-Standards wie HTTP und nutzt die vorhandene Infrastruktur. Zu den weiteren erforderlichen Standards gehören unter anderem SOAP, Web Services Description Language (WSDL) und UDDI.
- Web-Services sind von Programmiersprachen unabhängig und interoperabel.
Client und Server können in unterschiedlichen Umgebungen implementiert sein. Der vorhandene Code muss nicht geändert werden, damit Web-Services verwendet werden können.
- Web-Services sind von ihrer Natur her offen und standardbasiert.
XML und HTTP bilden die wichtigste technische Grundlage für Web-Services. Ein großer Teil der Web-Service-Technologie basiert auf der Verwendung von Open-Source-Projekten.
- Web-Services sind dynamisch.
Dynamisches E-Business kann mit Web-Services zur Realität werden, weil durch UDDI und WSDL die Beschreibung und Erkennung von Web-Services automatisierbar ist.
- Web-Services können zusammengestellt werden.
Einfache Web-Services können mit Workflow-Techniken oder durch den Aufruf untergeordneter Web-Services von einer Web-Service-Implementierung zu komplexeren Web-Services zusammengestellt werden. Für die Ausführung übergeordneter Geschäftsfunktionen können Web-Services verkettet werden. Diese Kettung verkürzt die Entwicklungszeit und ermöglicht die Verwendung von Implementierung erster Güte.
- Lockere Bindung von Web-Services.
Traditionell ist das Anwendungsdesign von engen Bindungen zwischen beiden Seiten abhängig. Web-Services erfordern eine eine einfachere Ebene der Koordination, die eine flexiblere Neukonfiguration für die Integration der betreffenden Services erfordert.
- Web-Services unterstützen programmgesteuerte Zugriffe.
Die Web-Service-Lösung erfordert keine grafische Benutzerschnittstelle, sondern arbeitet auf Codeebene. Servicekonsumenten müssen zwar die Schnittstellen zu den Web-Services, aber keine Details zu den Services kennen.
- Mit Web-Services können vorhandene Anwendungen integriert werden.
Bereits vorhandene eigenständige Anwendungen können durch die Implementierung eines Web-Service als Schnittstelle einfach in die serviceorientierte Architektur (SOA) integriert werden.