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).