Betriebliche Informationssysteme


VL 08 – Enterprise Application Integration (EAI)


Sören Auer, TU Chemnitz, ISST

soeren.auer@informatik.tu-chemnitz.de

Stefan Kühne, Universität Leipzig, FMI IFI BIS

kuehne@informatik.uni-leipzig.de


Lernziele

  • Enterprise Application Integration
    • Begriff
    • Konzepte
    • Muster
  • Abgrenzung zu historischen Ansätzen (Daten- und Funktionsintegration)
  • Werkzeuge zur Umsetzung
  • Bewertungskriterien

Rückblick




Rückblick

Integration und Unternehmensweite Anwendungssysteme

Anwendungssysteme – Beispiele und Klassifikation

Layer 1 Personal- wesen Finanz- und Rechnungs- wesen Fertigung Produktion Vertrieb Marketing Management informations- systeme (MIS), Entscheidungs unterstützungs- systeme (EUS) Ebene Strategische Management- Ebene Operative Ebene Operative Systeme Unterstützungs- systeme für Führungsebene (FUS) Umsatz- trendvorhersage Personal- planung 5-Jahres- Geschäftsplan Gewinn- planung Arbeits- kostenanalyse Budget- planung Lagerbestands- kontrolle Vertriebs- leitung Auftrags- bearbeitung Material- wirtschaft Lohnbuch- haltung Kreditoren- buchhaltung Personal- verwaltung


Integration

Definition nach [Duden]

In|te|g|ra|ti|on die; -, -en :

  1. [Wieder]herstellung einer Einheit [aus Differenziertem]; Vervollständigung.
  2. Einbeziehung, Eingliederung in ein größeres Ganzes; Ggs. Desintegration (1).
  3. Zustand, in dem sich etwas befindet, nachdem es integriert worden ist; Ggs. Desintegration (2).
  4. Berechnung eines Integrals (2); vgl. ...ation/...ierung

Aspekte von Integration

  • Zustand
  • Prozess


Integration als Prozess


Integrierte Anwendungssysteme

Layer 1 ERP CRM SRM SCM CIM PLM

Überblick

Layer 1 A2B B2B A2C B2C en ManmanpeoplepersonChris KempsonChris KempsonChris Kempsonimage/svg+xmlen PPS FSS WW IPS E-Government E-Business E-Commerce B2BI SOA EAI ERP CRM SCM Markt- plätze Geschäfts- modelle Kunde

Enterprise Application Integration




Enterprise Application Integration

Grundlagen

Integrationsansätze

  • 1970er: funktional-ausgerichtete Back-End-Systeme,
    • z.B. SWIFT, VDA, …
  • 1980er: unternehmensweite Datenmodelle
    • z.B. DBMS, RPC
  • 1990er: geschäftsprozessorientierte Integration
    • z.B. ERP-Systeme, WfMS

Integrationsansätze (2)

  • Ende 1990: neue Managementkonzepte wie CRM, SCM
    • Object Broker: CORBA, EJB
    • Message-oriented Middleware: JMS, MessageMQ
    • Enterprise Application Integration: Message Broker + BPMS
    • B2B-Integration: Sicherheit, Standard-Adapter
  • 2000er: Service-oriented Architecture
    • Web Services

Wege zur Anwendungsintegration

  • Application-to-Application-Integration
    • Punkt-zu-Punkt-Verbindung zwischen gleichberechtigten Systemen
    • „Spaghetti-Strukturen“ entstehen
  • ERP-basierte Integration
    • ERP-System als Kernanwendung
    • evtl. nicht ausreichend, wenn Kommunikation zwischen Satellitensystemen erforderlich ist
  • Enterprise Application Integration (EAI)
    • zentraler Integrationshub mit Prozesswissen
Layer 1 Web ... ERP SCM Legacy Web ... ERP SCM Legacy EAI Web ... ERP SCM Legacy Layer 1 Layer 1

Punkt-zu-Punkt-Verbindung

− Synchrone Kommunikation

Layer 1 Punkt-zu-Punkt- Verbindung Extract Transform Insert AS AS 1 2

Punkt-zu-Punkt-Verbindung

- Asynchrone Kommunikation über ein DBMS


Layer 1 Punkt-zu-Punkt- Verbindung Extract Transform Insert AS AS 1 2 Store DBMS Retrieve Store Retrieve

Punkt-zu-Punkt-Verbindung

- Asynchrone Kommunikation über ein persistente Nachrichtenschlangen


Layer 1 Punkt-zu-Punkt- Verbindung Extract Transform Insert AS AS 1 2 Enqueue Dequeue Enqueue Dequeue Layer 1 image/svg+xml Layer 1 Layer 1 image/svg+xml Layer 1

Application-to-Application Integration

