Definition „Service Oriented Architecture“

Was ist SOA?

| Autor / Redakteur: zeroshope / Stephan Augsten

Service-orientierte Architekturen zeichnen sich durch Dienste aus, die für möglichst viele Aufgaben und Prozesse zentral bereitgestellt werden.
Service-orientierte Architekturen zeichnen sich durch Dienste aus, die für möglichst viele Aufgaben und Prozesse zentral bereitgestellt werden. (Bild gemeinfrei (modifiziert): geralt - Pixabay.com / Pixabay)

SOA steht für „Service orientierte Architektur“ und bezieht sich auf die IT-Infrastruktur. Ihre Umsetzung verspricht großes Potenzial: Von Zeit- und Geldeinsparungen über effizientere Arbeitsprozesse bis zur Problembeseitigung.

SOA bzw. im englischen Original „Service Oriented Architecture“ ist als Konzept inzwischen älter als 20 Jahre. Erstmals wurde es im Jahr 1996 vom Marktforschungsinstitut „Gartner“ aufgebracht.

Dieses entwickelte eine Idee für die Unternehmens-IT, von der es sich erhebliche Einsparungspotenziale versprach: In Firmen würden Abteilungen im Prinzip immer wieder die identischen IT-Funktionen („Services“/„Dienste“) in Anspruch nehmen – allerdings über unterschiedliche Anwendungen. Gelänge es, diese Dienste zu entkoppeln und zentral bereitzustellen, würde dies vieles vereinfachen.

Wie funktioniert SOA? Eine Metapher und ein Beispiel

Die Funktionsweise von SOA lässt sich am einfachsten über eine Metapher beschreiben. Ein Haus mit vielen Räumen wird gebaut. Für die kalte Jahreszeit müssen alle Räume beheizt werden. Jedes Zimmer würde ohne Service-orientierte Architektur eine Zentralheizung erhalten.

Aus Kostengründen wäre dies jedoch unverantwortlich: Das SOA-Konzept sagt deshalb, dass es eine Zentralheizung gibt, zu der jeder Raum einen separaten Zugang („Heizkörper“) enthält. Die Vorteile liegen auf der Hand:

  • Weniger Kosten für den Einbau.
  • Günstigere Wartung.
  • Einfache Problemsuche.
  • Effizientes Heizen für das gesamte Haus oder nach Bedarf auch nur für spezielle Räume.

Die Metapher lässt sich auf ein konkretes Beispiel übertragen: In Unternehmen arbeiten verschiedene Abteilungen mit Dokumentenverarbeitungen. Eigene Lösungen für jede Abteilung sind unwirtschaftlich und auch in anderer Hinsicht schädlich. Es liegt durchaus im Interesse der Firma, dass die einzelnen Abteilungen direkten Zugriff bzw. unmittelbares Wissen erhalten, was die jeweils anderen tun.

Beispielsweise erleichtert es die Arbeit der Buchhaltung sehr, wenn sie unmittelbare Informationen darüber erhält, welche Dokumente der Einkauf verarbeitet. Es ergibt also Sinn, diesen Dienst aus den Anwendungen zu lösen und in der IT-Infrastruktur zentral bereitzustellen.

Die Abstraktionsebenen von SOA verstehen

Um die Dienste zu entkoppeln und zentral bereitzustellen, arbeitet die SOA mit Abstraktionsebenen, die sich an den Geschäftsprozessen orientieren. Dabei gilt die grundsätzliche Regel: Je direkter der Kundenkontakt eines Geschäftsprozesses ist, desto höher ist die Abstraktionsebene. Als Beispiel: „Liefere Kunden die von ihm bestellte und bezahlte Ware A“ hat die höchstmögliche Abstraktionsebene.

Hohe Abstraktionsebenen zeichnen zwei Eigenschaften aus:

  • 1. Als Befehle sind sie abteilungsspezifisch und eignen sich nicht mehr für die Zentralisierung. Die Buchhaltung ist beispielsweise nicht mehr mit der konkreten Lieferung der Ware an den Kunden befasst.
  • 2. Hinter Prozessen auf der höchsten Abstraktionsebene verstecken sich allerdings viele Prozesse auf niedrigeren Ebenen. Beispielsweise: Finde die Ware im Lager, überprüfe, ob die Ware tatsächlich bezahlt wurde, verpacke die Ware und stelle sie für den Versand bereit. Diese Prozesse eignen sich durchaus für Zentralisierungen. Überprüfungen, ob Zahlungen vorliegen, müssen z.B. durchaus von mehreren Abteilungen vorgenommen werden.

