Als IT Verantwortlicher werden sie jeden Tag damit konfrontiert unterschiedlichste Systeme miteinander zu verbinden und zu gewährleisten, dass die neue Software mit den entsprechenden Daten aus ihrer Produktivapplikation versorgt wird. Dass dies in Echtzeit und bidirektional erfolgen soll versteht sich von selbst.
Der übliche Ansatz einer Kopplung der Applikationen erfolgt zumeist mittels Austausch der Daten auf Dateibasis. Problematisch nur, wenn beide zu koppelnde Applikationen unterschiedlichste Im- und Export Formate unterstützen.
Nehmen wir an ihre Hauptanwendung versteht sich nur auf den Im- und Export mittels Dateien im CSV Format. Die zu koppelnde Anwendung, eine Webanwendung, besitzt eine Webservice API und tauscht die Daten im JSON Format aus. Als Leser werden sie sich nun äußern wie „… dann hätte ich diese Webanwendung nicht ausgesucht, wenn sie keine CSV Schnittstelle bietet“ oder „… wir haben eine fähigen Mitarbeiter (Dienstleister), der kann uns eine Portierungssoftware programmieren“. Aber diese Lösungsansätze schaffen eine nicht mehr zu überschauende und handhabbare inhomogene Umgebung, welche zunehmend unwartbar wird.
In diesem 2teiligen Blog, möchte ich ihnen einen professionellen Weg aufzeigen, wie sie mit Microsoft BizTalk die Brücke, zwischen uneinheitlichen Systemen, bilden.
- Was ist überhaupt Microsoft BizTalk Server?
BizTalk ist ein Microsoft Server Produkt für die Integration und Konnektivität für eine Vielzahl von Systemen. Als universelle Schnittstelle ermöglicht es die Integration von heterogenen Systemen und schafft die Möglichkeit Geschäftsprozesse abzubilden und effizient zu gestalten.
Die Herausforderung Systeme zu kombinieren, welche keine Schnittstellen mit direkter Kommunikation zueinander beinhalten, nimmt mit der Dichte Ihrer Softwarelandschaft stetig zu.
In einem normalen Geschäftsbetrieb kommunizieren Softwaresysteme zu einer unbestimmten Anzahl anderer Systeme. Hierzu sind definierte Schnittstelle je System Voraussetzung.
Abbildung 1 Die klassische heterogene SchnittstellenlandschaftMit zunehmender Komplexität werden Anpassungen und Erweiterungen zu einem nicht kalkulierbaren Risiko, da die Auswirkungen auf andere Systeme der Softwarelandschaft schlecht abzuschätzen sind.
Als Integrationslösung tauscht BizTalk Nachrichten (Daten) über Unternehmensgrenzen hinweg mit anderen Systemen aus und verbindet so Systeme miteinander, die keine direkte Kopplung beinhalten oder nicht dafür vorgesehen sind.
Abbildung 2 BizTalk schafft HomogenitätDie Fähigkeit von BizTalk mittels Adapter die unterschiedlichsten Umgebungen, wie Host und Mainframes, RFID, Web-Services, SAP, MS Dynamics Nav., Windows Azure, SharePoint, EDIFACT, HL7, XML, CSV, Flatfiles etc. miteinander zu verbinden, vereinfacht die Kommunikation und ermöglicht die Systemlandschaft effizient und wartbar zu halten.
Mit vertretbaren Aufwand können Systeme aneinander gekoppelt werden, welche in Echtzeitkommunikation ihre Daten austauschen.
- Wofür setze ich den BizTalk Server ein?
Bei der Einführung einer neuen Software in ihr Unternehmen besteht vorrangig die Fragestellung, in welcher Form dieses Produkt, in eine bestehende Software ihres Unternehmens, integriert werden kann. Diese Schnittstellenproblematik wird im Vorfeld einer Produkteinführung sowohl mit dem Anbieter ihrer eingesetzten Software, als auch mit dem Anbieter des neuen Produktes erörtert. Oftmals müssen Schnittstellen hierzu angepasst oder sogar neu geschaffen werden. Der Kostenaufwand erfolgt zumeist auf beiden Seiten. Letztendlich gehen die Gesamtkosten zu ihren Lasten.
Ändern sich auf einer Produktseite die Schnittstellen, oder will man generell das Produkt gegen ein geeignetes neueres Produkt austauschen, so sind im ersten Fall lediglich Schnittstellenanpassungen zu tätigen, im zweiten Fall muss ein erheblicher Aufwand betrieben werden. Es müssen wiederum Absprachen mit alle Beteiligten getroffen werden, dass das Produkt ebenfalls nahtlos, wie das Vorgängerprodukt, integriert wird.
BizTalk übernimmt die Vermittlerstelle und verhindert, dass es zu einem Wildwuchs der Schnittstellen kommt.
Eine Anpassung oder ein Austausch eines Produktes erfordert deutlich weniger Aufwand und ist somit pflegbar und kosteneffizient.
Abbildung 3 Einfügen einer neuen CRM Software in einer heterogenen und einer BizTalk Umgebung
- Wer nutzt den BizTalk Server?
Seit langem etabliert und verbreitet ist der BizTalk Server in der Automotive, Logistik oder Großhandels Branche. Hier vor allem besteht der Bedarf Daten zwischen verschiedensten ERP oder Produktionssystemen, im nationalen wie auch im internationalen Umfeld, auszutauschen.
Es ist nicht zu erwarten, dass der Kunde eines Teilelieferanten seine ERP-, Produktion-, oder Logistiksoftware, dahingehend umprogrammieren lässt, dass die Bestell- und Lieferprozesse des Lieferanten nahtlos integriert werden können. Zumeist werden Vorgaben hinsichtlich der zu erwartenden Schnittstellenformate gemacht, die eine der beiden Seite erfüllen muss. Kann keine der zu interagierenden Applikationen angepasst werden, oder in einem zeitlich relevanten Rahmen umgesetzt werden, so führt dies zwangsläufig zum Scheitern der geplanten Zusammenarbeit.
- Welche Vorteile bietet mir der Einsatz von BizTalk?
Mittels BizTalk Server können derartige Projekte in kurzer Zeit umgesetzt werden, ohne langwierige Individual Anpassungen an den Applikationen vornehmen zu müssen. Sie können flexibel auf Anforderungen reagieren und zukünftige Erweiterungen oder Änderungen können zügig umgesetzt werden, ohne die Integrität ihrer Software zu verletzen.
Mit zunehmender Integration des BizTalk Servers in ihre Unternehmenskommunikation schaffen sie eine Umgebung, in der sie den Überblick behalten und die sie pflegen können.
Die Kosteneinsparung durch den Wegfall von Individualanpassungen ihrer Software und die stringente Umsetzung von Geschäftsregeln ihrer Prozesse sind weitere gute Gründe für den Einsatz von BizTalk.
- In welchen Bereichen kann BizTalk mich unterstützen?
Ob sie neue Applikationen miteinander koppeln, oder neue Applikationen mit bestehenden Produkte verbinden, oder ihre bestehende Systemlandschaft „aufräumen“. Sie können mit dem Einsatz von BizTalk Server sofort beginnen. Einschränkungen des Einsatzortes von BizTalk gibt es nicht.Nachstehend einige beispielhafte Einsatzgebiete des BizTalk Servers:
- Szenario: Technischer Großhandel
Kommissionierung von Ware und Warenbestandabfrage
Kopplung der Warenwirtschaftssoftware mit einem Lagerverwaltungssoftware () über eine Filebasierte Schnittstelle (CSV, XML etc.).
Artikelbestellung und Artikelverfolgung
Einbindung der Warenwirtschaftssoftware in das ERP und Produktionssystems des zuliefernden Herstellers mittels EDIFACT-Format.
Erstellen von Bilanzen und Auswertungen
Verknüpfung der Buchhaltungssoftware mit der Warenwirtschaft auf Datenbankebene und Kopplung mittels DATEV Format an Steuer beratende Unternehmen. - Szenario: Medizinische Kliniken und Labore
Abfrage von Patienten-Labordaten
Kopplung eines KIS (Krankenhaus-Informations-System) oder Praxis-Systems mit der Laborsoftware zur Übermittlung der Patientenlabordaten mittels HL7 Protokoll
Übergabe der Leistungsdaten zur Abrechnung
Kopplung des Klinik-, Praxissystems mit der kassenärztlichen Abrechnungsstelle oder einem Inkasso Unternehmen mittels EDIFACT oder BDT Formates. - Szenario: Veranstalter für Konzerte und Seminare
Ticket-/ Seminarbestellungen
Kopplung des Buchhaltungssoftware mit der Shop-Webseite über XML und Webservice Schnittstellen
Verschicken von Benachrichtigung/ Tickets an Kunden
Erstellen von Email Benachrichtigungen mit Daten direkt aus der Bestellsoftware, Erstellen von in Emails eingebetteten 2D-Barcodes
Abbildung 4 BizTalk eingebunden in ihr Firmenumfeld
- Was brauche ich als Voraussetzungen für den Einsatz?
BizTalk Server setzt zur Datenverarbeitung selber auf den eigenen MS SQL Server. Wollen Sie den BizTalk Server 2013 einsetzen, so ist der Einsatz des MS SQL Server 2012 oder aktueller die Grundvoraussetzung. Immer noch aktiv im Einsatz ist der BizTalk 2010 Server. Dieser setzt den MS SQL Server 2008 voraus. Die Unterschiede zwischen beiden Versionen werden in einem späteren Blog Artikel eingehender erläutert. Zu empfehlen wäre auf jedenfall den BizTalk Server, wie auch den MS SQL Server jeweils auf einer eigenen Maschine zu installieren.
- Kann ich das auch alleine umsetzen?
Im Prinzip, ja.
Ein Großteil der Arbeiten wird mit den visuellen Designer oder innerhalb von Visual Studio erledigt. Sie sollten sich jedoch mit C# Programmierung, XML, XSD und XSLT auskennen.
Die Möglichkeiten des BizTalk Server sind komplex und vielschichtig. Sie können von einfachen Datentransformationen, bis hin zu komplexen Geschäftsprozessabbildungen mittels Orchestrierungen alles umsetzen.
Wir können ihnen dabei helfen von den konkreten Anforderungen bis zur Implementierung und dem Monitoring ihr Projekt schnell und kosteneffizient umzusetzen.
- Gibt es Alternativen zu BizTalk?
Unten den ESB (Enterprise-Service-Bus) oder „Middleware“ Anbietern sind vor allem IBM mit WebSphere und SAP mit Prozess Integration (PI) zu nennen. Diese sind jedoch vor allem auf deren eigenen Softwarelandschaften zugeschnitten. Microsoft geht hier einen eher Anbieter unabhängigeren Weg, der dem Produkt mit seiner Offenheit und Anpassbarkeit sehr zu Gute kommt. Außerdem gibt es noch eine Reihe freier Software, welche zumeist jedoch nur eine begrenzte Unterstützung von Protokollen und Software bietet.
- Was erwartet mich im 2. Teil des BizTalk Blog’s
Im nächsten Teil wird es deutlich konkreter. Nachdem zuerst das Einsatzgebiet von BizTalk und sein Nutzen eingehender betrachtet wurden, wird im zweiten Teil die Funktionsweise des Servers beleuchtet.
Es werden Begriffe wie Adapter, Orchestrierung, Data Transformation, Pipeline und mehr beschrieben und an praktischen Beispielen erläutert.
Sollten bei ihnen schon jetzt Fragen oder Beratungsbedarf bestehen, so würden wir uns freuen, wenn sie sich mit uns in Verbindung setzen.