BizTalk Server 2004: Eine Einführung

Werbung
BizTalk
Auf XML basierende Spezifikation von Microsoft für den Austausch von standardisierten
Geschäftsdaten über das Netzwerk und/oder Internet.
BizTalk und .NET
Im Jahre 1999 wurde das BizTalk-Projekt als Kernstück der Diskussion über .NET
veröffentlicht. Hierbei sei gesagt, dass BizTalk eigenständig aber immer ein Teil der .NETStrategie ist. Durch die Grundlage von XML kann jedes XML-kompatible Tool oder System
an BizTalk teilnehmen.
Der BizTalk Server ist Teil der MS .NET Enterprise Server Family und besteht aus den 3
wesentlichen Hauptkomponenten im BizTalk.
 BizTalk Framework – Spezifikation zum Erstellen von XML-Nachrichten, die
Geschäftsabläufe beschreiben
 BizTalk Server – Server-Produkt mit dem Schemata und DTDs aufeinander bezogen
und bearbeitet werden können
 Web-Site www.biztalk.org – Plattform für Informationen des Einsatzes von BizTalk,
sowie einem automatisierten Verfahren
BizTalk Framework
Zur Zeit der Entwicklung des Framework 1.0 existierte SOAP noch nicht, da dieser Standard
erst später beim W3C eingereicht worden ist. Mit erscheinen der Version 2.0 im Dezember
2000 wurde nun auch die Erkennung und Nutzung von SOAP unterstützt.
Das neue BizTalk Framework zielt auf die Definition einer konsistenten Methode für die
Implementierung von XML ab.
Microsoft ist einer der Hauptförderer des BizTalk. Das Framework wurde aber von
unabhängiger Gruppe verwaltet. Nachdem sich Microsoft extrem stark in dieses Projekt
einbrachte und es zum Teil seiner Unternehmensstrategie machte, ging auch die bisherige
Domain www.biztalk.org in den Besitz von Microsoft über. Wird diese Seite nun aufgerufen
gelangt der Besucher über eine Weiterleitung zur Seite des Microsoft BizTalk Server.
Durch das Framework können alle Wirtschaftsbeteiligten BizTalk-Dokumente mit
Handelspartnern online austauschen, egal von welcher Plattform aus oder mit welcher
Technologie.
Das Framework definiert ein Geschäftsdokument als XML-Dokument mit Geschäftsdaten.
Hierbei besteht ein BizTalk-Dokument aus einer SOAP 1.1-Nachricht, deren Textkörper
Geschäftsdokumente (XML) und deren Header BizTalk-spezifische Einträge enthält.
Weiterhin erzeugt das Framework ein Set von XML-Tags, welche Biztags genannt werden,
die die Verarbeitung des Dokumentes festlegen, wobei einige dieser Biztags erforderlich sind
und andere wiederum optional.
1
Grafik 1 - Ein BizTalk-Beispieldokument
BizTalk Server
Der BizTalk Server ist wichtiger Bestandteil von .NET und der MS-Strategie XML für B2B
E-Commerce über weite Bandbreite von Produkten und Diensten einzusetzen. Die Integration
von Angebotsketten und schnelle Konnektivität zu digitalen Marktplätzen sind die zentralen
Bereiche des BizTalk Servers.
2
BizTalk Server Architektur
Die dynamische und kosteneffektive Automatisierung und Verwaltung von
Geschäftsprozessen ist selbst für technisch hoch entwickelte Unternehmen bewiesenermaßen
ein schwieriges Unterfangen. Es wurde jedoch eine neue Methodik für die Entwicklung und
Integration von Anwendungen entwickelt, die diese Probleme effektiv löst. Diese Methodik,
die so genannte serviceorientierte Architektur (Service Oriented Architecture, SOA), basiert
auf XML- und Webdiensttechnologien und wurde in BPM/EAI-Plattformen (Business
Process Management, Geschäftsprozessverwaltung; Enterprise Application Integration,
Integration von Unternehmensanwendungen) integriert.
Im SOA-Paradigma wurde der Begriff der Anwendung neu definiert. Bei einer Anwendung
handelt es sich nicht mehr um einen undurchsichtigen, prozeduralen
Implementierungsmechanismus, sondern um eine orchestrierte Folge von Messaging-,
Routing-, Verarbeitungs- und Transformationsereignissen, die die bereitgestellten
deklarativen Eigenschaften von leistungsfähigen Dokumenten (XML) verarbeiten können.
Prozessablauf, Integrationsszenario oder Interaktion mit Handelspartnern sind spezielle
Klassen des SOA-Paradigmas, die sich lediglich durch die Beteiligten, den
Ausführungszeitpunkt und die jeweiligen Sicherheitsanforderungen der Beteiligten
unterscheiden. BPM/EAI-Plattformen, die das SOA-Paradigma einbeziehen, sind angesichts
der zahlreichen Entwicklungs- und Betriebsvorteile zwingend notwendig:








Sie mildern wesentliche Effizienzdefizite und Hindernisse bei der Entwicklung im
Hinblick auf eine effektive Lebenszyklusverwaltung.
Sie erleichtern die „flexible Kopplung“ von Komponenten auf einer breiten Basis.
Durch sie können Prozessaktivitäten oder -komponenten ohne Unterbrechung des
Prozesses hinzugefügt, entfernt und neukonfiguriert werden.
Sie sind grundlegend auf die Unterstützung langlebiger, asynchroner Transaktionen
mit hoher Skalierbarkeit ausgerichtet.
Sie sind grundlegend auf die Unterstützung langlebiger, asynchroner Transaktionen
mit hoher Skalierbarkeit ausgerichtet.
Sie gewährleisten eine ausgezeichnete Dokumentation und Transparenz der
Anwendungen, da die Prozessaktivitäten, -komponenten und -funktionen zugänglich
und selbstbeschreibend sind.
Durch sie können Anwendungskomponenten und ganze Anwendungen erweitert und
wieder verwendet werden.
Sie optimieren die Netzwerkinfrastruktur des Internets und der Protokollstandards des
World Wide Web.
Eine Entwicklungsumgebung auf der Basis des SOA-Paradigmas setzt eine Neuorientierung
der Konzepte und Methoden der Anwendungsentwicklung voraus. In diesem Dokument
werden die grundlegenden SOA-Konzepte und -Entwicklungsmethoden beschrieben.
Anschließend wird untersucht, wie die EAI-Entwicklungsumgebung von Microsoft®,
BizTalk® Server 2004, diese Konzepte und Methoden in zwei speziellen Kontexten umsetzt:
Entwurf, Verhalten und Funktionalität der erstellten Anwendungen sowie der eigentliche
Entwicklungsprozess. Schließlich werden in diesem Dokument die BizTalk ServerEntwicklungstools beschrieben, die in Visual Studio® .NET integriert sind und eine Brücke
zwischen der .NET Framework-Architektur und dem SOA-Paradigma bilden.
3
In den vorigen Abschnitten wurde erläutert, wie eine Anwendung mit den übergeordneten
Tools in BizTalk Server 2004 entwickelt und implementiert wird. Im Folgenden geht es nun
um die Beziehung dieser Entwicklungsmethoden zu den zugrunde liegenden Technologien,
die das SOA-Paradigma (Service Oriented Architecture) möglich machen. Wie weiter oben
erwähnt, sind die grundlegenden Prinzipien von SOA bereitgestellte Funktionalität,
Dokumentmessaging, flexible Kopplung und Plattformunabhängigkeit.
XML sorgt für die Transparenz und Anwendungsunabhängigkeit und verwendet Metatags für
die „Deklaration” der Bedeutung und Funktion der Daten. Der Anspruch von XML liegt
darin, programmabhängige Daten in selbstbeschreibende programmunabhängige Daten
umzuwandeln. Dies gilt nicht nur für den Inhalt, sondern auch für Anweisungen zur
Verarbeitung des Inhalts.
Das XML-Schema sorgt für semantische Konsistenz und Interoperabilität. Beim XMLSchema handelt es sich um eine Spezifikation, die formal eine umfassende Menge von
Datentypprimitiven und Strukturkomponenten für die Erstellung von XML-Dokumenten
definiert und als Wörterbuch für abstrakte Elemente, Attributentitäten und
Organisationsregeln fungiert. Die Erstellung von XML-Dokumenten, die einem
Schemawörterbuch entsprechen, bietet einen entscheidenden Vorteil: Bedeutung, Funktion
und Nutzung des Inhalts eines Dokuments können von allen XML-fähigen Anwendungen
verstanden und verarbeitet werden, die auf das zugrunde liegende Schema des Dokuments
zugreifen können. Jede branchenspezifische Initiative zur Entwicklung eines allgemeinen
Vokabulars und von Verfahren für Informationsaustausch und -verarbeitung basiert auf dem
XML-Schema. De facto dient das XML-Schema sogar als Grundlage für die
Webdienstprotokolle.
Die Webdienstprotokolle, Simple Object Access Protocol (SOAP) und Web Services
Definition Language (WSDL), stellen die Funktionen und Messagingmöglichkeiten bereit, die
für die Bindung und Ausführung der Programmfunktionalität auf allen Plattformen
erforderlich sind, ohne dass es benutzerdefinierten Codes bedarf. Die
Webdienstspezifikationen haben einen solchen Stellenwert, da sie die erste, wirklich
realisierbare Architektur für den Aufbau von komplexen, interoperablen Computerprozessen
über das Internet ermöglichen.
Bei SOAP handelt es sich um ein XML-basiertes Messagingprotokoll, mit dem Dokumente
für den Transport über ein Netzwerk codiert werden. Ein „SOAP-Client” fügt ein XMLDokument in einen SOAP-Umschlag ein und sendet es über HTTP (Marshallen genannt) an
einen „SOAP-Empfänger”, der die Sendung entgegennimmt. SOAP-Messaging bietet eine
Reihe von Vorteilen:



Die SOAP-Client- und -Empfängeranwendungen sind einfache Konstrukte. Ein
SOAP-Client kann leicht als Routine in ein Programm oder eine Webseite eingebettet
werden. Der URL-Endpunkt kann als SOAP-Empfänger dienen.
Durch Verwendung von HTTP als Transportmechanismus kann eine SOAP-Nachricht
beliebige Ziele erreichen, bestehende SSL-Funktionen für die Authentifizierung und
Verschlüsselung verwenden sowie den Infrastrukturumfang des World Wide Web
optimal nutzen.
Der gesamte Nachrichteninhalt, der SOAP-Umschlag, der Nachrichtenkopf und der
Textkörper werden in XML ausgedrückt, sodass das ganze Objekt vollkommen
transparent ist. Da Semantik und Struktur der Dokumente vollständig offen gelegt
werden, können umfassende Validierungs-, Bearbeitungs-, Routing- und
4


