Business Integration Besoins en Business Integration Intégration de données (EII) Intégration d'applications (EAI) L'architecture SOA pour votre SI Le commerce électronique B2B 1
1. Introduction L existant Nombre croissant de données dispersées dans une grande variété de sources de données hétérogènes Données internes à l entreprise (protégées par un firewall) et externes, chez des fournisseurs, des partenaires ou des clients Le besoin Les applications doivent accéder et combiner ces données efficacement, facilement et en toute sécurité Le B2B nécessite l intégration lâche des systèmes d information par les données Introduction 2 2
Les niveaux d'intégration Intégration d'applications Business Process EAI Intégration de données BD Fédérées EII Intégration de plate-formes Standards J2EE Web Services Systèmes Réseaux SGBD Introduction 3 3
Intégration données et d'applications (EIS) Intégration de données (EII) 1 serveur d'applications N sources de données Accès unifié par vues et requêtes Intégration d'applications (EAI) N serveurs d'applications 1 serveur d'intégration Échange de données inter-applications Pilotage par workflows Introduction 4 4
Enjeux de l intégration Selon études IBM: pour 1$ dépensé pour une application packagée, de 5 à 9$ sont dépensés pour assurer son intégration Selon le Gartner: 40% des budgets IT sont dépensés en intégration Selon Morgan Stanley: l intégration de données est devenue la priorité N 1 des entreprises en conjonction avec le e-business et le CRM Introduction 5 5
2. Intégration de données (EII) Base de données intégrée virtuelle approche où les données intégrées ne sont pas matérialisées dans un SGBD intégration à la demande pour répondre aux requêtes Seules les données utiles sont manipulées L utilisation d un cache augmente les performances Limitations performance calculs d intégration complexes, sources lentes ou indisponibles Difficultés de mises à jour Intégration de données 6 6
Exemple de scénario Systèmes classiques CLIENT Site 5 Données techniques Commandes, Clients, Factures Site 1 Site 4 Opérations des produits Réseau de communication Données textuelles Données géographiques Site 2 Site 3 Descriptions des produits SERVEUR Localisation des clients Intégration de données 7 7
Hétérogénéité des modèles Source 2: Repository XML Buveurs Vins Source 1: SGBDR Nom DateN Pays Type NV Cru Mill Degre <!ELEMENT Vin (Cru, Degre, Description+)> <!ATTLIST Vin nv CDATA #IMPLIED> <!ELEMENT Buveur (Nom, Place,Date, Type)> <!ATTLIST Buveur nb CDATA #IMPLIED> <!ELEMENT Catalogue (Vin, Offre, Publicité?)+>... Source 4: LDAP <personne> Source 3: WEB boire Personne Boisson <service> <employé> <chef> <buveur> <vins> Intégration de données 8 <Région> <Description> 8
Vue intégrée pour la médiation Schéma intégré mappings Schéma source Schéma source Source 1 Source 2 Méthodes de mapping Descendante (le schéma de médiation est une vue) - GAV Ascendante (le schéma source est une vue) - LAV Mixte (la combinaison de schémas sources est une vue) Intégration de données 9 9
Hétérogénéité des langages Source 1: RDBMS Source 2: XML Repository ODBC/JDBC SQL SOAP XQuery Google Text Queries Source 3: WEB LDAP QUERY Source 4: LDAP WEB Services Intégration de données 10 10
Architecture DARPA I3 Niveau Client Applications objet Facilitateur 1 Applications client Browser web Facilitateur 2 Services Interaction Services Coordination Niveau Médiation Médiateur 1 Médiateur N Services Integration Niveau Source Wrapper Source 1 Wrapper Source 2... Wrapper Source N Services Translation Services Accès Intégration de données 11 11
Traitement d une requête globale Source 1 + Wrapper 1 Traduction Traduction q1 q2 Vue Intégrée Décomposition Intégration Médiateur Vue utilisateur Q Source 2 + Wrapper 2 Dans tous les cas, le médiateur génère des sous-requêtes optimisées à partir de Q Intégration de données 12 12
Schéma de médiation XML Atouts Un modèle complet (XML Schema) plus riche que le relationnel Permet de mixer documents et données structurées Langages de requêtes normalisé: XQuery, SQL/XML Bien adapté aux échanges B2B: Unification des noms possible, mécanisme de "namespaces" Difficultés : Technologie complexe à maîtriser Performance de XML (texte) Intégration de données 13 13
Des produits industriels Enosys Médiateur XQuery Librairie de wrappers Nimble.com Racheté par Actuate Base d'intégration sémantique Correspondance entre Xpath IBM Xperanto XQuery au-dessus de SGBDR Compilation en SQL Médience (INRIA BO) Relationnel + API XML Liquid Data (BEA) Dérivé de Enosys Vues XML/XQuery IBM Information Integrator Système hybride SQL et XML Basé sur SQL/XML OLE/DB.NET Extension de OLE/DB à XML Interrogation SQL for XML DENODO Plate-forme d'intégration SQL Extension à XQuery en cours Intégration de données 14 14
IBM DB2 Information Integrator Accès unifié à des vues SQL/XML Tables virtuelles avec colonnes XML docs Interrogation en SQL/XML SQL avec fonctions XPath Accès à toute source SQL (DB2, Oracle, Sybase, etc.) MQ message queues Lotus Notes Documentum Enterprise Content Management System web search engines and Web services MS Excel spreadsheets, XML docs and more Intégration de données 15 15
BO Data Integrator Intégré à BO XI Solution mixte Relationnel/XML Application #1 Site #1 Données CD Server Server Site #2 Données DR Site #3 Application #2 Architecture récursive Server Application #3 Données NP Intégration de données 16 16
Liquid Data de BEA Architecture intégrée à WebLogic Intégration de données 17 17
XLive (Open Source) Schéma de médiation XML Sources de données: BDs, XML, fichiers, services Web Interfaces applicatives : XDBC, insertion dans des sources Méthode de mapping descendante Version Open source disponible Industrialisée par start up fermée début 2003 Médiateur en Open Source (www.prism.uvsq.fr) Version issues de exmlmedia (www.xquare.com) Intégration de données 18 18
Bilan Les bases fédérées s'orientent vers XML XQuery distribué est en marche Technologie idéale pour Portails BD Interrogation multi-sources Exemples d'applications Le dossier patient virtuel Le portail touristique Problèmes Architecture complexe Performance Intégration de données 19 19
3. Intégration d'applications (EAI et XML) Enterprise Application Integrator Échange de données entre applications Transformation et fusion des sources Stockage intermédiaire en BD Diffusion vers les cibles Pilotage des flots (Workflow) Connexion avec bus applicatif (CORBA, DCOM) De plus en plus souvent basés sur XML EAI et XML 20 20
Intérêt d'un modèle pivot L'intégration d'information nécessite un modèle pivot (global, fédérateur, d'échange) XML est conçu pour cela Les Services Web peuvent être invoqués pour produire/consommer du XML SOAP est de plus en plus présent n+m versus n*m EAI et XML 21 21
Structure d'un EAI Hub and Spoke Bus (ESB) Application J2EE Application Siebel Application J2EE Hub EAI Application SAP Application SAP Application.NET Bus EAI Application Siebel Application.NET EAI et XML 22 22
Les couches Couche transport Transport des messages depuis l'eai aux applications et vice-versa Peut ou non intégrer Intranet/Internet Couche transformation et routage Transformation et intégration des messages Routage vers les applications Couche modélisation métier Modélisation des flux (workflow) Définition des objets métiers De plus en plus basée sur BPM (Web services) EAI et XML 23 23
Le transport Request Queue EAI et XML Application 24 Response Queue Serveur EAI Connectivité du réseau Gestion des messages et files d'attentes Sécurité et cryptage Logging et répétition des messages Routage des messages Utilisation TCPIP, HTTP, SOAP, SMTP, IIOP, Message-Oriented Middleware (MOM) 24
La transformation De l'application au modèle d'échange (XML) Connecteur, Adaptateur, Extracteur Transforme une source en XML De XML à XML Utilisation de XSL Intégration de N flots en 1 Du modèle d'échange à l'application Connecteur, Adaptateur, Publisher Présente les données aux applications La gestion des méta-données Formats et règles Annuaire des applications et utilisateurs EAI et XML 25 25
Les processus métiers Modélisation de processus métiers Enchaînement d'activités Echange de messages XML Transactions courtes et longues Intégration des Services Web API standards décrites en WSDL Langages d'orchestration (WFSL, XLANG, BPEL,...) Interpréteur des workflows Généralement centralisé Pilote les processus et échanges EAI et XML 26 26
Architecture fonctionnelle Dévelop. Admin. C O N F I G U R A T I O N Workflows Chemins Règles Formats Processus Métier Routage Messages Transformation Connecteurs S U P E R V I S I O N A D M I N I S T R A T I O N TRANSPORT Progiciels SGBD Fichiers Application EAI et XML 27 27
Types d'échanges 1) Fire and Forget No Response required X X 4A/B) A B EAI XREF Y EAI Multiple Applications needed to satisfy request 4A: XREF Look-up C X 2) Request / Reply System makes request and gets response EAI X Y EAI A B C 5) Publish Subscribe A, B and C subscribe to message X 3) Needs ability to cache response from multiple requests to respond to one message 6A) X Y EAI Y EAI Needs data from Z to be able to update Y Z 4B: XREF Update EAI et XML 28 28
Exemple: MS BizTalkServer BizTalk Server offre un moyen sophistiqué de créer une activité commerciale avec échanges de documents XML BizTalk Serveur est basé sur.net, SQL Server et les Web Services Possibilité de création automatique des documents XML suivant une base de donnée existante (vues XML) Bibliothèque de schémas extensibles (Editor) Définition graphiques des mappings (Mapper) Support du Business Process Management et de transactions longues avec BPEL Support des standards de sécurité XML EAI et XML 29 29
Architecture de base Message Format 1 Business Rule Engine Message Format 2 Receive Port Adapter Receive Pipeline Orchestration #1 Orchestration #2 Send Port Adapter Send Pipeline Host Tracking DB Publish and Subscribe Message Box (SQL) Config DB DB EAI et XML 30 30
Exemple de flux dans BizTalk Server Fichier plat Processus métiers Fichier plat Orchestration Adresse de réception Port destination Receive Adapter Send Adapter Receive Pipeline <tag> <tag> Mapping <tag> <tag> Send Pipeline XML EAI et XML XML Message Box 31 XML 31
Les outils de développement Schémas Orchestration Modélisation du processus métier Définition des documents métiers Record PO Status ItemID Qty UnitPrice Date Customer Name Title Item Header Field1 PO Field2 Status Field3 Item Field1 Field2 Field3 Pipelines Visual Studio.net Analyse des Messages Transformation des données Header PO Status Item Field1 Field2 Mapping Order PO Date Detail FieldA FieldB EAI et XML 32 Field3 32
Exemple de scénario B2B Modélisation d'une activité commerciale Process Buyer Process Supplier Génération et échange de message XML/SOAP Tests et contrôles Total < $1000 EAI et XML 33 33
Evolution du marché des EAI Intégration des services web Intégration du «business process management» Architectures en bus ESB Vers les architectures SOA L'évolution d'ibm est typique... Fusion avec les serveurs d'applications? Autres "key-players" : Tibco www.tibco.com BEA WebLogic Integration www.bea.com Oracle Integration Server www.oracle.com WebMethods www.webmethods.com Seebeyond www.seebeyond.com Vitria www.vitria.com Mercator www.mercator.com Axway (Sopra) EAI et XML 34 34
4. L architecture SOA pour le SI Service Oriented Architecture = Architecture Orientée Services Système d information structuré de manière à ce que les différentes ressources (données, traitements, processus, infrastructure) soient accessibles uniquement par envoi de messages normalisés vers leurs interfaces. Modèles de services Composants distribués Modèles objets procedures Agilité SOA 35 35
Briques de base Modélisation des processus métiers A partir des Uses Cases avec UML Bibliothèque de service déclenchés messages Définis par des documents XML stables et homogènes Implémentation sur de multiples plate-formes Hétérogènes, encapsulation de l'existant SOA 36 36
Web services et Bus d entreprise Des Web Services encapsulant l existant Basés sur les standards WSDL, SOAP, UDDI Assure l interopérabilité des composants Un bus d entreprise Médiateur entre services producteur et consommateur Backbone pour la fiabilité des messages Assure le routage des messages Propose un cadre sécurisé Couche transport des EAI mais distribuée (P2P) SOA 37 37
Enterprise Service Bus (ESB) EAI à prises Web services Bus de services distribués Backbone pour messagerie fiable Routage intelligent basé contenu Coordination des processus Cadre sécurisé Transformation XML Exemples: SONIC, TIBCO IBM, WebMethods, SOA 38 38
Niveaux de composition: de la technique au métier Des services gros grains composés en BP SOA 39 39
Architecture Fonctionnelle Outils de Conception Applications Composites Processus métiers Messages XML Fiables et Sécurisés Services Métiers et Données Moteur BPEL Bus Logiciel d Entreprise (ESB) Plateformes hétérogènes SOA 40 40
Bénéfices S'appuie sur les standards Encapsule la complexité Favorise la réutilisation Facilite le développement de business process Fiabilise les business process Simplifie des échanges inter-entreprises Sécurise les échanges Choix de plate-formes inter-opérables.net J2EE SOA 41 41
Une méthode de conception intégrée Une méthodologie multi-niveaux Stratégie du SI d entreprise Définition des processus métiers (BP) Définition des Web services (WS) Encapsulation de modules existants Définition de nouveaux services Aller retour BP WS Prototypage et mesures de performance Un pont depuis UML Cas d usages Processus métiers Scénarios Workflows Paquetages Web services SOA 42 42
Les niveaux de maturité D après Progress Software Corporation, AmberPoint Inc., BearingPoint, Inc., Systinet Corporation. SOA 43 43
Niveau 3: Modélisation processus métiers SOA 44 44
SOA: Ce qu il ne faut pas faire Partir totalement des applications existantes Encapsulation parfois lourde et service mal taillé Refaire totalement les applications existantes Réfaction coûteuse faisant perdre ce qui marche bien Développer de nombreux services Web Granularité et réutilisation sont les objectifs, pas le nombre S appuyer sur un pare-feu XML pour la sécurité Solution lourde et insuffisante pour trapper les attaques Ne pas user trop des attachements binaire SOAP Compatibilité et évolution difficile Utiliser trop ou pas assez d outils mal évalués Difficultés: intégration et performance; les benchmarks manquent SOA 45 45
Quelques produits labellisés SOA Axway: Axway Synchrony Progress Software: Sonic ESB TIBCO: TIBCO ActiveMatrix BEA: Aqualogic Service Bus Casewise: SOA Accelerator Information Builders/iWay Software : iway SOA Middleware Oracle: Oracle SOA Suite SAP: Sap Netweaver Software AG: suite Crossvision webmethods: webmethods Fabric Obeo : Acceleo Open sources JBoss ESB Open ESB ServiceMix Mule PEtALS Consortium ObjectWeb Intalio SOA 46 46
Exemple de Produits: IBM WebSphere + Business Modeler : Modélisation des processus Rational Architect : Modélisation des composants (WS) et messages Integration Developer : Développement du code ESB, Process Server : Déploiement et exécution Business Monitor Monitoring et surveillance SOA 47 47
Quel futur pour SOA? De nombreux projets, peu de recul SNCF Impôts 94 en France (2006) avec IBM Sonic mentionne de multiples projets aux USA Les outils sont là Manque de méthodologie claire mais en progrès Une nouvelle approche pour les SI Modularité Interopérabilité Couplage lâche Sécurité SOA 48 48
5. Le Commerce B2B avec XML Reprise des objectifs de l'edi Rationaliser les flux d'information de l'entreprise Optimiser les approvisionnements Supprimer les doubles saisies manuelles Améliorer la traçabilité des produits Permettre une réactivité plus forte des organisations Assurer une meilleure flexibilité et qualité de service Utiliser Internet et les échanges XML Réduction des coûts Support de standards Démocratisation de l'edi B2B 49 49
Marché du B2B sur Internet Monde $ 800 milliards en 2002 $ 12 trillons en 2006 Europe 150 milliards en 2002 2,2 trillons en 2006 22% du business D'après Forrester Research. B2B 50 50
Composants d une plateforme d échanges BtoB Interface avec le système d information de l entreprise Peut s appuyer sur un EAI Traduction des données Mise au format EDIFACT, XML, Gestion des messages Réseau d échange RVA, Internet, Garantie de service et sécurité dans les échanges. Gestion des processus métiers Enchainement des traitements distribués (séquence, parallélisme) Gestion de la sécurité Trace, confidentialité, archivage Reporting et tableaux de bord 51 51
Architecture type (EDI-XML) Donneur d'ordre Serveur d'échange Internet Fournisseur Message XML SYS. INFO. EAI Navigateur EDIXML Sécurité Formulaires B2B 52 52
Apports de XML Prise en compte de messages «standardisés» Transactions sur catalogue (cxml, xcbl, UBL ) Cadres pour la composition (Rosettanet, ebxml,.) Description des partenaires et artifacts Références des partenaires (annuaires) Description des messages et processus (registres) Gestion des processus d échanges Modélisation par workflows (BPEL, BPSS ) Orchestration des messages (EAI) Garantie de sécurité Utilisation de messages cryptés, signés, B2B 53 53
Quelques dialectes B2B Nom cxml xcbl UBL RosettaNet OAGIS FIX Description Catalogue électronique et transactions Business components Pour commerce sur catalogue (product,catalog,...) Librairie de business documents (purchase orders, invoices, etc.) Cadre XML pour l'industrie et référentiel de formats PIP = Partner Interface Process Formats de messages pour les contenus (catalogues,livraison,.) Formats de messages pour données financières (trading) Organisation Ariba Commerce One,... http://www.xcbl.org OASIS Consortium CommerceNet OAG (Open Application group) De facto standard http://www.fixprotocol.org B2B 54 54
Exemple: FIX (Finance) B2B 55 55
Autres Protocoles Santé HL7 Gestion du Patient: diagnosics, traitements, prescriptions, etc. http://www.hl7.org Banque et Marchés Financiers IFX - Interactive Financial Exchange : trades, banque, transactions client, etc. http://www.ifxforum.org SWIFT http://www.swift.com Assurance ACORD Gestion des Polices Indemnités, réclamations, etc. http://www.acord.org Distribution IXRetail Inventaire, transactions client, et gestion des employés http://www.nrf-arts.org Business to Business cross-industrie (y compris Gouvernement) UBL Transactions B2B Factures, Commandes, statut inventaire, etc. B2B 56 56
UBL de l'oasis Order, LineItem, Party, Item, Deliverery,... B2B 57 57
Nécessité d'ouvrir les protocoles Beaucoup de protocoles sont disponibles DTDs XML et schemas XML, Business Process Tout business doit pouvoir commercer avec tout autre business Nécessité d'étendre ou spécialiser des messages Nécessité de définir des nouveaux messages Respecter un guideline (comme EDIFACT) Intitiative ebxml Protocoles ouverts Architecture de référence B2B 58 58
XML for e-business : ebxml Mission "To provide an open XML-based infrastructure enabling the global use of electronic business information in an interoperable, secure and consistent manner by all parties." Supporté par UN/CEFACT (EDIFACT) et OASIS Résultats Architecture patronnée par 850.000 entreprises Groupes de travail et spécifications associées: OASIS = Infrastructure UN/CEFACT = Sémantique Quelques applications et outils «conformes». ebxml 59 59
Les groupes de travail La pile de travail ebxml OASIS Infrastructure de communication (Messaging) Référentiel et annuaires de documents (Registry) Recherche d'agréments entre partenaires (CPA) UN/CEFACT Librairie de vocabulaires XML (Components) Business Process Modeling Language (BPSS) 60 60
Architecture fonctionnelle I M P L E M E N T A T I O N DECOUVERTE et ECHANGES ebxml 61 61
Des dialectes ouverts Spécifications de composants de base Exemples : Adresse, Référence client, etc. Peuvent être spécifique d un domaine (santé, etc.) Stockés en «core library» Assemblage pour un business Définition des objets et processus du business Stockage en référentiel (repository) Possibilité d utiliser UML Pour assembler les «core components» Pour générer les schémas XML ebxml 62 62
Exemples de «Core Components» Person Name: text Birth: date Residence address: Address Official address: Address Address Street: text Town: text Country: identifier Post code: text ebxml Amount Binary Object (plus Graphic, Picture, Sound, and Video) Code Date Time (plus Date and Time) Identifier Indicator Measure Numeric (plus Value, Rate, and Percent) Quantity Text (plus Name) 63 63
Où va ebxml? Des comités productifs Business Process Core Components Collaboration Protocol Messaging Registry / Repository Implementation Quelques outils open source Repository Quelques protocoles de base UBL ebxml 64 64
6. Bilan Business Integration Intégration de données BD fédérées via XML Support de XQuery et/ou SQL/XML Intégration d applications EAI XML et Web Services Business Process et SOA Support de BPML B2B Protocoles ouverts standards Plate-forme ouverte B2B en perspective Intégration des web services (UDDI, SOAP et BPEL) Questions? Bilan 65 65