3

Click here to load reader

Dienstleistungs- · PDF fileBislang konnte webMethods in Sa-chen mobile Anwendungen kaum punk-ten. Mit der Mobile Suite versucht Versi-onˇ9 diese Lücke zu schließen. Mit dem

Embed Size (px)

Citation preview

Page 1: Dienstleistungs- · PDF fileBislang konnte webMethods in Sa-chen mobile Anwendungen kaum punk-ten. Mit der Mobile Suite versucht Versi-onˇ9 diese Lücke zu schließen. Mit dem

Befragt man IT-Architekten aus ver-schiedenen Firmen nach der richti-gen Integrationsstrategie, löst diese

Frage in der Regel kontroverse Diskussio-nen aus. Das Spektrum der technischenOptionen reicht von selbst entwickeltenSOA-Anwendungen, diversen Frame-works und quelloffenen Enterprise Ser-vices Buses (ESB) bis zu umfang reichenkommerziellen Produkten. Zu letztererSpezies gehört die Plattform webMethods,die nun in der Versionˇ9 vorliegt.

Seine Ursprünge hat das Produkt inder Webentwicklung. Namensgeber istdie US-Firma webMethods, 1996 ge-gründet und 2007 von der Software AGfür 546 Millionen US-Dollar übernom-men. Die Suite stellt eine Fülle vonWerkzeugen, Adaptern und Servern zurVerfügung. Dazu gehören ein IntegrationServer, ein Broker, das Entwicklungs-werkzeug Designer, Software zur Groß-rechnereinbindung (EntireX und ApplinX)sowie Konnektoren zu Standardanwen-

dungen, ein zentrales Administrations-tool und die SOA-Registry CentraSite –um nur die wichtigsten Bestandteile zunennen (Abbildungˇ1). Weiterhin gibt es eine Geschäftsprozessmanagement-Komponente, die hier nicht näher be-trachtet wird.

Es gibt mehrere Ansätze zur System-integration (siehe Kasten „KomplizierteBeziehungen“). Früher galt webMethodsals ein typischer Vertreter des Hub-and-Spoke-Verfahrens. Im Laufe der Jahre ka-men weitere hinzu. Heute bilden web -Methods Integration Server und derBroker Server den Kern des ESB, derweitaus komplexere als die klassischenHub-and-Spoke-Installationen ermög-licht.

Der Integration Server ist in Java ge-schrieben und enthält einen eingebettetenTomcat/JBoss-Webserver, der sich zurLastverteilung mehrfach starten lässt. Erbeherrscht die gängigen Kommunikati-onsstandards: die Basisprotokolle HTTP,HTTPS, FTP, SMTP, die Netzwerkproto-kolle SOAP, XML RPC sowie das Nach-richtenformat MIME beziehungsweiseS/MIME. Als Datenformat kommen XMLoder ein selbstdefiniertes infrage, etwadurch Strichpunkte separierte Daten -sätze.

Viele Verbindungen zur AußenweltEs existieren Konnektoren für People-Soft, Remedy, Salesforce, SAP, Siebelsowie zu Midrange- (IBMˇi) und Groß-rechnersystemen (z/OS). Mit den aufge-führten Protokollen, den Adaptern undZusatzkomponenten deckt der IntegrationServer das Gros der Möglichkeiten übersynchrone Kommunikation ab.

Den Broker verwendet man hingegenim Regelfall, um Anwendungen asyn-chron anzubinden. Mit seiner Hilfe lassensich die gängigen JMS-Konzepte Point-to-Point und Publish-Subscribe umsetzen.Er kann mit mehreren Integration Servernzum Aufbau komplexer Architekturen zu-sammengeschaltet werden, um die Per-formance und die Zuverlässigkeit bei ho-her Gesamtlast deutlich zu verbessern.Statt des proprietären Brokers darf derEntwickler auch einen standardkonfor-men JMS-Broker wie Apaches ActiveMQeinsetzen.

Zum Programmieren bietet web -Methods eine Java-IDE auf Eclipse-Basisan. Der Designer verfügt über zahlreicheViews sowie diverse Perspektiven auf dieverschiedenen Bestandteile der Suite. Mitder IDE kann der Benutzer Webservices

80 iX 8/2013

REVIEW | APPLICATION SERVER

webMethods 9: Umfangreiche Modellpflege

Dienstleistungs-gesellschaftBernhard Steppan

Die Software AG schickt die neunte webMethods-Ausgabe mit Neuerungen zu den Hype-Themen der Zeit ins Rennen.Nun soll die Integrationsplattform mit Cloud Computing, Big Data und mobilen Anwendungen klarkommen.

