Paper Title (use style: paper title)

Transcription

Paper Title (use style: paper title)
Conceptualisation d’un outil Master Data
Management pour une SOA
Chafika BENKHEROUROU
Brahim BELATTAR
Département des Mathématique et d’Informatique
Université Kasdi Merbah, Ouargla
Route de Ghardaïa, 30000 Ouargla, Algérie
[email protected]
Département d’Informatique
Université Hadj Lakhdar, Batna
05 avenue Chahid Boukhlouf 05000 Batna, Algérie
[email protected]
Résumé— Les architectures orientées services (SOA) permettent
aujourd’hui la réutilisation, l’intégration et le partage des
données au sein d’une entreprise. La qualité de données est
souvent ignorée lors de l’adoption d’un nouveau projet. Pour
résoudre cette problématique, l’utilisation d’un Master Data
Management (MDM) est proposée.
Le présent article montre l’importance de la qualité de données
dans le domaine des MDM et SOA. Nous y aborderons toutes les
étapes de planification et de conception d’un outil MDM dans le
but de l’implémenter dans une Architecture Orientée Services.
Dans un niveau conceptuel, la démarche suivie se base sur
l’utilisation d’une couche de services qui permet d’assurer la
qualité de donnée.
Abstract— Service-Oriented Architectures (SOA) enables now
reuse, integration and sharing of data within an enterprise. The
quality of data is often ignored when the adoption of a new
project. To solve this problem, the use of a Master Data
Management (MDM) is proposed.
This article shows the importance of data quality in the field of
MDM and SOA. We discuss all stages of planning and designing
a MDM tool in order to implement it in a service-oriented
architecture. At a conceptual level, the approach is based on the
use of a service layer that ensures the quality of data.
Mots clés :
Données de référence ; Gestion de données de référence ; SOA ;
Qualité de données ; Intégration de données ; Talend for MDM ;
ESB
Keywords:
Master Data ; Master Data Management ; SOA; Data quality; Data
integration; Talend for MDM; ESB
I.
INTRODUCTION
Une architecture orientée services (SOA) peut offrir
plusieurs avantages tels que la réutilisation, la capacité de
combiner des services afin de créer de nouvelles applications
composites et l’augmentation de l'agilité des systèmes
d'information par l'utilisation du même service dans des
contextes différents [08]. Un des problèmes les plus courants
dans les SOA, est la qualité médiocre des données circulant
entre les applications [11]. Ceci est dû au fait que les
applications utilisent souvent leurs propres sources de données,
les enregistrements sont souvent doublées, inexactes et
incomplètes [07]. Le second problème est lié à la complexité
de la manipulation des données, puisque celles-ci proviennent
généralement de sources de données hétérogènes, telles que des
bases de données, fichiers XML, files d'attente, ... [09]. La
conséquence est la dispersion et l'incohérence des données à
forte pertinence.
Si nous voulons une application SOA mature, nous
devrions essayer d'éviter ces problèmes à n'importe quel prix.
Une solution existe, il s’agit de l’approche Master Data
Management (MDM) [01]. La SOA a besoin du MDM pour
structurer et uniformiser les données. Le Master Data
Management permet de garantir que les informations partagées
par la SOA sont réellement précises, complètes et cohérentes,
et que la diffusion de l'information à l'intérieur et à l'extérieur
de l'entreprise est correcte [01]. C’est pour cette raison qu’une
solution MDM apporte un vrai bénéfice.
Dans cet article, nous proposons des solutions aux
problèmes décrits et les fusionner en un modèle d'architecture
complet afin de surmonter les problèmes liés à la mauvaise
qualité des données. Notre modèle architectural nécessite
l'utilisation d’une couche de services pour le MDM afin
d'assurer la qualité des données et l’échange de données
unifiées au sein de la SOA.
L'article est organisé comme suit : Dans la section 2, nous
proposons un bref aperçu sur le Master Data Management.
Nous aborderons les bénéfices que cet outil peut apporter aux
Architectures Orientées Services. Dans la section 3, nous
parlerons de la qualité de données et comment elle joue un rôle
important dans l’amélioration des processus d’échange et de
circulation des informations dans l’entreprise. Dans la section
4, nous expliquerons notre démarche pour la conception de
l’outil MDM. La section 5 présente les différentes étapes de la
conception. Dans la section 6, nous décrivons brièvement
l’implémentation de l’outil. Dans la section 7, nous donnons la
conclusion de notre travail ainsi que les perspectives
envisagées.
II.
BREF APERÇU SUR LE MASTER DATA MANAGEMENT
Une donnée de référence ou Master Data est une donnée du
système d’information partagée et utilisée sans modification
par les applications. Ces données sont les éléments de base de
la gestion de toute entreprise [1].
Le MDM [1], [6] est un moyen d’unifier, de gérer, et
d’intégrer des données de références à travers le Système
d’Information de l’entreprise. Ces données de références
peuvent être de différentes natures : Produits, services, offres,
tarifs, personnes, clients, fournisseurs, etc.
La gestion des données de référence n'est pas nouvelle. En
effet, les entreprises utilisent souvent des applications qui
gèrent en local leurs données de référence avec des modèles
parfois différents et des données incohérentes. On note des
saisies multiples et la génération potentielle de doublons entre
applications.
Les systèmes MDM permettent de disposer d’une « version
unique de la vérité » [02].
Les grands fournisseurs de logiciels proposent leurs propres
solutions pour la gestion des données de référence. Les
produits les plus connus dans ce domaine sont : SAP
NetWeaver MDM, Suite Oracle pour le MDM, IBM MDM
server, Informatica, Tibco et Teradata [03],[09]. Il existe
également des solutions Open Source [04]: Talend MDM, Java
CAPS Sun MDM Suite, OpenMDM,etc.
En intégrant un MDM dans une SOA, les fonctions
suivantes seront assurées [07]:





Construire une vision unique et partagée de la
donnée ;
Intégrer la donnée en provenance de systèmes et
sources hétérogènes ;
Améliorer la qualité de la donnée de manière
continue ;
Créer, diffuser et maintenir les métadonnées de
données de référence ;
Mettre en place une organisation garantissant la
qualité des données diffusées;
Dans cet article, nous n’allons pas donner une description
plus détaillée du MDM. Nous allons simplement expliquer
comment le MDM peut être utilisé pour améliorer la qualité
des données en SOA.
III.
LA QUALITÉ DE DONNÉES
Indépendamment du choix de l’architecture du déploiement
du système MDM, la qualité de données joue un rôle crucial
dans la réussite d’un projet.
La qualité de donnée doit être maintenue aussi bien lors de
sa création que lors de la vie de la donnée de référence. Afin
d'améliorer la qualité des données de l'entreprise, nous devons
d'abord définir les principales exigences [02]:






Unicité : est le fait qu’une entité du monde réel ne
soit représentée que par un seul et unique identifiant.
La complétude : est la présence de valeurs de
données significatives pour un ou des attributs. Dans
certains cas, lorsque l'information qui manque est
essentielle pour les services, l'exhaustivité devient un
problème.
Exactitude : Une donnée est « exacte » si la valeur
des attributs de l’entité concernée est égale à la
grandeur qu’elle est censée représenter dans le monde
réel.
Conformité : est le respect par celles-ci d’un
ensemble de contraintes.
Cohérence :
est
l’absence
d’informations
conflictuelles avec l’ensemble des données SI.
Intégrité : s’assurer que les données n’ont pas subi
de modification.
La mauvaise qualité des données peut donc engendrer de
multiples conséquences néfastes pour le bon fonctionnement
de l’entreprise, son économie, son image et son évolution.
IV.
LA DÉMARCHE À SUIVRE
Afin de créer un MDM, quatre
peuvent être définis [01]:

Référentiel de consolidation ;

Référentiel transactionnel;

Référentiel de centralisation ;

Répertoire virtuel.
types d’architecture
Toutes ces architectures permettent une maîtrise plus ou
moins forte des données au sein du référentiel.
En effet, les architectures répertoire virtuel et référentiel de
consolidation sont privilégiées lors d’une mise en œuvre
rapide d’une solution MDM.
Pour le répertoire virtuel la qualité de données est souvent
ignorée. La qualité de données doit être résolue dans les
systèmes sources.
Quant au référentiel de consolidation, la synchronisation
des données avec les systèmes sources n'est pas garantie du fait
du couplage lâche entre les applications et le référentiel [07].
Le référentiel transactionnel permet la synchronisation des
données validées en temps réel pour les systèmes intégrés au
référentiel. Cependant, la mise en œuvre de cette architecture
est lourde nécessitant une intervention sur les applications
métiers sources [05].
Le référentiel de centralisation permet un niveau de
gouvernance forte sur les données. Cette architecture privilégie
le support des processus de création et de modification des
données au sein même du référentiel.
Pour une SOA, la nécessité de mettre en temps réel la
qualité des données nécessite une architecture qui privilégie
une intégration forte avec les applications existantes. Dans
notre cas, l’approche du référentiel de centralisation est la
mieux tolérée dans le cadre d’une SOA. Elle permet à toutes
les données de références d’être localisées dans un seul
référentiel.
Afin d’assurer la qualité de données, nous proposons
d’ajouter une couche de services. Lors de la construction de la
couche de services de données, nous voulons être en mesure de
présenter des données provenant de sources de données
hétérogènes de manière uniforme.
La couche de services sera capable de:
a) Examiner les données afin que les erreurs possibles
soient identifiées et corrigées;
b) Permettre la modification manuelle et la correction
correspondante ;
La structure de la couche de services proposée est composée
comme suit :

