Einleitung
I Einführung – Der Servicische Ozean
auch verfügbar als PDF-Download
Unsere IT-Welt ist schon ein interessantes Habitat: Ähnlich dem bekannten Planeten Terra besteht er zu einem erheblichen Teil aus Wasser, das einige bemerkenswerte Ländereien umfließt:
Das Königreich Bisi-Ness, die Quelle allen Reichtums der IT-Welt. Dafür nehmen sich die Bewohner, allesamt Fachleute, auch die Freiheit, von den übrigen IT-Weltlern kräftig Mitarbeit zu fordern. In prähistorischen Zeiten (also noch vor der allgemeinen Forderung nach Bisi-Ness-IT-Alignment) wurde die Existenz dieses Kontinents doch glatt von vielen ITlern geleugnet – wie infam!
Analytistan, bewohnt von der seltenen Spezies der Requies. Die sind bekannt dafür, dass sie Wünsche und Probleme der mächtigen Kundenier zu Papier bringen (und damit den anderen Völkern der IT-Welt viel Arbeit verschaffen!). I Einführung – Der Servicische Ozean2
Architektonien – dessen Bewohner als entscheidungsfreudig und mutig gelten. Sie sind communication-compatible mit allen anderen Völkern der IT-Welt. Die meisten Architektonier sind in der IT-Welt schon viel herumgekommen.
Prograland, Heimat der Hacks, Geeks und Nerds. Hier steht Sourcecode (fast immer) im Vordergrund. Die Bewohner von Prograland kümmern sich ungern um Geld, noch weniger um Zeit. Dafür legen Sie hohen Wert auf Qualität. Eine Provinz von Prograland heißt übrigens Toolistan. Dort werden immer wieder Geldtransporte ausgeraubt.
Betriebien, der isolierte und industrialisierte Kontinent. Hier geht (ziemlich) alles seinen geregelten Weg – sehr zum Unmut der Prograländer, aber zur Freude der Kundenier.
La-Testa, eine kleine Insel fernab von Gut und Böse. Hier werden Produkte auf Herz und Nieren geprüft – manchmal auch gegen den Willen der Prograländer. Erst seit 1998 ermöglicht die schmale Gamma-Beck-Brücke zwischen La-Testa und Prograland den Reiseverkehr zwischen beiden Ländern.
Der Servicische Ozean (manche mögen ihn SOA nennen) umspült mit seinen kräftigen Fluten all diese Länder. Erfahrene Reisende dieses riesigen Gewässers besitzen Einreiseerlaubnisse aller Länder der IT-Welt. Ohne Kenntnisse der besonderen Gewohnheiten der einzelnen Länder fehlt es SOA-Enthusiasten schnell an Überblick.
Sie halten Ihren persönlichen Reiseführer für den Servicischen Ozean in Ihren Händen – aber lesen Sie selbst ...
Einleitung: Das erwartet Sie ...
Wir möchten Ihnen mit diesem Buch Ihre Reise durch die vielseitigen, interessanten, aber teilweise auch riskanten Gebiete von SOA erleichtern. Unser Fokus liegt dabei auf thematischer Breite, um Ihnen übergreifendbei der Meinungsbildung und Entscheidungsfindung zu helfen.
Dieses Buch gibt Ihnen somit die Chance, zu allen Bereichen von SOA einen Überblick zu gewinnen: Wir beleuchten das Thema »SOA« aus verschiedenen Perspektiven, die Sie in Abbildung I–1 erkennen können. Diese unterschiedlichen Betrachtungsweisen werden Ihnen helfen, SOA im Allgemeinen und die für Sie persönlich interessanten Themen besser einschätzen zu können.
Über Autoren und Herausgeber
Dieses Buch gibt Ihnen die Chance, zu allen Bereichen von SOA einen Überblick zu gewinnen. Wir (die Herausgeber) haben die Themen und Beiträge nach bestem Wissen geplant und aufeinander abgestimmt. Die hohe Qualität der Beiträge verdanken Sie den jeweiligen Autoren – eventuelle Fehler, Auslassungen oder Unstimmigkeiten des gesamten Buches gehen auf unser (Herausgeber-)Konto. Gerne nehmen wir Kritik (und Lob) unter der E-Mail-Adresse herausgeber@soa-expertenwissen.de entgegen.
Wer sind »wir« eigentlich?
Gelegentlich werden Sie bei Ihrer Lektüre dieses Buches auf das kleine Wörtchen »wir« stoßen – wer verbirgt sich eigentlich dahinter? Dazu möchten wir (sehen Sie, da war es wieder!) Ihnen mehrere mögliche Antworten geben:- »Wir« in dieser Einleitung bezieht sich auf sämtliche Autoren und die Herausgeber. Wir, das sind 52 Autoren mit unterschiedlichen Erfahrungen und beruflichen Schwerpunkten.
- »Wir« in den Übergängen zwischen den einzelnen Teilen des Buches bezieht sich auf die Herausgeber, Stefan Tilkov und Gernot Starke.
- »Wir« in den einzelnen Beiträgen meint die jeweiligen Autoren.
Serviceorientierte Architekturen (SOA) berühren in Unternehmen viele Bereiche – das Spektrum reicht von geschäftlichen über organisatorische bis zu technischen und IT-betrieblichen Themen. Kaum ein anderes Gebiet erfordert von Unternehmen Investitionen, Ressourcen und Know-how in derart vielen Bereichen, aber auch kaum ein anderes Thema verspricht so viel umfassendes Verbesserungspotenzial, im Business wie auch der Informationstechnik. In der Praxis erleben wir häufig eine starke Fokussierung auf Einzelaspekte, meistens technischer Art. Der nutzbringende übergreifende Charakter von SOA als unternehmensweites Konzept geht dadurch leicht verloren, und mit ihm ein erheblicher Teil des möglichen Mehrwerts. Darum möchten wir in diesem Buch die gesamte thematische Breite von SOA abdecken – übrigens auch die technische, denn diese zu ignorieren wäre genauso falsch, wie sie zu sehr in den Vordergrund zu stellen.
Jeder dieser Themenschwerpunkte aus obiger Abbildung findet sich als ein Teil dieses Buches wieder. Diese Teile können Sie in (fast) beliebiger Reihenfolge lesen – lediglich den grundlegenden Teil I sollten Sie vor allen anderen »zu sich nehmen«. Hier nun die Schwerpunkte der Teile:
1. Grundlagen
In diesem »Einmaleins der SOA« erklären wir die grundsätzlichen Begriffe und Konzepte von SOA. Wir zeigen die Bandbreite der fachlichen, technischen und organisatorischen Aspekte auf und skizzieren, warum sich Unternehmen und Organisationen mit SOA beschäftigen sollten.
2. Business
SOA liegt vor allem eine geschäftliche (»Business-«)Motivation zugrunde. In diesem Teil des Buches erläutern wir, ob und wie sich SOA lohnt und wie Sie SOA aus wirtschaftlichen Erwägungen heraus betrachten, entwerfen, bewerten und steuern können. Ein wichtiger Schwerpunkt liegt auf »Business-Agilität«.
3. Prozess
In der Praxis taucht bei der Beschäftigung mit SOA sehr schnell die Frage nach dem geeigneten Vorgehen oder dem passenden Prozess (d.h. Vorgehenim-Großen) auf. In diesem Teil gehen wir darauf ein, welche Aspekte Sie in Ihrer eigenen Konzeption und Planung von SOA berücksichtigen sollten. Wir stellen Ihnen vor, wie ein SOA-Entwicklungsprozess beschaffen sein sollte und wie SOA beispielsweise mit →CMMI zusammenspielen kann.
4. Methode
Neben dem Vorgehen und den architektonischen und technischen Voraussetzungen müssen Sie für Ihre konkreten Entwicklungsprozesse noch weitere Dinge beachten, insbesondere Anforderungsmanagement, Qualitätssicherung und Test von SOA und Services.
5. Governance
Die Umsetzung von SOA-Initiativen in Unternehmen geht über konventionelle Projekte deutlich hinaus, daher benötigen diese Vorhaben entsprechend leistungsfähige Mechanismen zur Steuerung und Kontrolle. Neudeutsch heißt das Governance, was Sie auch mit Regierung übersetzen können. Lesen Sie, wie Sie von der Geschäftsarchitektur einer SOA-Governance kommen können und was es mit Governance überhaupt auf sich hat.
6. Architektur
Der Begriff »Architektur« steckt bereits im Akronym »SOA« (wenn auch nach Ansicht mancher Autoren zu Unrecht): Bei Architekturen geht es um Strukturen, Bausteine, Schnittstellen und Entwurfsentscheidungen. Hier zeigen wir Ihnen die Kriterien für die Strukturierung einer Servicelandschaft und die Heuristiken für gutes Schnittstellendesign auf. Sie erfahren außerdem einiges über die Performance von Serviceimplementierungen (Komponenten, Modelle, Geschäftsprozesse, Workflows, Prozessschritte, BPM). Außerdem erklären wir, was es mit dem Architekturansatz REST auf sich hat und warum semantische Ansätze von SOA und Services zukünftig große Bedeutung besitzen werden.
7. Technik
Jede konkrete Umsetzung von SOA auf Basis von Informationstechnologie benötigt technische Grundlagen, wie etwa Produkte, Protokolle und Frameworks. Hier erfahren Sie etwas über diese Details, insbesondere über das Konzept des Enterprise Service Bus (→ESB), den Webservice-Technologiestack, die Herausforderungen von JavaEE und SOA sowie über den Beitrag, den Produkte aus dem kommerziellen und dem Open-Source-Umfeld leisten können.
8. Betrieb
Services müssen als Bestandteile Ihrer IT-Landschaft betrieben werden, jedoch mit einigen Besonderheiten gegenüber herkömmlichen Anwendungen. Hier beschreiben wir Ihnen, wie Administration und Betrieb einer SOA-Anwendungslandschaft in der Praxis funktionieren. Zusätzlich erläutern wir, wie sich die Prinzipien der Serviceorientierung auf den etablierten →ITILStandard auswirken.
9. Risiken und Kritik
Den Vorteilen von SOA als Konzept und Lösungsansatz stehen eine Menge Risiken gegenüber, die wir Ihnen in diesem Teil aus unterschiedlichen Perspektiven darstellen. Hier finden Sie auch die kritische Würdigung einiger SOA-Versprechungen.
10. Praxis
In diesem Teil erfahren Sie, ob und wie SOA im echten Leben hält, was die Theorie verspricht. Wir präsentieren Ihnen Praxisberichte aus sechs unterschiedlichen Bereichen und mit entsprechend vielseitigem Hintergrund.
11. Anhang
Hier finden Sie unser ausführliches Glossar zu SOA, die Literaturliste sowie die Autorenprofile. Übrigens: Wenn Sie im Text den Pfeil »→« entdecken, finden Sie eine Erklärung des jeweiligen Begriffes im Glossar.
Tipp: SOA erfordert thematische Breite
Unser Tipp, wenn Sie SOA in Ihrem Unternehmen einführen möchten: Beschäftigen Sie sich mit allen Themenbereichen rund um SOA. Definieren Sie für alle Bereiche die notwendigen Maßnahmen und identifizieren Sie für alle Bereiche die spezifischen Risiken. Vergleichen Sie Ihre Situation mit der eines Softwaretesters, der eine ihm völlig unbekannte Applikation testen soll und dafür genau eine Stunde Zeit hat. Wie bewerten Sie folgende Vorgehensweisen:
Der Tester testet 60 Minuten lang die grafische Oberfläche (GUI), weil er sich mit GUI am besten auskennt und dort die meisten Fehler vermutet. Er kennt jetzt Stärken und Schwächen der GUI und hat wahrscheinlich viele GUI-Probleme identifiziert. Über den gesamten Rest der Applikation weiß er nichts. Wir nennen dieses Vorgehen »hektischen Aktivismus«.
Der Tester identifiziert anhand von Anwendungsfällen und der Systemarchitektur zuerst die wichtigsten zu testenden Bereiche – etwa: Anwendungslogik, GUI, Datenspeicherung, Exportschnittstelle. Jeden dieser Bereiche testet er etwa gleich lang. Zu jedem dieser Bereiche hat er möglicherweise nur die schlimmsten Fehler gefunden. Wir nennen dieses Vorgehen »Gießkannenprinzip«.
Der Tester geht ähnlich vor wie im letzten Fall, gewichtet die zu testenden Bereiche jedoch nach ihrer relativen Wichtigkeit zueinander. Es stellt sich heraus, dass die Exportschnittstelle der weitaus wichtigste Bestandteil der Anwendung ist, gefolgt von der Datenspeicherung. GUI ist unwichtig, Anwendungslogik ist trivial. Der Tester investiert 80% seiner Zeit in den Test der wichtigen Bestandteile und testet die übrigen nur sehr grob. Wir nennen dieses Vorgehen »fundierten Überblick gewinnen«.
Im letzten Fall hat der Tester das Gesamtrisiko minimiert – obwohl er manche Bereiche nur sehr kurz untersucht hat. Auch für Ihre Beschäftigung mit SOA möchten wir Ihnen eine solche Strategie empfehlen: Klären Sie für sich selbst oder für Ihr Unternehmen, welche der SOA-Bereiche für Sie wie wichtig sind – das können wir Ihnen nicht abnehmen.
Noch einmal kurz zum Beispiel des Testers: Unserer Erfahrung nach starten viele SOA-Initiativen nach dem ersten Modell »hektischer Aktivismus»: Sämtliche Energie (und Investitionen) versinken in minder wichtigen Teilbereichen von SOA ...
... und das sollten Sie nicht erwarten
Dieses Buch ist weder eine Einführung in die Programmierung serviceorientierter Anwendungen noch ein Grundkurs in Geschäftsprozessmodellierung. Sie finden kaum Quellcode und keine konkreten Serviceschnittstellen. Weiterhin haben wir auf die Vorstellung und Bewertung kommerzieller Softwareprodukte bewusst verzichtet. Sie werden beim Lesen auch feststellen, dass viele Autoren Standpunkte und Meinungen vertreten, die teilweise voneinander abweichen. Diese begriffliche und inhaltliche Vielfalt haben wir (Herausgeber) bewusst gefördert, um Ihre Meinungsbildung gezielt zu unterstützen. Daher finden Sie in diesem Buch keinen »Königsweg zu SOA«, denn unserer Erfahrung nach gibt es den nicht!
Konventionen
Wir haben für Sie an vielen Stellen Querverweise innerhalb des Buches eingefügt, die inhaltliche Bezüge zwischen den Beiträgen zeigen. Verweise auf das Glossar kennzeichnen wir im Text mit dem Pfeil »→«.
Danksagung der Herausgeber
Wir Herausgeber möchten uns zuerst bei den vielen fleißigen, kompetenten, pragmatischen, gründlichen und innovativen Autoren bedanken, durch die das Buch »SOA-Expertenwissen« erst Realität wurde. Danke auch an unsere (wegen der Vertraulichkeit ihrer SOA-Vorhaben meist ungenannten) Kunden, durch die wir Erfahrung mit Serviceorientierung in unterschiedlichem Kontext sammeln konnten. Anschließend vielen Dank an Günther Fuhrmeister und Susanne Herl für die Initiative, Anregung und Aufmunterung zu Beginn. Christoph Bröcker und Thorsten Knauf haben in einer frühen Phase mit uns produktiv über die grundlegende Architektur des Buches diskutiert.
Und schließlich 1000 Dank an unsere Traumkinder, Traumfrauen und diversen tollen Tiere – dass ihr uns ab und zu an die wahren Prioritäten im Leben erinnert.
Zuallerallerletzt noch ein kleiner, aber bedeutender Dank an Apple: Eure Macs verbreiten Freude – täglich neu.
1 benannt nach ihren Erbauern Erich Gamma und Kent Beck