ix.0813.080-082 15.07.13 14:14 Seite 80

© Copyright by Heise Zeitschriften Verlag

Page 2: Dienstleistungs- · PDF fileBislang konnte webMethods in Sa-chen mobile Anwendungen kaum punk-ten. Mit der Mobile Suite versucht Versi-onˇ9 diese Lücke zu schließen. Mit dem

auf Basis des Integration Server mit un-terschiedlichen Sprachen implementieren(etwa Java, C oder Flow). Das Installie-ren und Testen der Services im Integra -tion Server kostet nur wenig Mühe. Ein-ziges Manko: Die Software AG hat esimmer noch nicht geschafft, ihre IDE aufdie aktuelle Eclipse-Version 4.3 zu heben.Der Designer basiert weiterhin auf demveralteten Eclipse 3.6 und ist – im Ge-gensatz zur originalen IDE – nicht fürMac OSˇX verfügbar.

Designer: Viele kleine HelferleinAnsonsten gibt es vorwiegend Erfreuli-ches vom Designer zu berichten. EineFülle von Assistenten hilft beim Schrei-ben eines Service. Will der Entwicklerden Dienst in Java umsetzen, legt er ihninnerhalb der IDE auf dem IntegrationServer ohne Verteilmechanismus an.Klickt er danach in der Integration-Ser-ver-View auf das erzeugte Template, öff-net die IDE das Codefragment in einemEditor, der die vom Assistenten angeleg-ten Codeblöcke vor dem Überschreibenschützt. Wenngleich einige Dinge an-fangs etwas ungewohnt erscheinen, pro-fitiert der Entwickler von der vergleichs-weise einfachen Handhabung. Er kannden Service nicht nur sofort ausführenund testen, sondern auch, wie bei einemStandard-Java-Dienst üblich, beliebig mitJava-Bibliotheken ergänzen.

Anders als Java-Services werden Flow-Dienste ausschließlich grafisch erstellt.webMethods Flow ist eine proprietäre

grafische Sprache, vergleichbar mit derProzessbeschreibungssprache BPEL. Floweignet sich für das modellgetriebene Zu-sammenklicken von Services ohne Codie-rung. Dafür existiert ebenfalls eine spe-zielle Perspektive mit einem Editorfenster.Es besteht aus mehreren Registerkartenmit verschiedenen Ansichten auf denFlow-Dienst. Es gibt eine Baum- sowieeine Layoutseite, eine Seite für Input/ -Output-Ströme sowie eine für das An -legen von Feldern. Die Baumansicht verschafft einen Überblick über dieProzess schritte, die der Entwickler in derLayoutansicht hinzufügt und miteinanderverschaltet. Der Editor für Input-/Output-Ströme dient dazu, die Endpunkte desService mit Ein- und Ausgabeparameternzu definieren. Wie beim Java-Pendantsind die Flow-Dienste ohne Verteilung

direkt auf dem Integration Server aus-führbar.

Um einen Client für einen Service aufBasis des Integration Server zu erzeugen,reicht es aus, sich vom Designer einenRahmen anlegen zu lassen und ihn deneigenen Wünschen anzupassen. Leider„vergisst“ der Designer immer noch, dieLaufzeitkonfiguration für den Client mitallen notwendigen Programmierbiblio -theken zu erzeugen. Folge: Der Start desClients endet mit einem Laufzeitfehler.Man muss die notwendigen Bibliothekenselbst zusammensuchen und die Konfi -guration anpassen. Da der Designer einevollwertige Eclipse-IDE ist, kann manmit ihm grafische Oberflächen für RichClients mit RCP oder Swing wie gewohnterstellen. Will man Webclients entwi-ckeln, die der Integration Server ohneUmwege ausführen kann, gilt die Ein-schränkung, dass webMethods intern nurJavaServer Faces 1.2 unterstützt. Das be-deutet, dass ein auf JSF 2.x basierenderJSF-Client separat von der webMethods-Infrastruktur entwickelt und betriebenwerden sollte.

Mainframes mit BeharrungsvermögenGroßunternehmen arbeiten häufig nochmit altgedienten Legacy-Programmen, diezwar nicht mehr dem Stand der Technikentsprechen (etwa auf Basis von Adabas-Natural oder COBOL/DB2), sich jedochnur schwer ablösen lassen. Beim Einbin-den von Mainframe-Anwendungen in ei-ne serviceorientierte Systemlandschafthilft das Integration Server Add-on En -tireX. Es beherrscht z/OS 1.1, 1.2, 1.13,z/VSE 4.2, 4.3, IBMˇi sowie die Unix-Systeme AIX 6.1, 7.1, SUSE und Red Hat

