Vorlesungsreihe Grundlagen der Informatik SOA Service orientierte Architekturen Prof. Dr.-Ing. Thomas Wiedemann email: wiedem@informatik.htw-dresden.de HOCHSCHULE FÜR TECHNIK UND WIRTSCHAFT DRESDEN (FH) Fachbereich Informatik/Mathematik
Gliederung Ergebnisse von 2 Workshops Analyse kommerzieller SOA-Systeme Evaluierung von Open-Source-SOA-Tools Zusammenfassung
Workshop SOA Evaluierung und praktischer Vergleichstest von Werkzeugen für Service-Orientierte-Architekturen
Agenda Teilnehmer Definition SOA Vorgehensweise im Workshop Vorführung Oracle und Cordys Kurzvorstellung Tools Detail- und Performanceanalyse Zusammenfassung/Resume 19.06.2008 Service-Oriented Architecture 4
Teilnehmer Prof. Dr.-Ing. Thomas Wiedemann Thomas Egerland Christian Mittas Lars Herzog Thomas Chlebowski Krzysztof Zawistowski Alexandra Schulz 19.06.2008 Service-Oriented Architecture 5
Definition SOA SOA steht für Service-Oriented Architecture heterogene, verteilte IT-Systeme bestehend aus Ansammlung von Services lose Kopplung prozessorientierte Steuerung Steuerung auf SOA-Ebene abgelegt Prozesslogik, die Prozesse steuert, auf Server abgelegt 19.06.2008 Service-Oriented Architecture 6
SOA 19.06.2008 Service-Oriented Architecture 7
Aufgabenszenario Workshop Mitarbeiter im IT-Management Einsatz von SOA prüfen SOA-Tools empfehlen Randbedingungen: keine Restriktion der Preise keine größeren Funktionalitätsrestriktionen (siehe must-have Kriterien) 19.06.2008 Service-Oriented Architecture 8
Vorgehensweise im Workshop Aufstellung Kriterienkatalog Basis-Kriterien (must-have) nice-to-have-kriterien sonstige Kriterien/Informationen Phase 1: Grobanalyse Marktanalyse vorhandene SOA-Tools erste Selektion für genauere Bewertung Phase 2: Detailanalyse Bewertung hinsichtlich Kriterienkatalog 19.06.2008 Service-Oriented Architecture 9
Kriterien Must-have BPEL (Designer), Ergonomie zentrales Webservices-Management Windows-, Linux-Unterstützung Referenzen/Qualitäten der Anbieter Schnittstellen zu anderen IT-Systemen Standard-Umsetzung (BPEL, BPMN) Überwachung Performance Störsicherheit bei Ausfall von SOA- Komponenten interoperabel auch mit anderen SOA-Systemen Nice-to-have BPMN (Designer) weitere BS-Versionen Simulationsmöglichkeit 19.06.2008 Service-Oriented Architecture 10
Vorstellung der Tools Oracle SOA Suite Cordys 4.2 C2 BPEL Maestro 2.2.0 Active BPEL BEA AquaLogic Suite Fiorano SOA 2006 Platform Socon Integrity 19.06.2008 Service-Oriented Architecture 11
Oracle SOA Suite 19.06.2008 Service-Oriented Architecture 12
Oracle SOA Suite Oracle SOA Suite J2EE Anwendung kann in verschiedenen Application Servern deployed werden (IBM's WebSphere, BEA Systems' WebLogic, JBoss und OracleAS) benötigt ausreichend Arbeitsspeicher und einen zeitgemäßen Application Server JDeveloper (BEPL Designer) stand-alone Java Anwendung 19.06.2008 Service-Oriented Architecture 13
Oracle SOA Suite BPEL Process Manager Prozesse testen, verwalten und kontrollieren Business Activity Monitoring Auswerten und Analysieren von Prozessen Business Rules einfaches definieren, verändern und verwalten von Entscheidungen Enterprise Service Bus (ESB) steuert den Datenfluss, die Servicereihenfolge und die Transformation von BPEL Prozessen Web Services Management Verwalten und Katalogisieren von Web Services 19.06.2008 Service-Oriented Architecture 14
Bewertung der Oracle SOA Suite BPEL Modellierung einfache und schnelle Modellierung möglich sehr geringer Installationsaufwand Integrationsmöglichkeit aller SOA-Bestandteile durch Verbindung von JDeveloper und SOA Suite gutes Verständnis von BPEL nötig OracleLite Datenbank zur SOA Suite Unterstützung ungeeignet Performancenachteile gegenüber anderen Tools 19.06.2008 Service-Oriented Architecture 15
Oracle Demonstration 19.06.2008 Service-Oriented Architecture 16
Cordys 4.2 C2 19.06.2008 Service-Oriented Architecture 17
Analyse der Software auf Standards basierende, konsistente Integrationsplattform webbasierte Oberfläche integrierte Software (Modellierung, ESB, Überwachung ) Speicherung der Daten über einen LDAP-Server (CARS 1.2) wird mitgeliefert basiert auf einer Five-tier Architektur separate und isolierte Haltung der Daten-, Integrations-, Business-, Prozess- und Präsentationslogik 19.06.2008 Service-Oriented Architecture 18
Bestandteile von Cordys 4.2 19.06.2008 Service-Oriented Architecture 19
Bestandteile von Cordys 4.2 Cordys Studio ermöglicht (auf multi-user Basis) Definition und Design von Geschäftsprozessen, prozessorientierte Applikationen und kollobarativen Business Modellen Cordys Integrator Cordys Plattform zur Applikationsentwicklung nutzt SOAP, SOAP Nachrichten zur Kommunikation Cordys Orchestrator Echtzeit Business Collobaration Tool ermöglicht unternehmensübergreifende Business Prozesse und Applikationen zu implementieren und zu managen 19.06.2008 Service-Oriented Architecture 20
Bestandteile von Cordys 4.2 Cordys Portal Geschäftsprozess messen, überwachen und verbessern liefert Bausteine für ein unternehmensweites Informationsportal eingebettete Reportmöglichkeiten Cordys Admin Repository Server 1.2 da Cordys SOAP Nodes, SOAP Processors, Method sets und Methods umfassend nutzt, benötigt es ein Repository, welches diese Informationen aufbewahrt diese Funktionalitäten bietet der Cordys Admin Repository 1.2 (CARS) Anordnung der einzelnen Bestandteile im Cordys Framework (siehe Abbildung) 19.06.2008 Service-Oriented Architecture 21
Bewertung von Cordys 4.2 großer Vorteil durch Integration aller SOA-Bestandteile BPMN Modellierung sehr einfache und schnelle Modellierung möglich sehr umfassender Support, mit persönlichem Ansprechpartner nur in Verbindung mit Internet Explorer (ab Version 6) nutzbar sehr schwierige Installation da Datenbankanbindung nicht getestet werden kann Datenbankinstanzen müssen vorher vorhanden sein 19.06.2008 Service-Oriented Architecture 22
BPEL Maestro 2.2.0 19.06.2008 Service-Oriented Architecture 23
BPEL Maestro 2.2.0 Hersteller: Parasoft Corporation Tool zur Orchestrierung von Web Services dient der Entwicklung, zum Testen und Ausführen von BPEL-Prozessen Komponenten: BPEL engine Managementsystem Eclipse dient als Entwicklungsumgebung (Version: 3.1.1) 19.06.2008 Service-Oriented Architecture 24
BPEL Maestro 2.2.0 BPEL engine durch Datenbank unterstützt Managementsystem umfasst Entwicklungs- und Test-Tools Bewertung: einfache Installation keine Generierung von Mehrwert im Vergleich mit Modellern in z.b. ORACLE SOA Suite und Cordys nur BPEL-Modellierung, keine SOA-Umgebung 19.06.2008 Service-Oriented Architecture 25
Active BPEL 19.06.2008 Service-Oriented Architecture 26
Active BPEL Hersteller: Active Endpoints Inc. / Shelton, CT 06484 Komponenten ActiveBPEL Enterprise for Apache Tomcat Konfiguration des Servers, Ausführen der Prozesse Überwachen und Analysieren der Prozessausführung Verwalten von Prozessversionen ActiveBPEL Designer auf Eclipse basierende grafische Entwicklungsumgebung Modellieren von BPEL Prozessen per Drag & Drop Simulieren und Testen von erstellten Prozessen Kosten 30-tägige Testversion für ActiveBPEL Enterprise ActiveBPEL Designer ist kostenlos verfügbar 19.06.2008 Service-Oriented Architecture 27
Active BPEL Einschätzung schneller, reibungsloser Support (Softwarebereitstellung/ Lizenzvergabe) problemlose Installation der Komponenten Beispielanwendung gut nachvollziehbar ständige Weiterentwicklung der Software im Testzeitraum 3 neue Releaseversionen gegenüber anderen Tools noch nicht sehr ausgereift Modellierung nicht intuitiv (Bedarf einer Einarbeitungszeit) grafische Darstellung der BPEL Prozesse weicht von anderen Tools ab Ausführung eigener BPEL Prozesse auf Server nicht ohne weiteres möglich Bestückung eigener BPEL Prozessen mit Daten sehr aufwendig kein schnelles Testen eigener Prozesse möglich 19.06.2008 Service-Oriented Architecture 28
BEA AquaLogic Suite 19.06.2008 Service-Oriented Architecture 29
Überblick AquaLogic Produktfamilie basiert auf BEA WebLogic Server (J2EE 1.4 konform) Komponenten der BEA AquaLogic Produktfamilie BEA AquaLogic BPM Suite BEA AquaLogic Service Bus BEA AquaLogic Data Services Platform BEA AquaLogic Service Registry Ausgezeichnet mit: 19.06.2008 Service-Oriented Architecture 30
Bewertung erfüllt must-have & nice-to-have Anforderungen Bewertung/direkter Vergleich aber nicht möglich Inkompatibilitätsprobleme aufgrund neu erschienener Versionen zum Zeitpunkt des Workshopbeginns Installation bestimmter Komponenten unmöglich Online-Dokumentation in Bezug auf vorherige Versionen Fehlermeldungen frühere Versionen nicht mehr verfügbar Zeit für erneuten Download und Untersuchung zu knapp Ausschluss 19.06.2008 Service-Oriented Architecture 31
Fiorano SOA 2006 Platform 19.06.2008 Service-Oriented Architecture 32
Fiorano SOA 2006 Platform I Hersteller: Fiorano Software Inc Los Gatos, CA/ Bangalore, Karnataka Leistungsumfang: Infrastructure FioranoMQ 2006 Server - Java Messaging Server Fiorano ESB Server Fiorano ESB Peer Plattform für Ereignis-Prozess- Orchestration Tools Fiorano Network Administration Tool Konfiguration und Management Fiorano Event Process Orchestrator Fiorano Services and Security Manager Fiorano Studio Fiorano Components Service Bridges 19.06.2008 Service-Oriented Architecture 33
Fiorano SOA 2006 Platform II Technologie: JAVA-ESB-System; Administration und Design über Java-Clients / JRE 1.5 + Tomcat-Axis in der Installationsdatei enthalten Event Prozesse - Mischung aus SOA und EDA Konzepten; proprietäres Format BPEL Prozesse können als WebService oder als BusinessComponent veröffentlicht werden zum Ausführen von Event Prozessen ist ein Peer Server und der ESB nötig 19.06.2008 Service-Oriented Architecture 34
Fiorano SOA 2006 Platform III BCA (SOA + EDA) BPEL (SOA) FEPO (EDA) Control Flow Data Flow weniger effektiv; ganzer Prozess wartet auf den return call Prozess arbeitet weiter; es geht um Verarbeitung eingehender Nachrichten und Zurückgeben ausgehender Nachrichten 19.06.2008 Service-Oriented Architecture 35
Bewertung Kosten der Software: 45-tägige kostenlose Evaluation Baukastensystem Beispielkonfiguration HTW 300.000 Grundpreis + 25.000 pro Entwickler/pro Jahr Installation: sehr einfache Installation; nur Zielverzeichnisses wählen Technologie (Event Prozess Technik nicht betrachtet) durch Java-Technologie entsteht unkontrollierter Speicherverbrauch bei Servern und Clients keine Drittanbieter-Produkte nötig (Datenbank, Mapper...) Designer (BPEL) + eigenes Mapping-Tool ähnlich Altova MapForce + Test der Prozesse durch 3 Clicks möglich + zum Testen kein Starten von Servern nötig bei Fehlern keine richtige Fehlermeldung sondern Ausgabe einer Java Exception Probleme: keine Möglichkeit Ergebnis eines WS als Input für einen zweiten WS zu nutzen nur ein Parameter kann zum Prozessbeginn übergeben werden BPEL-Prozesse in Version 2007 nicht mehr unterstützt 19.06.2008 Service-Oriented Architecture 36
SOCON Integrity 19.06.2008 Service-Oriented Architecture 37
SOCON Integrity I Hersteller: SOCON Inc. San Diego, CA / Dresden, Sachsen Technologie:.NET basiertes System Basis MS SQL Server 2005 Simulation Globale Regeldefinition Leistungsumfang: ESB Designer BPMN Rollen und Organisation Regeln und Vokabeln Monitor Administrations-Client Visual Studio Templates für Human Activities 19.06.2008 Service-Oriented Architecture 38
SOCON Integrity II Bewertung Installation sehr einfach sehr guter Designer; einfache und klare Modellierung Technologie + anlegen eines Enterprise Vokabular möglich + SQL 2005 und Altova Mapforce nötig Stabilität nicht alle Bedienelemente sind mit Funktionen hinterlegt?beta Version? 19.06.2008 Service-Oriented Architecture 39
Phase 2: Detailanalyse I BPEL Import/Export toolabhängige Namespacebezeichnung (tag-präfixe) Unterschiedliche Projektstrukturen der einzelnen Tools Anpassung möglich, aber sehr aufwendig Migration BPEL zu BPMN Migration möglich nur das Modell wird umgewandelt keine Übernahme der Eigenschaften oder Messages Test der Migration war nur mit Cordys 4.2 möglich 19.06.2008 Service-Oriented Architecture 40
Phase 2: Detailanalyse II BPMN-Modellierung BPEL-Modellierung 19.06.2008 Service-Oriented Architecture 41
Performanceanalyse I Rahmenbedingungen für den Lasttest Oracle Suite und Cordys 4.2 auf Lastverhalten getestet getestet wurde HelloWorld WebService in while-schleife gleicher Server im Diplomantenraum Z343 AMD Athlon 64 Prozessor mit 2,2 GHz 1 GB Arbeitsspeicher WebService befand sich auf dem Server Tools liefen während des Tests als einzige Anwendung 19.06.2008 Service-Oriented Architecture 42
Performanceanalyse II Ergebnisse des Lasttest Cordsys Anzahl der Schleifendurchgänge Zeit (Mittelwert von 10 Testdurchläufen) Oracle Anzahl der Schleifendurchgänge Zeit (Mittelwert von 10 Testdurchläufen) 1 20ms 1 198ms 10 169ms 10 1s 890ms 100 1s 592ms 100 10s 75ms 200 3s 42ms 200 20s 419ms 1000 15s 269ms 1000 110s 69ms 19.06.2008 Service-Oriented Architecture 43
Performanceanalyse III Grafische Auswertung des Lasttest 120 100 Lasttest Oracle/Cordys bei gleichen Rahmenbedingungen 10-fache Zeit der Oracle Suite 80 Zeit in s 60 40 Oracle Cordys 20 0 1 10 100 200 1000 Schleifendurchläufe 19.06.2008 Service-Oriented Architecture 44
Abschließender Vergleich Tools Kriterien (must have) Cordys ORACLE Active BPEL Socon Integrity Fiorano SOA BEA Parasoft BPEL (Designer), Ergonomie n.a. + - + + + BPMN-Modellierung n.a. n.a. n.a + - n.a. zentrales Webservices- Management + + + - n.a. Windows-, Linux-Unterstützung Referenzen/Qualitäten der Anbieter + + + + Schnittstellen zu anderen IT-Systemen + + n.a. Installationsaufwand - + + + --- - Installationsvoraussetzungen - + + + - Gesamtbewertung + + + + - + - 19.06.2008 Service-Oriented Architecture 45
Zusammenfassung weitere Tools durch Analyse in ix in Januarausgabe 2007 große Bandbreite in Funktionalität und Qualität Performance-Unterschiede bis zum 10fachen erste Nachfolgediskussion über SOA in Richtung eventgesteuerte Prozesse (EDA, SOA 2.0) 19.06.2008 Service-Oriented Architecture 46
Allgemeine Zusammenfassung zu SOA gegenwärtig wichtigstes Konzept in der IT alle führenden IT-Provider arbeiten daran Grundansatz richtig und zielführend noch sehr viele Implementierungsprobleme Sub-Formate (BPEL / BPMN) der Hersteller passen nicht zusammen Teilweise kritische Performance Mögliche Ablösung durch Nachfolgetechnologien wie Ereignisgesteuerte Architektur (von engl. event-driven architecture, EDA)