Transformationsfunktionen auf die Dokumente angewendet werden, ohne
entsprechenden Anwendungscode erstellen zu müssen. Im Gegensatz zu CORBA
kann ein Endpunkt im Webdienstnetzwerk (eine HTTP-, URL- oder andere Adresse)
mehrere XML-Formate unterstützen und so eine echte polymorphe Schnittstelle
bereitstellen, die auch bei neuen Versionen erhalten bleibt.
Der gesamte Nachrichteninhalt, der SOAP-Umschlag, der Nachrichtenkopf und der
Textkörper werden in XML ausgedrückt, sodass das ganze Objekt vollkommen
transparent ist. Da Semantik und Struktur der Dokumente vollständig offen gelegt
werden, können umfassende Validierungs-, Bearbeitungs-, Routing- und
Transformationsfunktionen auf die Dokumente angewendet werden, ohne
entsprechenden Anwendungscode erstellen zu müssen. Im Gegensatz zu CORBA
kann ein Endpunkt im Webdienstnetzwerk (eine HTTP-, URL- oder andere Adresse)
mehrere XML-Formate unterstützen und so eine echte polymorphe Schnittstelle
bereitstellen, die auch bei neuen Versionen erhalten bleibt.
Da SOAP als Transportmechanismus u. a. HTTP verwendet, kann ein Aufruf über die
Webdienstmethode von jedem und an jeden webfähigen Computer auf der ganzen
Welt erfolgen. SOAP besitzt daher das Potenzial für die Erstellung verteilter
Computerprozesse, deren Umfang den Ausmaßen des World Wide Web entspricht.
Bei Web Services Definition Language (WSDL) handelt es sich um eine Spezifikation, mit
der die Funktionalität von Programmen über einen Austausch von Nachrichten oder über
Remoteprozeduraufrufe (Remote Procedure Call, RPC) beschrieben, kommuniziert und
aufgerufen wird. Beide Methoden verwenden dabei das SOAP-Protokoll und XMLgekapselte Informationen. Ein WSDL-Dokument befindet sich an einer URL-Adresse und ist
mit dem eigentlichen Programmmodul verknüpft, das sich an anderer Stelle befindet. Nahezu
jede Programmfunktion in einer Orchestrierung oder mit Zugriff aus einer Orchestrierung
kann als Webdienst bereitgestellt werden, etwa eine Datenbanksuche, der Aufruf einer
komplexen Geschäftsregel oder der ganze eigentliche Orchestrierungsprozess. Da die
öffentlichen Webdienstschnittstellen nicht von der privaten Implementierung des Programms
abhängen, können leicht hochmodulare und verteilte Anwendungen erstellt werden.
5
BizTalk Sicherheit
Die Gewährleistung vertraulicher Kommunikation in einer offenen Computer- und
Netzwerkumgebung ist Aufgabe der Verschlüsselung. BizTalk Server unterstützt die
verschlüsselte Kommunikation über PKI (Public Key Infrastructure), S/MIME (Secure
Multipurpose Internet Mail Extensions) und SSL (Secure Sockets Layer).
Bei PKI handelt es sich um eine auf Standards basierende Technologie und Methodik für den
Austausch öffentlicher und privater Schlüssel über ein offenes Netzwerk. PKI ermöglicht die
Authentifizierung, Verschlüsselung und Entschlüsselung von Informationen, die über das
Netzwerk übertragen werden. Der Schlüsselaustausch erfolgt in BizTalk Server über eine
vollständig kompatible Implementierung von standardisierten X509-Zertifikaten sowie RSAund Diffie-Hellman-Algorithmen.
BizTalk Server verwendet das S/MIME-Protokoll mit Unterstützung der DES- (Data
Encryption Standard), 3DES- und RC2-Verschlüsselung für die Ver- und Entschlüsselung von
Nachrichten, die in Prozessen mit mehreren Schritten und Beteiligten übertragen werden. Die
verschlüsselte Punkt-zu-Punkt-Kommunikation zwischen einem Webclient und einem
Webserver erfolgt über das SSL-Protokoll.
Für die Authentifizierung von Informationen, Beteiligten und Prozessen setzt BizTalk Server
Signaturzertifikate, die Windows-Authentifizierung und eine erweiterte Implementierung der
Windows-Authentifizierung in BizTalk Server ein, die „Enterprise Single Sign-On“ genannt
wird.
Bei den Signaturzertifikaten handelt es sich um digitale Zertifikate (oder „Schlüssel“), die die
beiden an einem Nachrichtenaustausch Beteiligten gegenseitig identifizieren. Mit einem
Signaturzertifikat wird auch ermittelt, ob eine Nachricht bei der Übertragung manipuliert
wurde. BizTalk Server kann mit gespeicherten öffentlichen Schlüsseln digital signierte
eingehende Nachrichten decodieren und mit privaten Schlüsseln die generierten ausgehenden
Nachrichten signieren. Für die Verschlüsselung und Authentifizierung erhält er öffentliche
Schlüsselzertifikate, die im Zertifikatspeicher des Windows-Adressbuchs gespeichert werden.
Mit Hilfe eines privaten Zertifikatschlüssels identifiziert sich BizTalk Server und
entschlüsselt eingehende Nachrichten. Er verwendet den MY-Zertifikatspeicher, um diesen
privaten Schlüssel zu schützen und sicher zu speichern.
Eines der schwierigsten Probleme beim Erstellen von Anwendungen und Prozessen, die
mehrere Plattformen und Organisationen umfassen, besteht darin, die Identität und
Anmeldeinformationen der einleitenden Entitäten zu erhalten. Ohne diese Fähigkeit ist es
nicht möglich, die Nutzung der erforderlichen Ressourcen zu autorisieren. BizTalk Server
erfüllt diese Anforderung mit der Windows-Authentifizierung und einer entsprechenden
Erweiterung in BizTalk Server, Enterprise Single Sign-On.
Bei der Windows-Authentifizierung handelt es sich um die
Standardauthentifizierungsmethode in der Microsoft-Serverproduktlinie. Sie basiert auf dem
Authentifizierungsprotokoll Kerberos, Version 5. Das Kerberos-Protokoll, das im September
1993 von der Internet Engineering Task Force (IETF) standardisiert wurde, definiert die
Interaktion von zwei Clients mit einer Netzwerkauthentifizierung. Mit Hilfe von Kerberos
ermöglicht die Windows-Authentifizierung den SSO-Zugriff (Single Sign-On, einmaliges
Anmelden) auf mehrere Microsoft-Serverressourcen.
6
Ein Client erhält vom Kerberos-Schlüsselverteilungscenter (Key Distribution Center, KDC)
ein „Ticket“, das seine Netzwerkanmeldeinformationen darstellt, und überträgt dieses Ticket
beim Herstellen von Verbindungen an den Server. Dieses Ticket wird zwischengespeichert.
Wenn der Benutzer versucht, eine Verbindung zu einem Server herzustellen, sucht das
Kerberos-Protokoll im Ticketcache nach einem gültigen Ticket für den betreffenden Server.
Wenn kein gültiges Ticket verfügbar ist, wird das Anfangsticket des Benutzers zusammen mit
der Anforderung eines Tickets für den angegebenen Server an das KDC gesendet. Dieses
Sitzungsticket wird zum Cache hinzugefügt und kann für die Verbindung zu diesem Server
verwendet werden, bis das Ticket abläuft.
Enterprise Single Sign-On ist die Erweiterung der Windows-Authentifizierung in BizTalk
Server. Damit können sich Beteiligte und Messagingereignisse in mehrstufigen BizTalk
Server-Prozessen in jedem Prozessschritt bei jeder Ressource im Prozess authentifizieren,
ohne dass mehrere Anmeldungen erforderlich sind. Die intern und extern empfangenen und
gesendeten Nachrichten, einschließlich Windows-basierter und nicht-Windows-basierter
Ressourcen, können authentifiziert werden.
Bei der Autorisierung handelt es sich um die Zuweisung und Verwaltung von
Nutzungsrechten für die Ressourcen eines Systems. Die primären BizTalk ServerAutorisierungsmechanismen sind SQL Server-Rollen und Windows-Authentifizierung sowie
die MessageBox-Datenbank.
Der Zugriff auf BizTalk Server-Datenbanken und -Ressourcen für Administratoren, Benutzer
und Hostkonten wird über SQL Server-Rollen zugewiesen. Beim Anlegen der
Administratoren- und Hostbenutzergruppen erstellt BizTalk Server in allen Datenbanken
SQL-Rollen für diese Windows-Gruppen und fügt die Gruppen zu den Rollen hinzu. BizTalk
Server erteilt dann den einzelnen SQL-Rollen die entsprechenden Rechte für die Aufgaben,
die in der Datenbank ausgeführt werden müssen. SQL Server setzt die WindowsAuthentifizierung ein, um den Zugriff auf SQL Server-Ressourcen zu gewähren.
BizTalk Server speichert alle ein- und ausgehenden Nachrichten in seiner MessageBoxDatenbank, bevor sie an einen Orchestrierungsprozess gesendet werden und nachdem die
Orchestrierung die Nachrichten an eine Sendepipeline übergeben hat. Die Orchestrierungen
und Sendepipelines empfangen Nachrichten je nach bestehenden Abonnements für bestimmte
Nachrichtentypen oder für Nachrichten mit speziellen Eigenschaften. Ein Geschäftsprozess
kann beispielsweise „Bestellungen“ (einen bestimmten Nachrichtentyp) oder
„Kostenanforderungen mit mehr als 100 €“ abonnieren. Die Abonnementkriterien können
anstelle eines Nachrichtentyps auch eine Adresse enthalten. Ein Geschäftsprozess kann
beispielsweise alle Nachrichten unabhängig von ihrem Typ abonnieren, die von einer
bestimmten Firma stammen. Als Abonnementkriterien lassen sich beliebig viele und jegliche
Arten von Kontexteigenschaften verwenden. Dieser Prozess wird nachstehend ausführlich
beschrieben.
7
BizTalk Server 2004: Eine Einführung
Microsoft® BizTalk® Server 2004 ermöglicht Ihnen die Orchestrierung dynamischer
Geschäftsprozesse in und zwischen verschiedenen Organisationen. Mit BizTalk Server
können Entwickler, Information Worker und IT-Profis zusammen arbeiten sowie schnell und
effizient integrierte Lösungen definieren, entwerfen und bereitstellen, die anwendungs-,
plattform- und unternehmensübergreifend funktionieren.
Mit BizTalk Server können Sie Folgendes tun:




Dezentrale Geschäftsprozesse aufbauen, verwalten und überwachen, die über die
normalen Grenzen von Anwendungen, Unternehmen und Zeit hinausgehen.
Über das Internet verlässliche B2B-Handelsbeziehungen (Business-to-Business) mit
Ihren Kunden und Ihren wichtigsten Partnern aufbauen.
Nicht verwandte und ältere Anwendungen integrieren, indem Sie
plattformenunabhängige Standards verwenden, die Daten aus den verschiedenen
Systemen sammeln und sie in verständlicher und sinnvoller Form präsentieren.
Heterogene Systeme und Anwendungen integrieren, eingehende und ausgehende
Nachrichten senden und empfangen sowie Laufzeit- und Konfigurationsinformationen
bereitstellen.
Stellen Sie sich vor, Sie seien bei einem Automobilhersteller für die Beschaffung der
Einzelteile zuständig. Aus Ihrem Datenbanksystem können Sie ersehen, dass der Bestand an
Türgriffen niedrig ist. Sie müssen rasch handeln. Sie schicken also per Fax eine entsprechende
Bestellung an einen Lieferanten, der Ihnen wiederum eine Bestellbestätigung zusendet und
Ihnen anschließend die bestellte Ware samt Rechnung liefert. Diese Lieferung fügen Sie
Ihrem Inventar hinzu, zahlen die Rechnung und aktualisieren die Datenbank. Diesen Prozess
müssen Sie nun für Tausende anderer Teile wiederholen.
BizTalk Server hingegen interagiert sowohl mit Ihren Back-End- als auch mit älteren
Systemen und automatisiert so nicht nur die Transaktionen zwischen Ihnen und Ihren
Geschäftspartnern sondern auch den Workflow im täglichen Geschäft. Wenn Sie BizTalk
Server installiert haben, kommen Sie morgens im Büro an und finden dort eine Lieferung
Türgriffe vor, von der Sie noch nicht einmal wussten, dass Sie sie brauchen. Sie müssen die
Lieferung nur noch dem Lagerbestand hinzufügen. Doch damit nicht genug: Die Lieferung
wurde zudem bereits bezahlt und Ihre Datenbank aktualisiert.
Microsoft® BizTalk® Server 2004 ist ein Integrationsserverprodukt, mit dem Sie integrierte
Geschäftsprozesse und XML-basierte Webdienste entwickeln, bereitstellen und verwalten
können.
8
Ein Überblick über das Grundkonzept
In der Geschäftsumgebung von heute ist es von wachsender Bedeutung, Geschäftsprozesse zu
erstellen, die separate und verschiedenartige Anwendungen in einem kohärenten Ganzen
kombinieren. Microsoft® BizTalk® Server 2004 ermöglicht Ihnen nicht nur die Verbindung
verschiedener Anwendungen, sondern mithilfe einer grafischen Benutzeroberfläche auch die
Erstellung und Veränderung von Geschäftsprozessen, die Dienste dieser Anwendungen
nutzen.
Das Kernmodul von BizTalk Server 2004 baut auf Vorgängerversionen auf und bietet
erweiterte Funktionen sowie neue Dienste, z. B.:




Eine neue Methode zum Festlegen von Geschäftsregeln
Bessere Methoden zum Verwalten und Überwachen von Anwendungen
Unterstützung für einmaliges Anmelden (SSO)
Neue Dienste für Information Worker, einschließlich:
 Eine Gruppe von Geschäftsaktivitätsdiensten (Business Activity Services,
BAS), mit denen Geschäftsbenutzer ihre Geschäftspartner und -prozesse
verwalten können
 Unterstützung für Geschäftsprozessbereitstellung und -konfiguration
 Dienste, mit denen Information Worker Interaktionen mit Handelspartnern
