Reichen APIs alleine aus SaaS Applikationen effizient zu integrieren?

Wissensbeitrag
SaaS Applikationen effizient integrieren mit APIs

Innerhalb meiner Master Thesis versuchte ich u.a. diese einfach klingende Frage zu beantworten. Bei genauerer Betrachtung fiel jedoch auf, dass eine zufrieden stellende Beantwortung dieser Frage nicht in einem Satz formuliert werden kann. Dies geht mit der Komplexität der gesamten Thematik einher. In diesem Beitrag möchte ich mich daher darauf beschränken, die wesentlichen Ergebnisse aufzuzeigen…

In den letzten Jahren haben sich die Budgets für den Einsatz von IT in Unternehmen reduziert. Zusätzlich sind jedoch weitere Anforderungen hinzugekommen. So besteht eine Anforderung darin, mit immer weniger Mitteln immer mehr leisten zu müssen.

Was hat es mit Software-as-a-Service auf sich?

Sofware-as-a-Service (SaaS) kann als eine Möglichkeit gesehen werden diese Anforderungen zu erfüllen. Sie verspricht Unternehmen Software als Dienstleistung, günstig und weitestgehend wartungsfrei bereitzustellen. Dabei werden diese Dienste entweder nach Verbrauch oder monatlich als Abonnement abgerechnet.

Puzzleteil zur Visualisierung von Integration

SaaS wird zur Unterstützung von neuen und auch bereits etablierten Geschäftsprozessen eingesetzt. Die Einführung von SaaS vollzieht sich dabei nicht sofort, sondern schrittweise. Hierbei werden z.B. IT-Systeme die einen Geschäftsprozess unterstützen mithilfe von SaaS ausgelagert. Die meisten Geschäftsprozesse bestehen aus mehreren Teilprozessen. Diese Teilprozesse können durch verschiedene IT Systeme realisiert werden zu denen auch SaaS Lösungen zählen. Somit muss die Möglichkeit gegeben sein SaaS Lösungen mit der unternehmensinternen IT zu integrieren.

Wie SaaS integriert werden kann

SaaS Anbieter stellen dazu applikationsspezifische Schnittstellen, sogenannte APIs zur Verfügung. Diese APIs können z.B. mithilfe von WebServices genutzt werden. Die hinter den WebServices stehenden Funktionen werden dabei mit der Web Service Description Langage (WSDL) beschrieben. Leider gehen viele SaaS Anbieter davon aus, dass die Bereitstellung einer WebService API mithilfe von WSDL alleine ausreicht um ihre Dienste integrieren zu können. Ein Argument könnte lauten: WebServices und WSDLs sind doch standardisiert! Das stimmt. Jedoch ist nicht standardisiert, wie die in einer API bereitgestellten Dienste strukturiert sind und semantisch auszusehen haben.

Also können diese Dienste beliebig unterschiedlich ausfallen. Die, von diesen Diensten, erwarteten Eingabewerte können ebenfalls beliebig sein. Somit wird es notwendig sich sehr eng mit einer API auseinander zu setzen. Zu diesem Zweck müssen nicht nur die, zur Integration relevanten Dienste ermittelt werden, sondern es muss auch in Erfahrung gebracht werden, welche Vorbedingungen erfüllt sein müssen um die API verwenden zu können. Die Modellierung der Ein- und Ausgabeparameter in Form von Business Objects der SaaS Applikationen müssen zusätzlich betrachtet werden.Darüber hinaus werden die APIs im SaaS Umfeld schneller, als bei traditioneller Software aktualisiert. Zum Beispiel werden neue und ausgereiftere Funktionen hinzugefügt. Somit besteht die Notwendigkeit bereits durchgeführte Integrationen immer an die sich verändernden APIs anzupassen. Für jede Anpassung muss sich wieder eng an die neuen Eigenschaften der jeweiligen APIs gehalten werden.

