Mashups: EAI mit Web 2.0

13.06.2007
Von Frank Schönefeld
Anwendungen lassen sich mit Techniken des Web 2.0 einfacher integrieren als bisher gewohnt. Vor allem REST (Representational State Transfer) gilt als interessantes Modell.

Jahrelang zählte die Konzeption und Entwicklung komplexer Web-Services-Standards zum Nonplusultra, um heterogene Anwendungssysteme prozessorientiert zu integrieren. Doch EAI-Projekte sind in der Regel kompliziert, teuer und langwierig. Dass es auch einfacher gehen kann, beweisen Technologien auf Basis von Web 2.0: Mashups, ursprünglich aus der Zusammenführung von Online-Diensten entstanden und immer häufiger in Form von Gadgets auf Privatrechnern im Einsatz, haben das Zeug, sich auch in der Unternehmens-IT zu etablieren.

Was sind Mashups?

Mashups integrieren zwei oder mehrere Web-Dienstleistungen in einer neuen Anwendung (Weblikation). Die Integration kann auf Daten-, Logik- und Darstellungsebene erfolgen. Grundsätzlich können sie als Unterbegriff der Composite Apps verstanden werden. Sie verzichten bewusst auf den komplizierten SOA-Orchestrierungsapparat und lassen sich deshalb als eine Art SOA-Light bezeichnen. Daraus leiten sich auch die bevorzugten Einsatzgebiete ab: Während Composite Apps komplexe Logik und Abhängigkeiten zwischen den Diensten realisieren, zeichnen sich Mashups durch einfache Overlays, Kombinationen und kaum zeitliche oder logische Abhängigkeiten aus.

Daten-Integration via Methoden-Interface

Die Applikationsintegration lässt sich nach aktuellem Stand auf der Daten-, Logik- oder Darstellungsebene realisieren. Zur vorherrschenden Methode im Business-Intelligence-Umfeld etwa zählt die Datenintegration. Die Informationen aller Applikationen landen hier in einem großen Topf, dem Data Warehouse, über den sich integrierende Auswertungen per BI-Software fahren lassen. Soll die Logik existierender Applikationen verknüpft werden, dann sollen gezielt Funktionen der Applikationen abgerufen und verbunden werden. Diese Form der Integration erfolgt heute typischerweise über ein Methoden-Interface, eine RPC-Schnittstelle oder aber über ein Web-Service-API. Programme auf Darstellungsebene zu verknüpfen gelang erstmals mit den Screenscraping-Techniken in den Anfängen des Web. Jedes Integrationsprinzip ganz gleich, ob auf Daten-, Logik- oder Darstellungsebene - muss zunächst jedoch drei wesentliche Fragen beantworten: Auf welche Art und mit welchem Protokoll soll die Kommunikation erfolgen? Wie wird die Funktionalität des Dienstes angesprochen, und in welchem Format erfolgt die Übertragung der Ergebnisse, also der Daten selbst?