Layer 1 Web ... ERP SCM Legacy


  • Anwendungen über Punkt-zu-Punkt-Verbindungen gekoppelt
  • große Anzahl von Verbindungen
    • gerichtet: O(n*(n-1))
    • ungerichtet: O(n*(n-1)/2)e

A2A-Integration-Szenario

Layer 1 AS 1 AS 3 AS 2 DBMS DBMS DBMS DBMS DBMS DBMS

A2A-Integration-Szenario

Layer 1 AS 1 AS 3 AS 2 Layer 1 image/svg+xml Layer 1 Layer 1 image/svg+xml Layer 1 Layer 1 image/svg+xml Layer 1 Layer 1 image/svg+xml Layer 1 Layer 1 image/svg+xml Layer 1 Layer 1 image/svg+xml Layer 1

Hub-and-Spoke-Architektur

Layer 1 Hub-and-Spoke- Architektur Extract Transform Insert AS AS 1 2 Store EAI Retrieve Store Retrieve AS AS 3 4

Enterprise Application Integration

  • konventionelle Definition
    • „EAI is the unrestricted sharing of data and business processes among any connected applications and data sources in the enterprise.” [Linthicum 2000]
  • neuere Definition
    • „Unter dem Begriff Enterprise Application Integration (EAI) werden Technologien zusammengefasst, welche automatisiert die Kommunikation und Interoperabilität zwischen unterschiedlichen Anwendungen und Geschäftsprozessen innerhalb und zwischen Organisationen ermöglichen.” [Winkeler 2000]

Unterschied zwischen



Enterprise Application Integration

Enterprise Application Integration

Integrationsrichtungen

  • Integrationsbreite (horizontal)
    • entlang der Wertschöpfungskette
  • Integrationstiefe (vertikal)
    • Grad der semantischen
Layer 1 Layer 1 Layer 1 Layer 1 Layer 1 Vertrieb ... ... After Sales

Layer 1 Prozess- Ebene Bedeutung Prozess- definitionen Prozess- Ebene Nachricht Vokabular EAI Prozess- Ebene Bits Daten- übertragungs- EAI EAI Middleware protokoll Ausgetauschte Informationen Gemeinsame Metadaten Einsatzbereich Wert der Integration

Middleware

  • zusätzliche Betriebssystemschicht, welche die Kommunikation von verteilten Anwendungen und die Umformung von Datenstrukturen unterstützt
  • Beispiele
    • entfernter Prozeduraufruf (RPC)
    • nachrichtenorientierte Middleware
    • verteilte Objektarchitekturen
    • datenbankorientierte Middleware
    • transaktionsorientierte Middleware
    • Workflow-Managementsysteme

Integration auf Datenebene

  • Übertragung von Daten von einem System in ein anderes mittels Datentransferprotokollen
  • Vorteile
    • relativ einfach und kostengünstig realisierbar
    • keine bzw. geringe Änderungen an Applikationen erforderlich
  • Nachteile
    • Abhängigkeit von Datenmodell und Datenbank
    • evtl. Gefährdung der Datenintegrität der Anwendungen
  • Realisierung
    • Datenbank-Middleware
Layer 1 Prozess- Ebene Bedeutung Prozess- definitionen Prozess- Ebene Nachricht Vokabular EAI Prozess- Ebene Bits Daten- übertragungs- EAI EAI Middleware protokoll Ausgetauschte Informationen Gemeinsame Metadaten Einsatzbereich Wert der Integration

Integration auf Funktionsebene

  • Nutzung von Funktionen der zu integrierenden Systeme zum Zugriff auf Daten und Applikationslogik
  • Vorteile
    • Unabhängigkeit von Datenstruktur der Anwendung
  • Nachteile
    • Abhängigkeit von Funktionalität der Schnittstellen
  • Realisierung
    • Distributed Object Technology
    • Message Oriented Middleware
Layer 1 Prozess- Ebene Bedeutung Prozess- definitionen Prozess- Ebene Nachricht Vokabular EAI Prozess- Ebene Bits Daten- übertragungs- EAI EAI Middleware protokoll Ausgetauschte Informationen Gemeinsame Metadaten Einsatzbereich Wert der Integration

Integration auf Prozessebene

  • Unterstützung von Prozessen, bei deren Ablauf Objekte verarbeitet werden
  • Vorteile
    • hohe Prozessflexibilität
    • single point of control
  • Nachteile
    • aufwändige Umsetzung
  • Realisierung
    • EAI-Integrationsserver
Layer 1 Prozess- Ebene Bedeutung Prozess- definitionen Prozess- Ebene Nachricht Vokabular EAI Prozess- Ebene Bits Daten- übertragungs- EAI EAI Middleware protokoll Ausgetauschte Informationen Gemeinsame Metadaten Einsatzbereich Wert der Integration

EAI-Systeme




EAI-Systeme

Fähigkeiten

