SOA
Der praktische Nutzen
Von Daniel Liebhart
2. Teil:
Wofür sich SOA besonders eignet
Wofür sich SOA besonders eignet
Eine Anwendung wird zur Sequenz von einzelnen Prozessschritten. Jeder Schritt stellt einen Service dar. Die Sequenz selbst wird als ausführbarer Prozess oder auch Workflow graphisch modelliert und zur Laufzeit ausgeführt. Ändert sich nun ein Geschäftsprozess, so muss lediglich der entsprechend modellierte Prozess nachgeführt werden. Die neuen Prozessinformationen werden geladen und die Änderung ist durchgeführt. Auf SOA basierende Systeme sind wesentlich flexibler als mit konventionellen Mitteln umgesetzte Anwendungen.
Der SOA Blueprint
Der SOA Blueprint umfasst die Ebenen Presentation, Orchestration, Services, Integration Architecture, Applications und die Virtualized Infrastructure. Es besteht eine grundlegende Teilung zwischen Applikationen, Integrationsmechanismen, Diensten und der Orchestrierung. Die Applikationen beinhalten bestehende oder auch neue Systeme und logische Datenspeicher. Die Dienste stellen Schnittstellen zu den einzelnen Anwendungen dar. Die Orchestrierung dient zur Steuerung von Abläufen, die mittels Einbezug mehrerer Dienste durchgeführt werden. Die Kommunikation zwischen Diensten untereinander und deren applikatorische Umsetzung erfolgt über eine Integrationsarchitektur.
Alle wichtigen Hersteller wie etwa IBM

, Microsoft

, Oracle

und SAP

gehen von ähnlichen SOA-Modellen aus und unterstützen das Konzept mit einer Reihe von Produkten, die im jeweiligen SOA-Stack aufgelistet sind. Die meisten anderen Hersteller von Standardsoftware stellen bereits Funktionen als standardisierte Services zur Verfügung oder planen die entsprechenden Updates ihrer Produkte. Man kann davon ausgehen, dass die Produkte verschiedener Hersteller auch aufeinander passen werden.
SOA ist geradezu prädestiniert für die Lösung von komplexen Aufgabenstellungen wie beispielsweise die Modernisierung bestehender Systeme, also die Weiterverwendung bestehender Assets eines Unternehmens. Der Kostenvorteil, eine bestehende Anwendung und deren Funktionalität weitere Jahre nutzen zu können, ist unübersehbar. Zu diesem Zweck muss die Anwendung jedoch modernisiert werden. Konkret bedeutet dies, dass sich die Funktionalität als Webservice bereitstellen lassen muss.
Schnittstellenproblem im Griff
Ein anderes Beispiel ist die schrittweise Migration großer Legacy-Systeme. Auch hier bietet SOA aufgrund der Flexibilität und Mächtigkeit der SOA-Komponenten entsprechende Mechanismen. Sie gestatten es, auch sehr große und komplexe Legacy-Systeme geordnet und kontrolliert abzulösen.
Die Komponenten einer SOA
Presentation: Das User-Interface einer mittels SOA realisierten Anwendung wird entweder als Portal, als Office-Application oder als Client-Application realisiert. Client Applications können sowohl als Rich Client oder auch als Web Client umgesetzt werden.
Orchestration: Die Orchestration-Ebene bildet Geschäftsprozesse und Geschäftsregeln in einer SOA ab. Sie ist für den dynamischen Bereich der Business-Logik einer auf SOA basierenden Anwendung zuständig.
Service: In dieser Ebene sind die Mechanismen zur Verwaltung von Diensten, die standardisierten Serviceschnittstellen sowie die spezialisierten Dienste zu finden.
Integration Architecture: Die Infrastruktur zur Verknüpfung der verschiedenen Dienste und zur Verbindung von Diensten mit bestehenden Anwendungen oder Datenbanken sowie zur Koppelung von Services mit den Bestandteilen der Presentation-Ebene.
Ein besonderer Leckerbissen ist die Möglichkeit, mittels SOA das leidige Schnittstellenproblem in den Griff zu bekommen. Schnittstellen verursachen die Hälfte des Gesamtaufwands für die Umsetzung einer Lösung und knapp 50 Prozent aller Fehler. Schnittstellen basierend auf SOA zu bauen, ist ein neuer Ansatz, der sich in der Praxis bewährt hat.
Die Strukturierung von Schnittstellen durch Service Groups, die Bereitstellung spezieller Konversions- und Transformationsdienste und die Steuerung von Abläufen durch BPEL (Business Process Execution Language) erlaubt flexible und rationelle Ansätze beim Schnittstellenbau. Sie sind jeder anderen Realisierung bezüglich Änderungsfreundlichkeit und Betriebskosten weit überlegen. Außerdem können mit SOA komplexe, unternehmensweite Lösungen, wie beispielsweise die Stammdatenverwaltung, relativ einfach umgesetzt werden. SOA hilft so, die durchschnittliche Datenqualität in einem Unternehmen zu steigern.
Weitere Artikel zu Diesem Thema