iX 8/2013 81

WEBSERVICES (SOA)

ERP ADAPTERS (SAP, SIEBEL, PEOPLESOFT)

SQL Server

Adabas

ORACLE

FTPSMTPSOAP HTTP

EDI

ROSETTANET

ebXML

MainframeAdapter

BROKER(JMS)

Flat-FileAdapter

Trad

ing

Netw

orks

IntegrationServer

ValidationSynchronizationTransformation

MappingRouting

JDBC

Scheduler

MWSCAFBPMBAM

WORKFLOW

PEOPLESOFTSAP SIEBEL

webMethods stellt zahlreiche Integrationstechniken, -werkzeuge und Adapter zum Ein-binden von externen Rechnern und Standardsoftwareprodukten zur Verfügung (Abb.ˇ1).

CommandCentralServer Runtime

B

RuntimeC

RuntimeA

Service API

Web UI

CommandLine

Platform ManagerSPM

Plug-inSPM

Plug-inSPM

Plug-in

Command Central führt die in den Vorgängerversionen verstreuten Verwaltungsinstan-zen unter einer einheitlichen Oberfläche zusammen (Abb.ˇ2).

ix.0813.080-082 15.07.13 14:14 Seite 81

© Copyright by Heise Zeitschriften Verlag

Page 3: Dienstleistungs- · PDF fileBislang konnte webMethods in Sa-chen mobile Anwendungen kaum punk-ten. Mit der Mobile Suite versucht Versi-onˇ9 diese Lücke zu schließen. Mit dem

Linux für IBMs System z/OS. Mit En -tireX kapselt der Entwickler beispielswei-se im IMS und CICS laufende COBOL-und C-Programme. Diese Aufgabe erle-digt er ebenfalls mit dem Designer, derihm dazu eine EntireX-Perspektive an-bietet.

Großrechneranwendungenschöner machenMit ApplinX ist es beispielsweise mög-lich, 3270-Masken in Java-Weboberflä-chen umzuwandeln. Die zeitaufwendigemanuelle Arbeit, die normalerweise hin-ter solchen Aktionen steckt, reduziert sichdurch das Einlesen von Screen-Definitio-nen wie IBMs CICS Basic Message Ser-vice oder Screen Definition Facility. DerCode der Legacy-Anwendung bleibt da-bei unberührt. Laut Hersteller stehen über40 Assistenten für ApplinX im Designerzur Verfügung.

Die Übernahme von Terracotta in diewebMethods-Suite ist sicher die spekta-kulärste Neuerung. Im Mai 2011 hatte dieSoftware AG das gleichnamige Unterneh-men gekauft. Es wurde mit dem Caching-Produkt Ehcache bekannt, das seinenDienst in O/R-Mapping-Frameworks wieHibernate verrichtet. Terracotta verschaffteiner webMethods-Anwendung mehrSpeicher, als es die Standard-Java-Metho-den vermögen. Das Werkzeug erweitertden limitierten Java-Heap um einen au-

ßerhalb liegenden Cache. Abhängig vonder verwendeten Plattform schaufelt die-ser technische Kunstgriff bis zu einem Te-rabyte an zusätzlichem Cache frei. Angeb-lich führt das bei Anwendungen, die mitgroßen Datenmengen operieren, beispiels-weise zu einer über hundertmal schnelle-ren Reaktionszeit eines Warenkorbs.

Command Central ist eine weitereneue Komponente. Wen immer schongenervt hat, dass man die Bestandteileder Suite an unterschiedlichen Stellenkon figurieren und überwachen musste,bekommt nun ein übergreifendes Ver-waltungswerkzeug. Es besteht aus einerAdministrationsoberfläche, einem zentra-len Server und einem oder mehreren mitden verschiedenen Laufzeitumgebungenverbundenen Plattformmanagern. Überdie Admin-Konsole lassen sich die Kom-mandozeilenparameter für alle vorhan -denen Module festlegen. Der Plattform -manager reicht sie an die verschieden -en Laufzeitumgebungen weiter (Abbil-dungˇ2). Das Ganze sieht komplex aus,besonders da es sowohl für den Serverals auch für die Plattformmanager eigeneRemote-Java- und REST-APIs gibt. Esdrängt sich die Frage auf, warum man sichnicht entschieden hat, die Suite mittels desbewährten Industriestandards JMX (JavaManagement Extensions) zu verwalten.

Viele Adapter serienmäßig

