<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>http://dev.kaibel.net/index.php?action=history&amp;feed=atom&amp;title=Service-Oriented_Architecture_%28SOA%29</id>
	<title>Service-Oriented Architecture (SOA) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="http://dev.kaibel.net/index.php?action=history&amp;feed=atom&amp;title=Service-Oriented_Architecture_%28SOA%29"/>
	<link rel="alternate" type="text/html" href="http://dev.kaibel.net/index.php?title=Service-Oriented_Architecture_(SOA)&amp;action=history"/>
	<updated>2026-07-29T00:06:07Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in dev.kaibel.net</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>http://dev.kaibel.net/index.php?title=Service-Oriented_Architecture_(SOA)&amp;diff=101&amp;oldid=prev</id>
		<title>PhilKa: Die Seite wurde neu angelegt: „= Service-Oriented Architecture (SOA) =  Die &#039;&#039;&#039;Service-Oriented Architecture&#039;&#039;&#039; (kurz: &#039;&#039;&#039;SOA&#039;&#039;&#039;, deutsch: &#039;&#039;&#039;dienstorientierte Architektur&#039;&#039;&#039;) ist ein **Architekturstil**, der Softwareanwendungen als eine Sammlung **lose gekoppelter, wiederverwendbarer und interoperabler Dienste** beschreibt.   Jeder Dienst stellt eine **klar definierte Schnittstelle** bereit und kann unabhängig von anderen Diensten genutzt werden.  SOA bildet die **konzeptionelle Grun…“</title>
		<link rel="alternate" type="text/html" href="http://dev.kaibel.net/index.php?title=Service-Oriented_Architecture_(SOA)&amp;diff=101&amp;oldid=prev"/>
		<updated>2025-11-01T12:50:21Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „= Service-Oriented Architecture (SOA) =  Die &amp;#039;&amp;#039;&amp;#039;Service-Oriented Architecture&amp;#039;&amp;#039;&amp;#039; (kurz: &amp;#039;&amp;#039;&amp;#039;SOA&amp;#039;&amp;#039;&amp;#039;, deutsch: &amp;#039;&amp;#039;&amp;#039;dienstorientierte Architektur&amp;#039;&amp;#039;&amp;#039;) ist ein **Architekturstil**, der Softwareanwendungen als eine Sammlung **lose gekoppelter, wiederverwendbarer und interoperabler Dienste** beschreibt.   Jeder Dienst stellt eine **klar definierte Schnittstelle** bereit und kann unabhängig von anderen Diensten genutzt werden.  SOA bildet die **konzeptionelle Grun…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Service-Oriented Architecture (SOA) =&lt;br /&gt;
&lt;br /&gt;
Die &amp;#039;&amp;#039;&amp;#039;Service-Oriented Architecture&amp;#039;&amp;#039;&amp;#039; (kurz: &amp;#039;&amp;#039;&amp;#039;SOA&amp;#039;&amp;#039;&amp;#039;, deutsch: &amp;#039;&amp;#039;&amp;#039;dienstorientierte Architektur&amp;#039;&amp;#039;&amp;#039;) ist ein **Architekturstil**, der Softwareanwendungen als eine Sammlung **lose gekoppelter, wiederverwendbarer und interoperabler Dienste** beschreibt.  &lt;br /&gt;
Jeder Dienst stellt eine **klar definierte Schnittstelle** bereit und kann unabhängig von anderen Diensten genutzt werden.&lt;br /&gt;
&lt;br /&gt;
SOA bildet die **konzeptionelle Grundlage moderner Architekturen** wie der [[Microservices-Architektur]].&lt;br /&gt;
&lt;br /&gt;
== Grundidee ==&lt;br /&gt;
In einer SOA werden Anwendungen nicht als monolithische Systeme entwickelt, sondern als eine **Sammlung unabhängiger Dienste**, die über standardisierte Protokolle miteinander kommunizieren.  &lt;br /&gt;
Ein Dienst kann dabei eine Funktion, ein Geschäftsprozess oder eine Datenquelle repräsentieren.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
+-------------------+&lt;br /&gt;
|   Client-Anfrage  |&lt;br /&gt;
+-------------------+&lt;br /&gt;
          |&lt;br /&gt;
          v&lt;br /&gt;
