article

Der Begriff Serviceorientierte Architektur (SOA) oder englisch Service Oriented Architecture, auch diensteorientierte Architektur, ist ein Managementkonzept und setzt erst in zweiter Linie ein Systemarchitektur-Konzept voraus:

  • Das Managementkonzept strebt eine an den gewünschten Geschäftsprozessen ausgerichtete IT-Infrastruktur an, die schnell auf veränderte Anforderungen im Geschäftsumfeld reagieren kann.
  • Das Systemarchitektur-Konzept sieht die Bereitstellung fachlicher Dienste und Funktionalitäten in Form von Services vor.

Ein Service ist in diesem Kontext als eine Funktionalität definiert, die über eine standardisierte Schnittstelle in Anspruch genommen werden kann. Er ist damit eine spezielle Ausprägung des bekannten Konzepts der Software-Komponente.

Einleitung


Kurzübersicht

Komplexe Geschäftsprozesse lassen sich durch Aneinanderreihung von Service-Aufrufen („Komposition von Services“) realisieren. Die Programmlogik ist nicht in einem einzigen Programm zu finden, sondern verteilt über mehrere unabhängige Dienste.

Die SOA sieht eine Menge voneinander unabhängiger, lose gekoppelter Dienste vor. Ein Dienst wird von einem service provider angeboten. Ein service consumer stellt eine Anfrage (service request) an einen Dienst und bekommt daraufhin eine Antwort (service response) vom Anbieter.

Oft werden für SOAs Web Services auf Basis der wenigen bestehenden Standards wie SOAP, WSDL und UDDI eingesetzt, doch kann eine SOA prinzipiell auf jeder dienstbasierten Technologie wie zum Beispiel CORBA, DCOM oder Enterprise Java Beans (EJB) aufgebaut werden. Da Services in unterschiedlichen Programmiersprachen und auf unterschiedlichen Systemplattformen realisiert werden können, wird eine SOA häufig zur Anwendungsintegration genutzt.

Ein weiteres wesentliches Ziel einer SOA ist die Kapselung von persistenten Daten durch Dienste, die exklusives Lese- und Schreibrecht auf „ihre“ Daten besitzen. Die hierdurch erzielte Modularität führt zu geringen Redundanzen und einer höheren Flexibilität der IT-Systeme, was häufig zu niedrigeren Betriebskosten führt.

Diesen Vorteilen steht allerdings oft ein erheblicher initialer Entwicklungsaufwand gegenüber. In der Regel muss die Geschäftslogik bereits existierender Unternehmensanwendungen durch Entwicklung geeigneter Adapter zu Services umgebaut werden.

Einführung

Die integrierte Betrachtung von Geschäftsprozess-Anpassungen und daran anschließende alsbaldige IT-Unterstützung-Anpassung ist der Grund für die hohe Aufmerksamkeit, die diesem Thema auf Geschäftsführungsebene entgegengebracht wird.

Definition

SOA Elements.png

Zuallererst ist der SOA-Ansatz verbunden mit einem Umdenken. Nicht nur die bloße Identifikation von Services (genauer: service producer und service consumer) im Geschäftsprozess ist nötig, sondern auch die fachliche Klärung des eigenen Geschäftsumfelds. Das Domänenmodell – also ein Modell mit den eigentlichen Objekten des Anwendungsbereiches und dessen Beziehungen zueinander – wird häufig unterschätzt oder komplett außen vor gelassen, obwohl doch die Integration einer heterogenen Umgebung mit deren zahlreichen Interdependenzen und Stakeholdern durch eine plattformunabhängige Lösung ein wesentliches Merkmal einer SOA ist. Die eigentliche Technik, die zur Erfüllung eingesetzt wird, sollte standardisiert sein und ist lediglich Mittel zum Zweck. Ein wesentlicher Aspekt bei der Entwicklung serviceorientierter Architekturen ist die Sicherstellung der Authentizität der über offene Schnittstellen angebotenen Services.

SOA ist ein System-Architekturkonzept, das unternehmensweit eingesetzt werden kann. Eine SOA ist ein Konzept für eine Systemarchitektur, in dem Funktionen in Form von wieder verwendbaren, technisch voneinander unabhängigen und fachlich lose gekoppelten Services implementiert werden. Services können unabhängig von zugrunde liegenden Implementierungen über Schnittstellen aufgerufen werden, deren Spezifikationen öffentlich und damit vertrauenswürdig sein können. Serviceinteraktion findet über eine dafür vorgesehene Kommunikationsinfrastruktur statt. Mit einer serviceorientierten Architektur werden in der Regel die Gestaltungsziele der Geschäftsprozessorientierung, der Wandlungsfähigkeit (Flexibilität), der Wiederverwendbarkeit und der Unterstützung verteilter Softwaresysteme verbunden.

Ziele

