Gestion des données de références par une
Transcription
Gestion des données de références par une
Gestion des données de références par une approche d’Ingénierie Dirigée par les Modèles Myriam Lamolle* — Ludovic Menet*,** *Laboratoire d’INformatique et de Communication (LINC) IUT de Montreuil, Université Paris 8 140 rue de la nouvelle France F-93100 Montreuil {m.lamolle, l.menet}@iut.univ-paris8.fr **Orchestra Networks, département R&D 75 boulevard Haussmann F-75008 Paris [email protected] RÉSUMÉ. La fédération de sources de données et la définition de modèles de données pivots sont des problématiques fortement liées. Cet article présente une solution de médiation basée sur une architecture XML et sur la gestion des données de références (ou MDM pour Master Data Management). Dans ce contexte, les modèles de données pivots utilisent le standard XML Schema qui permet la définition de structures de données complexes. L'introduction d'une approche d’Ingénierie Dirigée par les Modèles (IDM) est un moyen de rendre plus souple la phase de modélisation. Pour ce faire, nous utilisons UML comme couche de modélisation abstraite. En effet, UML est un langage de modélisation objet reconnu comme un standard dans le domaine du génie logiciel, ce qui en fait un candidat idéal pour la modélisation des modèles XML Schema. Nous appliquons les caractéristiques du formalisme UML, par le biais de profils, pour faciliter la définition et l'échange de modèles. ABSTRACT. The federation of data sources and the definition of pivot models are strongly interrelated topics. This paper explores a mediation solution based on XML architecture and the concept of Master Data Management. In this solution, pivot models use the standard XML Schema allowing the definition of complex data structures. The introduction of a MDE approach is a mean to make modeling easier. We use UML as an abstract modeling layer. UML is a modeling object language, which is more and more used and recognized as a standard in the software engineering field, which makes it an ideal candidate for the modeling of XML Schema models. In this purpose we introduce features of the UML formalism, through profiles, to facilitate the definition and the exchange of models. MOTS-CLÉS : IDM, Master Data Management, Metamodel, UML, XML Schema KEYWORDS: MDE, MDA, Master Data Management, Metamodel, UML, XML Schema Ingénierie d’entreprise et des systèmes d'information 2009, pages 1 à 12 2 Ingénierie d’entreprise et des systèmes d'information 1. Introduction L'évolution des réseaux informatiques et des systèmes de gestion de données a conduit à l'avènement de systèmes d'information à grande échelle au sein des entreprises. Ces systèmes utilisant de plus en plus le Web pour partager et propager de l'information sont caractérisés par des sources de données de nature très différente. En effet, ces sources peuvent être distribuées, hétérogènes ou autonomes. En conséquence, la gestion de l'information devient complexe, inefficace, coûteuse et de qualité incertaine. En ce qui concerne l’hétérogénéité des sources de données trois besoins apparaissent : (i) Intégrer des données pour unifier les différentes sources, (ii) Utiliser un modèle de données unifié fédérant les différents modèles associés aux sources de données, (iii) Minimiser le nombre d’outils gérant les données afin de les exploiter efficacement. Le Master Data Management (MDM) est une discipline émergente se focalisant sur ces trois points. Le MDM vise à intégrer les données réparties dans de multiples systèmes par la définition d’un référentiel maître sous la forme d’un entrepôt de données. Ce référentiel maître centralise à la fois les structures de données, grâce au modèle de l’entrepôt de données, et les contenus, mais aussi la mise en place d'outils de gestion via une unique application garantissant ainsi la pérennité des données vis à vis des systèmes applicatifs. Notre approche MDM est basée sur le standard XML recommandé par le W3C (W3C, 2000), car la standardisation du langage XML en a fait une technologie appropriée pour les systèmes d’intégration de données. Dans notre architecture, le modèle de données unifié (ou pivot) que nous appelons modèle d’adaptation est un document XML Schema (W3C, 2004) permettant de définir des modèles complexes, structurés, typés et riches. Cependant, si l'utilisation de XML est appropriée à la définition des modèles, elle nécessite une connaissance approfondie de ce langage par les différents acteurs impliqués dans le processus de définition d’un modèle de données pivot. Cette problématique nous a suggéré l'introduction d'une démarche guidant les concepteurs de modèle données de façon qu'ils puissent se concentrer uniquement sur la modélisation et l’intégration de données et non sur la technologie à utiliser. L’adoption d’une approche objet et standard pour améliorer la compréhension du modèle et la sémantique associée (sémantique MDM dans nos perspectives) semble être une voie simple et efficace. Aussi, l’objectif principal de nos travaux est de suivre une approche d’Ingénierie Dirigée par les Modèles (IDM) pour faire abstraction de la couche technologique (physique) au profit de la couche fonctionnelle (logique). L’aspect fonctionnel est délégué à UML (UML, 1997) et complété par des profils UML pour définir les sémantiques spécifiques à nos domaines de recherche que sont le MDM et XML. Le passage de la solution fonctionnelle à la solution technologique est assuré par des processus de transformation de modèles basés sur des formalismes standards tels que Meta Object Facility (MOF, 2006) et XMI (Iyengar et al., 1998). Dans cet article, nous présentons une application des concepts IDM au domaine MDM dédié à l’intégration de données. La suite de cet article est organisée de la IDM appliquée au MDM 3 manière suivante : la section 2 présente l’approche d’intégration de données par Master Data Management ; la section 3 détaille notre architecture XML d’intégration de données ; la section 4 présente l’introduction d’une approche IDM appliquée au domaine du MDM. 2. Intégration de données par Master Data Management Dans le contexte de l’interopérabilité de sources de données hétérogènes, il existe deux principales approches d’intégration de données à savoir l’approche virtuelle (ou par médiateur) (Garcia-Molina et al., 1997), et l’approche matérialisée (ou par entrepôt) (Abitboul et al., 2002). Le Master Data Management est une approche émergente d’intégration de données basée sur l’approche matérialisée. Le MDM étant une discipline récente, très peu de travaux existent à ce jour (iWays Master Data center, Oracle MDM suite, IBM MDM, Orchestranetworks MDM). Le MDM a été défini comme étant une approche focalisée sur l’intégration et la centralisation des données, modèles et outils au sein d’un système d’information. Actuellement, la majorité des systèmes d’information est caractérisée par une hétérogénéité en terme de données et de solutions de paramétrage. En effet, cette hétérogénéité se présente principalement sous trois aspects : (i) Diversité des systèmes de stockage (bases de données, fichiers, annuaires, etc.), (ii) Diversité des formats de données (tables, fichiers propriétaires, documents XML, etc.), (iii) Diversité des solutions proposées pour gérer les différents types de données. Cette hétérogénéité, à la fois dans les données et dans les solutions existantes sur le marché, a pour conséquence de rendre lourde, complexe et coûteuse la mise en œuvre et l’exploitation de ces données par les applications de l’entreprise. Utiliser un ensemble d’applications différentes afin de pouvoir gérer cette diversité dans les types de données entraîne inévitablement de la redondance tant au niveau des données que des outils. En l’absence de MDM, la propagation des mises à jour de données se réalise sans référentiel central ni modèle commun d’information, dans un style d’architecture souvent qualifié de «point à point». Ce style est assez courant en architecture ETL1/EAI2 de base, sans MDM. La figure 1 illustre, de manière simplifiée, cette architecture. 1. Extraction Transformation Loading 2. Enterprise Application Integration 4 Ingénierie d’entreprise et des systèmes d'information Figure 1. Propagation des données en mode point à point L’absence de référentiel central et de modèle commun d’information rend difficile, parfois impossible, la mise en place de règles mutualisées pour le contrôle de la qualité des données, de même qu’il n’est pas évident d’assurer une traçabilité des échanges. Au mieux, il peut exister une piste d’audit mais pas de référentiel structuré de stockage de l’information échangée, du fait de l’absence d’un modèle commun d’information. À l’inverse, avec l’utilisation d’un MDM (figure 2), nous disposons d’un référentiel central qui incarne le modèle commun d’information. Les propagations des mises à jour des données se mènent à partir du MDM. Le mode «point à point» est alors abandonné, de manière progressive. Ce style d’architecture allège les traitements de transformation de données et renforce les possibilités d’administration des données, en particulier en terme de traçabilité et de contrôle qualité sur les échanges. Figure 2. Propagation des données avec une approche MDM IDM appliquée au MDM 5 Toutefois, deux conditions sont nécessaires à ce style d’architecture : (i) il faut disposer d’un outil de MDM générique capable d’accueillir le modèle commun d’information pour toutes les natures de données. Sans ce niveau de généricité, il faudrait accepter des MDM par silos organisés autour des domaines d’information (Client, Produit, Organisation, paramètres fonctionnels, paramètres techniques, etc.) et les conséquences néfastes en terme de duplication des référentiels (ce que l’on cherche à éviter) et de duplication des fonctions de gouvernance (gestion des versions, interface homme-machine d’administration, etc.). (ii) il faut une méthode pour la modélisation et la négociation du modèle commun d’information faisant abstraction des formats « propriétaires » des différents systèmes. Le premier point est assuré par la solution MDM que nous présenterons dans la section 3. L’introduction d’une approche IDM pour définir des modèles de données pivot est une solution grandement envisageable pour le second point. 3. Solution MDM EBX.Platform 3.1. Architecture Basé sur le standard XML Schema, EBX.Platform simplifie la définition de modèles qui ont pour but d’unifier les données de référence d’une entreprise. En utilisant la technologie XML Schema, ces modèles peuvent être de tous types (simples, complexes) et de toutes natures (métiers, techniques, graphiques). Un des principaux avantages de XML Schema est de permettre la définition de modèles de données structurées, typées et ayant de puissantes propriétés de validation. La figure 3 présente l’architecture de notre solution MDM. Figure 3. Architecture EBX.Platform 6 Ingénierie d’entreprise et des systèmes d'information 3.2. Concepts EBX.Platform repose sur deux principes à savoir (i) les modèles d’adaptation qui sont des documents XML Schema définissant la structure des données de référence et (ii) les adaptations qui sont des instances XML des modèles d’adaptation représentant le contenu des données de référence. L’utilisation de XML Schema permet de préciser que chaque nœud du modèle de données correspond à un type de données existant et conforme au standard du W3C. D’autre part, le formalisme de XML Schema permet de spécifier des contraintes (énumération, longueur, bornes inférieures et supérieures, etc.), des informations relatives à l’adaptation et à l’instanciation (connecteurs d’accès, classe d’instanciation Java, restriction d’accès, etc.) et des informations de présentation (libellé, description, formatage, etc.) pour chaque nœud du schéma. Une adaptation est une instance du modèle d’adaptation. Pour tout nœud du modèle d’adaptation déclaré valorisable correspond un nœud dans l’adaptation. Si un modèle d’adaptation possède plusieurs adaptations alors nous considérons qu’un arbre d’adaptation est manipulé : Figure 4. Arbre d’adaptation La structure sous forme d’arbre entre les instances d’un modèle permet de d’implémenter la notion d’héritage de données entre les différentes instances et de répondre aux besoins de cohérence de données entre le siège et les filiales d'une entreprise par exemple. De plus, la gestion des droits d’accès appliquée aux données permet à EBX.Platform de répondre aux problématiques d’entreprises étendues. Ce type d’entreprises regroupe différents acteurs économiques travaillant en étroite coopération sur divers domaines et mutualisant des compétences et informations à travers un système d’information unifié. Une stratégie de droits d’accès s’avère cruciale dans la mesure où chaque entité de cette entreprise doit être capable de restreindre ou non l’accès à ses propres données. IDM appliquée au MDM 7 4. Approche IDM appliquée au Master Data Management La figure 5 synthétise le processus de modélisation d’un MDM. Notons que la modélisation logique peut se mener suivant deux scénarii, soit en utilisant le formalisme UML sous la condition d'une capacité à générer via une approche IDM les schémas de données attendus par l’outil MDM, soit directement à l’aide d’un éditeur XML Schema souvent associé à une notation propriétaire. La modélisation logique est contrainte par certaines directives amenées par l’outil MDM afin de garantir la réutilisation du modèle logique pour la production du logiciel. Les modélisations amont, à savoir sémantique (métier) et pragmatique (organisation), restent indépendantes de l’outil MDM. Figure 5. Processus de modélisation d’un MDM Nos travaux se focalisent sur le scénario #1 (voir figure 5) de modélisation de modèles de données pivot à partir d’une approche IDM. L’introduction d’une approche IDM appliquée au Master Data Management à pour vocation de rendre générique et standard le processus de définition d’un modèle de données pivot. Pour y parvenir nous introduisons une couche d’abstraction par métamodélisation UML permettant de représenter un modèle d’adaptation indépendamment de son domaine d’application. 4.1. Métamodélisation de modèles d’adaptation La métamodélisation de modèles d’adaptation est une première étape à l’introduction d’une approche IDM. La métamodélisation a été standardisée par 8 Ingénierie d’entreprise et des systèmes d'information l’OMG (Cattell et al., 1999) qui a préconisé l’utilisation du Meta Object Facility (MOF) pour la définition de métamodèles. La métamodélisation d’un modèle d’adaptation a pour but de représenter de manière abstraite la sémantique dédiée à la représentation d’un modèle de données pivot associé au domaine du MDM. L’OMG recommande d’utiliser les formalismes UML pour définir un métamodèle et Object Constraint Language (OCL, 2002) pour spécifier les contraintes entre les éléments de celui ci. Cependant, ces deux formalismes ne sont pas suffisants et présentent un nombre limité d’entités pour représenter des modèles, dits Platform Specific Model (PSM), associés à une technologie particulière. Pour pallier ces limitations, il est possible de spécialiser le métamodèle UML en ajoutant des éléments et des contraintes additionnelles. Cette spécialisation est possible par l’intermédiaire de Profils UML. Nous choisissons de respecter l’architecture « 4 couches » du MOF pour étendre et spécialiser le métamodèle UML aux sémantiques de XML Schema et du MDM. La figure 6 représente cette architecture définissant un métamodèle des modèles d’adaptation. Figure 6. Architecture 4 couches appliquée au MDM Pour implémenter notre solution, nous nous focalisons essentiellement sur la couche M2 de l’architecture MOF pour « métamodéliser » un modèle d’adaptation à l’aide de profils UML. IDM appliquée au MDM 9 4.2. Enrichissement des métamodèles par profils UML Notre objectif est de faciliter et de standardiser la modélisation de modèles d’adaptation basés sur le formalisme XML Schema et dédiés au domaine du MDM. A ce jour, la modélisation graphique de modèles XML Schema n’est pas standardisée. Il existe certes des outils pour la modélisation de modèles XML mais ceux-ci sont restreints à la sémantique de XML Schema (Altova XML Spy, etc.). En effet, ces outils sont dans l’incapacité de guider l’utilisateur dans l’utilisation des concepts introduits par les modèles d’adaptation, et plus généralement dans l’utilisation d’extensions spécifiques. L’introduction d’un formalisme de définition de modèles est un moyen de rendre la modélisation plus accessible. UML est un langage de modélisation objet de plus en plus utilisé et reconnu aujourd’hui comme un standard dans le domaine du génie logiciel, ce qui en fait un candidat idéal pour la modélisation des modèles d’adaptation. La spécialisation du langage UML par l’intermédiaire de profils est un moyen de standardiser et de rendre générique la définition de modèles d’adaptation. Ces modèles étant à l’origine défini à l’aide de XML Schema et dédiés au domaine du Master Data Management, nous définissons deux profils UML où le premier est dédié à la sémantique de XML Schema et le second appliqué à la sémantique du Master Data Management. 4.2.1. Profil XML Schema UML est un formalisme de modélisation objet qui définit des notions telles que la généralisation, la composition et l’agrégation. Dans un premier temps, nous nous proposons d’introduire des métadonnées matérialisant ces spécificités objet dans le métamodèle XML Schema (notées nom_concept_objet_UML à la ligne 3 de la figure 7). L’ajout de ces notions objet est une première étape d’homogénéisation des formalismes UML et XML Schema. Pour ceci faire, nous utilisons les mécanismes d’extensions préconisés par XML Schema, soit, pour chaque métaconnaissance, une description sous la forme de l’extension suivante : …<xs:annotation> [1] <xs:appinfo> [2] <osd:nom_concept_objet_UML/> [3] </xs:appinfo> [4] </xs:annotation>… [5] Figure 7. Extension XML Schema représentant une métaconnaissance objet L’ajout de ces métadonnées dans les modèles d’adaptation permet d’inclure des spécificités objet d’UML et de mettre en évidence des relations entre certains concepts. Au delà de notre processus de mappings entre XML Schema et UML, ces métadonnées contribuent à optimiser certains traitements tels que la factorisation de 10 Ingénierie d’entreprise et des systèmes d'information données, l’optimisation d’arbres, la suppression d’instances devenues inutiles (Lamolle et al., 2007). Après avoir introduit les spécificités objet d’UML dans le métamodèle XML Schéma, nous pouvons définir le profil UML correspondant. La figure 8 présente un extrait du profil XML Schema que nous avons défini. Figure 8. Extrait du profil XML Schema3 À partir de ce profil, il est possible de définir à l’aide d’un diagramme de classes un modèle XML Schema. La seconde étape de spécialisation du métamodèle UML consiste à définir un profil dédié à la sémantique du Master Data Management. 4.2.2. Profil Master Data Management Nous construisons un profil dédié au Master Data Management en se basant sur les propriétés définies dans notre solution MDM EBX.Platform4. Le tableau 1 présente un extrait de la définition technique de notre profil UML (figure 9) représentant le métamodèle MDM : Stéréotype AdaptationModel Table Selection PrimaryKey AutoIncrement EnumerationDynamic Appliqué à Paquetage Classe Classe Attribut Attribut Attribut Description Définit un modèle d’adaptation Définit un élément de type Table Définit une association entre deux entités Définit une clé primaire Définit un élément auto-incrémenté Définit une énumération dont la liste des valeurs dépend d’un élément du modèle TableRef Association Définit une contrainte de type clé étrangère Table 1. Extrait de la définition du profil UML 3. Pour plus d’informations sur la sémantique de XML Schema nous renvoyons à http://www.w3.org/TR/xmlschema-0/ 4. La documentation en ligne est disponible à l’adresse http://doc.orchestranetworks.com/ IDM appliquée au MDM 11 Figure 9. Extrait du profil MDM C'est par l'intermédiaire de ces deux profils que nous introduisons une couche d’abstraction permettant de représenter un modèle d’adaptation indépendamment d’un domaine d’application. Dans (Menet et al., 2008) nous avons présenté des mappings permettant de réaliser des transformations bidirectionnelles entre UML et XML Schema. Ces mappings exploitent les éléments des métamodèles UML et XML Schema et sont implémentés par des règles de transformation. Le processus de transformation de modèles issu d’une approche IDM rend automatique les phases de production physique d’un modèle. Nous avons suivi les recommandations de l’OMG en utilisant les formalismes MOFScript et XMI pour réaliser ces transformations. Notre approche IDM permet de passer d’un modèle abstrait (UML) à un modèle productif (XML Schema) interprétable par notre solution MDM EBX.Platform. 5. Conclusion Dans cet article nous avons présenté comment introduire une approche d’Ingénierie Dirigée par les modèles pour optimiser et standardiser la définition de modèles de données. L’approche que nous avons abordée par la définition de deux profils UML distincts est applicable de manière générale à toute modélisation de modèles XML Schema et s’applique aussi au domaine spécialisé du Master Data Management. Couplée à des méthodes de transformation, l’utilisation de nos profils UML permet de s’abstraire de toute spécificité technique liée à la définition des modèles XML Schema appliqués au MDM. Dans la suite de nos travaux, nous aborderons les problématiques de validation incrémentale de modèles afin d’optimiser les processus de validation durant les phases de conception. La qualité des données liée au MDM est aussi un aspect que nous devons considérer dans la mesure où les solutions de gestion de la qualité des données fonctionnent d’autant mieux qu’elles s’exécutent à partir d’un référentiel de données unifié, construit à partir d’un modèle commun d’information, c'est-à-dire du 12 Ingénierie d’entreprise et des systèmes d'information MDM. Le travail de métamodélisation de ce modèle s’impose comme une étape indispensable à la fois pour la qualité des données et pour le MDM. 6. Bibliographie Altova XMLSpy. http://www.altova.com/xmlspy Abiteboul S., Cluet S., M.-C. Rousset. « The Xyleme Project ». Computer Networks 39, 2002. Cattell R.G.G., Barry D., The Object Data Standard : ODMG 3.0. Morgan Kauffman Publishers, 1999. Garcia-Molina H., Papakonstantinou Y., Quass D., « The STIMMIS approach to mediation : Data Models and Languages », 1995. IBM MDM, http://www-01.ibm.com/software/data/ips/products/masterdata/ iWays Master Data Center, http://www.iwaysoftware.com/products/iway_master_data_center.html Iyengar S., Brodsky A., « XML Metadata Interchange (XMI) Proposal to the OMG Object Analysis & Design Task ». Object Management Group. http://www.omg.org. 1998. Orchestranetworks, http://www.orchestranetworks.com Lamolle, M., Menet, L., « Meta-modelling “object”: expression of semantic constraints in complex data structure », Proceedings of ERIMA07’. pp. 104-108, Biarritz, France, 2007. Menet L., Lamolle M., « Towards a Bidirectional Transformation of UML and XML Models ». Proceedings of the 2008 International Conference on E-Learning, E- Business, Enterprise Information System and E-Government, EEE 2008., Las Vegas, Nevada, USA, 14-17 juillet 2008. MOF, MetaObject Facility 2.0, http://www.omg.org/mof/ . 2006. OCL. Response to the UML 2.0 OCL. http://www.omg.org/docs/ad/02-05-09.pdf. 2002. Oracle MDM suite, http://www.oracle.com/master-data-management/ PSM, http://www.omg.org/technology/documents/domain_spec_catalog.htm UML, Unified Modeling Language, http://www.uml.org. 1997. W3C, Extendible Markup Language (XML) http://www.w3/org/TR/REC-xml . 2000. 1.0. W3C XML Working Group, W3C, XML-Schema http://www.w3.org/TR/xmlschema-1. 2004. Remerciements Nous souhaitons remercier les membres d’Orchestra Networks pour leur soutien dans nos recherches (contrat CIFRE).