+-------------------+     +-------------------+     +-------------------+&lt;br /&gt;
|  Service A (Auth) | --&amp;gt; |  Service B (Data) | --&amp;gt; |  Service C (Mail) |&lt;br /&gt;
+-------------------+     +-------------------+     +-------------------+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merkmale ==&lt;br /&gt;
* **Lose Kopplung:** Dienste sind unabhängig voneinander.  &lt;br /&gt;
* **Wiederverwendbarkeit:** Dienste können in verschiedenen Anwendungen verwendet werden.  &lt;br /&gt;
* **Standardisierte Schnittstellen:** Nutzung offener Protokolle (z. B. SOAP, REST).  &lt;br /&gt;
* **Interoperabilität:** Kommunikation zwischen verschiedenen Plattformen und Programmiersprachen.  &lt;br /&gt;
* **Service-Komposition:** Komplexe Prozesse werden aus mehreren Diensten zusammengesetzt.  &lt;br /&gt;
* **Verteilte Architektur:** Dienste laufen oft auf verschiedenen Systemen oder Servern.&lt;br /&gt;
&lt;br /&gt;
== Komponenten einer SOA ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Komponente !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Service Provider&amp;#039;&amp;#039;&amp;#039; || Stellt den Dienst bereit und beschreibt dessen Schnittstelle (z. B. in WSDL).&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Service Consumer&amp;#039;&amp;#039;&amp;#039; || Nutzt den angebotenen Dienst über eine definierte Schnittstelle.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Service Registry&amp;#039;&amp;#039;&amp;#039; || Zentrales Verzeichnis, in dem Dienste veröffentlicht und gefunden werden können (z. B. UDDI).&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Service Contract&amp;#039;&amp;#039;&amp;#039; || Formale Beschreibung der verfügbaren Operationen, Eingaben und Ausgaben.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Enterprise Service Bus (ESB)&amp;#039;&amp;#039;&amp;#039; || Kommunikationsschicht für Routing, Transformation und Integration der Dienste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Funktionsweise ==&lt;br /&gt;
1. Ein **Dienstanbieter (Service Provider)** registriert seinen Dienst in einer **Service Registry**.  &lt;br /&gt;
2. Ein **Dienstnutzer (Service Consumer)** sucht den passenden Dienst.  &lt;br /&gt;
3. Der Consumer ruft den Dienst über dessen definierte Schnittstelle auf (z. B. SOAP- oder REST-API).  &lt;br /&gt;
4. Der Dienst wird ausgeführt und das Ergebnis zurückgegeben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Client → Service Registry → Service Provider → Antwort an Client&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Technologien und Standards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Technologie / Standard !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;SOAP (Simple Object Access Protocol)&amp;#039;&amp;#039;&amp;#039; || XML-basiertes Protokoll für strukturierte Datenübertragung.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;WSDL (Web Services Description Language)&amp;#039;&amp;#039;&amp;#039; || XML-basierte Beschreibungssprache für Webservices.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;UDDI (Universal Description, Discovery and Integration)&amp;#039;&amp;#039;&amp;#039; || Standard für Service-Registrierung und -Entdeckung.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;REST (Representational State Transfer)&amp;#039;&amp;#039;&amp;#039; || Leichtgewichtiges Webservice-Prinzip über HTTP.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;ESB (Enterprise Service Bus)&amp;#039;&amp;#039;&amp;#039; || Middleware zur Integration, Nachrichtenweiterleitung und Transformation.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Beispielhafte SOA-Kommunikation ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
1. Ein Client sucht im Service-Registry nach dem „Kundenservice“.&lt;br /&gt;
2. Registry liefert die WSDL-Adresse des Dienstes zurück.&lt;br /&gt;
3. Client ruft den Dienst via SOAP oder REST auf.&lt;br /&gt;
4. Der Dienst verarbeitet die Anfrage und liefert die Antwort.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Vorteile ==&lt;br /&gt;
* **Wiederverwendbarkeit** von Diensten über verschiedene Anwendungen hinweg  &lt;br /&gt;
* **Plattformunabhängigkeit** durch standardisierte Schnittstellen  &lt;br /&gt;
* **Bessere Wartbarkeit** durch klare Diensttrennung  &lt;br /&gt;
* **Skalierbarkeit** durch verteilte Bereitstellung  &lt;br /&gt;
* **Integration** älterer Systeme (Legacy-Systeme) durch standardisierte Protokolle  &lt;br /&gt;
&lt;br /&gt;
== Nachteile ==&lt;br /&gt;
* **Hoher Initialaufwand** für Design und Infrastruktur (z. B. ESB)  &lt;br /&gt;
* **Komplexe Verwaltung** vieler Dienste  &lt;br /&gt;
* **Leistungsprobleme** durch XML-Overhead (SOAP)  &lt;br /&gt;
* **Schwierigere Fehlersuche** durch verteilte Kommunikation  &lt;br /&gt;
* **Abhängigkeit von zentralen Komponenten** wie Service Registry oder ESB  &lt;br /&gt;
&lt;br /&gt;
== Beispielhafte Einsatzgebiete ==&lt;br /&gt;
* Unternehmensanwendungen (ERP-, CRM-, Buchungssysteme)  &lt;br /&gt;
* E-Government-Systeme  &lt;br /&gt;
* Zahlungsabwicklung und Online-Banking  &lt;br /&gt;
* Integration heterogener IT-Landschaften  &lt;br /&gt;
* Service-APIs in großen Organisationen&lt;br /&gt;
&lt;br /&gt;
== Vergleich zu Microservices ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Merkmal !! SOA !! Microservices&lt;br /&gt;
|-&lt;br /&gt;
| Architekturgröße || Unternehmensweit (Enterprise-Level) || Anwendungsspezifisch (App-Level)&lt;br /&gt;
|-&lt;br /&gt;
| Kommunikation || Über ESB (zentrale Vermittlung) || Direkt oder über API Gateway&lt;br /&gt;
|-&lt;br /&gt;
| Datenhaltung || Gemeinsame Datenbanken möglich || Datenbank pro Service&lt;br /&gt;
|-&lt;br /&gt;
| Kopplung || Lose, aber oft zentralisiert || Sehr lose, dezentral&lt;br /&gt;
|-&lt;br /&gt;
| Technologie || Häufig SOAP/WSDL || REST, gRPC, Messaging&lt;br /&gt;
|-&lt;br /&gt;
| Deployment || Schwergewichtig (Server, ESB) || Leichtgewichtig (Container)&lt;br /&gt;
|-&lt;br /&gt;
| Beispiel || SAP, Oracle Fusion Middleware || Kubernetes, Docker, Spring Boot&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== SOA und Event-Driven Architecture ==&lt;br /&gt;
Viele SOA-Systeme nutzen ereignisgesteuerte Kommunikation:  &lt;br /&gt;
Dienste können auf **Events** reagieren, die über einen **Enterprise Service Bus (ESB)** oder einen **Message Broker** verteilt werden.  &lt;br /&gt;
Dadurch lässt sich SOA mit [[Event-Driven Architecture]] kombinieren.&lt;br /&gt;
&lt;br /&gt;
== Beispielhafte Tools und Frameworks ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Bereich !! Tools / Technologien&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Middleware / ESB&amp;#039;&amp;#039;&amp;#039; || Apache Camel, Mule ESB, IBM Integration Bus, WSO2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Web Services&amp;#039;&amp;#039;&amp;#039; || Apache CXF, JAX-WS, Spring Web Services&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Service Registry&amp;#039;&amp;#039;&amp;#039; || UDDI, Consul, Eureka (moderne Variante)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Protokolle&amp;#039;&amp;#039;&amp;#039; || SOAP, REST, AMQP, JMS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Zusammenhang mit anderen Architekturen ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Architektur !! Beziehung&lt;br /&gt;
|-&lt;br /&gt;
| [[Client-Server-Architektur]] || SOA erweitert das Client-Server-Prinzip auf verteilte Unternehmensdienste.&lt;br /&gt;
|-&lt;br /&gt;
| [[Microservices-Architektur]] || Moderne, leichtgewichtige Weiterentwicklung der SOA mit stärkerer Dezentralisierung.&lt;br /&gt;
|-&lt;br /&gt;
| [[Event-Driven Architecture]] || Ergänzende Architektur zur asynchronen Kommunikation zwischen Diensten.&lt;br /&gt;
|-&lt;br /&gt;
| [[Reactor-Entwurfsmuster]] || Wird in Messaging- und Eventsystemen innerhalb einer SOA verwendet.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Fazit ==&lt;br /&gt;
Die Service-Oriented Architecture ist ein **wichtiger Meilenstein in der Evolution verteilter Systeme**.  &lt;br /&gt;
Sie hat die Grundlage für **Microservices**, **Cloud-native Anwendungen** und **API-basierte Kommunikation** geschaffen.  &lt;br /&gt;
Während klassische SOA-Implementierungen heute seltener verwendet werden, leben ihre Prinzipien in modernen, leichtgewichtigen Architekturen fort.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Microservices-Architektur]]  &lt;br /&gt;
* [[Client-Server-Architektur]]  &lt;br /&gt;
* [[Event-Driven Architecture]]  &lt;br /&gt;
* [[Distributed Systems]]  &lt;br /&gt;
* [[Entwurfsmuster (Softwareentwicklung)]]  &lt;br /&gt;
* [[Reactor-Entwurfsmuster]]&lt;br /&gt;
&lt;br /&gt;
== Quellen ==&lt;br /&gt;
* Thomas Erl: *Service-Oriented Architecture: Concepts, Technology, and Design* (2005)  &lt;br /&gt;
* Martin Fowler: *Microservices and SOA* (2015)  &lt;br /&gt;
* IBM DeveloperWorks: *Understanding SOA fundamentals*  &lt;br /&gt;
* [https://en.wikipedia.org/wiki/Service-oriented_architecture Wikipedia: Service-Oriented Architecture]  &lt;br /&gt;
* OASIS: *SOA Reference Model*&lt;/div&gt;</summary>
		<author><name>PhilKa</name></author>
	</entry>
</feed>