Service Master Data: Ce service se charge de
récupérer les données provenant des différentes
applications et de centraliser la gestion du cycle de
vie complet des données de référence. Ces données
seront stockées par la suite dans le MDM.

Service qualités de données: Ce service nécessite
l’utilisation des algorithmes et des règles de gestion
prédéfinies pour le nettoyage et la consolidation des
données de référence.
L’architecture du modèle proposé est représentée par la
figure 1.
L’architecture
proposée
exige
que
toutes
les
communications entre les services passent à travers un ESB qui
représente la colonne vertébrale de l'architecture. En utilisant
l’ESB, nous sommes en mesure de véhiculer les données de
référence entre le référentiel MDM et les sources de données
[07].
Cette architecture nécessite l’utilisation d’un référentiel
MDM avec une couche de services contenant un service pour
les Master Data et un autre pour la qualité de données. Les
données de référence sont stockées dans le référentiel central,
qui représente l’unique point de vérité pour l’entreprise.
V.
ETAPE DE LA CONCEPTION
Une solution MDM peut être créée ou achetée. Elle est
créée lorsque les entreprises ont déjà un référentiel de données
ou un système dominant qui contient un ensemble important de
données de référence partagées par certaines applications. Elle
est achetée dans le cas où les entreprises veulent construire
rapidement une solution MDM [07].
Dans notre cas, nous voulons créer notre propre solution.
Pour cela, nous allons suivre une démarche permettant de
mettre le point sur la qualité de données en implémentant le
référentiel.
Les principales étapes que nous avons suivies pour la
création de l’outil MDM sont les suivantes :
Figure 2 : Les principales étapes pour la conception d’un MDM
Création d’un modèle pour les données de
référence :
Durant cette étape nous allons identifier et recenser les
données importantes pour l’entreprise ainsi que leurs sources.
Ensuite, ces données sont regrouper dans un dictionnaire par
catégorie : personnes (clients, employés, partenaires etc.),
objets (produits, finances, etc.), endroits (localisation
géographique, adresses). La méthode envisagée pour faire la
collecte des informations c’est l’étude des documents existant,
les interviews, etc.
1.
Ensuite nous élaborons à d’identification des producteurs et
des consommateurs des données de référence au sein de
l’entreprise.
L’étape suivante consiste à collecter et analyser les
Métadonnées de nos données de référence. Cette analyse
permet de cerner les problèmes au niveau des données ellesmêmes, afin de prendre les mesures appropriées pour les
résoudre. Il est donc d’autant plus important que les
enregistrements destinés à être utilisés dans le système MDM
correspondent à un certain standard de qualité avant leur
intégration. Ensuite, un nettoyage initial sur la base des
informations acquises sera établi.
Figure 1 : Architecture du modèle proposée
Ce travail nécessite la collaboration de plusieurs personnes
notamment les consommateurs des Master Data et les
responsables de la future plate-forme MDM.
2. Désignation de l’infrastructure :
Durant cette étape, nous allons désigner l’architecture sur
laquelle nous allons implémenter notre solution. Les différentes
applications qui auront accès aux données de références seront
mentionnées. Ceci est réalisé dans le but de connaître les
applications qui seront connectées à l’ESB pour profiter de la
couche des services du MDM.
3. Implémentation et test des Master Data:
Cette étape représente un processus interactif qui a besoin
de l’intervention humaine afin de vérifier l'exactitude des
sources de données [08].
4.
Implémentation de la couche de services :
Dans cette étape, il faut tout d’abord vérifier la validité des
données. Ceci est réalisé grâce au service de qualité de données
implémenté sur cette couche. Toutes les données doivent être
vérifiées et, le cas échéant, corrigées et complétées. Une autre
tâche à établir peut être aussi la recherche de doublons ainsi
que le regroupement et la concaténation des enregistrements
identiques ou similaires provenant des diverses sources (par
exemple, il serait possible de regrouper les noms et/ou les
adresses identiques). Il est également possible de consolider les
enregistrements et de les enrichir en y ajoutant des
informations supplémentaires. De même, la compilation des
enregistrements provenant de différentes sources
peut
s’effectuer en utilisant des clés uniques. L’efficacité des
opérations réalisées dans le cadre de ce contrôle en temps réel
joue un rôle crucial.
Le service qualité de sonnées permet de procéder à une
épuration périodique des données, notamment lorsque des
volumes considérables de données sont ajoutés régulièrement
au référentiel. Cette opération permet d’atteindre plusieurs
objectifs :

