PUBLI-FORUM SOA als Grundlage für «Composite Applications» Das Produkteportfolio von Sun Microsystems im Bereich von Service-Oriented Architecture sucht seinesgleichen. Mit der neuen Produkte-Suite, die seit der Integration von SeeBeyond unser Offering ergänzt, können einfach, schnell und günstig neue «Composite Applications» erstellt werden. Peter Affolter Welche Primär- und Sekundärziele verfolgt/erreicht Ihr SOA-Konzept? Sun verfolgt den pragmatischen Ansatz einer SOA. Dazu bietet Sun die Composite Application Platform Suite (CAPS) an. Mit dem Einsatz von CAPS müssen die bestehenden Applikationen oder Dienste nicht neu geschrieben werden. Stattdessen werden diese mit Hilfe von Adaptoren (eWays) integriert. So kann sehr schnell und ohne hohe Investitionen eine SOA aufgebaut, und die Vorteile der verbesserten Agilität und Flexibilität genutzt werden. Um eine SOA in einer Firma erfolgreich umzusetzen, erachten wir es als unumgäng- lich, dass alle Ebenen der SOA (Technicalund Business-Services, Orchestration und dann Präsentation) sauber umgesetzt werden. Dabei ist es wichtig, dass die BusinessLeute frühzeitig mit involviert werden. Mit unserem Konzept und der entsprechenden Produktesuite erreichen wir, dass sowohl die Entwickler wie auch die Bankfachleute mit demselben Tool arbeiten können. Dazu braucht man eine durchgängige, sauber integrierte Suite, die auch auf allen Ebenen integrierbar ist. Auf welcher dienstbasierenden Technologie sind Ihre Web-Services aufge- baut, um zur Anwendungsintegration genutzt zu werden? Die Adaptoren, welche in unserer Suite verwendet werden, heissen eWays. Sie basieren auf gängigen Standards. Mit diesen Adaptoren können bestehende Anwendungen, Datenbanken oder einfache Kommunikations-Systeme ohne Programmieraufwand eingebunden werden. Die Services (Interfaces), die die eWays zur Verfügung stellen, können von verschiedensten Technologien aufgerufen werden. Dabei kann das Definitionsfile in eine externe Registry publiziert werden, um Java Composite Application Platform Suite Composite Applications Java System Portal Server Portal eBAM Studio eView Studio eVision Studio eInsight Business Process Manager Orchestration eWay Adapters eXchange Integrator eXpressway Integrator eTL Integrator Integration Components Integration Platform eGate Integrator Repository Integration Java System Application Server Core Services Java System Directory Server Java System Access Manager Sun Java Studio Sun Java Creator Enterprise Manager Enterprise Designer View Generation PUBLI-FORUM ness-Dienste eine gute Granularität haben, um auch wirklich sinnvoll wiederverwendet werden zu können. A Service-Oriented Architecture Presentation «User Interface» Get Order Quote Generate Quote Process Submit / Change Order Consolidate Order for Shipment Process Manage Exception Orders Order Fulfillment Process Business Processes «Assembly & Orchestration» Business Services «Business Language» Validate Order Check Credit Check Inventory Schedule Shipment Create Invoice Technical Services «IT Landscape» den Service auch via Intra- oder Internet verfügbar zu machen. Durch diese Offenheit und dank der konsequenten Verwendung von Standards ist garantiert, dass die entwickelten Dienste (Technical- und Business-Services) jederzeit auch von anderen Systemen und Umgebungen genutzt werden können. Wodurch erreicht Ihre SOA hohe Flexibilität der IT-Systeme und geringe Redundanz? CAPS ist nicht nur ein Name, CAPS ist eine sauber integrierte Suite. Sie kann von den unterschiedlichsten Projektmitarbeitern genutzt werden. SoftwareEntwickler erstellen damit technische Dienste. Business-Fachleute orchestrieren neue Business-Services und -Prozesse. Und Designer erstellen Portlets, GUIs oder Business-Activity- Monitoring-Seiten. Dieses gemeinsame Einwicklungstool zeigt, abhängig vom angemeldeten Benutzer, immer nur die zutreffenden Artefakte eines Projektes. Dadurch können – ohne Redundanz – Dienste, Prozesse und User-Interfaces erstellt und wiederverwendet werden. Dabei basiert die Suite konsequent auf Industriestandards und lässt sich so jederzeit in bestehende Umgebungen integrieren. Inwieweit muss die Geschäftslogik bereits bestehender Bankenanwendungen umgebaut werden? Ziel einer guten Service-orientierten Architektur ist es, dass bestehende Geschäftsprozesse gar nicht angepasst werden müssen. Sofern die bestehenden Bankenanwendungen bereits in Form von Business-Prozessen abgebildet sind, können diese, je nach verwendetem Tool, direkt als Business Process Execution Language Code (BPEL) in CAPS importiert und ausgeführt werden. Andere Anwendungen können in einem BPELTool oder direkt in CAPS neu erfasst und mit den entsprechenden Runtime-Informationen versehen werden. Dies bietet, gerade bei der Implemetierung der Prozesse, eine extreme Verkürzung der Entwicklungszeit. Voraussetzung dafür ist aber, dass bereits ein Repository von bestehenden Diensten zur Verfügung steht, um diese nur noch zu orchestrieren. Dabei ist es wichtig, dass die Busi- Auf welche Dienste kann in der SOA aufgesetzt werden?(Bitte bringen Sie das Beispiel eines Bankgeschäfts.) Wie schon erwähnt, ist es unbedingt erforderlich, die Dienste zu unterteilen. Die technischen Services haben in der Regel eine sehr viel feinere Granularität. Sie müssen sich auch um technische Aspekte wie Synchronität, Transaktionen und Laufzeit kümmern. Beispiele dafür sind: «Konto für Kunde», «Adresse für Kunde» oder «Kreditlimite für Kunde», welche dann einfach die gewünschten Information aus den bestehenden Systemen lesen resp. schreiben. Die Business-Dienste werden aus den technischen Services zusammenorchestriert. Dies geschieht sehr oft schon mit BPEL-Prozessen, um eine möglichst hohe Flexibilität zu erreichen, kann aber gegebenenfalls auch noch herkömmlich programmiert werden. Diese Dienste werden später vom Business-Anwender verwendet und müssen entsprechend grob-granular sein. So sind dies zum Beispiel: «Prüfe Kredit», «Bestelle Kreditkarte», «Platziere Bestellung» oder «Kaufe Aktie». Solche Dienste werden, unter Umständen auch zusammen mit möglichen technischen Diensten von BusinessBenutzern, zu Composite Applications oder Business-Prozessen orchestriert. Die einzigartige Vision «The Network Is The ComputerTM» machte Sun zur führenden Anbieterin von hoch stehenden Technologien – Technologien, die die Entwicklung der wichtigsten Industrien weltweit voranbringen. Dank bedeutender Akquisitionen ist Sun auch im Network Computing und Data Management eines der weltweit führenden Unternehmen. Peter Affolter ist Elektro- und SoftwareIngenieur und arbeitet seit gut 15 Jahren in der Software-Entwicklung. Davon ist er seit zehn Jahren im Consulting-Bereich für Java tätig, beispielsweise für Firmen wie Netscape, Silverstream und BEA Systems. Seit Februar 2006 ist er als Software Architekt für Sun Microsystems (Schweiz) AG im Einsatz. Sun Microsystems (Schweiz) AG Javastrasse 2 / Hegnau 8604 Volketswil Tel. 044 908 90 00 Fax 044 908 90 01 [email protected] www.sun.ch, www.sun.com