einrichten und verwalten können
 Ein Framework für die Geschäftsaktivitätsüberwachung (Business Activity
Monitoring; BAM) zur Analyse laufender Geschäftsprozesse
 Unterstützung für Ad-hoc- und semi-strukturierten Workflow durch interaktive
Workflowdienste (Human Workflow Services, HWS). Dies ermöglicht Ihnen
die Erstellung von Geschäftsprozessen, mit denen Personen über
Clientanwendungen wie Microsoft Windows® SharePoint™ Services,
Microsoft Office InfoPath™ und Microsoft Office interagieren können.
Im Gegensatz zu seinen COM-basierten Vorgängerversionen basiert BizTalk Server 2004
vollständig auf Microsoft .NET Framework und Microsoft Visual Studio® .NET. Es bietet
außerdem eigene Unterstützung für die Kommunikation über Webdienste. Darüber hinaus
können in Business Process Execution Language (BPEL) beschriebene Geschäftsprozesse
importiert und exportiert werden.
BizTalk Server 2004 kann in Ihrem Unternehmen auf vielfache Weise eingesetzt werden.
Wenn Sie BizTalk Server zur Anwendungsintegration (Application Integration) verwenden,
sind die folgenden Szenarien die wichtigsten:


Verbinden von Anwendungen innerhalb eines einzigen Unternehmens, im
Allgemeinen als Enterprise Application Integration (EAI) bezeichnet
Verbinden von Anwendungen in verschiedenen Unternehmen, im Allgemeinen als
B2B-Integration (Business-to-Business) bezeichnet
Bei der Beschäftigung mit BizTalk Server 2004 ist es sinnvoll, das Produkt begrifflich in zwei
verschiedene Teile zu trennen: das Kernmodul und die Dienste für Information Worker, die
auf dem Modul basieren. In diesem Überblick finden Sie zwei einfache Beispiele für die
Verwendung von BizTalk Server 2004. Im Anschluss werden die beiden Bestandteile
beschrieben.
9
EAI-Beispiel
Die folgende Abbildung zeigt ein einfaches Beispiel für das Kernmodul von Microsoft®
BizTalk® Server 2004, angewendet auf ein EAI-Problem.
In diesem Szenario wird von einer Lagerbestandsanwendung, die vielleicht auf einem IBMMainframe läuft, festgestellt, dass der Bestand eines Artikels niedrig ist. Es wird eine
Anforderung generiert, um Artikel nachzubestellen. Folgende Schritte werden ausgeführt:
1. Die Anforderung wird an eine BizTalk Server 2004-Anwendung gesendet.
2. Die BizTalk Server 2004-Anwendung fordert eine Bestellung vom Enterprise
Resource Planning (ERP) des Unternehmens an.
3. Die ERP-Anwendung, die möglicherweise unter Unix ausgeführt wird, sendet die
angeforderte Bestellung zurück.
4. Die BizTalk Server 2004-Anwendung teilt einer Ausführungsanwendung, die über
.NET Framework auf Microsoft Windows® basieren könnte, mit, dass der Artikel
bestellt werden soll.
In diesem Beispiel verwenden alle Anwendungen verschiedene Protokolle zur
Kommunikation. Die Messaging-Infrastruktur des BizTalk Server 2004-Moduls muss also in
der Lage sein, mit jeder Anwendung in ihrer eigenen Sprache zu kommunizieren. Beachten
Sie außerdem, dass keine der Anwendungen vom gesamten Geschäftsprozess Kenntnis hat.
Dieser Geschäftsprozess ist mit den zur Koordinierung sämtlicher Bestandteile erforderlichen
Informationen in der BizTalk Server 2004-Anwendung implementiert.
10
B2B-Beispiel
Die Herstellung von Verbindungen zwischen Anwendungen innerhalb eines Unternehmens ist
eine wichtige Aufgabe. Das Verbinden von Anwendungen über mehrere Unternehmen
hinweg kann jedoch in einigen Situationen von noch größerem geschäftlichem Nutzen sein.
Die folgende Abbildung zeigt ein einfaches Beispiel für ein Geschäftsszenario einer B2BIntegration (Business-to-Business).
Die Anwendungen sind auf folgende Weise verbunden:



Der Einkäufer im oberen Bereich der Abbildung führt eine Microsoft® BizTalk®
Server 2004-Anwendung aus, die mit zwei Lieferanten interagiert.
Lieferant A verwendet ebenfalls BizTalk Server 2004 und gewährt damit indirekten
Zugriff auf seine Lieferungsanwendung.
Lieferant B arbeitet mit einer Integrationsplattform eines anderen Herstellers und stellt
die Verbindung zur BizTalk Server 2004-Anwendung des Einkäufers zum Beispiel
über Webdienste her. Lieferant B führt denselben Geschäftsprozess aus wie die
anderen Teilnehmer. Daher hat er möglicherweise eine BPEL-Definition dieses
Prozesses vom Einkäufer erhalten, der die Definition aus BizTalk Server 2004
exportiert hat.
11
BizTalk Server-Modul
Damit Benutzer in der Lage sind, einen mehrere Anwendungen umfassenden
Geschäftsprozess zu erstellen, muss das Microsoft® BizTalk® Server 2004-Modul die
folgenden Funktionen bereitstellen:


Eine Methode zur Festlegung dieses Geschäftsprozesses
Einen Mechanismus zur Kommunikation zwischen den Anwendungen, die der
Geschäftsprozess nutzt
Die folgende Abbildung zeigt die Hauptkomponenten des BizTalk Server 2004-Moduls, die
diese Funktionen bereitstellen.
Ein Geschäftsprozess wird in Form einer oder mehrerer Orchestrierungen implementiert, von
denen jede aus ausführbarem Code besteht. Orchestrierungen werden nicht durch das
Schreiben von Code in einer Sprache wie zum Beispiel C# erstellt. Stattdessen verwendet ein
Wirtschaftsanalytiker den Wirtschaftsanalytiker-Orchestrierungs-Designer (ein Microsoft
Visio®-Snap-In) dazu, eine definierte Gruppe von Formen grafisch zu organisieren, um die
Bedingungen, Schleifen und anderes Verhalten des Geschäftsprozesses darzustellen.
Geschäftsprozesse können darüber hinaus das Geschäftsregelmodul verwenden, das eine
einfachere und leichter modifizierbare Methode zur Darstellung der Regeln in einem
Geschäftsprozess bietet.
12
Von jeder Orchestrierung werden Abonnements zur Angabe der Arten der empfangenen
Nachrichten erstellt. Wie in der vorhergehenden Abbildung gezeigt, vollzieht sich die
Nachrichtenverarbeitung wie folgt:
1. Eine Nachricht wird über einen Empfangsadapter empfangen. Verschiedene Adapter
bieten verschiedene Kommunikationsmechanismen; eine Nachricht kann zum Beispiel
durch den Zugriff auf einen Webdienst, durch Lesen aus einer Datei oder auf andere
Weise abgerufen werden.
2. Die Nachricht wird über eine Empfangspipeline verarbeitet. Diese Pipeline kann
Komponenten enthalten, die Tasks ausführen wie das Konvertieren der Nachricht aus
ihrem nativen Format in ein XML-Dokument und das Überprüfen der digitalen
Signatur.
3. Die Nachricht wird an eine Datenbank namens MessageBox übermittelt, die mithilfe
von Microsoft SQL Server™ implementiert ist.
4. Trifft eine Nachricht in der MessageBox-Datenbank ein, wird sie an ihre
Zielorchestrierung gesendet, die alle Schritte unternimmt, die der Geschäftsprozess
erfordert.
5. Das Ergebnis der Verarbeitung ist in der Regel eine weitere Nachricht, die vom
Geschäftsprozess erstellt und in der MessageBox-Datenbank gespeichert wird.
6. Die neue Nachricht wird durch eine Sendepipeline verarbeitet, von der sie unter
Umständen aus dem internen, von BizTalk Server 2004 verwendeten XML-Format in
das am Zielort erforderliche Format konvertiert und mit einer digitalen Signatur
versehen wird.
7. Die Nachricht wird durch einen Sendeadapter abgesendet, der einen geeigneten
Mechanismus verwendet, um mit der Anwendung zu kommunizieren, für die diese
Nachricht bestimmt ist.
Zum Erstellen und Warten von BizTalk Server 2004-Anwendungen sind drei Rollen – die des
Wirtschaftsanalytikers, Entwicklers und Administrators – erforderlich. Diesen Rollen
kommen im Hinblick auf das BizTalk Server 2004-Modul die folgenden Aufgaben zu:



Wirtschaftsanalytiker. Definiert die Regeln und das Verhalten, aus denen ein
Geschäftsprozess besteht, und bestimmt den Datenfluss des Geschäftsprozesses,
indem er die Art und Weise des Informationsaustauschs und der Zuordnungen von
Dokumenten definiert.
Entwickler. Implementiert den Geschäftsprozess, nachdem dieser vom
Wirtschaftsanalytiker definiert wurde. Die Implementierung umfasst Aufgaben wie
das Definieren der XML-Schemas für die zu verwendenden Geschäftsdokumente, das
Festlegen der detaillierten Zuordnungen zwischen ihnen sowie das Erstellen der zur
Implementierung des Geschäftsprozesses erforderlichen Orchestrierungen.
Administrator. Führt Aufgaben aus wie das Einrichten der Kommunikation zwischen
den Parteien und das Bereitstellen der Anwendung auf eine geeignete skalierbare
Weise.
13
Verbinden von Anwendungen
Da Anwendungen auf verschiedene Weise kommunizieren, unterstützt das BizTalk
Server 2004-Modul eine Reihe von Protokollen und Nachrichtenformaten. Wichtig ist, dass
das Modul intern nur mit XML-Dokumenten arbeitet. Alle Nachrichten werden beim
Empfang in XML-Dokumente konvertiert. Falls der Empfänger ein anderes Format als XML
benötigt, wird das Dokument in das gewünschte Format konvertiert.
Senden und Empfangen von Nachrichten: Adapter
Das BizTalk Server 2004-Modul verwendet Adapter zum Kommunizieren mit einer breiten
Palette anderer Softwareprodukte. Als Adapter gilt die Implementierung eines
Kommunikationsmechanismus, wie zum Beispiel eines bestimmten Protokolls. BizTalk
Server stellt mehrere integrierte Adapter zur Verfügung; für verbreitete Anwendungen wie
SAP wurden weitere Adapter erstellt. Ein Entwickler kann festlegen, welche Adapter in einer
bestimmten Situation zum Einsatz kommen sollen, oder auch benutzerdefinierte Adapter
erstellen.
Alle Adapter basieren auf einem Standard, der Adapterframework genannt wird – eine
Neuerung in BizTalk Server 2004. Dieses Framework bietet eine allgemeine Methode zum
Erstellen und Ausführen von Adaptern und ermöglicht es Ihnen, zur Verwaltung von
Standard- und benutzerdefinierten Adaptern dieselben Tools zu verwenden.
In BizTalk Server 2004 stehen die folgenden Adapter zur Verfügung:






SOAP-Adapter. Ermöglicht das Senden und Empfangen von Nachrichten mithilfe
von SOAP über HTTP. Da SOAP das wichtigste Protokoll für Webdienste ist, verleiht
dieser Adapter BizTalk Server 2004 die Fähigkeit, mit Webdiensten zu interagieren.
Zur Identifizierung der Sende- und Empfangssysteme werden URLs verwendet.
Adapter für BizTalk-Message Queuing. Ermöglicht das Senden und Empfangen von
Nachrichten mithilfe von BizTalk-Message Queuing (MSMQT). BizTalk-Message
Queuing ist eine Implementierung des Microsoft Message Queuing-Protokolls
(MSMQ). Damit ist es möglich, MSMQ-Nachrichten aus der MessageBox-Datenbank
zu empfangen bzw. an diese zu senden. Es stellt zwar keinen Ersatz für MSMQ dar,
bildet jedoch eine effiziente Möglichkeit zur Verwendung des Transports für MSMQ
mit BizTalk Server.
Dateiadapter. Ermöglicht das Lesen von und das Schreiben in Dateien im Microsoft
Windows®-Dateisystem. Da die Anwendungen in einem Geschäftsprozess oft lokal
oder über ein Netzwerk auf das gleiche Dateisystem zugreifen, kann der Austausch
von Nachrichten über Dateien eine zweckmäßige Option sein.
HTTP-Adapter. Ermöglicht das Senden und Empfangen von Daten mithilfe von
HTTP. Das BizTalk Server 2004-Modul macht einen oder mehrere URLs zugänglich,
damit andere Anwendungen Daten dorthin senden können, und kann diesen Adapter
zum Senden von Daten an andere URLs verwenden.
SMTP-Adapter. Ermöglicht das Senden von Nachrichten mithilfe von Simple Mail
Transfer Protocol (SMTP). Zur Identifizierung der Teilnehmer werden Standard-EMail-Adressen verwendet.
SQL-Adapter. Ermöglicht das Lesen und Schreiben von Daten aus einer bzw. in eine
Datenbank von Microsoft SQL Server™.
14


