Wie Sie Daten aus mehreren Anwendungen kombinieren, z.B. für einen Management-Bericht oder als Basis für eine neue Anwendung.

Was ist das Problem?

Gewünschter Datenfluss in einem Unternehmen

Auch in Ihrem Unternehmen nutzen Sie wahrscheinlich mehrere Anwendungen, wie z.B.:

  • ERP / Warenwirtschaft
  • Produktionssteuerung
  • Monitoring / Überwachungssysteme
  • Buchhaltung / Personalabrechnung
  • Team- und Office-Software
  • Support-Ticketing-System

Damit treffen Sie auf folgende Probleme, wenn Sie Daten aus diesen Anwendungen kombinieren wollen:

  • Die meisten Anwendungen können Berichte nur mit eigenen Daten erstellen. Das heißt Sie benötigen für die Verknüpfung von Daten aus unterschiedlichen Anwendungen eine zusätzliche IT-Lösung.
  • Der Zugriff auf die Daten von anderen Anwendungen wird oft nicht gut unterstützt (Schnittstellen, Dokumentation, Support fehlt). Das gilt vor allem, wenn Daten in die Anwendung geschrieben werden sollen.
  • Die Verknüpfung von Daten ist ggf. nicht so einfach machbar. Zum Beispiel müssten unterschiedliche Nummern für dieselben Objekte übersetzt werden.
  • Weiters kann die Anforderung für die Anzeige von hochaktuellen Daten ein großes Problem darstellen.

Anforderungen

Bevor wir uns mit möglichen Lösungen zum Kombinieren von Daten befassen, sollten Sie erst die konkreten Anforderungen definieren.

Folgende Fragen helfen Ihnen dabei:

  • Was ist das Ziel zur Verbindung der Anwendungen?
    • Sollen Daten für eine weitere Anwendung zu Verfügung gestellt werden?
    • Sollen Daten für einen Bericht gesammelt werden?
  • Welche Daten aus den verschiedenen Anwendungen werden benötigt?
    • Welche Anwendung ist die Datenquelle?
    • Was ist das Zielsystem?
    • Wie müssen die Daten auf dem Zielsystem verarbeitet werden?
  • Müssen die Anwendungen Ereignisse austauschen (Nachrichten)?

Danach sollten Sie auch technische Anforderungen klären:

  • Wie erfolgt die Authentifizierung und Autorisierung zwischen den IT-Systemen?
  • Welche Vorgaben für den Datentransfer (Protokolle, Verschlüsselung) gibt es?
  • Welche Vorgangsweise bei Ausfall eines der IT-Systeme (Zwischenspeicherung, Wiederholung der Übertragung) muss umgesetzt werden?
  • Wie soll der Datenaustausch protokolliert werden (Logging)

Lösungen zum Kombinieren von Daten und Anwendungsintegration

Direkte Schnittstellen zwischen den Anwendungen implementieren

Eine naheliegende Lösung ist, die Anwendungen direkt miteinander zu verbinden und damit Daten zu kombinieren. Dabei wird in jeder der zu verbindenden Anwendungen eine Schnittstelle implementiert, welche für die Datenaufbereitung zum Senden und Datenverarbeitung beim Empfangen sorgt.

Für diese Lösungsvariante müssen Sie meistens die Software-Hersteller für die Anpassung einbinden (Customizing). Das gilt auch dann, wenn die Anwendungen bereits Standard-Schnittstellen mitbringen, wobei vorhandene Schnittstellen den Aufwand erheblich reduzieren.

Vorteile:

  • Hohe Geschwindigkeit ist machbar: Daten und Nachrichten können ohne Umwege zwischen den Anwendungen ausgetauscht werden
  • Die Schnittstellen können genau an den Bedarf angepasst werden (soweit von den Software-Herstellern unterstützt)
  • Im Vergleich zu den anderen Optionen ist das die einfachste Lösung
  • Die Lösung eignet sich für die Berichterstellung und als Basis für weitere Anwendungen

Nachteile:

  • Wenn eine Anwendung geändert wird (z.B. durch Upgrade oder Austausch), müssen auch die Schnittstellen angepasst werden
  • Eine direkte Verbindung mehrerer Anwendungen erhöht die Komplexität erheblich, was leicht zu Fehlern führen kann
  • Die einzelne Schnittstelle ist in der Regel recht teuer, da für jede Änderung der Software-Hersteller beauftragt werden muss.

In Summe ist das eine gute Lösung, wenn nur wenige Anwendungen miteinander verbunden werden müssen.

IT-Lösung zur Applikationsintegration (EAI)

