SOA erschwert Qualitätssicherung

04.07.2006
Von Edgar Brodde

Prozessanalyse

Das Entscheidende in diesem Kontext ist die Geschäftprozessanalyse. Denn eine SOA gewinnt ja gerade dadurch an Attraktivität, dass Geschäftsprozesse unternehmensweit einheitlich und schlanker gestaltet sowie verbessert werden können. Arbeitsabläufe sollen sich nicht mehr länger an der IT orientieren. Umgekehrt legen jetzt die Prozesse fest, wie und welche Software eingesetzt wird. Welche Services unter dem GUI ablaufen, ist zweitrangig, der Arbeitsablauf rückt sichtbar in den Vordergrund. Die Geschäftsprozessanalyse enthüllt dafür die Kernprozesse, modelliert restrukturierte, unternehmensspezifische Arbeitsabläufe und ist Basis zur Identifikation der wiederverwendbaren Services.

Die über den SOA-Bus zu Applikationen zusammengestöpselten Dienste sollen endlich die lang geforderte Flexibilität eröffnen, um rasch auf sich ändernde ökonomische Bedingungen zu reagieren. Ein neuer Aspekt dabei ist, dass mittels der Business Process Execution Language (BPEL) die aus der Analyse generierten Prozessmodelle simuliert und die Zusammenstellung der prozessorientierten Services geprüft werden können. BPEL wird damit im SOA-Ansatz zu einem neuen Testwerkzeug für die Qualitätssicherung, das den eher theoretischen Charakter der Geschäftsprozessanalyse aufhebt und per Computersimulation die Logik des Modells in seinen konkreten Auswirkungen sichtbar werden lässt. Dennoch darf man sich hier nicht täuschen: Was in der Simulation funktioniert, läuft nicht zwangsläufig auch in der Praxis.

Der SOA-Bus

Das "Softwareherz" einer Service-orientierten Architektur ist der SOA-Bus. Dort werden die einzelnen Services registriert und verwaltet (Repository), zudem integriert er eine Vielzahl von Funktionen und Aufgaben, die zusammen die nötige SOA-Infrastruktur bereitstellen. Hier einige Beispiele:

  • Eine Plug-in-Infrastruktur, über die sich die in unterschiedlichen Sprachen oder Systemen bereitgestellten Services integrieren lassen;

  • die Anbindung an Legacy-Systeme per Adapter;

  • die Übersetzungsmöglichkeit für Daten aus unterschiedlichen Systemwelten;

  • die Infrastruktur für verteilte Transaktion, die Prozesse zwischen verschiedenen Systemen steuert und abwickelt;

  • unter Security-Aspekten kann ein SOA-Bus die Rechte der Benutzer verwalten und regeln;

  • eine Load-Balancing-Infrastruktur sorgt für die gleichmäßige Verteilung der Lasten auf verschiedene Server;

  • schließlich gibt es ein zentrales Logging-System, das Fehler protokolliert und verfolgbar macht.