Basis-EDI-Adapter. Ermöglicht das Senden und Empfangen von Nachrichten
mithilfe der Standards des American National Standards Institute (ANSI) X-12 und
Electronic Data Interchange for Administration, Commerce, and Trade (EDIFACT).
FTP-Adapter. Ermöglicht den Dateiaustausch zwischen BizTalk- und FTP-Servern.
Die von einem Adapter empfangenen Nachrichten müssen normalerweise verarbeitet werden,
bevor eine Orchestrierung darauf zugreifen kann. In ähnlicher Weise müssen von einer
Orchestrierung erstellte ausgehende Nachrichten häufig zunächst verarbeitet werden, bevor
sie von einem Adapter gesendet werden können. Diese Verarbeitung wird unter
Nachrichtenverarbeitung: Pipelines beschrieben.
Nachrichtenverarbeitung: Pipelines
Die einem Geschäftsprozess zugrunde liegenden Anwendungen kommunizieren, indem sie
verschiedene Arten von Dokumenten austauschen, wie zum Beispiel Bestellscheine und
Rechnungen. Damit eine BizTalk Server 2004-Anwendung einen Geschäftsprozess ausführen
kann, muss sie in der Lage sein, die Nachrichten, die diese Dokumente enthalten, richtig zu
verarbeiten. Die Verarbeitung wird von einer Nachrichtenpipeline übernommen, die mehrere
Stufen umfassen kann. Eingehende Nachrichten werden von einer Empfangspipeline
verarbeitet, ausgehende Nachrichten von einer Sendepipeline.
BizTalk Server 2004 kann Dokumente in zahlreichen verschiedenen Ausgangsformaten
verarbeiten. Zur internen Verarbeitung müssen alle Dokumente jedoch in ein einziges
Standardformat konvertiert werden. Damit die Dokumentverarbeitung so effektiv wie möglich
wird, verwendet BizTalk Server als internes Format zur Verarbeitung aller Dokumente XML.
Viele derzeit gebräuchliche Anwendungen sind zwar in der Lage, XML-Dokumente zu
verstehen, zahlreiche andere jedoch nicht. Daher muss BizTalk Server eine Methode zur
Konvertierung von Dokumenten in das XML-Format und aus diesem Format zur Verfügung
stellen. Darüber hinaus sind möglicherweise weitere Verarbeitungsdienste erforderlich, wie
beispielsweise die Authentifizierung des Absenders einer Nachricht.
Es werden verschiedene Stufen in einer Pipeline kombiniert, damit diese Aufgaben nach
einem modularen Verfahren ausgeführt werden können. Jede Stufe enthält eine oder mehrere
Microsoft .NET- oder COM-Komponenten, und jede Komponente ist für einen bestimmten
Teil der Nachrichtenverarbeitung zuständig. Das BizTalk Server 2004-Modul stellt
verschiedene Standardkomponenten zur Anwendung in den am häufigsten auftretenden Fällen
zur Verfügung. Entwickler können darüber hinaus benutzerdefinierte Komponenten für
Empfangs- und Sendepipelines erstellen.
In BizTalk Server 2004 stehen einige Standardpipelines zur Verfügung, darunter ein einfaches
Empfangs-/Sendepaar, das Sie zur Verarbeitung von Nachrichten, die bereits im XML-Format
vorliegen, verwenden können. Im Pipeline-Designer können Sie darüber hinaus
benutzerdefinierte Pipelines erstellen. Dieses Tool wird in Microsoft Visual Studio® .NET
ausgeführt und bietet eine grafische Benutzeroberfläche, auf der Sie durch Ziehen von
Komponenten Empfangs- und Sendepipelines mit dem gewünschten Verhalten erstellen
können.
15
Empfangspipelines
Die folgende Abbildung veranschaulicht die Stufen in einer Empfangspipeline und zeigt die
dafür zur Verfügung gestellten Standardkomponenten.
Dies sind die Stufen und die damit verbundenen Komponenten:



Decodieren. BizTalk Server 2004 stellt für diese Stufe eine Standardkomponente
bereit, den MIME/SMIME-Decoder. Diese Komponente ist in der Lage, Nachrichten
und alle darin enthaltenen Anlagen in den Formaten MIME oder Secure MIME
(S/MIME) zu bearbeiten. Die Komponente konvertiert beide Arten von Nachrichten in
das XML-Format und kann darüber hinaus S/MIME-Nachrichten entschlüsseln sowie
deren digitale Signaturen überprüfen.
Disassemblieren. In BizTalk Server 2004 stehen drei Standardkomponenten zur
Verfügung. Diese Komponenten sind:
 Flatfile-Disassembler. Wandelt Flatfiles in XML-Dokumente um. Diese
Dateien können entweder Felder fester Breite enthalten (jeder Datensatz hat
dieselbe Länge und Struktur) oder zeichengetrennte Datensätze (zur Trennung
von Datensätzen wird ein festgelegtes Zeichen verwendet).
 XML-Disassembler. Analysiert eingehende Nachrichten, die bereits im XMLFormat beschrieben sind.
 BizTalk Framework-Disassembler. Nimmt Nachrichten an, die über den
durch das BizTalk Framework definierten Reliable Messaging-Mechanismus
gesendet werden.
Überprüfen. BizTalk Server 2004 stellt für diese Stufe eine XMLBestätigungskomponente zur Verfügung. Wie der Name bereits vermuten lässt,
überprüft diese Komponente ein in der Disassemblierungsstufe generiertes XMLDokument und vergleicht es mit einem festgelegten Schema oder einer Gruppe von
Schemas. Falls das Dokument nicht einem dieser Schemas entspricht, wird ein Fehler
zurückgegeben.
16

Partei auflösen. Parteiauflösung ist die einzige Standardkomponente für diese Stufe.
Diese Komponente versucht, eine Identität für den Absender der Nachricht zu
bestimmen. Wurde die Nachricht mit einer digitalen Signatur versehen, verwendet die
Komponente diese Signatur und sucht in der BizTalk Server-Konfigurationsdatenbank
nach einer Windows-ID. Verfügt die Nachricht über die authentifizierte Sicherheits-ID
(SID) eines Windows-Benutzers, wird diese Identität verwendet. Falls beide Verfahren
erfolglos bleiben, wird dem Absender eine standardmäßige anonyme Identität
zugewiesen.
Sendepipelines
Ausgehende Nachrichten können ebenfalls mehrere von einer Sendepipeline definierte Stufen
durchlaufen. Die folgende Abbildung zeigt die Stufen und Standardkomponenten für eine
Sendepipeline.
Dies sind die Stufen und die damit verbundenen Komponenten:



Vorassemblieren. Es stehen keine Standardkomponenten zur Verfügung. Nach
Bedarf können hier benutzerdefinierte Komponenten eingefügt werden.
Assemblieren. Genau wie die Disassemblierungsstufe in einer Empfangspipeline
verfügt auch diese Stufe über drei Standardkomponenten:
 Flatfile-Assembler. Konvertiert eine XML-Nachricht in ein Flatfile mit
Feldern fester Breite bzw. eine zeichengetrennte Flatfile.
 XML-Assembler. Ermöglicht das Hinzufügen eines Umschlags sowie das
Vornehmen weiterer Änderungen an einer ausgehenden XML-Nachricht.
 BizTalk Framework-Assembler. Packt Nachrichten zur zuverlässigen