SaaS-Angebote mit den internen IT-Sys-temen auf Basis von webMethods zu in-tegrieren, ist aufgrund des Austauschsstreng vertraulicher Daten nicht einfach.In der Vergangenheit waren solche Pro-jekte zeitaufwendig und teuer. Daher hatdie Software AG Konnektoren für externeSysteme wie Salesforce in die Suite ein-gebaut. Sie firmieren unter dem NamenCloudStreams und sollen die Benutzer in

die Lage versetzen, Integrationsvorhaben,die früher Monate in Anspruch nahmen,in wenigen Tagen abzuwickeln.

Beim Aufbau einer serviceorientiertenAnwendungslandschaft ist es wichtig, zudokumentieren, welche Services in wel-chen Versionen und Ausprägungen über-haupt existieren. CentraSite ist ein SOA-Registry und -Repository, mit dem sichEckdaten der Services speichern und perUDDI (Universal Description Discoveryand Integration) auslesen lassen. DieSoftware gibt es als kostenfreie Commu-nity- sowie als kommerzielle Variante(siehe „Alle Links“). Letztere verfügtüber zusätzliche Features wie Loggingund Lifecycle Management. Beide Aus-führungen sind via Designer in die Suiteeingebunden. Wer einen Service entwi-ckelt und Zusatzfunktionen benötigt,wechselt in die CentraSite-Perspektiveund sucht dort nach vorhandenen Ange-boten, die er mit dem eigenen Serviceverknüpfen kann.

Bislang konnte webMethods in Sa-chen mobile Anwendungen kaum punk-ten. Mit der Mobile Suite versucht Versi-onˇ9 diese Lücke zu schließen. Mit demschon aus der Vorgängerversion bekann-ten Mobile Designer lassen sich nebenAndroid-, BlackBerry- und iOS- auchHTML-5-Clients entwickeln. Hervorzu-heben ist der Cross-Development-Ansatz:Der Entwickler schreibt seine mobilenAnwendungen in Java und lässt sie da-nach vom Cross Compiler des MobileDesigners in nativen Code übersetzen. Essoll zudem möglich sein, sie so sicher mitbestehenden IT-Systemen zu verbinden,dass nur autorisierte Apps Zugriff auf in-terne Systemteile bekommen.

Fazit

webMethods besteht aus einer Mischungoffener und proprietärer Konzepte, die aufeiner Standard-Java-Infrastruktur aufset-zen. Die Suite bietet die Möglichkeit, miteinfachen Architekturen zu starten und siebei Bedarf zu erweitern. Releaseˇ9 mar-kiert keine Zäsur, sondern schließt Lückenin Bezug auf Cloud Computing, Big Dataund mobile Clients – alles in allem einegelungene Modellpflege. (jd)

Bernhard Steppan

arbeitet bei der SYRACOM Consulting AG in Wiesbaden als Leading Consultant.

82 iX 8/2013

REVIEW | APPLICATION SERVER

Komplizierte BeziehungenInnerhalb einer Point-to-Point-Architekturkann jeder mit jedem reden. Vorteil: schnelleKommunikation und kaum Overhead. Wennkein Message Broker im Spiel ist, entstehenjedoch starke Bindungen zwischen den teil-nehmenden Systemen. Selbst gestrickte Web-services auf Point-to-Point-Basis führen daherohne gute Dokumentation der Servicekon-trakte schnell ins Chaos.

Bei der Hub-and-Spoke-Architektur steht einServer (Hub) im Zentrum, zu dem alle An-wendungen, die zusammenarbeiten sollen,Beziehungen (Speichen) haben. Ein zentrales

System lässt sich leicht administrieren, neuangeschlossene Anwendungen sind sofortmit dem Hub verbunden. Nachteilig wirkensich die oftmals auftretenden Performance-einbrüche aus.

In der Bus-Architektur sind alle Anwendun-gen lose über einen Bus verbunden. DieseKonstruktion skaliert im Allgemeinen besserals die beiden anderen, ist jedoch komplexerund schwieriger zu administrieren. Beim Pu-blish/Subscribe Pattern, einer Ausprägungdes Bus-Konzepts, abonnieren mehrere Ser-vices eine Nachricht.

⊕ Integrationsmöglichkeiten ⊕ Serviceentwicklung ⊕ Skalierungsoptionen

⊖ Designer auf Basis von Eclipse 3.6

⬛-Wertung

Alle Links: www.ix.de/ix1308080 ⬛

ix.0813.080-082 15.07.13 14:14 Seite 82

© Copyright by Heise Zeitschriften Verlag