Application Integration Diagram

Bei dieser Lösungsvariante wird ein zusätzliches IT-System (EAI-Server) implementiert, welches als Vermittler zwischen den Anwendungen agiert. Dieses System wird auch oft Middleware oder Schnittstellen-Server genannt.

Alle zu verbindenden Anwendungen müssen an den EAI-Server angebunden werden, wobei EAI-Lösungen Vorlagen für populäre Anwendungen mitbringen. Der EAI-Server kann Übersetzungen für die übermittelten Daten und Nachrichten übernehmen, z.B. Objekt-Nummern tauschen. Damit sind in den Anwendungen vorhandene Standard-Schnittstellen oftmals ausreichend. Werden jedoch zusätzliche Daten oder Nachrichten benötigt, dann ist eine Anpassung der Anwendungen durch die Software-Hersteller notwendig (Customizing).

Vorteile:

  • Dank vorhandener Vorlagen können populäre Anwendungen recht schnell miteinander verbunden werden
  • Die Anwendungsschnittstellen können möglichst einfach gehalten werden, da die Schnittstellen-Logik sich im EAI-Server befindet
  • Die Änderung einer Anwendung erfordert in der Regel nur eine Konfigurationsanpassung im EAI-Server
  • Eine neue Anwendung kann leicht in das EAI-Konzept eingebunden werden
  • EAI-Server haben Funktionen zur Fehleranalyse und Protokollierung des Daten- und Nachrichtenaustausches
  • Die Administration des EAI-Servers ist mit der eigenen IT-Mannschaft machbar
  • Eine EAI-Lösung (iPaaS) kann die passende Lösung sein, wenn Anwendungen im eigenen Rechenzentrum mit Cloud Services verbunden werden müssen.

Nachteile:

  • Die Datenübermittlung zwischen den Anwendungen ist komplexer und etwas langsamer
  • Der EAI-Server stellt eine zusätzliche potenzielle Fehlerquelle dar und muss für kritische Anwendungen entsprechend abgesichert werden
  • Der EAI-Server verursacht Kosten in der Implementierung und im Betrieb

In Summe ist das eine gute Lösung, wenn viele Anwendungen miteinander verbunden werden sollen.

Für dieses Lösungskonzept gibt es eine Reihe von Produkten sowie spezialisierte IT-Dienstleister am Markt. Für eine Liste nutzen Sie folgende Begriffe in einer Websuche:

  • Data Integration (EDI)
  • Application Integration (EAI)
  • Enterprise Service Bus (ESB)
  • Service Oriented Architecture (SOA)
  • iPaaS

Daten in Excel kombinieren

Benötigen Sie nur einen Bericht mit Daten aus mehreren Anwendungen, dann reicht ggf. Excel. Dafür können Sie mit der Funktion „Daten abrufen“ Daten aus verschiedenen Quellen importieren. Die Möglichkeiten dafür unterscheiden sich je nach Excel-Version.

Dazu hier die Import-Möglichkeiten von Office365:

  • Text/CSV, Excel-Dateien
  • Datenbanken (SQL allgemein, Access und andere Produkte)
  • Webservices (SharePoint, Azure etc.)
  • Datafeeds (OData etc.)

Die Daten werden dabei ins Excel kopiert und ein Update der Daten müssen Sie mit der Funktion „Daten aktualisieren“ durchführen. Auch können Sie die importierten Daten transformieren (Daten filtern, Werte umwandeln, Spalten umbenennen usw.). Diese Funktion (PowerQuery) ist die Gleiche wie im Reporting-Tool Power BI.

Vorteile:

  • Kostengünstige und einfache Lösung

Nachteile:

  • Nur für Reporting geeignet
  • Keine automatische Berichterstellung

Mit Reporting / Business Intelligence Lösungen Daten kombinieren

Ebenfalls zum Zweck der Berichterstellung können Sie mit Business Intelligence (BI) / Reporting-Lösungen Daten aus mehreren Anwendungen kombinieren:

  • Die Daten können aus Datenbanken, Excel-Dateien, Webservices oder Datafeeds kommen
  • BI-Lösungen sind eigenständige Anwendungen und bieten meist auch ein Reporting-Portal, um Berichte den Benutzern zu Verfügung zu stellen
  • Manche Anwendungen (z.B. ERP) beinhalten bereits volle BI-Lösungen
  • Sie erhalten BI-Produkte zur Installation auf den eigenen Servern oder nur Nutzung als Cloud Service
  • BI-Produkte bieten (Big) Data Analysis Funktionen, welche derzeit stark weiterentwickelt werden.

