Einblick in den SOA-Lebenszyklus

13.01.2006
Von Ivo Totev

Ajax hilft am Frontend

Aus diesen Services generieren modellbasierende Werkzeuge orchestrierte Composite Applications. Letztere sind eine neue Art von Anwendungen, die sich durch eine hohe Flexibilität auszeichnen und mit interaktiven Benutzerschnittstellen aufwarten, die beispielsweise moderne Ajax-Technik (Asynchronous Java Script and XML) nutzen. Werden in eine SOA auch öffentlich zugängliche Services wie beispielsweise "Google Maps" oder von Amazon.com in die eigenen Systeme eingebunden, entsteht eine neue Generation von offenen Geschäftsanwendungen: die "Mashups". Diese Anwendungen laufen ohne Installationsaufwand im Browser und verhalten sich interaktiv wie eine Desktop-Anwendung. Die Ajax-Technologie eignet sich zur Realisierung solcher Applikationen sehr gut. Entwickler sollten jedoch auf die manuelle Ajax-Programmierung wegen der hohen Komplexität verzichten und auf Frameworks setzen, die auf Basis visueller Modelle Ajax generieren und verwalten.

Müssen Composite Applications mehrere Rollen und Prozessschritte unterstützen, sollten Unternehmen Systeme für das Business-Process-Management (BPM) einsetzen. Über diese erhalten sie eine geschäftliche Sicht auf die Abläufe. So lassen sich beispielsweise alle Aktivitäten modellieren und automatisieren, die zum Beantworten einer Kundenanfrage notwendig sind. Die notwendige Verbindung zu den IT-Systemen wird durch die Verknüpfung der Business Services mit dem BPM-System geschaffen.

Die fünf größten Fallstricke

  1. Soap und Web-Services sind keine Allheilmittel für grundlegende Architekturprobleme.

  2. SOA besteht aus verteilten Systemen und kann nicht nach den gleichen Regeln wie ein monolithisches System betrieben werden.

  3. Große Einführungsprojekte nach dem Wasserfall-Modell vermeiden. Klein starten und mit Iterationen arbeiten.

  4. Rip-and-Replace passt nicht zum SOA-Gedanken. Alle vorhandenen relevanten Systeme sollten in die neue Architektur eingebunden werden.

  5. SOA greift in die Arbeitsabläufe ein. Daher ist das Management von Geschäftsprozessen eine wesentliche Aufgabe innerhalb eines SOA-Projekts.