Sind die APIs verstanden und die notwendigen Dienste sowie ihre Vorbedingungen und Business Objects identifiziert, stellt sich die Frage, wie überhaupt integriert werden soll und wer diese Integrationen durchführt. Die letzen Jahre haben gezeigt, dass selbst programmierte Punkt-zu-Punkt Integration zwar schnell umgesetzt ist, jedoch auf lange Sicht, viel Wartungsaufwand in sich birgt. Die Hub-and-Spoke Architektur hingegen stellt einen Zentralen Verbindungsknoten, den Hub, bereit an den alle zu integrierenden Systeme angeschlossen werden können. Dieser Ansatz wird auch von verschiedenen EAI Lösungen, wie dem WebSphere Message Broker oder dem WebSphere ESB aufgegriffen.

Ist der WebSphere Message Broker zur SaaS Integration geeignet?

Basierend auf dem WebSphere Message Broker, der eine sehr reife und zuverlässige Lösung darstellt, könnte eine SaaS Integration vorgenommen werden. Um ihn jedoch einsetzen zu können sind viel Erfahrung und Programmierkenntnisse notwendig, da er sehr flexibel ist und für eine Vielzahl von Integrationen eingesetzt werden kann. Somit werden bei diesem Ansatz Mitarbeiter mit Expertenwissen benötigt.

Zusätzlich ist der WebSphere Message Broker dazu konzipiert hunderte, wenn nicht sogar tausende Applikationen in hoch komplexen Umgebungen zu integrieren. Bei der SaaS Integration hingegen, werden nur zwei oder drei Applikationen integriert. Also stellt sich die Frage, wieso einfache Integrationsszenarien mit komplizierten Mitteln durchgeführt werden sollten. Prinzipiell wäre es erstrebenswert einfache Integrationsszenarien mit einfachen Mitteln zu begegnen.

Anbieter für SaaS Integration

Bei der SaaS Integration hingegen, werden nur zwei oder drei Applikationen integriert.Also stellt sich die Frage, wieso einfache Integrationsszenarien mit komplizierten Mitteln durchgeführt werden sollten. Prinzipiell wäre es erstrebenswert einfache Integrationsszenarien mit einfachen Mitteln zu begegnen.Mittlerweile hat sich ein diese Problematik adressierender Markt etabliert. Verschiedene Anbieter wie Informatica, Boomi, Cast Iron und Pervasive bieten speziell auf die SaaS Integration ausgelegte Lösungen an.

Diese Lösungen kapseln dabei die Komplexität, die mit der Integration von SaaS Applikationen verbunden ist. Somit besteht z.B. nicht mehr die Notwendigkeit sich in APIs, Business Objects und eventuell daraus resultierenden Vorbedingungen, einarbeiten zu müssen. Ein daraus resultierender Vorteil besteht darin, dass Integrationen nicht mehr programmiert sondern konfiguriert werden.

Tippen auf Tastatur

Meistens werden dazu nur drei Schritte benötigt:

  1. Verbindung zu den zu integrierenden Anwendungen herstellen
  2. Die verschiedenen zu integrierenden Datenobjekte der jeweiligen Anwendungen auswählen und transformieren
  3. Die Integrationslösung in Betrieb nehmen und warten

SaaS Integrationslösungen kapseln die Komplexität, die mit einer Integrationsentwicklung verbunden ist. Durch die Kapselung der mit der Integration einhergehenden Komplexität wird IT affines Personal in die Lage gebracht letztendlich selber Integrationen durchzuführen und diese zu warten. Dies wird durch eine Minimierung des Aufwandes bei der Entwicklung von Integrationen und durch Bereitstellung von Integrationstemplates – und -assistenten realisiert. Somit besteht unter Zuhilfenahme spezieller SaaS Integrationslösungen, nicht mehr die Notwendigkeit erfahrene Integrationsentwickler in SaaS Integrationen zu involvieren.

Fazit

Reichen APIs alleine also aus um SaaS Applikationen effizient zu integrieren? Abschließend kann diese Frage mit einem klaren NEIN beantwortet werden. APIs reichen nicht aus, um Integrationen effizient zu integrieren. Mit einer speziellen SaaS Integrationslösung wird SaaS Integration jedoch fast zu einem Kinderspiel.