Dazu gibt es viele BI/Reporting Lösungen am Markt, populäre Lösungen sind:

  • Crystal Reports (SAP)
  • IBM Cognos
  • Microsoft Power BI
  • Microstrategy
  • Oracle Business Intelligence
  • Pentaho (Basisversion ist Open Source)
  • QlikView
  • SAP Business Objects
  • TIBCO

Vorteile:

  • Alle Werkzeuge für komplexe Berichte finden Sie in einer Lösung.
  • Sie können Berichte automatisch erstellen lassen.
  • Eine „Live“-Datenansicht (Dashboard) kann implementiert werden.
  • Die Berichterstellung belastet in der Regel die Quellsysteme nicht, da BI-Lösungen die Daten in eigenen Datenbanken speichern.
  • Die Datenbank der BI-Lösung kann für die Berichterstellung optimiert werden.

Nachteile:

  • BI-Lösungen dienen nur zur Berichterstellung. Eine Änderung der Daten muss nach wie vor im Quellsystemen erfolgen, BI Lösungen unterstützen eine Änderung der Quelldaten nicht.
  • Für die Anzeige hochaktueller Daten ist ein direkter Datenzugriff auf das Quellsystem notwendig. Das kann die Implementierung deutlich aufwändiger machen.
  • Die BI-Lösung verursacht Kosten bei der Implementierung und im Betrieb.

Umsetzung

Als Vorgangsweise empfehle ich:

  1. Ist- und Soll-Situation definieren
  2. Anforderungen in einem Lastenheft definieren
  3. Ggf. Partner für die Implementierung finden, Vereinbarung zur Implementierung fixieren
  4. Schnittstelle implementieren

Weitere Tipps dazu:

Implementierung von Schnittstellen bzw. einer EAI-Lösung

Ggf. stehen die Partner für die Implementierung mit den Support-Partnern für die bestehenden Anwendungen bereits fest. Vereinbaren Sie dennoch vorher die konkret geforderten Leistungen und den Preis, um unkontrollierte Kosten zu vermeiden.

Eine Herausforderung in diesem Projekt kann sein, dass die Lieferanten bzw. Software-Hersteller „blockieren“:

  • Es ist schwierig, Details zur Schnittstelle vom Hersteller zu bekommen.
  • Gleichzeitig bietet der Hersteller an, die Schnittstelle in seiner Software zu implementieren. Damit sind die Anforderungen offenbar machbar.
  • Dahinter steckt neben dem Interesse am konkreten Projekt oft auch, dass der Kunden stärker abhängig gemacht werden soll.

Dann kann ein Ausweg die Implementierung einer EAI-Lösung mit einem erfahrenen IT-Dienstleister sein. Dabei kann der IT-Dienstleister auf Basis seiner Erfahrung den Software-Herstellern Paroli bieten. Wählen Sie nach Möglichkeit dafür einen IT-Dienstleister, der Erfahrung mit den konkreten Anwendungen (Software-Versionen) in Ihrem Umfeld hat.

Implementierung einer BI-Reporting-Lösung

Zur Erstellung eines BI-Reports gehen Sie am besten so vor:

  1. Sie analysieren die Anforderungen und das relevante Umfeld
    • Welche Anforderungen an den Bericht gibt es?
    • Welche Daten werden für den Bericht benötigt?
    • Wo sind die benötigten Daten gespeichert?
    • Wie kann auf die Daten zugegriffen werden?
  2. Auswahl und Installation der BI Lösung bzw. Vereinbarung einer BI Cloud Service Nutzung
  3. Sie definieren Entwicklungssystem und Testdaten
    • Welche Daten und IT-Systeme können für Entwicklung und Test des Berichts verwendet werden?
  4. Bericht entwickeln
    • Benötigte Daten ins BI Tool importieren
    • Datenbeziehungen definieren
    • Daten für den Bericht transformieren, z.B. Codes in Text übersetzen
    • Bericht entsprechend den Anforderungen erstellen
  5. Bericht testen
    • Der Bericht sollte von einem zukünftigen Anwender getestet werden
  6. Sie stellen den Bericht zur Verwendung bereit
    • Sobald der Bericht funktioniert und die Anforderungen erfüllt sind, kann er für alle Anwender veröffentlicht werden

Anwendungsbeispiel: Bericht zur Auftragsübersicht

Ausgangssituation

In einem KMU ist ein Warenwirtschaftssystem (WaWi) bereits viele Jahre im Einsatz. Ein Upgrade des Systems ist nicht so einfach und kostspielig, da spezifische Anpassungen für das WaWi programmiert wurden.