Transport von Nachrichten

  • Message Broker
    • Nachrichtenaustausch über einen zentralen Server
    • EAI-Server unterstützt mehrere Formate
    • im EAI-Server können zusätzliche Dienste zur Verfügung gestellt werden
  • Bus-Infrastruktur
    • Nachrichten werden über Adapter in interne Normalform konvertiert
    • Kommunikation erfolgt nicht über einen dedizierten Server
Layer 1 MB ESB

Kommunikationsstile

  • synchron
    • Request/Reply
    • Einwegkommunikation
    • Synchrones Polling
  • asynchron
    • Message Passing
    • Broadcasting
    • Publish/Subscribe

Nachrichtentransformation

  • ETL-Tools
    • Extraktion
    • Transformation
    • Laden
Layer 1 Legacy- Struktur Dummy- XML Genormtes XML

Geschäftslogik

  • zusätzliche Geschäftslogik im EAI-Server
    • Programmierumgebungen, Frameworks
    • graphische Modellierungsumgebungen
  • Geschäftsprozesse
    • Integration von WfMS-Komponenten
  • Geschäftsregeln (Business Rules)
    • Regeln in Geschäftsprozessdefinitionen
    • Routing von Nachrichten
    • Regeln zur Datentransformation/Mapping
    • Unterstützung durch graphische Entwicklungsumgebungen

EAI-Integrationsmuster

  • Vermittlung
    • EAI-System fungiert als Nachrichten-Broker
    • Ereignisse in Anwendungssystemen initiieren Aktionen im EAI-System (bspw. Propagieren von Änderungen in relevanten Anwendungssystemen)
  • Förderation
    • EAI-System fungiert als Fassade über mehrere Anwendungen
    • Ereignisse im Umsystem werden vom EAI-System (im Sinne einer Schnittstelle) entgegen genommen und entsprechend behandelt.

Referenzarchitektur [Keller 2001]

Layer 1 Prozessschicht Kommunikationsschicht Protokoll-Adapterschicht SMTP HTTP FTP ...

Technische Fähigkeiten

  • garantierte Auslieferung von Nachrichten
  • Scheduling/Priorisierung von Nachrichten
  • Konnektivität
    • vorhandene oder zukaufbare Adapter
    • Programmierung/Anpassung von Adaptern
    • unterstützte Kommunikationsmodelle der Adapter
    • Performance von Adaptern
  • Sicherheitskonzepte
  • Routing
  • Repository für Nachrichtentypen
  • Namensdienste

Fähigkeiten der Betriebsunterstützung

  • Load Balancing/Fail over
  • Monitoring
  • Recovery-Fähigkeiten
  • transparente Verteilbarkeit
  • Tracing/Debugging

Nicht-funktionale Eigenschaften

  • Performance
  • Skalierbarkeit
  • Zuverlässigkeit
  • Tool-Support
  • Marktposition des Herstellers
  • Total Cost of Ownership (TCO)

EAI-Server (Auswahl)

  • Microsoft BizTalk Server
  • (Oracle) OpenESB
  • Vitria BusinessWare
  • Software AG EntireX
  • BEA WebLogic
  • IBM WebSphere

Microsoft BizTalk Server




Microsoft BizTalk Server

ein EAI-Server

Geschäftsprozesse und Nachrichten in BizTalk

Nachrichtentransformation

Verfügbare Adapter

Definition von Mappings

Entwurf von ausführbaren Prozessen

Business Rules und Enactment

Skalierbarkeit

Administration und Betrieb

Enterprise Application Integration




Enterprise Application Integration

Bewertung

Bewertung EAI

  • Vorteile
    • anwendungssystemübergreifender Zugriff auf Informationen
    • Rationalisierung von Geschäftsprozessen
    • adressiert systemübergreifende Datenintegrität
    • verbessert die Wartung/den Betrieb integrierter Informationssysteme
  • Nachteile
    • hohe Entwicklungskosten
    • hoher organisatorischer Aufwand
    • Viele Projekte scheitern

Abgrenzung von EAI zur Service Orientierten Architektur (SOA)

  • EAI kann als Vorgänger von SOA gesehen werden
  • ähnliche Konzepte und Ziele
    • Anbindung an zentralen Kommunikationsserver
    • Fokussierung auf Vereinheitlichung, Optimierung, Flexibilisierung
  • Unterschiede
    • SOA fordert Service-Paradigma (Anwendungen stellen Funktionalitäten als Service über einen einheitlichen Zugriffsmechanismus zur Verfügung)
    • bei EAI bleiben Anwendungssysteme in ihrer Form bestehen

Definition Enterprise Application Integration

  • Definition Enterprise Application Integration
  • Abgrenzung zu anderen Integrationsansätzen
  • EAI-Konzepte
  • Funktionalitäten von EAI-Server
  • Microsoft BizTalk Server