# Enterprise Application Integration

Enterprise Application Integration (EAI) oder Unternehmensanwendungsintegration (UAI) ist ein Konzept zur unternehmensweiten Integration der Geschäftsfunktionen entlang der Wertschöpfungskette, die über verschiedene Applikationen auf unterschiedlichen Plattformen verteilt sind und die im Sinne der Daten- und Geschäftsprozessintegration verbunden werden können. Das Ziel ist die integrierte Geschäftsabwicklung durch ein Netzwerk unternehmensinterner Applikationen verschiedener Generationen und Architekturen.
Die unterschiedlichen Methoden
* Datenintegration, Enterprise Bus,
* Anwendungsintegration, Message Broker und
* Prozessintegration, Prozessmanagement-Tool
bauen aufeinander auf.

## Begriffsdefinition

EAI umfasst die Planung, die Methoden und die Software, um heterogene, autonome Anwendungssysteme – ggf. unter Einbeziehung von externen Anwendungssystemen – prozessorientiert zu integrieren. EAI ist somit die prozessorientierte Integration von Anwendungssystemen in heterogenen IT-Anwendungsarchitekturen.
Im Gegensatz zu anderen Integrationstechniken, wie der Funktionsintegration oder der Datenintegration, werden beim EAI-Ansatz die Implementationen der einzelnen Geschäftsfunktionen nicht verändert. Alle funktionalen Schnittstellen werden mittels Adaptern (Schnittstellenumsetzer) abstrahiert.
Auf dem verbindenden Business Bus (auch als EAI Backbone, Integration Bus oder Integrationsplattform bezeichnet) sorgen dynamisch ausgewertete Regeln und Prozessbeschreibungen dafür, dass die Daten eines Geschäftsfalls in der richtigen Abfolge an die einzelnen Funktionen übergeben und die Ergebnisse weitergeleitet werden.
Wesentlich für diese Art der Integration, die man auch als lose gekoppelt (engl. loosely coupled) bezeichnet, ist die strikte Trennung von Geschäftsprozesslogik und Geschäftsfunktionen. Dazu werden die einzelnen Geschäftsprozesse in Makro- und Mikroabläufe zerlegt. Die Mikroabläufe sind dabei zum Teil in den Funktionen integriert, da insbesondere bei der Nutzung von Standard-Software eine Herauslösung nicht möglich ist.
Im Unterschied zur reinen Schnittstellenadaption durch klassische Middleware bietet EAI auch die Möglichkeit, Geschäftsprozesslogik abzubilden. Dies ist allerdings in vielen modernen Middleware-Produkten durch die Integration einer Business Process Engine ebenfalls möglich.
Aufgrund der prozessorientierten Integration stellt EAI nicht nur eine technische Integrationsplattform dar, sondern – so zumindest der konzeptionelle Anspruch – auch eine Integrationskomponente zwischen der Organisationsarchitektur mit den Strukturen und Geschäftsprozessen und der IT-Architektur eines Unternehmens.

### Vorgehen

Für die Umsetzung gleichartiger Aufgabenstellungen der Enterprise Application Integration wurden Muster vorgeschlagen. Eine Sammlung derartiger Muster findet sich in dem Buch Enterprise Integration Patterns von Gregor Hohpe und Bobby Wolf.

### Abgrenzung zu SOA

EAI kann als Vorgänger der Serviceorientierten Architektur (SOA) verstanden werden. Die technologischen Konzepte der Anbindung der Anwendungslandschaft an eine zentrale Kommunikationskomponente, dem Message Broker, sind ähnlich. SOA verlangt jedoch, dass die angeschlossenen Applikationen dem Service-Paradigma folgen, wohingegen sie im EAI-Szenario unangetastet bleiben können.

## Anwendungsbereiche

EAI findet praktisch in allen Bereichen der Prozessintegration insbesondere im E-Business und in Portalen Anwendung, da es eine Voraussetzung für das notwendige Straight Through Processing ist. Darüber hinaus ersetzt EAI in vielen großen Unternehmen mit komplexen IT-Landschaften klassische Middleware-Produkte und wird zu einem wichtigen IT-Architektur-Element.

## Arten

In der Praxis unterscheidet man dabei

### Application-to-Application (A2A)

    Die Integration auf Systemebene. Dabei kann eine Nabe-Speiche-Architektur (Hub and Spoke) oder eine Bus-Architektur zum Einsatz kommen. Die klassische Peer-to-Peer-Architektur ist keine Integration im Sinne der Enterprise Application Integration, sondern das, was man durch EAI vermeiden will.

### Person to System Integration (P2S)

    Das Versehen mehrerer Anwendungen mit einer gemeinsamen Benutzeroberfläche.

### Business to Business Integration (B2B)

    Das Integrieren von Anwendungen über Unternehmensgrenzen, als Business-to-Business, hinweg.

### Total Business Integration (TBI)

    Die Zusammenfassung aller Integrationsarten.