Adopter une approche BPM et SOA pour une intégration
Transcription
Adopter une approche BPM et SOA pour une intégration
Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Un Livre Blanc Oracle Table des matières Introduction.................................................................................................................2 Méthode descendante: le BPM.................................................................................. 3 Méthode ascendante: l'intégration ..............................................................................4 Intégration d'applications............................................................................................5 Intégration de données................................................................................................6 Couches multiples.......................................................................................................7 Le rôle crucial de la médiation ...................................................................................8 Bien plus qu'un simple transport ................................................................................8 Couches logiques multiples ........................................................................................9 Expérience pratiques.................................................................................................10 Combiner tous les éléments......................................................................................10 Outils.........................................................................................................................10 Déploiement et gestion .............................................................................................11 Gouvernance .............................................................................................................11 Conclusion ................................................................................................................11 La flexibilité est un défi quotidien pour les professionnels des technologies de l'information, qui doivent trouver des solutions pour permettre l'adoption de nouveaux processus métier, s'adapter aux conditions en constante évolution et améliorer l'efficacité de l'exécution. Ils cherchent par tous les moyens à traduire leurs capacités techniques en flexibilité métier. Mais en leur qualité d'ingénieurs, ils ne croient pas en une approche modérée et hasardeuse. Ils ont donc besoin d'une procédure méthodique et reproductible. L'intégration métier offre à la fois la procédure et la technologie permettant de transformer les capacités techniques en flexibilité métier. INTRODUCTION Autrefois, les théoriciens avaient tendance à confondre le concept de procédure « méthodique » avec celui du traitement « linéaire ». Les approches d'intégration métier étaient donc soit descendantes, soit ascendantes. Les approches descendantes consistaient à décomposer les processus métier jusqu'à obtenir certaines opérations de calcul spécifiques. Malheureusement, ces opérations avaient souvent peu en commun avec les fonctions logicielles existantes. Au contraire, les approches ascendantes consistaient à produire des opérations de calcul de plus en plus abstraites ; des opérations qui avaient souvent peu à voir avec des processus métier cohérents. Pour couronner le tout, l'infrastructure permettant d'intégrer les opérations individuelles était en réalité si rigide que les entreprises étaient incapables d'aligner leurs besoins métier et l'IT suffisamment rapidement pour rester compétitif. Une architecture orientée services (SOA) combine les méthodes descendante et ascendante afin de contourner ces difficultés. Pour résoudre le premier problème, elle offre une unité de travail conceptuelle et unifiée qui permet à l'IT et au métier de travailler de concert : le service métier élémentaire. Lorsque ce concept est appliqué, les équipes fonctionnelles peuvent utiliser leurs processus de façon descendante et le service informatique exploiter ses ressources, systèmes et logiciels selon la méthode ascendante. La SOA offre à chaque groupe une flexibilité unique dans son propre domaine de compétence, mais également une visibilité sur l'autre domaine. Ils peuvent ainsi évoluer l'un vers l'autre et se rencontrer à mi-parcours. D'un point de vue métier, l'intégration métier basée sur l'approche SOA se concentre en premier lieu sur un objectif métier défini et sur les processus associés. Les experts métier utilisent des outils de modélisation pour ébaucher ou visualiser le flux de processus. Ils recherchent des simulations de processus détaillées et la création de prototypes d'interfaces utilisateur pour affiner le modèle jusqu'à un ensemble de services métier élémentaires. D'un point de vue informatique, l'intégration métier basée sur la SOA se concentre en premier lieu sur les actifs existants et leurs capacités. Les développeurs convertissent les actifs existants en services de base. Ils conçoivent ensuite des services de plus en plus sophistiqués, en ajoutant de nouveaux lorsque cela est nécessaire, jusqu'à ce qu'ils puissent composer les services métier élémentaires requis pour la prise en charge du processus métier. Bien sûr, il convient de trouver un compromis entre les services élémentaires dont la composante fonctionnelle a besoin et ceux que le service IT peut effectivement offrir. La SOA leur donne un vocabulaire commun et une visibilité mutuelle. L'équipe informatique est ainsi en mesure de comprendre les exigences fonctionnelles derrière chaque service et les équipes métier peuvent avoir une idée des défis techniques associés à la mise en oeuvre de chaque service. Quant au défi d'une infrastructure d'intégration métier flexible et néanmoins de niveau entreprise, la SOA peut naturellement tirer parti du bus de services d'entreprise (ESB). Elle offre une couche d'indirection entre les demandeurs et les prestataires de services. En tant qu'intermédiaire, elle peut corréler les besoins en qualité de service avec les besoins en communication de service. Elle contrôle chaque message qui circule entre les consommateurs de services et les services métier, en appliquant toutes les règles de priorité, d'acheminement, de transformation et de sécurité appropriées. Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 2 De plus, la SOA permet à l'entreprise de faire permuter en toute transparence des mises en oeuvre de services alternatives, de migrer vers des versions plus récentes, de réorganiser la séquence de services d'un processus, d'appliquer des règles de gouvernance et de surveiller l'exécution des services. Grâce à l'ESB, les services métier peuvent devenir immédiatement opérationnels conformément aux besoins de la composante métier. Les services métier élémentaires et l'ESB sont les clés de la réussite. Pour exploiter tout leur potentiel et transformer la flexibilité IT en flexibilité métier, il est indispensable d'adopter une approche d'intégration métier à 360°. Le métier et l'IT ne sont pas monolithiques. Chaque entité comprend de nombreux rôles qui contribuent à l'ensemble du cycle d'automatisation des processus. Les entreprises ont besoin d'outils capables de prendre en charge chaque rôle individuellement et de coordonner leurs efforts conjoints. Elles ont également besoin d'une infrastructure éprouvée pour l'exécution des processus qui en résultent. Oracle propose une solution globale qui relève le défi de l'intégration métier en offrant tous les avantages de la coopération, de la visibilité, de la gouvernance, du délai de mise sur le marché et d'une qualité de service de niveau entreprise. Comme l'illustre la figure 1, l'objectif de l'intégration métier du point de vue métier est de fournir aux participants aux processus un système agile de gestion des processus métier basé sur des services métier élémentaires. Cette gestion des processus est décomposée en deux parties : les modèles qui décrivent la manière dont les processus doivent s'exécuter et le logiciel qui rend cette exécution effective. MÉTHODE DESCENDANTE : LE BPM Créer les modèles de processus revient en quelque sorte à écrire un scénario. Au lieu d'un découpage par scènes, les experts métier utilisent des organigrammes. Le brainstorming est remplacé par des simulations et le story-board par des prototypes d'interface utilisateur. Utilisés conjointement, ces outils déterminent ce qui doit se produire. Mais pour le concrétiser, il est indispensable de recourir à un logiciel exécutable (l'équivalent de la « prose évocatrice » dans un scénario) ; à ce moment, le métier doit se fier au « génie technique » de l'IT. Bien sûr, contrairement aux scénaristes, les experts métier doivent constamment réécrire les processus afin de répondre aux changements et d'améliorer leur efficacité. Sans oublier qu'il est autrement plus complexe d'exécuter un processus sophistiqué que d'imprimer simplement la version finale d'un scénario. La SOA garantit cette capacité d'adaptation et cette réactivité supplémentaires. Figure 1 L'intégration métier du point de vue des fonctionnels Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 3 Les outils de modélisation, tels que le concepteur de processus dans Oracle AquaLogic® BPM Suite, permettent aux experts métier d'élaborer « l'histoire » de chaque processus métier en utilisant les meilleures normes disponibles, notamment Business Process Modeling Notation (BPMN) ou Unified Modeling Language (UML). Les experts partent d'un processus critique, tel que la « livraison de la commande ». Ils le décomposent ensuite en différents processus plus détaillés. Un fabricant peut ainsi décomposer le processus comme suit : « Créer la commande », « Choisir les composants », « Commander les pièces » et enfin « Envoyer le bon de commande ». Une fois le dernier niveau de détail atteint (lorsqu'il est impossible de continuer à décomposer le processus sans spécifier les détails de la mise en œuvre technique), on considère qu'ils ont atteint un processus métier élémentaire. A un certain niveau de la décomposition, les experts peuvent être amenés à simuler le processus pour identifier d'éventuelles tâches manquantes ou bien des opportunités d'amélioration. C'est pourquoi Oracle AquaLogic@ BPM Designer comprend des outils de simulation complets. Pour chaque tâche d'un processus, les experts peuvent affecter des paramètres, notamment la moyenne et la variance du temps de traitement, la stratégie de mise en file d'attente et la probabilité des différents résultats possibles. Il est même possible de simuler plusieurs processus utilisant les mêmes ressources, ce qui permet aux experts d'identifier les conflits en termes de ressources. Les experts doivent non seulement justifier la dynamique des processus à travers la simulation, mais également expliquer la dynamique humaine grâce à des prototypes d'interfaces. Créer un modèle filaire pour l'écran auquel les utilisateurs devront accéder pour exécuter une tâche est le moyen le plus éloquent de modéliser leur interaction future avec le processus. Cette démarche garantit que toutes les informations que le processus doit fournir à l'utilisateur, de même que toutes les informations que l'utilisateur doit fournir au processus, ont bien été prises en compte. Au final, la décomposition et la simulation du processus et le prototypage de l'interface conduisent à encapsuler entièrement le comportement souhaité pour les services métier élémentaires, le tout sans aucune mise en oeuvre. Sur ce point, le métier dépend de l'IT. Comme nous l'avons déjà souligné, le processus n'est pas linéaire. Pour certains processus, le département informatique peut avoir déjà mis à disposition certains des services métier élémentaires nécessaires. Les équipes métier peuvent se contenter de les référencer et d'y accéder directement au niveau BPM. Après le déploiement initial de n'importe quel processus, les experts seront bien évidemment en mesure d'y apporter des modifications via la modélisation. Il leur suffit pour cela de réorganiser la manière dont la définition du processus utilise les services métier élémentaires disponibles. Certaines modifications nécessitent naturellement une programmation supplémentaire. C'est pourquoi une véritable solution d'intégration métier devrait leur permettre d'intégrer ces exigences en toute transparence auprès du service IT. Pour garantir tous les avantages offerts par l'automatisation et l'adaptabilité, un modèle de processus métier exige un support d'exécution robuste. Les composants d'exécution traduisent une définition de processus en instructions exécutables avant de faire appel aux services métier élémentaires nécessaires. Ils fournissent également un espace de travail en ligne pour permettre aux utilisateurs d'exécuter leurs tâches et de gérer manuellement les exceptions. Les composants de contrôle effectuent un suivi du flux de processus en temps réel, ainsi que des mesures de processus à long terme, afin de réduire les temps de réponse en cas des crises soudaines ou d'évolution des environnements. Oracle AquaLogic® BPM Suite réunit tous ces composants de modélisation, d'exécution et de gestion dans une solution offrant une fiabilité, une disponibilité et une évolutivité éprouvées. Comme l'illustre la figure 2, l'objectif de l'intégration métier du point de vue informatique est de développer des services métier élémentaires à partir des actifs MÉTHODE ASCENDANTE : L'INTÉGRATION Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 4 existants. Cette agrégation intervient grâce à deux mécanismes : l'intégration d'applications et l'intégration de données. Alors que le métier doit créer les scénarii autour desquels s'articulent tous les processus d'une entreprise, l'IT doit fournir le vocabulaire qui permettra aux utilisateurs fonctionnels de les mettre en forme. L'équipe IT tire les « verbes » de l'intégration des applications et les « noms » de l'intégration des données. Dans la plupart des cas, ils ne sont pas en mesure de mettre directement en relation les actifs existants avec les fonctions de services métier élémentaires. Ils ont au contraire besoin de plusieurs niveaux de services d'intervention pour atteindre un degré d'abstraction suffisant et une flexibilité de réutilisation satisfaisante. Chaque niveau doit bien sûr offrir d'excellents niveaux de service afin de garantir la fiabilité des processus plus larges. La SOA fournit le cadre nécessaire pour garantir un bon niveau d'abstraction et des services fiables. Intégration d'applications Les technologies d'intégration d'applications fournissent les unités d'action du vocabulaire du service métier élémentaire. Considérons par exemple une action du type « Vérifier la commande » dans le cas d'une entreprise offrant des produits informatiques fabriqués à la commande. Cette action permet de s'assurer qu'une commande client peut être exécutée et livrée dans les délais spécifiés. Elle nécessite une bonne coopération entre les applications de configuration, de stock, de fabrication et de logistique. Figure 2 : L'intégration métier du point de vue IT L'intégration des applications est indispensable car ce type d'action ne se réduit pas à une simple série d'appels d'application avec transformations de format. Le flux principal peut être parfaitement linéaire, passant d'une application à une autre. Mais pour prendre en compte tous les flux possibles, il est nécessaire de spécifier une interaction plus complexe. Dans notre exemple de vérification de commande, certaines configurations peuvent correspondre à des unités de gestion des stocks (SKU) prédéfinies tandis que d'autres exigeront un assemblage personnalisé. Il existe un saut conditionnel. Dans ce cas, que se passe-t-il si l'application de gestion des stocks indique qu'un composant spécifié par l'application de configuration est en rupture de stock ? Il convient de mettre en oeuvre une logique spéciale pour identifier de façon itérative les substitutions potentielles. De plus, il peut parfois s'avérer difficile de prédire ou de résoudre certaines exceptions. Lorsque des problèmes imprévus se présentent (par exemple, un blocage entre le planificateur de fabrication et le planificateur logistique), l'application intégrée devrait acheminer les commandes vers un spécialiste afin d'obtenir une assistance manuelle. Pour couvrir toutes les possibilités d'action, les entreprises ont besoin d'une plate-forme d'intégration applicative. Au niveau le plus bas, cette plate-forme offre la connectivité nécessaire pour communiquer avec une gamme complète d'applications packagées, ainsi que les plates-formes existantes et modernes permettant d'exécuter les applications personnalisées. A partir de la couche de connectivité, elle a besoin de son propre moteur de workflow pour spécifier les séquences de tâches, les sauts conditionnels et le traitement des exceptions. Comme nous l'avons indiqué ci-dessus, certains Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 5 problèmes réels nécessitent une réponse plus flexible que même un moteur de workflow ne peut gérer efficacement. C'est pourquoi la solution doit également comprendre des fonctionnalités permettant d'ajouter des modules logiques spécialisés, des moteurs de règles et des interventions manuelles de courtage. Oracle WebLogic® Integration offre une plate-forme idéale pour l'intégration d'applications dans le cadre d'une solution d'intégration métier. Les développeurs peuvent définir visuellement les flux parmi presque toutes les applications, en exploitant la suite complète d'options de connectivité dorsales, et peuvent insérer de nouveaux modules logiques Java lorsqu'ils en ont besoin. Une fonction Worklist intégrée automatise la mise à disposition d'interfaces utilisateur en ce qui concerne les approbations et le traitement des exceptions. Son moteur de processus sous-jacent entièrement transactionnel permet aux entreprises de maintenir une certaine cohérence entre les applications dans les flux de processus fins. Grâce à ces fonctionnalités avancées, le service IT peut développer rapidement la bibliothèque d'actions à la base des services métier élémentaires. Intégration de données Les technologies d'intégration de données fournissent les unités d'entité du vocabulaire du service métier élémentaire. Considérons par exemple une entité de type « Client », qui concerne quasiment chaque service d'une entreprise. Cette entité englobe les informations relatives aux contacts, commandes, paiements et assistance. Pour obtenir une vue cohérente du Client, il est indispensable de collecter les données de chaque source de données comprenant ces types d'informations. L'intégration des données est nécessaire car ces différentes sources de données utilisent une grande diversité de modèles et les services qui utilisent ces données répondent à des exigences sémantiques très variées. Dans notre exemple client, les informations de contact peuvent être réparties entre une application SFA, une base de données de facturation et une application CRM. De la même manière, les informations relatives aux commandes peuvent être réparties entre une base de données de commandes en ligne, une application ERP et une base de données de facturation. Bien évidemment, les applications packagées fonctionnent différemment des bases de données. En outre, les différentes applications ont une sémantique d'API différente, tout comme les différentes bases de données reposent sur des modèles de données différents. Certains services consommateurs peuvent exiger des dossiers client individuels référencés par identifiant. D'autres peuvent demander que tous les dossiers client soient référencés par code postal, tandis que d'autres encore voudront définir des filtres en fonction des différents types d'états. A tout ceci vient s'ajouter la question épineuse de la préservation de l'intégrité transactionnelle et du contrôle d'accès entre les différentes sources. Pour que les informations d'entité soient disponibles pour toutes les applications qui en ont besoin, les entreprises doivent s'appuyer sur une plate-forme d'intégration de données. Au niveau le plus bas, cette plate-forme permet aux experts d'associer les sources de données aux services de données. Elle doit en outre fournir toutes les fonctions de planification de requêtes et d'optimisation nécessaires pour garantir la réactivité de ces services. Elle doit établir le lien entre les différents modèles de transaction et de sécurité, en traduisant les règles applicables à l'entité agrégée en appels individuels permettant de mettre en oeuvre ces règles dans chaque source de données. Oracle AquaLogic Data Services Platform offre la plate-forme idéale pour l'intégration de données dans le cadre de l'intégration métier. Les experts peuvent définir visuellement les correspondances à partir des sources de données ou utiliser un outil XQuery avancé. Le système optimise les interactions avec les sources de données grâce à différentes techniques : transposition des opérations dans les moteurs de source de données sous-jacents, transfert des valeurs communes d'une source SQL à une autre sous forme de lots, ou encore exploitation des fonctions spécifiques de mise en oeuvre des bases de données. Pour les transactions, il utilise une Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 6 combinaison d'enregistrements en deux phases XA et de transactions de compensation pour les sources non XA. Sur le plan de la sécurité, il offre un modèle extrêmement détaillé qui ne se contente pas de renseigner les champs généralement confidentiels, tels que les numéros de sécurité sociale, mais qui peut également limiter l'accès de façon dynamique à partir des propriétés de requête, de sorte que seul le médecin traitant d'un patient puisse accéder à son dossier médical. Grâce à ces fonctionnalités avancées, le service IT peut développer rapidement la bibliothèque d'entités nécessaire à la prise en charge des services métier élémentaires. Couches multiples Pour optimiser la flexibilité et la réutilisation, les entreprises ont souvent besoin de plusieurs couches d'intégration d'applications et de données. Par exemple, l'application de gestion des stocks utilisée dans l'exemple de vérification de la commande peut être elle-même une agrégation de différents modules de stocks, avec peut-être un module pour les composants achetés (disques durs par exemple) et un module pour les composants produits en interne (tels que les cartes mères). Le nombre de couches dépend en fait des actifs existants. Si les développeurs ont de la chance, un package moderne peut déjà fournir un haut niveau d'abstraction des actions et des entités. Dans ce cas, ils auront peut-être besoin uniquement d'une simple couche enveloppante, voire d'aucune. Dans le cas contraire, les packages existants peuvent nécessiter un très bas niveau de synchronisation pour demeurer dans un état homogène. La plupart des cas se situe à mi-chemin entre ces deux hypothèses. Quelques packages modernes seront parfaits pour les besoins émergents et le faible niveau de synchronisation sera déjà globalement mis en oeuvre. Figure 3 : Plusieurs couches d'intégration de données et d'applications La modularité et la dépendance sont les forces motrices qui déterminent le nombre de couches nécessaires. Les analystes de données peuvent décider que le concept de « contact » est suffisamment général pour devenir un bloc fonctionnel standard pour les services de données de niveau supérieur. Comme nous l'avons déjà souligné, l'application générale de gestion des stocks peut dépendre de plusieurs applications de gestion des stocks spécifiques. La modularité et la dépendance peuvent même franchir la frontière entre l'intégration d'applications et de données. Par exemple, l'application de configuration mentionnée ci-dessus peut dépendre d'un service de données qui standardise l'entité « nomenclature ». De la même manière, l'entité « client » mentionnée plus haut peut dépendre dans les faits d'une action « ajouter un Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 7 client » qui coordonne les applications ERP et CRM. En regardant l'architecture d'intégration de plus près, on observe des couches empilées et intercalées telles que les représente la figure 3. L'avantage de la SOA est qu'elle permet aux entreprises d'utiliser le même paradigme, quel que soit le nombre de couches nécessaires, pour adapter une série d'actifs existants à un ensemble de services métier élémentaires souhaité. Un ESB offre une base conceptuelle et technique pour l'exécution d'une intégration métier basée sur une architecture orientée services et protège chaque couche de la solution SOA contre les risques d'interruption provoquée par les modifications apportées aux autres couches. D'un point de vue conceptuel, les équipes fonctionnelles déterminent les services métier élémentaires dont elles ont besoin sur le bus et le service IT s'efforce de les intégrer sur le bus comme illustré à la figure 4. Ils peuvent donc se rencontrer à mi-parcours car un ESB ne se contente pas de transporter des messages : il prend en charge de façon active la médiation de services afin qu'ils puissent coopérer efficacement. Il fournit un outil offrant à la fois une connectivité de service fiable et flexible et une protection efficace contre les changements apportés à la mise en oeuvre des services. L'ESB prend en charge plus que la simple médiation de services métier élémentaires. Il opère à différents niveaux de sorte que chaque unité logique, des fonctions existantes de faible niveau jusqu'aux activités métier encapsulées, puisse en bénéficier. En réalité, l'ESB offre tant de fonctionnalités qu'il est parfois difficile de déterminer s'il existe un meilleur outil pour cette tâche. Il ne supplante pas pour autant la nécessité de recourir à des outils de processus métier ou d'intégration d'applications. Définir un ensemble de meilleures pratiques peut permettre de déterminer quand utiliser directement un ESB et quand utiliser l'un des autres outils disponibles pour créer un nouveau service en relation avec l'ESB. LE RÔLE CRUCIAL DE LA MÉDIATION Figure 4 : Une intégration métier complète grâce à la SOA 360 Bien plus qu'un simple transport L'interaction entre les différents services suppose d'aller plus loin que le simple acheminement de messages d'un point à un autre. En réalité, la tâche de transport est secondaire. La mission première de l'ESB est de promouvoir la coopération. L'approche de base consiste à offrir une couche d'isolation intelligente entre les demandeurs et les prestataires de services. Sans cette protection, chaque demandeur devrait en savoir tellement sur chaque prestataire que les interactions de services s'en trouveraient rapidement paralysées. Au lieu de quoi, l'ESB prend en charge la médiation de services, en effectuant tout le nécessaire pour garantir une coopération fiable et transparente. Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 8 En servant ainsi d'intermédiaire, l'ESB peut assurer la liaison entre les protocoles de transport. Si un demandeur utilise JMS alors que le prestataire utilise HTTP, les deux acteurs ne remarqueront même pas la différence grâce à l'ESB. En fait, tant que l'ESB dispose des connecteurs appropriés, les services peuvent utiliser des protocoles de transport tels que la messagerie MQ propriétaire ou même les protocoles de messagerie électronique. Mais le transport n'est que la partie visible de l'iceberg. Que se passe-t-il si le demandeur et le prestataire utilisent des versions différentes d'un format de message ou d'autres formats issus de différents organismes de normalisation ? L'ESB peut automatiquement les transformer à la volée. Tant que deux services comprennent des messages équivalents sur le plan sémantique, l'ESB leur permet de coopérer. En matière de sécurité, l'ESB favorise également une interaction souple entre les services. Différents services peuvent utiliser différents modèles de sécurité, tels que l'application des protections d'intégrité au niveau du transport via le protocole HTTPS ou au niveau du message via des signatures. L'ESB peut utiliser sa position éprouvée pour fournir des protections équivalentes entre ces frontières, mais également pour propager les identités de sécurité de sorte que chaque service puisse prendre ses propres décisions de contrôle d'accès. Outre les règles de sécurité, l'ESB peut également mettre en oeuvre des règles métier. L'acheminement basé sur le contenu permet à l'entreprise d'orienter les messages des demandeurs vers des prestataires donnés en fonction de n'importe quel critère, par exemple la localisation géographique du client, le risque associé à la transaction ou la valeur de la commande. L'ESB fournit des contrats de niveau de service centralisés pour la consignation, les alertes et le traitement des exceptions qui garantissent aux entreprises une connaissance parfaite de la manière dont ces interactions de services fonctionnent. Couches logiques multiples Les services métier élémentaires ne forment que l'une des couches logiques valorisées par l'ESB. Dans les paragraphes précédents, nous avons expliqué comment le métier atteint ces couches en décomposant les processus métier et comment l'IT les atteint en agrégeant les services techniques. Les couches de processus de haut niveau comme les couches techniques de bas niveau peuvent bénéficier des fonctionnalités de l'ESB pour améliorer leur coopération. Au-delà de la couche de services métier élémentaires, l'ESB garantit une certaine flexibilité des processus de l'entreprise. La décomposition initiale des processus génère des modules métier réutilisables, tous connectés par l'ESB. En cas de changement dans l'environnement ou si une idée d'innovation se fait jour, les experts peuvent réagir en reconfigurant simplement leurs modèles. L'ESB facilite ensuite les nouvelles connexions entre les modules. Grâce à cette adaptabilité, l'entreprise, qui s'appuie sur des modèles de fonctionnement, gagne en flexibilité. Au-delà de la couche de services métier élémentaires, l'ESB garantit la flexibilité technique de l'entreprise. Modifier les actifs existants, insérer une nouvelle logique et améliorer l'intégration : tout devient tellement plus facile avec l'ESB. Et, parce que l'ESB peut acheminer intelligemment les demandes vers la version appropriée d'un service, les développeurs sont en mesure de fournir de nouvelles fonctionnalités sans interrompre les anciennes connexions, ce qui facilite la gestion des versions et la prise en charge des mises à niveau. La même fonctionnalité d'acheminement permet d'insérer en toute transparence un nouveau service à valeur ajoutée dans un service existant. On obtient ainsi une meilleure intégration des transactions, de la sécurité et des exceptions, sans nuire à l'interaction opérationnelle des services. Si l'ESB est, sur le plan conceptuel, le garant de la flexibilité de l'intégration métier, il s'agit en réalité d'un utilitaire unique disponible dans toute la solution. Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 9 Expérience pratique Si l'ESB est un outil très puissant de la SOA, il n'en est par pour autant l'outil toujours approprié. Oracle ayant mis au point AquaLogic® Service Bus, un ESB leader sur le marché, ainsi que d'autres produits middleware d'entreprise avancés, les équipes Oracle justifient d'une grande expérience qui leur permet de savoir quand utiliser un ESB. La principale leçon tirée des différents projets client entrepris par Oracle est que l'adoption d'une stratégie inappropriée en matière d'ESB peut affecter les performances et la flexibilité. La principale règle empirique est que les éléments connectés à l'ESB nécessitent vraiment une sémantique de service. Considérons par exemple le cas de la synchronisation d'une opération d'ajout d'un client entre les applications ERP et CRM, tel qu'il a été mentionné plus haut. Si les applications ERP et CRM comprennent toutes deux des API de service, il devrait être techniquement simple d'assurer cette synchronisation via l'ESB. Pourtant, cela suppose de maintenir de nombreux états sur le bus lui-même, ce qui réduit les performances. La nécessité de maintenir l'état en dehors de tous les services est révélatrice d'une richesse sémantique inappropriée. Une meilleure solution consisterait à encapsuler cet état dans le cadre de l'intégration d'applications effectuée via WebLogic Integration. En plus d'affecter la flexibilité, l'utilisation inappropriée de l'ESB peut également nuire aux performances. Par exemple, il serait possible d'insérer des messages RFID directement sur le bus pour les applications telles que le contrôle des stocks ou le traitement des bagages. Mais cette approche inonderait le bus de messages de niveau inférieur, pour la plupart insignifiants. Chaque application en position de demande devrait alors prendre la peine de filtrer et d'agréger elle-même ces messages. Une meilleure solution consisterait à encapsuler la communication RFID directe dans un serveur d'événements, tel que Oracle WebLogic Event Server, capable d'interagir à un niveau plus abstrait avec les services via l'ESB. Oracle collabore régulièrement avec les clients d'AquaLogic Service Bus pour former les collaborateurs sur les pratiques déjà rencontrées et connues, mais aussi pour développer des pratiques personnalisées. La SOA fournit les ingrédients de base pour obtenir une intégration métier parfaitement flexible. Pourtant, l'intégration métier est fondamentalement un projet coopératif dont l'efficacité ultime dépend de la coordination des contributions de tous les individus travaillant pour le métier et l'IT avec un objectif commun. Pour optimiser leur retour sur investissement, les entreprises ont besoin de mécanismes pour diriger et valoriser cette synergie collaborative. L'approche complète Enterprise360° de Oracle, ainsi que l'infrastructure associée qui réunit l'intégration métier, la gouvernance et l'interaction sur des bases solides, favorise la collaboration, homogénéise les opérations et optimise la visibilité. COMBINER TOUS LES ÉLÉMENTS Outils Promouvoir la collaboration signifie que quiconque contribuant à l'intégration métier dispose d'outils productifs qui s'intègrent parfaitement les uns aux autres. L'approche de Oracle repose sur le concept WorkSpace 360 pour fournir des fonctionnalités intégrées capables de soutenir une collaboration d'équipe et de projet. Les équipes peuvent définir des espaces de projet communs englobant les contributeurs fonctionnels et informatiques. Dans ces espaces de travail, ils peuvent avoir des discussions interactives, travailler conjointement sur des documents et configurer des notifications pour les changements apportés aux éléments partagés, tout en conservant une vue appropriée. Avec ces fonctionnalités, chaque contributeur comprend son rôle dans le contexte plus large de l'effort d'intégration métier. Au coeur de WorkSpace 360 se trouve un modèle de métadonnées riche qui permet la traçabilité complète des projets d'intégration métier en surveillant la correspondance entre le processus métier et les tâches d'intégration logicielle. Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 10 En outre, WorkSpace 360 fournit un espace de travail adapté pour chaque public dans le processus de développement. Les experts métier ont à leur disposition des outils de modélisation et de prototypage. Les architectes disposent d'outils d'architecture des composants de service et de tableaux de bord personnalisés. Les développeurs ont à leur disposition des IDE et des aides à la réutilisation. Lorsque les problèmes se chevauchent ou que les tâches transitent d'un rôle à un autre, WorkSpace 360 fournit la vue partagée nécessaire. Aligner la vision de l'intégration métier de chacun a un impact direct sur l'optimisation de la flexibilité. Déploiement et gestion Homogénéiser les opérations signifie que les entreprises peuvent déployer et gérer efficacement les composants logiciels d'intégration métier. Tous les composants de Oracle peuvent s'exécuter et tirer parti de la même base WebLogic, extrêmement fiable, tout en fonctionnant avec une infrastructure hétérogène. Cela permet aux entreprises de gérer de façon centralisée toute l'infrastructure d'exécution ainsi que le déploiement des modules d'intégration métier. Que les administrateurs cherchent à mettre à niveau leurs produits Oracle ou leurs services déployés, ils disposent des fonctionnalités nécessaires pour garantir une transition tout en douceur. Pour les modules SOA exécutés à partir de l'infrastructure Oracle, les administrateurs bénéficient d'une configuration, d'un suivi et d'un reporting unifiés. Ils peuvent même définir et appliquer des règles de sécurité sur l'ensemble de la plate-forme. Tandis que l'infrastructure Oracle est capable de fonctionner en toute transparence avec des composants tiers via des protocoles standard, les produits de la même famille peuvent utiliser une messagerie native haute performance pour obtenir un rendement maximum, ou intégration « à voie rapide ». Naturellement, avec des fonctionnalités dimensionnées à l'échelle de l'entreprise, les familles de produits WebLogic et AquaLogic, tous les services qu'elles exécutent bénéficient de leur fiabilité, de leur disponibilité, de leurs performances et de leur évolutivité. Gouvernance Grâce à l'optimisation de la visibilité, les responsables peuvent exercer une gouvernance efficace en identifiant les règles appropriées, en les communiquant aux contributeurs et en contrôlant la conformité tout au long du cycle de vie du logiciel. Si la gouvernance est importante dans toutes les initiatives de SOA, l'ampleur des initiatives d'intégration métier la rend cruciale dans ce type d'installation. L'entreprise doit savoir qu'elle a atteint ses objectifs métier et ses objectifs de qualité de service IT de manière rentable. Lorsque les responsables peuvent mesurer l'impact initial d'une initiative d'intégration métier, ils peuvent commencer à affiner leurs objectifs futurs. Avec WorkSpace 360, ils peuvent associer toutes les étapes de conception et les statistiques d'exécution aux objectifs métier. Pour un service technique donné, ils ont un aperçu de tous les services élémentaires pris en charge et, par conséquent, de tous les processus métier qui les utilisent. Ils sont en mesure d'évaluer dans quelle mesure les améliorations techniques contribuent aux améliorations métier. En cas de changement, ils peuvent anticiper le degré d'adaptation technique nécessaire pour accompagner l'adaptation d'un processus donné. A un niveau plus détaillé, l'équipe IT peut utiliser WorkSpace 360 pour appliquer les exigences de conformité architecturale et des contrats de niveau de service. Chacun est responsable de la manière dont ses efforts contribuent aux objectifs généraux d'intégration métier. Une approche Enterprise360° de l'intégration métier optimise les bénéfices tout en minimisant les risques. Les entreprises doivent clairement chercher à aligner durablement les capacités IT sur les objectifs métier. La flexibilité est un facteur important. Mais cet alignement suppose naturellement de coordonner les ressources entre de nombreuses unités organisationnelles, et ce sur de longues périodes. CONCLUSION Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 11 La facilité de gestion est tout aussi importante. Utiliser la SOA dans l'intégration métier garantit flexibilité et facilité de gestion. Un ESB sert à la fois d'infrastructure favorisant la flexibilité et de passerelle garantissant la facilité de gestion. La composante métier utilise une approche descendante pour identifier les services métier dont elle a besoin sur le bus. Le service IT adopte quant à lui une approche ascendante en partant des actifs existants pour introduire ces services métier sur le bus. Au moment de l'exécution, le bus offre la couche d'indirection nécessaire pour adapter rapidement les services disponibles aux besoins réels. L'aptitude à surveiller en permanence le flux de messages entre les services améliore en outre la facilité de gestion. Lors du développement, le bus définit une ligne de but qui concentre les efforts de chacun. La facilité de gestion est également optimisée par la capacité à mesurer la différence entre les services nécessaires et les services disponibles. Pour les besoins du développement, la solution Oracle Business Integration fournit aux équipes métier tous les outils dont elles ont besoin pour décrire la manière dont les processus doivent s'exécuter. Elle offre au service IT les outils nécessaires pour développer le logiciel qui garantira la bonne exécution des processus. Tout aussi important, la solution fournit l'infrastructure de développement nécessaire pour garantir une collaboration efficace et l'infrastructure d'exécution nécessaire à une exécution robuste. Le service IT dispose ainsi d'un logiciel flexible et les utilisateurs métier de processus tout aussi flexibles. Avec des produits à la pointe de la technologie, des pratiques d'excellence et des équipes qui consacrent toute leur énergie à la mise en oeuvre de l'intégration métier dans toute l'entreprise, Oracle est leader sur le marché en matière de flexibilité. Adopter une approche BPM et SOA pour une intégration métier tout en souplesse Page 12 Oracle se réserve le droit d'effectuer ultérieurement des modifications du contenu de ce document. Oracle Corporation Siège Mondial 500 Oracle Parkway Redwood Shores, CA 94065 U.S.A. Informations internationales : Téléphone : +1.650.506.7000 Fax : +1.650.506.7200 www.oracle.com Oracle Corporation fournit les logiciels qui constituent le cœur d'Internet. Oracle est une marque déposée d'Oracle Corporation. Les divers noms de produits ou services mentionnés peuvent être des marques d'Oracle Corporation. Tous les autres noms de produits ou services cités peuvent être des marques appartenant à leurs propriétaires respectifs. Copyright © 2009 Oracle Corporation. Tous droits réservés.