Service-orientierte Architektur (SOA)
Der Begriff Service-orientierte Architektur (Service Oriented Architecture/SOA) ist in aller Munde. Auch die Presse in der Informations- und Telekommunikationsbranche diskutiert dieses Thema zurzeit sehr intensiv. Wir versuchen eine Möglichkeit zur Annäherung an das Thema aufzuzeigen und beschäftigen uns daher mit den Fragen: "Was ist SOA?", "Wann setze ich SOA ein?" und "Welche Vorteile bringt SOA langfristig?".
Service Oriented Architecture - erklärt
SOA im Allgemeinen beschreibt eine Software-Infrastruktur, in der Softwaremodule als Services organisiert sind, die über das Netzwerk von anderen Systemen genutzt werden können. Monolithische Strukturen, wie sie Ende der 90er Jahre noch eingesetzt wurden, erfüllen die Anforderungen von heute nur noch unzureichend, denn besonders die Integration vieler heterogener Systeme miteinander bereitet in monolithischen Strukturen Probleme. Und hier setzt die SOA an. Die Ausrichtung von SOA an bestehenden Geschäftsprozessen durch eine so genannte "Service Orchestration" hilft dabei die IT besser an der bestehenden Geschäftswelt auszurichten.
Services, die innerhalb einer SOA angeboten und von anderen System genutzt werden unterliegen dabei strengen Regeln. Verträge (Contracts) bestimmen, welche Nachrichten Services annehmen, wie diese formatiert sein müssen, usw. Dabei wird noch nicht auf die eigentliche Implementation Bezug genommen, sondern die Services nur deklarativ beschrieben. Was verspricht man sich davon? Eine bessere Interoperabilität von verschiedensten Services, die auf unterschiedlichen Plattformen, wie Microsoft .NET oder J2EE zur Verfügung gestellt werden.
Lose Kopplung für höhere Verfügbarkeit und reliable Messaging
WebServices bilden die Grundlage für die Service Oriented Architecture. Sie sind die Schnittstellen aller Services und nehmen die vorher per Vertrag festgelegten Nachrichten an. Durch die nachrichtenbasierten Kanäle erreicht man eine lose Kopplung von Systemen, man vermeidet das Warten auf eine Antwort. Was der Service nun mit dieser Nachricht tut, bleibt für das aufrufende System verborgen. Wir kommen also weg von der vorherrschenden Meinung und in der Realität häufig anzutreffenden Tatsache, dass WebServices nichts anderes als Remote Procedure Calls sind, die mit ein wenig XML aufgewertet werden.
Vorteile und Nutzen
Der Gedanke der SOA nutzt insofern, da Sie auf der Ebene von Geschäftsprozessen modelliert wird und somit die Wartung bestehender Systeme und die Implementation neuer Services erleichtert. Technische Einzelheiten sind bei der Planung von Services nicht mehr so wichtig, als dass sie ein Show-Stopper für die Einführung eines neuen Services oder die Änderung eines bestehenden werden können. Natürlich wird es auch in Zukunft immer ein Team geben müssen, das Services implementiert, aber die Kommunikation mit bestehenden Systemen und anderen Teilnehmern im SOA-Konstrukt wird deutlich einfacher und planbarer.
Auch swift.consult sieht die Service Oriented Architecture als den Weg in die richtige Richtung und ist überzeugt, dass diese Architekturform in Zukunft einen großen Stellenwert wird und nach und nach andere Strukturen ablöst. Haben wir Ihr Interesse geweckt oder möchten Sie mit uns über dieses Thema diskutieren? Zögern Sie nicht uns zu kontaktieren. Wir freuen uns auf Ihre Ideen, Anregungen und Fragen.
Weiterführende Informationen
Service Oriented Architecture - eine Einführung auf O'Reillys xml.com
Wissen
mehr erfahren