Hallo WNietzsche,
SOA ist meiner Meinung nach mehr, als nur ein Konzept für Softwarearchitektur. Es ist vor allem auch ein Konzept, die IT eines Unternehmens zu organisieren.
Es geht nicht um eine Architektur für ein einzelnes System, sondern um eine Architektur für ein ganzes Unternehmen um einzelne Systeme zusammenarbeiten zu lassen.
Beispiele für Dienste wären dann sowas wie: Lagerhaltung, Einkaufs-, Vertriebssysteme, Lohnbuchhaltung etc. Solche Dienste haben bei SOA plattformunabhängige Schnittstellen (eben meist XML per HTTP, aka Webservices).
Das ermöglicht dann, sehr einfach systemübergreifende Arbeitsabläufe zu automatisieren. SOA-Leute nennen das dann auch "Orchestrierung".
Das passiert dann meistens über Regelsysteme, Spezielle Programmiersprachen (z.B. BPEL).
Wichtig ist, dass das eben keine reine Softwaresache ist. Es reicht nicht, irgendwo ein bisschen XML hin- und her zu schicken und teure Software von IBM zu kaufen. Die gesamte IT-Architektur und wahrscheinlich auch die Organisation des Unternehmens selbst muss auch darauf ausgerichtet sein.
Ein (zentrales) Repository für Dienste muss es meines Erachtens übrigens nicht geben. Vermutlich gibt es sowas auch meist nicht, weil die Unternehmen dazu zu chaotisch organisiert sind ;-)
Grüße
Daniel