Présentation de la solution de gestion des processus d'entreprise
La solution décrite dans cette section présente une manière d'implémenter une application de gestion des processus d'entreprise. Dans un gestionnaire de processus d'entreprise idéal, les parties de la solution représentant le processus d'entreprise (les règles d'entreprise communiquant avec des systèmes principaux spécifiques, envoyant des messages de réponse) sont séparées de l'infrastructure prenant en charge le processus.
Dans cette solution, un système de commande de service de câble pour Southridge Video, le processus d'entreprise est divisé en étapes. Un gestionnaire de commandes, qui ignore les règles d'entreprise et les systèmes principaux, dirige l'opération des étapes. Le gestionnaire de commandes reçoit des commandes d'un courtier de commandes qui peut diriger les commandes vers plusieurs gestionnaires de commandes différents.
La solution utilise largement les fonctionnalités de BizTalk Server et montre, entre autres choses, l’utilisation de messages internes à l’application pour coordonner des parties de l’application.
Conseils à destination du lecteur
Ce document suppose que vous êtes familiarisé avec BizTalk Server et Microsoft Visual Studio. Il part également du principe que vous comprenez les concepts de base relatifs à l’intégration d’applications d’entreprise et aux services web.
En outre, pour lire et suivre la documentation des développeurs, vous devez être familiarisé avec la création d’applications à l’aide de Visual Studio et l’exécution des tâches suivantes : création de projets, définition de références, débogage et test de solutions BizTalk.
Commande de service de câble de Southridge Video
La solution de gestion des processus d'entreprise implémente un système de commande de service de câble pour Southridge Video. Les clients appellent un centre où un agent du service clientèle prend la commande et l'entre dans le système de commande. Le diagramme suivant illustre le flux général d'une commande dans le système :
Les commandes sont transmises au courtier de commandes, qui envoie la commande au gestionnaire de commandes. Le gestionnaire de commandes exécute les étapes de traitement dans l'ordre correct pour traiter la commande. Notez que certains types d'erreurs passent à un centre d'opérations pour correction et nouvel envoi et que la solution enregistre l'historique de chaque commande dans une table SQL Server.
Le diagramme suivant illustre les grandes lignes des étapes de traitement d'une commande.
Notez qu'une commande peut être mise à jour et annulée.
Exigences commerciales
La solution de gestion des processus d'entreprise est un exemple de système de commande pour Southridge Video, un fournisseur de service de câble. Elle illustre une manière d'implémenter le modèle de gestionnaire de processus dans Microsoft BizTalk Server. La solution utilise une orchestration pour gérer le flux des commandes via deux orchestrations satellites qui implémentent le processus d'entreprise. Cette structure provient des impératifs de l'entreprise de la solution qui incluent les éléments suivants :
Contrôler les versions du processus d'entreprise
Traiter les commandes à long terme
Modifier ou annuler des commandes qui sont toujours en cours de traitement (compléter les commandes en vol)
Éviter les commandes interrompues
Suivre les commandes tout au long du processus
Traiter des commandes par lot
Accepter les commandes des centres de données à distance
Permettre à différents groupes de gérer des parties du traitement de commande
Faire évoluer l'application en ajoutant des groupes BizTalk
Exposer, par l'accès à distance, le gestionnaire de commandes en tant que serveur d'applications
Les exigences métier de Southridge Video produisent une structure en trois parties : un répartiteur de commandes, un gestionnaire de processus et le processus métier lui-même. Southridge Video a deux groupes informatiques distincts impliqués dans l'application. Un groupe de messagerie maintient l'infrastructure de messagerie d'entreprise et fournit les composants pour connecter les applications à cette infrastructure. Un autre groupe écrit et maintient les applications pour des processus d'entreprise spécifiques. Par conséquent, le courtier de commandes est séparé du gestionnaire de processus de commande et des étapes du processus afin qu'il puisse être maintenu par un groupe distinct. Comme il s'agit d'un composant séparé, le courtier de commandes peut également être étendu pour négocier les commandes destinées à plusieurs gestionnaires de processus. Un gestionnaire de processus peut être ajouté pour prendre en charge un nouveau secteur, tel qu'un service VIP.
Les commandes Southridge Video sont des processus longs : l’exécution d’une commande par câble peut prendre entre une minute et un an. Comme une instance d'une orchestration BizTalk doit être exécutée jusqu'à la fin, une instance d'orchestration peut avoir une durée de vie allant jusqu'à un an.
Southridge Video a besoin d'une architecture pour les processus à long terme qui permet la modification des composants d'application lors du traitement de commande. Par conséquent, Southridge divise le traitement de commande en plusieurs étapes afin qu'une commande puisse être effectuée à l'aide des composants de processus les plus récents. Pour plus d’informations sur la façon de déterminer les limites de phase dans un processus métier, consultez Quelques principes de conception dans la solution de gestion des processus métier.
Le long temps de traitement d'une commande détermine, en partie, le besoin de modifier les commandes en vol. La modification des commandes est l'une des raisons pour lesquelles la solution inclut un système extensif d'interruptions. Ce système d'interruptions simplifie la modification de commandes ou leur annulation avant qu'elles ne soient terminées. La solution utilise des messages .NET pour communiquer entre les parties fonctionnelles de la solution pour gérer les interruptions.
Le système ayant plusieurs dépendances externes, certaines opérations peuvent être tentées de nouveau après échec. Par exemple, si un système principal est indisponible et qu'une demande expire, la solution attend un intervalle approprié et retente la demande. Étant donné que les connexions aux systèmes externes sont effectuées via un code personnalisé, cette partie de la solution exploite pleinement la réflexion .NET pour permettre aux méthodes d'objet de faire l'objet d'une nouvelle tentative.
Comme l'entreprise réelle sur laquelle elle est basée, la solution suppose que des problèmes liés au traitement de commande peuvent être gérés par des membres du groupe d'opérations. De même, certains types d'erreurs liées aux commandes sont mentionnés à un agent du service clientèle qui peut annuler ou corriger et renvoyer la commande.
Ressources de la solution de gestion des processus d'entreprise
Lisez les documents suivants pour plus d'informations sur la solution de gestion des processus d'entreprise.
Ressources de la solution de gestion des processus d'entreprise
Développement d’une solution de gestion des processus métier
Les développeurs et les architectes de logiciel peuvent utiliser ce guide pour documenter tous les problèmes de conception de code, de modèles, d'architecture et de performances requis pour créer et exécuter l'application de gestion des processus d'entreprise.
Déploiement de la solution de gestion des processus d’entreprise
L'informaticien ayant une compréhension générale de BizTalk Server peut utiliser ce guide pour créer et exécuter l'application de gestion des processus d'entreprise. Le guide suppose d'avoir une idée générale du fonctionnement de l'application dans un environnement distribué.