Identifier les erreurs qui se sont glissées dans le
système malgré l’opération de nettoyage déjà faite,
soit parce que les règles n’ont pas été observées dans
leur ensemble, soit parce que les avertissements ont
été ignorés suite à une intervention de l’utilisateur.
(p. ex. soupçon de présence de doublons)

Les données « vieillissent », par exemple dans le cas
de personnes celles-ci peuvent déménager, les codes
postaux modifiés
et cela souvent sans qu’on
avertisse l’entreprise. Le but de cette étape est
justement d’éviter qu’un tel scénario ne se produise.
VI.
IMPLÉMENTATION DE L’OUTIL
Pour implémenter notre solution, nous avons utilisé
Talend for MDM. Il nous sert de plateforme sur laquelle nous
allons implémenter la couche de services. Pour extraire les
données de leurs sources, nous optons pour EasyPHP et
NetBeans pour la construction de l’interface.
Talend for MDM est un logiciel Open source, il nous
permet de créer, de configurer et de déployer nos services [10].
Nous avons opté pour la solution open source car les
solutions développées en intégralité s’avère souvent trop
complexes et difficiles à améliorer et maintenir. L’utilisation de
Talend for MDM pour créer notre plate-forme permet de
réduire la complexité de mise en place et d’atteindre notre
objectif qui est l’implémentation de la couche de services pour
améliorer la qualité de données au sein de la SOA.
L’utilisation de l’Enterprise Services Bus (ESB) permet de
fournir une couche de connectivité flexible pour intégrer de
façon fiable et sécurisée les données circulant entre les
différentes applications de l’entreprise.
VII. CONCLUSION
Dans cet article, nous avons identifié les problèmes les plus
fréquents, liés à la qualité de données au sein d’une SOA.
Notre solution proposée consiste à implémenter un MDM avec
une couche de services composée de deux services garantissant
la qualité des données de référence de l'entreprise et la fiabilité
des données échangées entre les différentes applications de la
SOA. Cependant, la démarche proposée est donnée à un niveau
conceptuel. L’implémentation de la solution proposée est en
cours de développement.
Les recherches futures devront inclure la possibilité de
tester notre solution dans différentes organisations. Une autre
perspective est envisagée dans les prochains travaux. Il s’agit
de la création d'un système de contrôle de la performance pour
permettre aux utilisateurs de notre outil de mesurer le facteur
de la qualité de données. Les utilisateurs peuvent ainsi vérifier
les améliorations apportées aux systèmes en se servant d’une
série de règles et de paramètres.
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
Franck Régnier-Pécastaing et al, « MDM : Enjeux et méthodes de la
gestion des données », Dunod, 2008
David Loshin, « Master Data Management », OMG Press, 2009
Alex Berson, Larry Dubov, « Master Data Management and Custumer
Data Integration for a Global Entreprise», McGraw-Hill Companies,
2007
Jérôme Poussineau, « Présentation de trois solutions MDM Open
Source»,
blog.axopen.com/2013/05/presentation-de-trois-solutionsmdm-open-source
Allen Dreibelbis, « Enterprise Master Data Management: An SOA
approach to managing core information », IBM Press, 2009
Ludovic Menet, « Formalisation d’une approche d’Ingénierie Dirigée
par les Modèles appliquée au domaine de la Gestion des Données de
Référence », Thèse de doctorat 2010, Université Paris 8
Marcel Krizevnik, Matjaz B. Juric, «Improved SOA Persistence
Architectural Model», ACM SIGSOFT Software Engineering Notes,
May 2010 Volume 35 Number 3.
[8]
Anca Andreescu, Marinela Mircea, «Combining Actual Trends in
Software Systems for Business Management », International Conference
on Computer Systems and Technologies - CompSysTech’08.
[9] Xiaoyuan Wang et al., «SMDM: Enhancing EnterpriseWide Master
Data Management Using Semantic Web Technologies », 35 th
International Conference on Very Large Data bases, Lyon, France, 24 –
28 août, 2009
[10] Talend for MDM, http://fr.talend.com/products/mdm
[11] Didier Guyomarc’h, «La SOA sans l’intégration de données, un échec
programmé»,
www.itrmanager.com/articles/94031/soa-integrationdonnees-echec-programme-br-didier-guyomarc-directeur-generalinformatica-france.html

Documents pareils