Eine Gegenüberstellung der nachrichten- und differenzbasierten Synchronisation
Die Anforderungen an Software in Unternehmen werden immer spezieller und dynamischer. Zudem wollen und können sich Fachabteilungen nicht mehr in ihrer Arbeitsweise den Vorgaben einer einheitlichen Unternehmenssoftwarelösung unterwerfen. Dem begegnen Hersteller moderner Unternehmenslösungen wie SAP mit einer hervorragenden Anpassbarkeit ihrer Software. Der Vorteil einer maßgeschneiderten Gesamtlösung hat in der Regel allerdings einen hohen Preis.
Wer in seinem Unternehmen eine heterogene Softwarelandschaft einsetzt, kennt diese Herausforderung: Wie kann ich sicherstellen, dass immer alle benötigten Daten in einheitlicher Qualität in den verteilten Systemen verfügbar sind?
Meist bieten Softwareprodukte bereits Schnittstellen, die entweder individuell angesteuert oder mittels eines Integrationstools genutzt werden können. Technisch ist eine Anbindung mehrerer Anwendungssysteme daher oftmals unproblematisch umsetzbar – niemand muss Daten doppelt pflegen.
Wenn es um die Konzipierung der Schnittstelle geht, ist allerdings eine sorgfältige Planung des Systems von Vorteil. Hier sollte anwendungsübergreifend festgelegt werden, wo und wann welche Daten gepflegt werden, gegebenenfalls auch welche Arbeitsprozesse es gibt und wie diese ablaufen sollen. Es empfiehlt sich, womöglich die Datenhoheit nach Datenarten auf die Systeme zu verteilen: Kundenstammdaten können beispielsweise im ERP-System gepflegt werden, Verkaufschancen zu Kunden und Interessenten im CRM-System.
Was geschieht denn nun, wenn ein Anwender einen solchen Kundendatensatz im ERP-System ändert? Bei einem herkömmlichen nachrichtenorientierten Integrationswerkzeug, wie beispielsweise Scribe Insight, wird eine Nachricht mit den geänderten Daten generiert und durch das Tool verarbeitet. Im Rahmen der Verarbeitung werden notwendige Konvertierungen vorgenommen und letztendlich die Daten in das Zielsystem oder in die Zielsysteme geschrieben. Mission erfüllt. Wirklich?
Sicher sind nachrichtenorientierte Systeme gut geeignet, um Daten zwischen Anwendungssystemen auszutauschen. Was passiert allerdings, wenn die Daten nicht in das Zielsystem geschrieben werden können? Im Zeitalter von Anwendungssystemen, die sich ohne Programmieraufwand anpassen lassen, können beispielsweise modifizierte Picklisten leicht dazu führen, dass Daten aufgrund inkonsistenter Stammdaten in den Anwendungssystemen nicht übertragen werden. Wie integrieren Sie Systeme, die keine Ereignisbehandlung bei Datenänderungen ermöglichen?
Ein moderner Ansatz zur Anwendungsintegration ist die differenzbasierte Synchronisation, wie beispielsweise durch syncster. Hierbei können Daten natürlich ebenfalls ereignisorientiert übertragen werden.
Da das System jedoch Änderungen ermittelt und nur für diese Schreibvorgänge initiiert, kann ein Abgleich der Daten auch ohne direkte Veranlassung erfolgen. So können zum Beispiel tagsüber bei Datenänderungen Übertragungen erfolgen, nachts ermöglicht das Verfahren einen Abgleich der inkonsistenten Daten.
Werden also im Beispiel der geänderten Pickliste die Anpassungen in den Zielsystemen nachgezogen, erhält der Anwender nach einem Komplettabgleich wieder einen konsistenten Datenbestand. Egal, wie viele Datensätze geändert wurden, und ohne eine manuelle Ansteuerung der Schnittstelle.
Mit entsprechender Planung lässt sich also eine wartungsfreie Schnittstelle realisieren. Durch den Komplettabgleich lassen sich so auch Systeme integrieren, die keine Ereignisbehandlung zulassen.
Ein weiterer Vorteil dieser Vorgehensweise ist die bessere Berücksichtigung abweichender Anwendungslogik in den anzubindenden Systemen, da die Schnittstelle nicht Änderungen ausführt, sondern Datenkonsistenzen herstellt.
Nachrichtenbasiert | Differenzbasiert | |
Planungsaufwand | Wenig | Mittel |
Implementierungsaufwand | Niedrig | Mittel |
Qualität der Daten | Mittel | Hoch |
Betriebskosten | Hoch | Mittel |
Interoperabilität | Mittel | Hoch |
Fazit
Gut, dass es mittlerweile Schnittstellensystem gibt, anhand derer man sich einfacher für eine heterogene Systemlandschaft entscheiden kann. Dies hilft den Verantwortlichen aus der aktuellen Unternehmenssituation mit oftmals gewachsenen Strukturen eine wirtschaftlichere Alternative zu einem homogenen System zu finden.
Wer sich für ein differenzbasiertes Integrationssystem entscheidet sollte die Schnittstelle sorgfältig planen um alle Vorteile eines solchen Systems nutzen zu können. Eine nachrichtenorientierte Integrationsanwendung kann gewollt inkonsistente Daten eher verkraften – die differenzbasierte Lösung arbeitet konsequent dagegen.