Um die zu zentralisierenden Dienste zu finden, werden für die SOA die Prozesse auf der höchsten Abstraktionsebene in die Einzelprozesse auf den niedrigeren Ebenen zerteilt. Dies ist ausgesprochen arbeitsintensiv und der Grund, weshalb viele kleinere und mittlere Unternehmen den Wechsel zur SOA scheuen, obwohl er auch für sie vorteilhaft wäre.

Die wichtigsten Vorteile von SOA auf einen Blick

  • Zeitersparnis in Arbeitsprozessen
  • Geringere Unterhaltkosten für die IT-Wartung
  • Zentral verfügbares Wissen
  • Neuentwicklungen lassen sich schneller implementieren
  • Schwachstellen/ Probleme in der IT können schneller gefunden und beseitigt werden
  • Neuentwicklungen gelingen rascher

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

API-Management im Unternehmen einführen

Strategien zur Schnittstellen-Implementierung

API-Management im Unternehmen einführen

APIs sind eine Schlüsseltechnologie in der heutigen digitalen Welt. Dieser Artikel beschreibt Strategien, um API-Management in Unternehmen einzuführen und die Schritte, wie Organisationen ihre IT mit Hilfe eines API-basierten Ansatzes transformieren können. lesen

Was ist Cloud Native?

Definition „Cloud-native Anwendung“

Was ist Cloud Native?

Cloud Native ist ein agiles und effizientes Konzept, um Software zu entwickeln und Neuerungen möglichst schnell zum Nutzer auszuliefern. Der Betrieb der Anwendung wird direkt über die zugrunde liegende Cloud-Plattform realisiert. lesen

Parasoft SOAtest und Virtualize 9.10.7 mit neuem Konzept

Vereinfachte Testdaten-Erstellung und -Verwaltung

Parasoft SOAtest und Virtualize 9.10.7 mit neuem Konzept

Parasoft hat die Testdaten-Management-Lösungen SOAtest und Virtualize mit einer neuen Web-Oberfläche ausgestattet. Das Generieren und Verwalten von Testdaten soll durch das neue Konzept einfacher von der Hand gehen. lesen

Rapid Prototyping und Low-Code-Entwicklung

Kundenerlebnis in Eigenregie

Rapid Prototyping und Low-Code-Entwicklung

Rapid Prototyping erlaubt es, einen Software-Prototypen direkt mit Hilfe so genannter Low-Code-Plattformen zum produktionsreifen Endprodukt weiterentwickeln. Das Prinzip: Stets nah am Problem und in Zusammenarbeit mit dem Kunden. lesen

Red Hat Quay 3 unterstützt Windows-Container

Registry für RHEL- und Windows-Container-Images

Red Hat Quay 3 unterstützt Windows-Container

Quay wurde für die Speicherung von Container-Images entwickelt. Mit der jüngsten Version Quay 3 hat Red Hat die Container-Image-Registry so erweitert, dass sie verschiedene Architekturen, Windows-Container und „Red Hat Enterprise Linux“-basierte Container Images unterstützt. lesen

Wege zur App – nativ, hybrid oder fürs Web

Abkürzungen erwünscht

Wege zur App – nativ, hybrid oder fürs Web

Um Apps für Android und iOS zu erstellen, gibt es mittlerweile sehr viele Ansätze. Eine Systematisierung ist hilfreich, um sich im technischen Dschungel zurechtzufinden. Ebenso entscheidend ist es, wie effektiv die jeweilige Vorgehensweise ist, denn die Time-To-Market ist oft entscheidend. Hier können plattformübergreifende Techniken punkten. lesen

Was ist Performance Testing?

Definition „Software Performance Testing“

Was ist Performance Testing?

Qualität, Zuverlässigkeit, Skalierbarkeit und Leistung unter Belastung – all diese Aspekte muss gute Software erfüllen. Um zu gewährleisten, dass Software dies auch leisten kann, sind Performancetests unabdingbar. lesen

Sicherheit hat bei AWS aktuell Vorrang

Interview mit Glenn Gore zu Development und Open Source

Sicherheit hat bei AWS aktuell Vorrang

Wie unterstützt AWS die Open-Source-Community und Entwickler im Allgemeinen? Welche Dienste, Tools und Blaupausen helfen bei Security-by-Design-Strategien? Diese Fragen hat Glenn Gore, Lead Architect bei Amazon Web Services, im Interview mit Dev-Insider beantwortet. lesen

Commits und Tests mit AWS CodeCommit und CodeBuild

CI/CD-Pipeline mit AWS-Tools, Teil 2

Commits und Tests mit AWS CodeCommit und CodeBuild

Ein neues Projekt ist in AWS CodeStar schnell erstellt. Umgehend kann man in den einzelnen Stufen experimentierten, z. B. mit neuen Commits zu Feature-Upgrades beitragen oder Unit-Tests implementieren. CodeStar visualisiert dabei den Projekt-Status und unterstützt die Tool-Integration. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45870341 / Definitionen)