Welchen Unterschied machten diese Informationen und Eindrücke?

  • Die Erfahrungswerte der Kundenprojekte halfen in den letzen Wochen in der Bewertung einer Kundensituation zum Thema Business Process Management.
  • Die Integration von ILOGs Businnes Rules Management System (neben den Optimization Tools und Supply Chain Management  Lösungen) stellen einen guten Erweiterungsansatz für einen Kunden und dessen WebSphere Middleware dar – um dessen Fachbereich, die wahren Prozessinhaber, die automatisierten Abläufe dynamisch und flexibel anpassen zu lassen.
  • Zudem wurden die Neuerungen oder deren Vorabversionen als Patches im Betrieb eines Kunden genutzt und
  • natürlich die persönlichen Kontakte zu den Entwicklern in de nweltweiten IBM Labors im Nachgang intensiviert.

Cloud Buzz – Was bringen die wolkigen Versprechen? Regen?!

Aber was waren technologisch Trends? Vielfach ist zu lesen, dass „SOA in die Cloud“ wächst – Was ist darunter zu verstehen? Ist dem wirklich so? Und was sind die Vorteile – was die sonstigen Implikationen? Wie sind die dazu passenden Software Landschaften auszurichten? Wie sehen Betriebskonzepte dazu aus? …

Einordung Cloud Computing

Das heutige Buzzword ist „Cloud Computing“ – ein neues Hype-Thema, getrieben von Herstellern und Analysten. Aber SOA und Cloud Computing können viel zur zukünftigen Gestaltung der Geschäftswelt beitragen.

Worüber reden wir hier eigentlich? Buzzword-Bingo? Oder echter Nutzen?

Wahrscheinlich zutreffende These: Wer ständig hohle Begriffe verwendet, landet bei bedeutungslosen Ergebnissen – mit entsprechenden Auswirkungen auf Erfolg und Reputation.

Doch was ist „Cloud Computing“? Ist es wirklich? Innovativ? Nur eine aktuelle Welle? Eine zukünftige Welle? Kosteneffizient? Interoperable? Findet es heute Verwendung? Bringt es Nutzen? Ja, z.B. bei IBM, Amazon, Google, …!

Können Unternehmen (auch mittelständische!) schon heute von den verfügbaren Modellen, Diensten und Anwendungen profitieren? Ja, denn auch „private Cloud“-Ansätze auf Basis von etablierten Virtualisierungslösungen werden heute in mittelständischen Unternehmen untersucht und „public Clouds“ können genutzt werden: zum Beispiel mittels Amazon EC2 dynamische WebSphere Application Server Workloads für intensive Softwaretest von eigenen J2EE Applikationen auf Pay-per-Use Basis zu nutzen. Schneller Nutzen ohne hohe Kosten.

Also was ist „Cloud Computing“? Ist es Grid Computing? Organic Computing? Utility Computing? Oder Software-as-a-service? Oder – gar SOA?

Nein – „Cloud Computing“ ist anders – mehr –

In Kürze: “Cloud Computing ist ein Service-Management Modell (Plattform), welche eine transparente Infrastruktur mit geringen Managementkosten zur Verfügung stellt.“

Cloud Computing ist bisher nicht allgemeingültig oder gar eindeutig definiert. Jedoch existieren eine Reihe von Definitionsansätzen.

Exkurs: Zitate zur Cloud Definition aus Sekundärquellen – in der rechten Marginalie.

Demzufolge geht Cloud Computing über andere gegenwärtig diskutierte Ansätze (siehe oben) und Konzepte (Virtualisierung, Konsolidierung) hinaus.

Nutzbarkeit und Wert
Wolkige Herausforderungen
Doch nur Buzzword-Bingo?
“Take this labour out!” – von Regenmachern und Wolkenbrüchen
Schluss

Weitere Informationen:

Eine umfangreiche Diskussion zur Cloud IT unter Above the Clouds: A Berkeley View of Cloud Computing

Autor

Wolfgang Schmidt
GeschäftsführerX-INTEGRATE Software & Consulting GmbHKontakt