Primärziel ist, die historisch gewachsene, heterogene Systemlandschaft effizient an Änderungen im Geschäftsprozess anpassen zu können.

Sekundärziele sind:

  • Kostenvorteile durch schnelle Optimierung
  • Schnelle Reaktion auf Herausforderungen möglich
  • Mittelfristig Einsparungen

Elementarer Grundgedanke


  • Identifikation von Services ('service consumer' und 'service provider')
  • Trennung der Zuständigkeiten nach fachlichen Gesichtspunkten
  • Daten-Kapselung (ein Service ist ausschließlich zuständig für „seine Daten“, jeder 'service consumer' muss sein Interesse an den Daten bzw. an dem Service beim 'service provider' anmelden).

Vorgehen


Das folgende Vorgehen hat sich als günstig erwiesen:Wolfgang Herrmann: In zehn Schritten zur SOA.. In: Computerwoche. 07.12.2005. *
  1. Think BIG, Start small (denke groß, fange klein an)
  2. Fachabteilung einbinden
  3. Bestandsaufnahme
  4. Erste Services einbinden
  5. Registry installieren
  6. Governance regeln
  7. Sicherheit planen
  8. Messaging Infrastructure einrichten
  9. Service Management einrichten
  10. Services orchestrieren

Beispiel


Online-Brokerage – der Abschluss von Wertpapiergeschäften über das Internet – kann in einer SOA auf folgenden Diensten aufsetzen:
  • einem Wertpapierdienst, der handelbare Wertpapiere (Aktien, Fonds, ...) nennt
  • einem Marktdatendienst, der zu einem Wertpapier aktuelle Börsenkurse liefert
  • einem Depotdienst, der Zugriff auf das Wertpapierdepot des Anwenders erlaubt
  • einem Orderdienst, der Kauf-/Verkaufsaufträge des Anwenders an eine Börse übermittelt
  • einem Archivdienst, der alle Daten der Transaktion revisionssicher archiviert

Diese Dienste werden aus einer Webanwendung heraus aufgerufen.

Siehe auch


Weblinks


Weitere ausführliche Umschreibung der Serviceorientierten Architektur (englisch): What Is Service-Oriented Architecture?

Information & Collaboration Portal mit Knowledge-Base rund um SOA & ESA in deutscher Sprache: SOA Kompetenznetzwerk

Literatur


  • Norbert Bieberstein, Sanjay Bose, Marc Fiammante, Keith Jones, Rawn Shah: Service-Oriented Architecture Compass. Business Value, Planning and Enterprise Roadmap. Pearson, Upper Saddle River 2006, ISBN 0-13-187002-5
  • Kai J. Oey, Holger Wagner, Simon Rehbach, Andrea Bachmann: Mehr als alter Wein in neuen Schläuchen. Eine einführende Darstellung des Konzepts der serviceorientierten Architekturen. In: Stephan Aier, Marten Schönherr (Hrsg.): Unternehmensarchitekturen und Systemintegration. Gito, Berlin 2005 (Enterprise Architecture, Band 3), S. 199ff., ISBN 3-936771-50-2
  • Stephan Aier, Marten Schönherr (Hrsg.): Enterprise Application Integration. Serviceorientierung und nachhaltige Architekturen. Gito, Berlin 2004 (Enterprise Architecture, Band 2), ISBN 3-936771-30-8
  • Douglas K. Barry: Web Services and Service-Oriented Architectures. The savvy manager's guide. Your road map to emerging IT. Morgan Kaufmann, Amsterdam u.a. 2004, ISBN 1-55860-906-7
  • Thomas Erl: Service-Oriented Architecture. A field guide to integrating XML and Web services. Prentice Hall PTR, Upper Saddle River 2004, ISBN 0-13-142898-5
  • Dirk Krafzig, Karl Banke, Dirk Slama: Enterprise SOA. Prentice Hall PTR, Upper Saddle River 2005, ISBN 0-13-146575-9
  • Wolfgang Dostal, Mario Jeckle, Ingo Melzer, Barbara Zengler: Service-orientierte Architekturen mit Web Services. Spektrum Verlag, September 2005, ISBN 3-8274-1457-1 (Website zum Buch)

Quellen


Middleware | Softwarearchitektur | IT-Architektur

Serviceorienteret arkitektur | Service-oriented architecture | Arquitectura orientada a servicios | Service Oriented Architecture | Service-oriented architecture | サービス指向アーキテクチャ | Service-oriëntatie | Service-oriented architecture | SOA | Сервисно-ориентированная архитектура | SOA

 

This article is licensed under the GNU Free Documentation License. It uses material from the "Serviceorientierte Architektur".

Home Pageartsbusinesscomputersgameshealthhospitalshomekids & teensnewsphysiciansrecreationreferenceregionalscienceshoppingsocietysportsworld