I. BizTalk Server 2004▲
BizTalk est un serveur qui permet de connecter les applications, les employés et les partenaires à travers les processus. Ainsi les développeurs ont des interfaces standards de développement, les informaticiens ou encore IT pros ont à leur disposition des liens directs vers les systèmes. Avec BizTalk Server, Microsoft a introduit les concepts de l'automation, de la gestion, et de l'orchestration de processus dans les entreprises. Avec la version 2004 de BizTalk, Microsoft fournit les avantages du design, du développement, de la gestion, et de la surveillance des processus métier. Biztalk est le chef d'orchestre de tout processus d'intégration d'applications, il est capable de récupérer des données sous n'importe quel format et de les transformer pour les rendre accessibles aux différentes plateformes. Son interface graphique permet de 'dessiner' les processus de transformation des données.
II. BizTalk Server 2004 Architecture▲
Il est important de distinguer dans BizTalk deux principales composantes : le moteur principal et les services destinés aux équipes métier.
II-A. Le moteur BizTalk▲
Le serveur 2004 de BizTalk comprend un système de gestion de projet, c'est un environnement qui permet de concevoir, organiser, et établir les divers éléments des applications de BizTalk. Ce système de gestion de projet appelé BizTalk Poject System introduit le concept de single cohesive application. BizTalk Project system est intégré à Visual Studio .Net 2003 et vous fournit un environnement de conception intégrée. Il est l'un des nombreux systèmes de projets disponibles dans Visual Studio .Net 2003, et vous pouvez utiliser plusieurs des outils standards, comme les éditeurs et autres interfaces utilisateur disponibles. Par exemple, vous pouvez employer l'explorateur de solution pour développer des projets BizTalk et la fenêtre de propriétés pour voir et éditer des propriétés des dossiers, des projets, et des solutions. Quand vous créez un projet BizTalk, vous incluez généralement un ou plusieurs des types de fichiers suivants : orchestrations, schémas, maps et pipelines. Ceux-ci jouent des rôles bien spécifiques dans la création de votre solution, et le BizTalk Project system vous fournit un outil de conception graphique correspondant pour chacun d'eux.
Les Orchestrations modélisent les processus métier et le concepteur d'Orchestration simplifie le processus de création des orchestrations. Les schémas décrivent les données que vous envoyez et recevez. BizTalk Editor simplifie le processus de création des schémas. Les schémas sont employés pour décrire le format des données qui sont traitées dans des entreprises et entre les partenaires commerciaux.
Les maps transforment les données d'un format à l'autre. Le mappeur de BizTalk présente des schémas sources et des schémas cibles côte à côte et vous permet de définir des transformations entre les éléments d'informations de différents messages.
Les pipelines exécutent une variété d'opérations pour diffuser ou recevoir les messages. Le Pipeline Designer vous permet de préparer les messages entrants ou sortants en mettant en application des opérations telles que le chiffrage et le déchiffrage, compression, restructurant, et validation. Le projet ci-après présente un projet BizTalk
Afin de permettre à ses utilisateurs de créer un processus métier qui s'étend sur de multiples applications, le moteur de BizTalk Server 2004 propose deux éléments principaux : les moyens de spécifications et les mécanismes de communications. Le schéma ci-dessous montre les principaux composants du moteur de BizTalk Server 2004.
Je laisse le soin à David Chappell de vous expliquer ce schéma. « Comme le montre le schéma, un message est reçu via un adaptateur de réception. Différents adaptateurs correspondent à différents mécanismes de communication et ainsi, un message peut être reçu en accédant à un service Web, en lisant un fichier ou en utilisant un autre moyen. Le message est ensuite traité via un pipeline de réception. Ce pipeline peut contenir divers composants qui réalisent des actions telles que la conversion du format natif du message vers un format de document XML, la validation de sa signature digitale, etc. Le message est ensuite acheminé vers une base de données appelée MessageBox, laquelle repose sur SQL Server. Un processus métier est mis en œuvre sous la forme d'une ou plusieurs orchestrations, chacune d'entre elles correspondant à du code exécutable. Cependant, ces orchestrations ne sont pas créées en écrivant du code, via un langage tel que C#. Au lieu de cela, un analyste financier ou un développeur organise graphiquement un groupe défini de formes, au moyen d'un outil propre, adapté à chacun, afin d'exprimer les conditions, boucles et autres comportements du processus métier. Les processus métier peuvent également utiliser le moteur des règles de gestion qui offre un moyen plus simple et plus aisé pour définir les règles d'un processus métier.
Chaque orchestration crée des souscriptions (subscriptions) afin d'indiquer le type de messages qu'elle s'attend à recevoir. Lorsqu'un message répondant à ces critères arrive dans la MessageBox, il est expédié vers son orchestration cible, laquelle effectue ensuite les actions requises par le processus métier. Le résultat de ce traitement a typiquement pour effet la production d'un autre message, par le processus métier, lequel est sauvegardé dans la MessageBox. Ce message est à son tour traité par un pipeline d'émission, qui peut le convertir du format interne XML utilisé par BizTalk Server 2004 vers le format requis par sa destination, ajouter une signature digitale, etc. Le message est ensuite envoyé via un adaptateur d'émission, qui utilise un mécanisme approprié pour communiquer avec l'application cible.
Au sein des organisations, il existe différents profils de personnes effectuant différentes tâches via le moteur de BizTalk Server 2004. Un analyste financier, par exemple, définit typiquement les règles et comportements qui caractérisent un processus métier. Il détermine également son flux, les informations envoyées à chaque application, ainsi que la façon dont deux documents sont mis en correspondance. Une fois que l'analyste financier, par exemple, a défini le processus, un développeur peut l'implémenter. Cette étape inclut des actions telles que la définition des schémas XML des documents commerciaux qui seront utilisés, la spécification détaillée de leur correspondance, ainsi que la création des orchestrations nécessaires à la mise en œuvre du processus métier. Un administrateur joue également un rôle important en paramétrant la communication entre les composants, en déployant l'application de manière à ce qu'elle soit extensible ainsi qu'en réalisant d'autres tâches. L'ensemble de ces trois rôles – analyste financier, développeur et administrateur – sont nécessaires pour créer et maintenir les applications BizTalk Server 2004. »
L'on retient donc de cette explication de David que le moteur de BizTalk utilise des adaptateurs, les pipelines, les souscriptions, l'orchestration et le gestionnaire des règles. Le moteur de BizTalk Server 2004 représente un moyen efficace de créer des processus métier qui s'étendent sur de multiples applications. Mais une fois ces processus créés, les équipes métier qui les utilisent – les gestionnaires et non les développeurs – ont d'autres besoins. Ils peuvent avoir besoin de contrôler divers aspects de l'activité ou peut-être de créer des processus interactifs et de permettre à des personnes d'intervenir lorsque nécessaire. À la différence des versions précédentes de BizTalk Server, BizTalk Server 2004 offre plusieurs composants qui adressent ces questions. Ces composants sont regroupés en deux catégories, appelées services d'activité business et services de workflows humains.
II-B. Les services pour processus métier▲
En plus de son puissant moteur BizTalk offre aux gestionnaires des composants leur permettant de travailler, ce sont les services d'activité business et les services de workflows humains.
Que ce soit un directeur des ventes qui veut consulter la tendance des ventes ou le financier qui a besoin d'initialiser une relation avec un nouveau partenaire commercial, les services d'activités résolvent leurs problématiques.
Les interfaces utilisateur qui interviennent ici sont donc des solutions de partage d'information comme Windows SharePoint Services, Internet Explorer, Microsoft Excel, et Microsoft InfoPath. Le schéma suivant montre comment ces logiciels agissent de concert.
Le moteur de BizTalk Server 2004 permet de relier les applications, afin d'exécuter un processus métier. Imaginez un appel d'offres arrivant au département des ventes. Répondre à cet appel d'offres peut requérir la participation d'un groupe de personnes qui travaillent ensemble pendant des jours ou des semaines. Ce genre de processus métier basé sur l'activité humaine est un Workflow. BizTalk Server 2004 a besoin d'autres services afin de permettre aux personnes d'interagir avec le processus et de le contrôler, nous arrivons ainsi aux Human Workflow Services, un module standard de BizTalk Server 2004. Ce service offre une infrastructure de workflow construite sur le moteur de BizTalk Server 2004. L'infrastructure des Human Workflow Services est accessible via les services Web et peut être ainsi utilisée par n'importe quelle autre application cliente. Parmi les clients les plus importants se trouvent les applications Microsoft Office. Word, Outlook, Excel, et InfoPath sont des outils fondamentaux pour les équipes métier qui peuvent manipuler cette information. Ainsi, il est censé de faire en sorte que ces outils soient l'environnement naturel à partir duquel les employés participent aux workflows.
Le schéma ci-dessous présente la structure basique des Human Workflow Services. Comme on peut le constater, la technologie repose sur le moteur de BizTalk Server 2004, ainsi que sur une base de données d'administration et une base de données de suivi qui maintient les données relatives aux diverses actions de ce workflow. Outlook et Word constituent sûrement les clients les plus courants, en parallèle aux formulaires personnalisés, construits avec InfoPath. Les applications ASP.NET, ainsi que tout logiciel qui peut accéder aux services Web standards, peuvent également utiliser ce module de BizTalk Server 2004.
III. Bâtir une solution d'intégration avec BizTalk▲
III-A. Création d'un schéma en utilisant BizTalk Editor▲
L'éditeur de BizTalk commence automatiquement quand vous ajoutez un nouveau schéma à un projet de BizTalk. Vous pouvez employer l'éditeur pour construire et modifier des schémas sans nécessiter d'apprendre toutes les complexités de syntaxe XSD. L'arborescence du schéma est là où vous la construisez. La vue XSD est une vue inaltérable qui représente la syntaxe XSD pour le schéma que vous créez. Les choix suivants de menu sont disponibles lors de l'insertion des nœuds dans un arbre de schéma :
- Child Record : représente une collection d'informations ;
- Field Attribute : représente les éléments d'information, tels que les strings ou des nombres ;
- Field Element : représente les éléments d'information, tels que les strings ou des nombres ;
- Sequence Group : contient d'autres nœuds qui doivent apparaître dans un message dans le même ordre dans lequel ils apparaissent dans le nœud de groupe d'ordre.
III-B. Créer une map en utilisant BizTalk Mapper▲
Le mapper de BizTalk est intégré à Visual Studio.NET. Le mapper de BizTalk devient actif quand vous ajoutez une nouvelle map à un projet de BizTalk, quand vous ouvrez une map existante (un dossier de btm), ou quand vous réactivez une map. Pour créer une map, vous utiliser deux schémas : un schéma source et un schéma destination.
Un schéma source définit la structure des messages que vous mappez et le schéma destination définit la même structure. Par exemple, si vous voulez mapper l'information d'expédition et de facturation, d'un ordre d'achat à une facture, vous aurez besoin d'un schéma qui définit des ordres d'achat pour servir de schéma source et d'un schéma qui définit des factures pour servir de schéma de destination. Les schémas source et destination doivent être une partie du projet de BizTalk sur lequel vous travaillez, où vous devez inclure une référence aux schémas dans l'assembly de sorte que les schémas puissent être consultés pendant le temps d'exécution.
III-C. Le messaging▲
La flexibilité intégrée du serveur 2004 de BizTalk permet aux entreprises de toutes les tailles de mettre en œuvre le serveur BizTalk. Quelle que soit l'implémentation, tous les utilisateurs de BizTalk, grands et petits, ont besoin de recevoir et envoyer des messages. Quand un message est envoyé à BizTalk, le système reçoit le message, le passe par un pipeline de réception qui déchiffre, décode, et démonte le message, et le normalise dans un format que BizTalk comprend. Le moteur de transmission de messages dépose alors le message dans la base de données de MessageBox. Des métadata, telles que le type de message et l'origine, qui décrivent le message accompagnent ce dernier. Ces métadata sont connues comme propriétés de contexte. Les processus métier tiennent des abonnements sur les types particuliers de messages qui leur permettent de lancer ou continuer le traitement.
Quand un abonnement assorti est rempli, un processus métier reçoit un message de la base de données de MessageBox et traite le message sur un serveur disponible en utilisant, des diagrammes, des schémas et des maps qui ont été créées en utilisant le concepteur d'Orchestration, l'éditeur de BizTalk, et le mappeur de BizTalk. Après que le message a été traité, le processus métier envoie un autre message, qui est alors envoyé à la base de données de MessageBox. Les propriétés contexte du message sont modifiées pour indiquer où le message doit être envoyé, par exemple, envoyez un port précis. La base de données de MessageBox fournit alors le message à un port d'envoi qui contient un transport qui peut envoyer des messages par le protocole de transport indiqué. La livraison du message envoyé est basée sur l'évaluation des propriétés contexte du message en fonction des expressions de filtre définies sur les ports d'envoi.
III-D. L'orchestration▲
L'Orchestration BizTalk représente une nouvelle manière de concevoir, de déployer, et de maintenir les processus métier. L'Orchestration BizTalk est employé pour concevoir les processus métier qui suivent la logique globale. Le serveur BizTalk vous laisse orchestrer vos processus métier en combinant un moteur d'exécution avec un outil de conception appelé Orchestration Designer.
III-E. Déployer des solutions BizTalk▲
Pour ce faire il faut :
- déployez les assemblies ;
- dans l'explorateur de BizTalk configurer le port d'envoi. Lier ce port au port logique que vous avez créé dans l'Orchestration ;
- dans la console d'administration: lancer le service serveur.
III-F. Les pipelines▲
Un pipeline vous permet d'ajouter les étapes de traitement additionnelles aux messages avant ou après qu'ils soient traités par d'autres composants de BizTalk. Ces étapes de traitement peuvent inclure des fonctions telles que le codage et le décodage, l'assemblage et le désassemblage et le déchiffrement et le chiffrement et sont mises en application dans un ordre spécifique.
III-G. Scénario d'intégration Web de BizTalk▲
Conclusion▲
Pour terminer je redonne la parole a David Chappell :
« Au fur et à mesure que la technologie de Gestion des processus métier (BPM) progresse, BizTalk Server 2004 constitue de plus en plus l'épicentre de relations commerciales de toutes sortes. Au fur et à mesure que les organisations intensifient leur adoption des architectures orientées services basées sur les services Web, la capacité de BizTalk Server 2004 à exposer diverses applications comme un ensemble de services Web, dont les documents commerciaux reposent sur des schémas XML courants, devient de plus en plus attractive. Le support de l'interaction humaine au sein des processus métier, tel qu'implémenté par BizTalk Server 2004 par les Human Workflow Services, en fait également une plateforme d'élection pour de nouvelles logiques applicatives. »
Ressources▲
- PRE01: Building an End-to-End BizTalk Server 2004 Solution, TechEd 2004
- Comprendre BizTalk Server 2004 David Chappel
- Blogs.msdn.com/scottwoo
- http://www.microsoft.com/biztalk/
Remerciements▲
Merci à webman pour son aide