Außerdem ist ein Produktionssteuerungssystem (PPS) im Einsatz, womit alle Aufträge für die eigene Produktion geplant werden.

Nun gibt es die Anforderung vom Vertrieb den aktuellen Produktionsstatus für Aufträge einsehen zu können. Dafür müssen Daten aus dem WaWi und dem PPS miteinander verbunden werden.

Das Ergebnis der internen Diskussion ist, dass WaWi und PPS die wesentlichen Anforderungen nach wie vor erfüllen. Der Austausch dieser Systeme kommt daher nicht infrage. Die weitere Möglichkeit der Implementierung von Schnittstellen wurde ebenfalls untersucht:

  • Die Implementierung einer Schnittstelle im WaWi wird vom Hersteller nicht mehr angeboten (Software ist End of Life)
  • Im PPS könnte eine Schnittstelle implementiert werden
  • Die Geschäftsführung möchte individuelle Anpassungen aufgrund der Erfahrungen mit dem WaWi vermeiden

Damit wurde entschieden, die Auftragsübersicht mit einer BI Lösung zu implementieren. Dafür soll nach Möglichkeit Microsoft Power BI genutzt werden, dann dafür hat das Unternehmen bereits Lizenzen.

Analyse

Zuerst konkretisieren wir die Anforderungen an den Bericht mit ein paar Vertriebsmitarbeitern. Das Ergebnis in unserem Beispiel ist daraus:

  • Es sollen offene Aufträge und bis zu einem Jahr alte, geschlossene Aufträge angezeigt werden
  • Die Auftragsliste soll für einen Kunden gefiltert werden können
  • Die gewünschten Informationen für einen Auftrag sind:
    • Kunden-Name
    • Auftragstitel
    • Auftragsdatum
    • Vereinbartes Lieferdatum
    • Aktueller Status der Produktion (offen, in Produktion, abgeschlossen)
    • Geplanter Produktionsstart und Produktionsabschluss
  • Der Zugriff auf den Bericht soll für alle Vertriebsmitarbeiter auch von unterwegs und mit Smartphone, Tablet möglich sein
  • Die Vorgaben für IT-Sicherheit und Datenschutz müssen eingehalten werden

Danach analysieren wir die Datenhaltung im WaWi und PPS mit Unterstützung der Hersteller. Ergebnis:

  • WaWi und PPS speichern die Daten in SQL Datenbanken
  • Die notwendigen WaWi Daten finden sich in den DB-Tabellen Aufträge und Kunden
  • Die relevanten Daten im PPS finden sich in der DB-Tabelle Produktionsaufträge
  • Daten können mit jedem SQL Tool ausgelesen werden
  • Die Authentifizierung erfolgt am Datenbanksystem

Nun prüfen Sie, ob die Anforderungen sind mit Microsoft Power BI umsetzbar sind. Ergebnis ist:

  • Der Bericht kann auf einem Portal für den Zugriff unterwegs mit verschiedenen Geräten zu Verfügung gestellt werden
  • Der Zugriff auf den Bericht ist nur für definierte Benutzer möglich. Der Cloud Service Anbieter ist DSGVO konform (Datenschutz erfüllt)
  • Im Bericht können die aktuellen Daten aus den WaWi und PPS Systemen angezeigt werden
  • Eine Filterung der Aufträge nach Kunden ist möglich

Die Analyse zeigt, dass der Bericht mit Microsoft Power BI umsetzbar ist, was aufgrund bereits verfügbaren Nutzungsrechte gewünscht ist.

Implementierung

Bericht und Datenmodell im Power BI

Die Entwicklung des Berichts erfolgt mit der Power BI Desktop Software:

  • Definition der SQL Abfragen für die benötigten Tabellen aus WaWi und PPS (DirectQuery statt Import)
  • Einbinden einer Excel Tabelle zur Umwandlung von Statuscodes in verständliche Texte
  • Definition der Beziehungen zwischen den Tabellen
  • Erstellung einer Berichtseite
    • Filter für Status
    • Filter für Kundenname
    • Tabelle mit Aufträgen aus dem WaWi sowie den PPS Daten (Status, Plan Prod. Start, Plan Prod. Ende)

Der fertige Berichtsentwurf wird dann mit Daten aus den produktiven WaWi und PPS getestet und den Vertriebsmitarbeitern vorgestellt.

Abschließend wird der Bericht auf dem Portal powerbi.microsoft.com für die Vertriebsmitarbeiter veröffentlicht.