Übertragung mithilfe der BizTalk Framework-Messaging-Technologie.
Codieren. BizTalk Server 2004 stellt für diese Stufe eine Standardkomponente bereit,
den MIME/SMIME-Encoder. Diese Komponente packt ausgehende Nachrichten im
17
MIME- bzw. S/MIME-Format. Bei Verwendung von S/MIME kann die Nachricht
außerdem mit einer digitalen Signatur versehen und verschlüsselt werden.
Auswählen von Nachrichten: Abonnements
Nachdem eine Nachricht einen Adapter und eine Empfangspipeline passiert hat, muss vom
Geschäftsprozess bestimmt werden, wohin sie gesendet werden soll. Das Ziel einer Nachricht
ist in der Regel eine Orchestrierung; allerdings wird die Nachricht möglicherweise direkt an
eine Sendepipeline übermittelt, wobei das BizTalk Server 2004-Modul lediglich als
Messaging-System verwendet wird. In beiden Fällen werden Nachrichten mithilfe von
Abonnements ihren Zielorten zugeordnet.
Wenn eine Empfangspipeline eine Nachricht verarbeitet, erstellt sie einen
Nachrichtenkontext, der verschiedene Eigenschaften der Nachricht enthält. Orchestrierungen
oder Sendepipelines können Nachrichten, basierend auf den Werten dieser Eigenschaften,
abonnieren. Eine Orchestrierung kann beispielsweise ein Abonnement erstellen, das allen
Nachrichten des Typs "Rechnung" entspricht, oder allen von der Woodgrove Bank
eingesandten Nachrichten des Typs "Rechnung" oder allen von der Woodgrove Bank
eingesandten Nachrichten des Typs "Rechnung", deren Wert 10.000 Euro übersteigt.
Welche Festlegungen auch immer für ein Abonnement getroffen werden, es werden stets nur
die Nachrichten an den Abonnenten gesendet, die den definierten Kriterien entsprechen. Eine
empfangene Nachricht kann einen Geschäftsprozess initiieren, indem sie eine Orchestrierung
instanziiert. Sie könnte auch einen anderen Schritt in einem bereits laufenden
Geschäftsprozess aktivieren. Ähnlich gilt, dass eine von einer Orchestrierung gesendete
Nachricht einer Sendepipeline zugeordnet wird, basierend auf einem Abonnement, das von
dieser Sendepipeline eingerichtet wurde.
18
Definieren von Geschäftsprozessen
Das Austauschen von Nachrichten zwischen verschiedenen Anwendungen ist ein notwendiger
Bestandteil des Prozesses zur Lösung der Probleme, die mit BizTalk Server 2004 bewältigt
werden. Das eigentliche Ziel besteht jedoch darin, auf diesen Anwendungen basierende
Geschäftsprozesse zu definieren und auszuführen. Das BizTalk Server 2004-Modul stellt zu
diesem Zweck zwei Technologien zur Verfügung: die Orchestrierung und das
Geschäftsregelmodul. In diesem Abschnitt finden Sie Informationen über das Konzept dieser
beiden Technologien.
Orchestrierung
Einen Geschäftsprozess können Sie direkt in einer Sprache wie C# oder Microsoft Visual
Basic® .NET implementieren. Das Erstellen, Warten und Verwalten komplexer
Geschäftsprozesse in konventionellen Programmiersprachen kann jedoch eine schwierige
Aufgabe sein. Wie schon seine Vorgängerversionen ermöglicht es Ihnen BizTalk Server 2004,
Geschäftsprozesse grafisch zu erstellen. Dies ist möglicherweise weniger zeitaufwändig als
das direkte Erstellen des Prozesses in einer Programmiersprache. Außerdem wird es dadurch
leichter, den Prozess zu verstehen, zu erklären und zu verändern. Darüber hinaus ist es
einfacher, grafisch erstellte Geschäftsprozesse zu überwachen, was durch die BAMTechnologie (Business Activity Monitoring) ermöglicht wird.
Voraussetzung für das erfolgreiche Erstellen eines automatisierten Geschäftsprozesses ist in
der Regel die Zusammenarbeit zwischen technologieorientierten Entwicklern und
Geschäftsleuten. BizTalk Server 2004 stellt geeignete Tools für beide Gruppen zur
Verfügung. Die Developer Tools laufen unter Visual Studio .NET. Darüber hinaus bietet
BizTalk Server 2004 eine Untergruppe von Developer Tool-Funktionen im
Wirtschaftsanalytiker-Orchestrierungs-Designertool (Orchestration Designer for Business
Analysts, ODBA), einem Add-In für Microsoft Visio®. Im ODBA-Tool erstellte
Informationen können in die Visual Studio-basierten Tools importiert werden, und
umgekehrt. Nach Abschluss der Erstellung des Geschäftsprozesses, bezeichnet als
Orchestrierung, wird dieser automatisch in Standardassemblies transformiert, die auf dem
.NET Framework ausgeführt werden.
Hinweis In BizTalk Server 2000 und BizTalk Server 2002 wurden Orchestrierungen als
Zeitpläne bezeichnet.
Ein Entwickler setzt beim Erstellen einer Orchestrierung im Wesentlichen drei Tools ein:
BizTalk-Editor zum Erstellen von XML-Schemas, BizTalk-Mapper zum Definieren der
Konvertierungen zwischen diesen Schemas und den Orchestrierungs-Designer zum Festlegen
des Datenflusses des Geschäftsprozesses. Alle Developer Tools in BizTalk Server 2004 sind
in Visual Studio .NET gehostet, wodurch eine konsistente Umgebung gewährleistet wird. In
diesem Abschnitt wird beschrieben, welche Funktionen die einzelnen Tools haben und wie sie
zusammenarbeiten.
19
Erstellen von Schemas: BizTalk-Editor
Orchestrierungen arbeiten mit XML-Dokumenten, die jeweils einem XML-Schema
entsprechen. Zum Definieren dieser Schemas steht im BizTalk Server 2004-Modul der
BizTalk-Editor zur Verfügung. Dieses Tool ermöglicht Ihnen das Erstellen von Schemas
mithilfe von XSD, der Sprache zum Definieren von XML-Schemas. Diese Schemas
definieren die Datentypen und die Struktur der Informationen in einem Dokument. Die
Verwendung von Standard-XSD als ausschließliches Mittel zum Erstellen von Schemas ist
eine Neuerung in dieser Version. Da der endgültige W3C-Standard (Worldwide Web
Consortium, W3C) für XSD zum Zeitpunkt der Veröffentlichung früherer Produktversionen
noch nicht vorlag, wurde in Vorgängerversionen von BizTalk Server XDR (XML Data
Reduced) verwendet, eine Microsoft-spezifische Sprache zum Definieren von Schemas. Da
XSD inzwischen fertig gestellt wurde, greift BizTalk Server 2004 zur Beschreibung der
Struktur von XML-Dokumenten auf diesen Standard zurück.
Das Erstellen von XSD-Schemas ohne die Zuhilfenahme von Tools kann eine schwierige
Aufgabe sein. Zur Erleichterung dieses Vorgangs gibt Ihnen der BizTalk-Editor die
Möglichkeit, ein Schema durch das Definieren seiner Elemente in einer grafischen Hierarchie
zu erstellen. Sie können auch bereits vorhandene Schemas aus Dateien oder zugänglichen
Webdiensten importieren. Schemas bilden die Basis für BizTalk-Zuordnungen, die unter
Zuordnungen zwischen Schemas: BizTalk-Mapper beschrieben werden.
Zuordnungen zwischen Schemas: BizTalk-Mapper
Eine Orchestrierung, die einen Geschäftsprozess implementiert, empfängt normalerweise
manche Dokumente und sendet andere ab. Ein Teil der Informationen in den empfangenen
Dokumenten wird häufig – in möglicherweise transformierter Form – an die gesendeten
Dokumente übertragen. Ein Bestellungsausführungsprozess könnte zum Beispiel eine
Bestellung über eine bestimmte Anzahl von Artikeln erhalten und dann eine Bestätigung
zurücksenden zum Zeichen dafür, dass die Bestellung gesendet wurde. Informationen aus der
Bestellung, wie Name und Adresse des Käufers, würden in diesem Fall aus den Feldern in der
empfangenen Bestellung in die Felder in der Bestellbestätigung kopiert werden. In BizTalkMapper können Sie eine Transformation – eine Zuordnung – aus einem Dokument in das
andere definieren.
Sie erstellen eine Zuordnung durch Darstellung einer grafischen Korrelation zwischen zwei
XML-Schemas, die eine Beziehung zwischen Elementen in diesen Schemas definiert. Vom
Worldwide Web Consortium (W3C) wurde die Extensible Stylesheet Language
Transformation (XSLT) definiert, ein Internetstandard zur Darstellung dieser
Transformationen zwischen XML-Schemas. Zuordnungen werden in BizTalk Server 2004 als
XSLT-Transformationen implementiert.
Die in einer Zuordnung definierte Transformation kann einfach sein und zum Beispiel nur das
Kopieren eines Namens und einer Adresse von einem Dokument in ein anderes betreffen.
Eine direkte Datenkopie können Sie über eine Verknüpfung darstellen, die in BizTalk-Mapper
als Verbindungslinie gezeigt wird, die die entsprechenden Elemente im Quellschema mit
deren Gegenstücken im Zielschema verbindet. Mithilfe von Funktoiden lassen sich auch
komplexere Transformationen festlegen. Ein Funktoid ist ein Stück ausführbarer Code, der
beliebige komplexe Zuordnungen zwischen XML-Schemas definieren kann. Ein Funktoid
wird in BizTalk-Mapper als Kästchen auf der Verbindungslinie zwischen den transformierten
20
Elementen dargestellt. Da einige Transformationen recht gebräuchlich sind, stellt BizTalk
Server 2004 eine Reihe integrierter Funktoide zur Verfügung. Diese Funktoide werden in
zwei Gruppen eingeteilt und umfassen unter anderem die folgenden:





Mathematische Funktoide. Führen Operationen aus wie Addieren, Multiplizieren
und Dividieren der Werte in Feldern des Quelldokuments und Speichern des
Ergebnisses in einem Feld im Zieldokument.
Konvertierungsfunktoide. Konvertieren einen numerischen Wert in sein ASCIIÄquivalent und umgekehrt.
Logische Funktoide. Werden verwendet, um zu bestimmen, ob im Zieldokument ein
Element oder Attribut erstellt werden sollte, basierend auf einem logischen Vergleich
zwischen im Quelldokument festgelegten Werten.
Kumulative Funktoide. Berechnen Durchschnittswerte, Summen oder andere Werte
aus verschiedenen Feldern im Quelldokument und speichern das Ergebnis in einem
einzigen Feld im Zieldokument.
Datenbankfunktoide. Greifen auf in einer Datenbank gespeicherte Informationen zu.
Sie können auch benutzerdefinierte Funktoide direkt in XSLT erstellen oder dafür .NETSprachen wie C# und Visual Basic .NET verwenden. Funktoide können auch in Sequenzen
kombiniert werden, wobei die Ausgabe des einen die Eingabe des anderen überlappt.
Von entscheidender Bedeutung ist es, das XML-Schema eines Dokuments definieren zu
können und Informationen über Dokumente mit verschiedenen Schemas hinweg zuzuordnen.
Diese Aufgaben lassen sich mit BizTalk-Editor und BizTalk-Mapper ausführen. Des Weiteren
müssen Sie den Geschäftsprozess festlegen, der die Schemas verwenden und die
Zuordnungen aufrufen soll. Dieser Prozess wird unter Definieren von Geschäftsprozessen:
Orchestrierungs-Designer beschrieben.
Definieren von Geschäftsprozessen:
Orchestrierungs-Designer
Ein Geschäftsprozess ist eine Gruppe von Aktionen, die zusammen bestimmten
Geschäftsanforderungen gerecht werden. Das BizTalk Server 2004-Modul gibt Ihnen die
Möglichkeit, diese Aktionen mithilfe des Orchestrierungs-Designers grafisch zu definieren.
Anstatt die Schritte in einer Programmiersprache auszudrücken, können Sie mit diesem Tool
eine Orchestrierung erstellen, indem Sie eine Serie von Formen auf logische Weise
miteinander verbinden. Zu den am häufigsten verwendeten Formen gehören die folgenden:
Empfangen. Ermöglicht es der Orchestrierung, Nachrichten zu empfangen.
Senden. Ermöglicht es der Orchestrierung, Nachrichten zu senden.
Port. Definiert die Art und Weise der Nachrichtenübertragung.
Entscheidung. Stellt eine Wenn-Dann-Anweisung dar, die es der Orchestrierung ermöglicht,
verschiedene Aufgaben auf der Basis boolescher Bedingungen auszuführen.
Schleife. Ermöglicht das wiederholte Ausführen einer Aktion, während eine Bedingung wahr
ist.
21
Nachricht erstellen. Ermöglicht das Erstellen einer Nachricht.
Transformation. Ermöglicht die Übertragung von Informationen aus einem Dokument in ein
anderes. In diesem Prozess wird das Dokument durch das Aufrufen von in BizTalk-Mapper
definierten Zuordnungen transformiert.
Parallelaktionen. Ermöglicht es festzulegen, dass mehrere Vorgänge parallel statt in einer
Abfolge ausgeführt werden sollen.
Bereich. Ermöglicht das Gruppieren von Vorgängen in Transaktionen und das Definieren von
Ausnahmehandlern zur Fehlerbehandlung.
Nachrichtenzuweisung. Ermöglicht das Zuweisen von Werten zu Orchestrierungsvariablen.
Ebenso wie alle anderen von BizTalk Server 2004 zur Verfügung gestellten Developer Tools
wird der Orchestrierungs-Designer in Visual Studio .NET ausgeführt. BizTalk Server 2004
umfasst darüber hinaus den Wirtschaftsanalytiker-Orchestrierungs-Designer, ein Add-In für
Visio, mit dem es möglich ist, einen Geschäftsprozess zu definieren und anschließend in den
Orchestrierungs-Designer zu importieren. Dieses Add-In ist nützlich für technisch weniger
erfahrene Benutzer, die damit von der Möglichkeit profitieren können, Geschäftsprozesse
grafisch zu definieren.
Zusätzliche Unterstützung für Orchestrierungen
Nehmen wir an, zwei Unternehmen interagieren mithilfe von Webdiensten. Sie müssen
vermutlich über einige Informationen über die Geschäftsprozesse des jeweils anderen Partners
verfügen, um die Zusammenarbeit effektiv gestalten zu können. Wenn beide Unternehmen
mit BizTalk Server 2004 arbeiten, stehen ihnen Tools zur Weitergabe dieser Informationen
zur Verfügung. Verwendet jedoch ein Unternehmen BizTalk Server 2004 und das andere
arbeitet mit Software eines anderen Herstellers, müssen sie in der Lage sein, die Interaktionen
des Geschäftsprozesses in einer Weise zu beschreiben, die auch den Einsatz von Software
verschiedener Hersteller zulässt.
Zur Unterstützung dieser Art der Interaktion haben Microsoft, IBM und andere Unternehmen
die Business Process Execution Language (BPEL) entwickelt. Ein im OrchestrierungsDesigner definierter Geschäftsprozess kann in BPEL exportiert werden. Außerdem kann
BizTalk Server 2004 auch in BPEL definierte Prozesse importieren. BPEL basiert
ausschließlich auf Webdiensten, während BizTalk Server 2004 und andere Produkte, die diese
Sprache unterstützen, eine breitere Palette von Diensten anbieten. BizTalk Server 2004
unterstützt beispielsweise die Zuordnung zwischen verschiedenen XML-Schemas, das
Aufrufen von Methoden in lokalen Objekten, umfassenden Support für Transaktionen und
weitere Funktionen, die in BPEL nicht verfügbar sind.
BizTalk Server 2004 bietet integrierte Unterstützung für Webdienste. Zum Zugreifen auf
einen externen Webdienst kann der Ersteller einer Orchestrierung die Option Webverweis
hinzufügen in Visual Studio .NET zusammen mit dem SOAP-Adapter verwenden und so
direkt Vorgänge aufrufen, genau wie bei jeder anderen .NET-Assembly. Ebenso steht in
BizTalk Server 2004 der Assistent für BizTalk-Webdienstpublishing zur Verfügung, mit dem
ein ASP.NET-Webdienstprojekt generiert werden kann. Hierbei werden ein oder mehrere
Vorgänge einer Orchestrierung als SOAP-aufrufbare Webdienste zugänglich gemacht. Dank
22
dieser beiden Optionen können Entwickler aus einem Geschäftsprozess sowohl auf die
vorhandenen Webdienste zugreifen als auch die Funktionen einer Orchestrierung als
Webdienst anderen Geschäftsprozessen zugänglich machen.
Geschäftsregelmodul
Der Orchestrierungs-Designer bietet zusammen mit dem BizTalk-Editor und BizTalk-Mapper
eine effektive Methode zum Definieren eines Geschäftsprozesses und der von ihm
verwendeten Regeln. Im Laufe der Zeit können sich die in einer Orchestrierung festgelegten
Regeln jedoch ändern. Die in einen Geschäftsprozess eingebetteten Entscheidungen – die
Geschäftsregeln – sind in der Regel am häufigsten Veränderungen unterworfen. So kann sich
beispielsweise das Ausgabenlimit eines Managers ändern oder die maximal zulässige
Bestellmenge für einen Kunden. Es muss also eine Möglichkeit zum Definieren und Ändern
von Geschäftsregeln geben. Dazu steht in BizTalk Server 2004 das Geschäftsregelmodul zur
Verfügung, mit dem Sie Geschäftsregelgruppen direkt erstellen und verändern können. Diese
Regeln werden mithilfe eines Geschäftsregelersteller genannten Tools erstellt und
anschließend direkt vom Modul ausgeführt. Diese Technologie ist eine Neuerung in BizTalk
Server 2004.
Zum Ändern einer Geschäftsregel, die in einer Orchestrierung implementiert ist, können Sie
die Orchestrierung in Visual Studio .NET öffnen, die entsprechenden Formen verändern (und
vielleicht die davon aufgerufenen .NET- oder COM-Objekte) und anschließend die veränderte
Assembly erstellen und bereitstellen. Damit dieser Prozess ausgeführt werden kann, müssen
Sie außerdem die BizTalk Server 2004-Anwendung, die diese Orchestrierung verwendet,
anhalten und erneut starten. Falls die Geschäftsregel hingegen mithilfe des
Geschäftsregelmoduls implementiert wurde, kann sie ohne erneutes Kompilieren oder Starten
verändert werden. Sie müssen die gewünschte Regel lediglich mithilfe des
Geschäftsregelerstellers verändern und die neue Regelgruppe anschließend erneut
bereitstellen. Die Veränderungen werden sofort wirksam. Während Orchestrierungen
normalerweise von Entwicklern erstellt und gewartet werden, sind Geschäftsregeln in
ausreichendem Maße lesbar und können von Wirtschaftsanalytikern geändert werden, ohne
dass die Mitarbeit von Entwicklern notwendig wäre.
Zum Erstellen einer Geschäftsregelgruppe mithilfe des Geschäftsregelmoduls definieren Sie
im Geschäftsregelersteller zunächst ein Vokabular zur Festlegung der Regeln. Jeder Begriff
im Vokabular stellt eine benutzerfreundliche Bezeichnung für Informationen zur Verfügung.
Im Anschluss erstellen Sie im Geschäftsregelersteller Geschäftsprozesse, die das Vokabular
verwenden. Jeder Geschäftsprozess enthält eine oder mehrere Geschäftsregeln. Eine Regel
verwendet die im Vokabular definierten Begriffe sowie logische Operatoren.
Das Definieren eines Vokabulars und anschließend von Regelgruppen bildet das Kernkonzept
des Geschäftsregelmoduls. Damit soll allen BizTalk Server 2004-Benutzern eine einfache
Möglichkeit an die Hand gegeben werden, mit der sie Regeln erstellen können, die
Geschäftsprozesse definieren, und mit diesen Regeln arbeiten können.
23
Verwaltung und Überwachung
Alle auf dem BizTalk Server 2004-Modul basierenden Anwendungen müssen verwaltet
werden. Welche Konfigurationen sind möglich? Wie werden neue Anwendungen installiert?
Was passiert in diesem Moment im System? Dieser Abschnitt befasst sich mit den Tools, die
Aufschluss über diese Fragen geben können.
Erstellen skalierbarer Konfigurationen
Wenn die Anwendung, die BizTalk Server 2004 nutzt, nicht zu umfangreich ist, kann das
gesamte BizTalk Server 2004-Modul auf einem einzigen Computer installiert werden. In
vielen Fällen ist dies jedoch keine optimale Lösung. Die Anzahl der vom Modul zu
bearbeitenden Nachrichten könnte zum Beispiel für einen Computer zu hoch sein. Ebenso
wäre möglich, dass Redundanz erforderlich ist, um die Zuverlässigkeit des Systems zu
erhöhen. Damit solche und ähnliche Anforderungen erfüllt werden zu können, stehen Ihnen
zur Bereitstellung des BizTalk Server 2004-Moduls mehrere Möglichkeiten zur Verfügung.
Ein zentrales Konzept ist dabei die Bereitstellung mithilfe eines Hosts. Ein Host kann
verschiedene Elemente enthalten, darunter Orchestrierungen, Adapter und Pipelines. Hosts
sind lediglich logische Konstrukte; damit sie zum Einsatz kommen können, müssen
tatsächliche Hostinstanzen erstellt werden. Jede Hostinstanz ist ein Windows-Prozess, der
verschiedene Elemente enthalten kann, wie die folgende Abbildung zeigt.
In diesem Beispiel ist Folgendes zu beobachten:


Computer A führt zwei Hostinstanzen aus. Eine enthält einen Empfangsadapter und
eine Empfangspipeline, während die andere die Orchestrierungen P und Q enthält.
Computer B führt nur eine Hostinstanz aus, die ebenfalls die beiden Orchestrierungen
P und Q enthält.
24


Computer C führt wie Computer A zwei Hostinstanzen aus, doch keine davon enthält
eine Orchestrierung. Stattdessen enthält jede dieser Instanzen eine Sendepipeline und
einen Sendeadapter.
Auf Computer D befindet sich die MessageBox-Datenbank, die von allen
Hostinstanzen in dieser Konfiguration verwendet wird.
Dieses Beispiel veranschaulicht verschiedene Möglichkeiten für die Verwendung von Hosts.
Da die Computer A und B beide Hostinstanzen ausführen, die die Orchestrierungen P und Q
enthalten, kann BizTalk Server 2004 zum Beispiel diesen Orchestrierungen automatisch
Anforderungen zuweisen, basierend auf der Verfügbarkeit und aktuellen Auslastung jedes
Computers. Dadurch kann ein Geschäftsprozess nach Bedarf für High-Volume-Anwendungen
erweitert werden. Beachten Sie außerdem, dass mit Computer C zwei verschiedene
Möglichkeiten zur Bearbeitung ausgehender Nachrichten zur Verfügung stehen. Eine davon
kann auf einem BizTalk Server 2004-Standardadapter basieren, zum Beispiel dem HTTPAdapter. Bei der anderen könnte ein benutzerdefinierter Adapter zur Kommunikation mit
einer bestimmten Anwendung verwendet werden.
Das Zusammenfassen der Ausgabeverarbeitung auf einem einzigen Computer kann in einigen
Situationen durchaus sinnvoll sein. Und da die Hostinstanzen von jeder zweiten Hostinstanz
isoliert sind – es handelt sich um verschiedene Prozesse –, ist es sicherer, nicht absolut
vertrauenswürdigen Code wie zum Beispiel einen neuen benutzerdefinierten Adapter in einer
separaten Instanz auszuführen. Obgleich dieses Beispiel nur eine einzige Instanz der
MessageBox-Datenbank enthält, können Sie die Datenbanken außerdem replizieren oder
clustern, um die Schaffung eines Single Point of Failure (SPoF) zu vermeiden.
Verwalten von Anwendungen
Das BizTalk Server 2004-Modul stellt eine ganze Reihe von Diensten zur Verfügung. Zur
Verwaltung dieser Umgebung werden verschiedene Tools verwendet. Das wichtigste Tool ist
die BizTalk-Verwaltungskonsole, ein MMC-Snap-In (Microsoft Management Console). Mit
diesem Tool können Sie Hosts erstellen, Hosts Computern zuweisen, Orchestrierungen starten
und anhalten sowie zahlreiche weitere Verwaltungsaufgaben ausführen. Des Weiteren können
Sie über die Windows-Verwaltungsinstrumentation (Windows Management Instrumentation,
WMI) programmgesteuert auf die Funktionen der Verwaltungskonsole zugreifen. Dadurch ist
es möglich, Skripte zur Automatisierung von Verwaltungsfunktionen zu erstellen.
Für spezielle Zwecke stehen darüber hinaus weitere Verwaltungstools zur Verfügung.
Mithilfe des BizTalk-Bereitstellungs-Assistenten können Sie beispielsweise Assemblies für
Computer bereitstellen, und die Abonnementanzeige können Sie zur Überprüfung der
Abonnements im BizTalk Server 2004-Modul verwenden. Diese Tools nutzen ebenso wie die
BizTalk-Verwaltungskonsole eine gemeinsame Datenbank zur Speicherung der Daten, mit
denen sie arbeiten.
Der BizTalk-Explorer ist ein weiteres wichtiges Tool für die Arbeit mit BizTalk Server 2004Anwendungen; hierbei handelt es sich um eine Neuerung in BizTalk Server 2004. Der
BizTalk-Explorer ermöglicht die Einrichtung von Zuordnungen zwischen der logischen
Ansicht einer Orchestrierung und den spezifischen physikalischen Details, die für das
Funktionieren der Orchestrierung erforderlich sind. Der BizTalk-Explorer außerdem für die
Arbeit mit Partnern hilfreich, da er es Ihnen ermöglicht, eine einzige
Anwendungskonfiguration zu erstellen und diese Konfiguration dann für jeden Partner
unterschiedlich bereitzustellen. Da er die Dienste über ein .NET-basiertes Objektmodell und
25
gleichzeitig über eine grafische Benutzeroberfläche zugänglich macht, können Sie Skripte
zum Konfigurieren von Anwendungen programmgesteuert erstellen.
Überwachen von Anwendungen: System- und
Aktivitätsüberwachung
BizTalk Server 2004-Anwendungen führen zahlreiche Aufgaben aus: u. A. Senden und
Empfangen von Nachrichten, Verarbeiten von Nachrichten in Orchestrierungen,
Kommunizieren mit diversen Anwendungen über verschiedene Protokolle. Es ist äußerst
wichtig, den Überblick über alle Vorgänge zu behalten, insbesondere dann, wenn Fehler
auftreten. Dazu müssen Sie in der Lage sein, in laufende Anwendungen hineinzuschauen und
die Systemaktivität zu überwachen. Dies wird durch die Komponente zur System- und
Aktivitätsüberwachung (Health and Activity Tracking, HAT) in BizTalk Server 2004
ermöglicht.
Das HAT-Tool bietet grafischen Zugang zu ausführlichen Informationen zum Beispiel
darüber, wann eine Orchestrierung beginnt und endet, wann die Formen darin ausgeführt und
die einzelnen Nachrichten gesendet und empfangen werden, was die Nachrichten enthalten
und vieles mehr. Sie können Haltepunkte festlegen und sich damit die Möglichkeit sichern,
die Orchestrierung an vorbestimmten Stellen anzuhalten und zu prüfen.
Mit dem HAT-Tool können Sie außerdem archivierte Daten untersuchen und nach Mustern
und Trends in der Ausführung eines Geschäftsprozesses suchen. Diese Informationen sind
nützlich für das Debuggen, die Beantwortung von Geschäftsfragen (zum Beispiel die
Überprüfung, ob eine Nachricht tatsächlich an einen Kunden gesendet wurde) und das Führen
fortlaufender Statistiken, die zur Leistungsverbesserung genutzt werden können.
Einmaliges Anmelden für Unternehmen (SSO)
Ein Geschäftsprozess, der auf mehreren verschiedenen Anwendungen basiert, wird vermutlich
mit mehreren verschiedenen Sicherheitsdomänen konfrontiert. Für den Zugriff auf eine
Anwendung unter Windows werden zum Beispiel bestimmte
Sicherheitsanmeldeinformationen benötigt, während der Zugang zu einer Anwendung auf
einem IBM-Mainframe andere Anmeldeinformationen erfordert. Zum Lösen dieses Problems
stellt BizTalk Server 2004 die Funktion des einmaligen Anmeldens für Unternehmen
(Enterprise Single Sign-On, SSO) zur Verfügung.
Mit dieser Funktion ist es möglich, die ID eines Windows-Benutzers Anmeldeinformationen
für Nicht-Windows-Benutzer zuzuordnen. Dadurch kann die Situation für Geschäftsprozesse,
die Anwendungen auf verschiedenen Systemen verwenden, vereinfacht werden.
Zum Verwenden von SSO definieren Sie Partneranwendungen, die jeweils ein NichtWindows-System oder eine solche Anwendung repräsentieren. Eine Partneranwendung
könnte eine CICS-Anwendung sein, die auf einem IBM-Mainframe läuft, ein SAP ERPSystem unter Unix oder jede andere Art von Software. Jede dieser Anwendungen verfügt über
ihren eigenen Mechanismus zur Authentifizierung und erfordert daher ihre eigenen,
besonderen Anmeldeinformationen.
26
SSO verwendet eine Anmeldeinformationen-Datenbank zur Speicherung verschlüsselter
Zuordnungen zwischen Benutzer-IDs von Windows-Benutzern und ihren
Anmeldeinformationen für eine oder mehrere Partneranwendungen. Wenn ein Benutzer auf
eine Partneranwendung zugreifen muss, kann ein SSO-Server die Anmeldeinformationen des
Benutzers für diese Anwendung in der Anmeldeinformationen-Datenbank überprüfen. Die
folgende Abbildung zeigt, wie dieser Prozess abläuft.
In diesem Beispiel wird eine von einer Anwendung an BizTalk Server 2004 gesendete
Nachricht von einer Orchestrierung verarbeitet und dann an eine Partneranwendung gesendet,
die auf einem IBM-Mainframe läuft. SSO stellt sicher, dass die richtigen
Anmeldeinformationen (z. B. der richtige Benutzername und das korrekte Kennwort) mit der
Nachricht gesendet werden, wenn diese an die Partneranwendung weitergegeben wird.
Die Abbildung veranschaulicht einen Prozess in fünf Schritten:
1. Wenn ein Empfangsadapter eine Nachricht erhält, kann der Adapter vom SSO-Server
A ein SSO-Ticket anfordern. Dieses verschlüsselte Ticket enthält die Windows-ID des
Benutzers, der die Anforderung gestellt hat, sowie einen Timeoutzeitraum. Nach dem
Abrufen wird das SSO-Ticket der eingehenden Nachricht als Eigenschaft hinzugefügt.
Die Nachricht nimmt dann den üblichen Weg durch das BizTalk Server 2004-Modul,
was in diesem Beispiel die Bearbeitung durch eine Orchestrierung bedeutet. Wenn
diese Orchestrierung eine ausgehende Nachricht generiert, enthält diese Nachricht
auch das zuvor abgerufene SSO-Ticket.
2. Die neue Nachricht soll an die auf einem IBM-Mainframe laufende Anwendung
übermittelt werden und muss daher die richtigen Anmeldeinformationen enthalten,
damit dieser Benutzer auf die Anwendung zugreifen kann. Zum Erhalten dieser
27
Anmeldeinformationen nimmt der Sendeadapter Verbindung mit SSO-Server B auf
und übermittelt die Nachricht (die das SSO-Ticket enthält), die er soeben erhalten hat,
sowie den Namen der Partneranwendung, für die die Anmeldeinformationen
abgerufen werden sollen.
3. Dieser Vorgang, genannt Redemption, veranlasst SSO-Server B, zunächst das SSOTicket und anschließend die Anmeldeinformationen des Benutzers für die
Partneranwendung zu überprüfen.
4. SSO-Server B gibt diese Anmeldeinformationen an den Sendeadapter zurück.
5. Der Sendeadapter sendet unter Verwendung der Anmeldeinformationen eine
entsprechend authentifizierte Nachricht an die Partneranwendung.
Dieses Beispiel zeigt, wie die SSO-Funktion üblicherweise eingesetzt wird. Es gibt jedoch
mehrere Optionen. Eine kleinere BizTalk Server 2004-Installation verfügt möglicherweise nur
über einen SSO-Server.
SSO umfasst darüber hinaus Verwaltungstools zum Ausführen diverser Vorgänge. Dazu
gehören die folgenden:



Überwachen von Vorgängen in der Anmeldeinformationen-Datenbank und Festlegen
verschiedener Überwachungsebenen
Deaktivieren einer bestimmten Partneranwendung
Ein- und Ausschalten einer individuellen Zuordnung für einen Benutzer
Außerdem gibt es ein Clientdienstprogramm, das es Endbenutzern ermöglicht, ihre eigenen
Anmeldeinformationen und Zuordnungen zu konfigurieren.
Wie andere Teile von BizTalk Server 2004 macht SSO seine Dienste über eine
programmierbare API verfügbar. Die Ersteller von BizTalk Server-Adaptern von Drittfirmen
greifen über diese Schnittstelle auf die SSO-Dienste zu. Sie können sie außerdem zum
Erstellen von Skripten zur Automatisierung allgemeiner Aufgaben verwenden.
Technologien für Information Worker
Mit dem Modul von Microsoft® BizTalk® Server 2004 lassen sich auf effektive Weise
Geschäftsprozesse erstellen, die mehrere Anwendungen umfassen. Nach der Erstellung dieser
Prozesse haben die Information Worker, die mit ihnen arbeiten (und Geschäftsleute sind,
keine Entwickler), jedoch andere Anforderungen. So müssen möglicherweise verschiedene
geschäftsrelevante Aspekte der Aktivität überwacht oder interaktive Prozesse erstellt werden,
damit Personen bei Bedarf eingreifen können. Im Gegensatz zu früheren Versionen von
BizTalk Server stellt BizTalk Server 2004 verschiedene Komponenten zur Verfügung, die
diesen Anforderungen gerecht werden. Diese Komponenten sind in zwei Kategorien
zusammengefasst: Geschäftsaktivitätsdienste (Business Activity Services, BAS) und
Interaktive Workflowdienste (Human Workflow Services, HWS). In diesem Abschnitt
werden beide Kategorien beschrieben.
28
Geschäftsaktivitätsdienste
Information Worker können bei der Arbeit in einem laufenden Geschäftsprozess verschiedene
Anliegen verfolgen. Ein Vertriebsleiter kann zum Beispiel die Umsatzentwicklung prüfen
oder andere Aspekte eines Geschäftsprozesses in Echtzeit untersuchen. Ein
Wirtschaftsanalytiker hingegen möchte möglicherweise eine Beziehung zu einem neuen
Handelspartner erstellen und im Zuge dessen die Rolle des Partners, die
Geschäftsvereinbarung zwischen beiden Unternehmen sowie weitere Aspekte dieser neuen
Verbindung definieren. In BizTalk Server 2004 werden diese Funktionen durch die
Geschäftsaktivitätsdienste (BAS) zur Verfügung gestellt. Mit diesen Diensten lassen sich die
Abläufe in Geschäftsprozessen leichter verfolgen. Auf diese Weise ermöglichen es diese
Dienste auch weniger technisch orientierten Personen, die Umgebungen effektiv zu
überwachen.
Die folgende Abbildung zeigt, wie eine all diesen Diensten gemeinsame Benutzeroberfläche
durch Windows® SharePoint™ Services, Internet Explorer, Microsoft Excel, und Microsoft
Office InfoPath™ zur Verfügung gestellt wird.
Da die Geschäftsaktivitätsdienste für Geschäftsleute und nicht für Entwickler bestimmt sind,
ist es sinnvoll, sie durch diese vertrauten Tools zugänglich zu machen. Hinter dieser
gemeinsamen Benutzeroberfläche verbergen sich vier verschiedene Softwarekomponenten,
die alle mit Internet Explorer, Windows SharePoint Services, Excel und InfoPath über SOAP
kommunizieren können. In diesem Abschnitt werden die vier einzelnen Komponenten
beschrieben.
29
Handelspartnerverwaltung
BizTalk Server 2004 wird häufig zum Verbinden von Handelspartnern eingesetzt. Der Aufbau
der Verbindungen erfordert eine Einigung in verschiedenen Fragen. Dazu gehören das zu
verwendende Kommunikationsprotokoll, das Format der ausgetauschten Nachrichten sowie
der der Interaktion zugrunde liegende Geschäftsprozess. Die Verwaltung dieser
Handelspartnerbeziehungen kann ein komplexer Vorgang sein.
Damit Information Worker diese allgemeinen Aufgaben ausführen können, umfassen die
BizTalk Server 2004-Geschäftsaktivitätsdienste (Business Activity Services, BAS) eine
Komponente für die Handelspartnerverwaltung (Trading Partner Management, TPM). Diese
Komponente basiert auf einer TPM-Datenbank, in der Informationen zu den
Handelsbeziehungen gespeichert sind. Über die BAS-Benutzeroberfläche können Information
Worker Vereinbarungen mit Handelspartnern, die mit BizTalk Server 2004 arbeiten, erstellen
und verändern. Jede Vereinbarung beschreibt die Beziehungen zwischen zwei Partnern und
enthält beispielsweise folgende Informationen:



Ein Profil beider Partner. Jedes Profil enthält Geschäftsinformationen über das
Unternehmen, wie zum Beispiel Ansprechpartner und Adresse, aber auch technische
Angaben, beispielsweise zum Protokoll (und dem BizTalk Server 2004-Adapter), das
zur Kommunikation mit diesem Partner verwendet werden sollte.
Den Geschäftsprozess selbst, implementiert in Form einer oder mehrerer
Orchestrierungen, zusammen mit Angaben zur Rolle der einzelnen Partner. Das eine
Unternehmen könnte zum Beispiel als Verkäufer agieren und das andere als Käufer.
Einen Nachtrag mit Parametern für den Geschäftsprozess, die das Verhalten der
Orchestrierung bei der Implementierung steuern. Im nächsten Abschnitt wird
beschrieben, wie diese Parameter verwendet werden.
Profile, Vereinbarungen und Nachträge sind in der TPM-Datenbank gespeichert. Ein
Information Worker kann all diese Elemente mithilfe der TPM-Komponente (bei Nachträgen
mithilfe der Komponente zur Geschäftsprozesskonfiguration, die als Nächstes beschrieben
wird) direkt konfigurieren. Auf diese Weise können Geschäftsleute neue Partnerbeziehungen
aufbauen und verändern, ohne auf Entwickler angewiesen zu sein.
Geschäftsprozesskonfiguration
Obwohl Orchestrierungen für gewöhnlich von Entwicklern erstellt werden, können
Information Worker mithilfe der Komponente zur Geschäftsprozesskonfiguration in BizTalk
Server 2004 Parameter der Orchestrierungen einrichten. Damit Information Worker die
Möglichkeit erhalten, eine Orchestrierung zu konfigurieren, kann der Entwickler für diese
Orchestrierung entsprechende Parameter definieren. Information Worker können diese
Parameter dann nach Bedarf einrichten, indem er beispielsweise für verschiedene
Geschäftspartner oder verschiedene Teile des Unternehmens unterschiedliche Werte zuweist.
Information Worker richten Parameter für einen Partner ein, indem sie dessen Werte in einem
Nachtrag zur Partnervereinbarung vorgeben. Falls eine Vereinbarung auf mehrere
Orchestrierungen verweist, können mehrere Nachträge erstellt werden, nämlich für jede
Orchestrierung eine. Da Parameter nur über Nachträge festgelegt werden können, ist die
Komponente zur Geschäftsprozesskonfiguration an den TPM-Dienst gebunden, der unter
Handelspartnerverwaltung beschrieben wird.
30
Geschäftsprozessbereitstellung
Wenn mehrere Unternehmen an einem auf der Grundlage von BizTalk Server 2004 erstellten
Geschäftsprozess teilnehmen, kann die richtige Konfiguration aller Teilnehmer eine
zeitaufwändige Aufgabe sein. In einer typischen B2B-Topologie findet zum Beispiel eine
Hub-and-Spoke-Konfiguration Anwendung, wo ein (häufig großes) Unternehmen
Verbindungen zu zahlreichen verschiedenen Lieferanten aufbaut. Das Hub-Unternehmen
definiert meist den Geschäftsprozess und übermittelt diesen Prozess dann an die Spokes
(Geschäftspartner) zur Implementierung ihrer Bestandteile. Ähnliches kann innerhalb eines
Einzelunternehmens ablaufen, wo eine Gruppe die Einbeziehung anderer in einen allgemeinen
internen Prozess wünscht. In diesen Fällen ist es von Vorteil, auf eine einfache Methode zur
Konfiguration der beteiligten Systeme zurückgreifen zu können – ein Vorgang, der häufig
Bereitstellung genannt wird.
Die vierte Komponente der BizTalk Server 2004-Geschäftsaktivitätsdienste, die
Geschäftsprozessbereitstellung, wird dieser Aufgabe gerecht. Information Worker können
diese Komponente nutzen, um die von anderen Teilnehmern in einem Geschäftsprozess
benötigten Informationen in ein SEED-Paket zu packen. Anschließend kann das SEED-Paket
für andere BizTalk Server 2004-Systeme bereitgestellt werden und diese schnell mit den
nötigen Informationen versorgen.
Ein von einem Hubsystem erstelltes SEED-Paket kann eine ganze Palette von Elementen
enthalten, z. B. .NET-Assemblies für die Orchestrierungen, die einen Geschäftsprozess
implementieren, sowie ein Profil für das System, das dieses Paket generiert. Nachdem ein
Spokesystem ein SEED-Paket empfangen hat, kann der Administrator das Paket bereitstellen
und anschließend ein SEED-Paket zurücksenden, das das Profil des Spoke sowie weitere
Informationen enthält, die zur erfolgreichen Interaktion mit dem Hub erforderlich sind.
Mithilfe der Komponente zur Geschäftsprozessbereitstellung der Geschäftsaktivitätsdienste
können Information Worker SEED-Pakete erstellen.
Framework für Geschäftsaktivitätsüberwachung
Information Worker verfolgen bei der Arbeit mit einem Geschäftsprozess verschiedene
Anliegen. Ein Einkaufsleiter könnte beispielsweise Informationen über die Anzahl der
bestätigten bzw. abgelehnten Bestellungen pro Tag benötigen, während ein Vertriebsleiter
vielleicht ein stündliches Update über die bestellten Produkte wünscht. Zur Erfüllung dieser
verschiedenen Ansprüche ist ein allgemeines Framework zur Überwachung der Abläufe
innerhalb eines bestimmten Geschäftsprozesses erforderlich. Das Framework für die
Geschäftsaktivitätsüberwachung (Business Activity Monitoring, BAM) wird genau diesen
Ansprüchen gerecht.
Ein Information Worker greift zum Arbeiten mit BAM über den Internet Explorer auf die
Windows SharePoint Services-basierte Standardbenutzeroberfläche zu. Der Information
Worker kann einen bestimmten Geschäftsprozess auswählen und den Prozess dann über eine
spezielle BAM-Ansicht einsehen. In jeder Ansicht kann er den Geschäftsprozess aus einer
anderen Perspektive betrachten. Eine BAM-Ansicht könnte beispielsweise grafische
Darstellungen des Verkaufstrends für die einzelnen Produkte enthalten, Aufschluss über den
aktuellen Bestand geben oder andere wichtige Leistungsindikatoren aufzeigen. Die Daten in
diesen Ansichten können täglich, stündlich oder sogar noch häufiger aktualisiert werden.
31
Jede BAM-Ansicht basiert auf mindestens einer BAM-Aktivität. Eine BAM-Aktivität stellt
einen bestimmten Geschäftsprozess dar, z. B. die Bearbeitung von Bestellungen oder die
Auslieferung eines Produkts. Jede Aktivität verfügt über einen definierten Satz von
Meilensteinen und Geschäftsdaten. Eine Bestellungsaktivität kann beispielsweise neben
Geschäftsdaten wie dem Kundennamen und dem Produkt Meilensteine wie "Genehmigt",
"Abgelehnt" und "Geliefert" enthalten.
Sowohl BAM-Aktivitäten als auch BAM-Ansichten werden von Information Workern – nicht
von Entwicklern – erstellt. Der BAM-Aktivitäts-Assistent ermöglicht das Definieren der
Aktivitäten, und mit dem BAM-Ansichts-Assistenten werden die Ansichten auf der Basis
dieser Aktivitäten definiert. (BAM-Ansichten werden in Excel implementiert; der BAMAnsichts-Assistent unterstützt den Information Worker beim Erstellen einer StandardPivottabelle in Excel, indem er die Informationen aus einer oder mehreren BAM-Aktivitäten
nutzt.) Eine BAM-Ansicht kann komplex sein. Ihr Ersteller kann außerdem festlegen, welche
Benutzer das Recht auf Ansicht der zugänglich gemachten Daten haben sollen. Information
Worker können BAM-Ansichten nach der Erstellung auch verändern.
Der Überwachungsprofil-Editor ist ein Tool, mit dem Entwickler Orchestrierungen
konfigurieren können, so dass die für BAM-Aktivitäten und BAM-Ansichten erforderlichen
Informationen zur Verfügung gestellt werden.
Interaktive Workflowdienste
Das BizTalk Server 2004-Modul ermöglicht Ihnen die Verbindung von Anwendungen zur
Ausführung eines Geschäftsprozesses. Zahlreiche Prozesse – beispielsweise die Verarbeitung
einer Bestellung oder die Reaktion auf eine Ausschreibung – erfordern das Eingreifen von
Personen. Interaktive Geschäftsprozesse dieser Art werden im Allgemeinen als "Workflow"
bezeichnet. BizTalk Server 2004 hilft bei der Automatisierung des Workflows. Damit
Personen mit einem Workflowprozess interagieren und diesen steuern können, ist jedoch noch
mehr erforderlich.
Interaktive Workflowdienste (Human Workflow Services, HWS) sind ein Standardbestandteil
von BizTalk Server 2004. Durch HWS wird eine Workflowinfrastruktur auf der Basis des
BizTalk Server 2004-Moduls zur Verfügung gestellt. Der Zugriff auf die HWS-Infrastruktur
erfolgt über die Webdienste; damit steht sie allen Clientanwendungen zur Verfügung. Die
Anwendungen in Microsoft Office gehören zu den wichtigsten Clients, die HWS benutzen.
Viele Information Worker arbeiten mit Microsoft Word, Microsoft Outlook®, Microsoft
Excel und Microsoft Office InfoPath™. Daher ist es sinnvoll, diese vertrauten Tools als
Umgebung zu nutzen, von der aus Personen an Workflows teilnehmen.
Die folgende Abbildung zeigt die grundlegende Struktur der interaktiven Workflowdienste.
Die Technologie basiert auf dem BizTalk Server 2004-Modul und einer
Verwaltungsdatenbank sowie auf der Überwachungsdatenbank, in der Informationen über die
verschiedenen Aktionen gespeichert sind, aus denen der Workflow sich zusammensetzt. Die
gebräuchlichsten Clients sind vermutlich Outlook und Word sowie benutzerdefinierte
Formulare, die mithilfe von InfoPath erstellt werden. Dieser Teil von BizTalk Server 2004
kann außerdem von ASP.NET-Anwendungen verwendet werden sowie weiteren
Anwendungen, die auf Standard-Webdienste zugreifen können. Für Clients, die auf dem .NET
Framework basieren, stellt HWS eine Bibliothek zur Verfügung, über die alle Webdienste als
.NET-basierte Objekte zugänglich gemacht werden. Anwendungen werden mithilfe der HWS32
Verwaltungskonsole, eines MMC-Snap-Ins, verwaltet (in der Abbildung wird dies nicht
gezeigt).
Zur Unterstützung dieser allgemeinen Vorgehensweise bei Workflowanwendungen werden
von HWS einige grundlegende Abstraktionen definiert, die auf dem BizTalk Server 2004Modul basieren. Jeder Workflow setzt sich aus einem oder mehreren Bausteinen zusammen,
die Aktionen genannt werden. Jede dieser Aktionen ist als Orchestrierung implementiert. Ein
Workflow für die Reaktion auf eine Ausschreibung kann zum Beispiel Aktionen wie
Überprüfen, Genehmigen, Delegieren und Eskalieren enthalten. Genau wie alle anderen
Orchestrierungen werden auch die mit HWS verwendeten mithilfe des OrchestrierungsDesigners erstellt. Für jede HWS-Orchestrierung gibt es eine bestimmte Anzahl von
Standardverhaltensmustern sowie ein beliebig festgelegtes benutzerdefiniertes Verhalten, das
vom Entwickler der Anwendung erstellt wird.
Die Aktionen in einem Workflow treten in einer festgelegten Reihenfolge auf, die als
Arbeitsablauf bezeichnet wird. Jeder Arbeitsablauf verfügt über ein Aktivitätsmodell, das die
Aktionen in einer bestimmten Reihenfolge aufzeichnet und es der Person, die den
Arbeitsablauf gestaltet, ermöglicht, dem Workflow eine Struktur zu verleihen. Die Benutzer
einer HWS-Anwendung werden Akteure genannt. Die Kommunikation zwischen Akteuren
und Aktionen erfolgt über Tasks, die XML-definierte Nachrichten sind. Mit jeder Aktion sind
eine oder mehrere Tasks verbunden. Wenn ein Akteur in einer Office-Anwendung auf eine
Schaltfläche klickt, die in einem Workflow eine Aufgabe ausführt, sendet dieser Akteur eine
bestimmte Tasknachricht an eine Aktion (das heißt an eine Orchestrierung).
Von einer HWS-Anwendung können darüber hinaus auch Einschränkungen auferlegt werden,
basierend auf den Rollen der Personen, die diese Anwendung verwenden. Eine Anwendung
kann zum Beispiel die Genehmigung von Aufträgen, deren Wert eine Million Euros
überschreitet, ausschließlich Managern vorbehalten. In ähnlicher Weise kann das Recht zum
Delegieren von Tasks nur Vizepräsidenten eingeräumt werden. Dazu kann der Ersteller einer
Workflowanwendung Einschränkungen definieren, die auf den in Active Directory®, in einer
Datenbank von Microsoft SQL Server™ oder anderweitig festgelegten Rollen basieren.
33
Die Erstellung von HWS-Anwendungen muss von Entwicklern vorgenommen werden. Nach
Abschluss der Erstellung können Information Worker die Anwendungen jedoch nutzen, um
zum Beispiel Workflows zu erstellen, dem Arbeitsablauf neue Aktionen hinzuzufügen oder
bereits vorhandene zu unterbrechen. Zusätzlich zur Verbindungssoftware enthält BizTalk
Server 2004 nun interaktive Workflowdienste, die Personen die direkte Teilnahme am
Geschäftsprozess ermöglichen.
34
Glossar (ausgewählte Begriffe)
B2B
BAM
BAS
Basis EDI
BPEL
COM
DTD
EAI
EDIFACT
ERP
FTP
HAT
HTTP
HWS
MIME
MSMQ /T
SMIME
SMTP
SOAP
SQL
SSO
URL
XML
Business-to- Business
Business Activity Monitoring
Business Activity Services
Basis electronic data interchange
Business Process Execution Language
component object model
document type definition
Enterprise Application Integration
electronic data interchange for administration, commerce and
transportation
Enterprise resource planning
File Transport Protocol
health and activity tracking
Hypertext Transport Protocol
Human Workflow Services
multipurpose internet mail extension
microsoft message queuing
secure MIME
simple mail transport protocol
Simple Object Access Protocol
structured query language
single sign on
Uniform Resource Locator
Extensible Markup Language
Quellen
www.microsoft.de
Hilfe des MS BizTalk Server 2004
Microsoft TechNet
Lexikon der Informatik (2004)
XML – WebBook (2001)
www.aseantic.com
Die Informationen aus Kapitel II – Eigenschaften wurden aus dem Microsoft TechNetTeil über den Microsoft BizTalk Server 2004 entnommen und sind mit Absicht nicht
komplett, da dieses Skript lediglich einen Überblick liefern soll und nicht alle Informationen
relevant für diese Ausarbeitung waren.
Das gesamte Kapitel III – BizTalk Server 2004 wurde aus der Hilfe des Microsoft
BizTalk Server 2004 übernommen, da so die Zusammenhänge besser und deutlicher
erkennbar sind, als eine Umschreibung der Quelle der Hilfe. Lediglich die Formen wurden
dem gesamten Dokument angepasst.
35
Herunterladen