Mémoire de Projet de Fin d’Études 
Pour l’Obtention du Titre 
D’Ingénieur d’État en Informatique 
Option 
Ingénierie logic...
Dédicace 
Je dédie ce travail à toutes les personnes qui me sont chères, et spécialement à : 
Mes parents qui ont toujours...
Projet de Fin d’Etudes 2013-2014 
4 
Remerciements 
Au terme de ce travail je tiens à exprimer mes profonds remerciements ...
Projet de Fin d’Etudes 2013-2014 
5 
Résumé 
Un ERP (Entreprise Resource Planning) est un référentiel central de gestion d...
Projet de Fin d’Etudes 2013-2014 
6 
Abstract 
ERP is a central repository for managing all company data, and is now a key...
Projet de Fin d’Etudes 2013-2014 
7 
ملخص 
تخطيط موارد المؤسسة هو مستودع مركزي لإدارة جميع بيانات الشركة، و يعد الآن 
عامل...
Projet de Fin d’Etudes 2013-2014 
8 
Liste des abréviations 
Abréviation Désignation 
ERP 
Entreprise Resource Planning 
E...
Projet de Fin d’Etudes 2013-2014 
9 
Table des figures 
Figure 1 : logo et slogan NEXTMA ....................................
Projet de Fin d’Etudes 2013-2014 
10 
Figure 29 : Job d'importation des plans comptables ....................................
Projet de Fin d’Etudes 2013-2014 
11 
Liste des tableaux 
Tableau 1 : Méthodologie de conduite du projet ....................
Table des matières 
Projet de Fin d’Etudes 2013-2014 
12 
Table des matières 
Liste des abréviations ........................
Table des matières 
Projet de Fin d’Etudes 2013-2014 
13 
4 Étude comparative des outils de migration .......................
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
14 
Introduction générale 
Dans un cont...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
15 
Ce rapport se compose de cinq chapi...
Projet de Fin d’Etudes 2013-2014 
16 
Chapitre 1 
Présentation de l’organisme d’accueil 
Dans ce chapitre, nous allons pré...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
17 
1 Présentation de l’organisme d’acc...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
18 
1.2 Prestations et services 
NEXTMA...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
19 
1.3 Secteurs d’activités 
De part l...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
20 
Figure 2 : Références de NEXTMA
Projet de Fin d’Etudes 2013-2014 
21 
Chapitre 2 
Cadre générale du projet 
Dans ce chapitre, nous allons présenter une de...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
22 
2 Cadre générale du projet 
2.1 Pré...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
23 
La migration des bases des données ...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
24 
En résumé, on pourrait décliner la ...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
25 
Phases Tâches Livrables Phase avant...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
26 
Chapitre 3 
Etude technique et fonc...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
27 
3 Étude technique et fonctionnelle ...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
28 
3.1.2Couverture fonctionnelle de la...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
29 
bons de commande qui inclurent ces ...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
30 
- Gestion des maintenances de défér...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
31 
3.1.4Système cible 
La nouvelle ver...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
32 
Figure 7 : Interface Odoo 8 
3.2 Ét...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
33 
Voici une liste des noms tables pri...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
34 
 Module Comptabilité 
Tableau 4 : ...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
35 
 Module Gestion de stock 
Nom de l...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
36 
3.3 Conclusion 
Les tables citées c...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
37 
Chapitre 4 
Etude comparative des o...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
38 
4 Étude comparative des outils de m...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
39 
Le travail est ainsi grandement fac...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
40 
4.2 Choix de l’ETL 
Nous avons déci...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
41 
- Génération automatique de la docu...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
42 
 Performance : temps d’exécution d...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
43 
 Convivialité : qualité de l'inter...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
44 
4.2.1.2 Critères techniques 
 Réfé...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
45 
4.3 Bilan de comparatif 
Les deux E...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
46 
de données. Ce programme permet à l...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
47 
Chapitre 5 
Conception de l’ETL et ...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
48 
5 Conception de l’ETL et Réalisatio...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
49 
5.1.2 Module produit 
Figure 14 : M...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
50 
5.1.4 Module comptabilité 
Figure 1...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
51 
5.1.6 Module gestion d’achat 
Figur...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
52 
5.2 Mapping entre OpenERP 6.1 et Od...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
53 
Figure 22 : MCD employé OpenERP 6.1...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
54 
Figure 24 : MCD email OpenERP 6.1 
...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
55 
- Extraction des données sources : ...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
56 
Figure 27 : schéma de mapping des p...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
57 
 Importation des plans comptables ...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
58 
Nous avons utilisé cette routine po...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
59 
Figure 33 : schéma de mapping des p...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
60 
6 Conclusion générale 
Lors du pass...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
61 
7 Bibliographie et webographie 
[1]...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
62 
Glossaire 
A 
API : est une interfa...
Migration des données et portage du module GMAO 
Projet de Fin d’Etudes 2013-2014 
63 
Jointure : est l'opération permetta...
Migration gmao de openerp 6.1 vers odoo 8
Prochain SlideShare
Chargement dans…5
×

Migration gmao de openerp 6.1 vers odoo 8

4 973 vues

Publié le

Projet de fin d’étude consiste à réaliser une migration des données du PGI existant OpenERP v6.1 vers Odoo v8 et le portage du module GMAO (Gestion de la
Maintenance Assistée par Ordinateur) réalisé par NEXTMA
ainsi que le module TMS (Transport Management System)

Publié dans : Ingénierie
0 commentaire
3 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
4 973
Sur SlideShare
0
Issues des intégrations
0
Intégrations
57
Actions
Partages
0
Téléchargements
508
Commentaires
0
J’aime
3
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Migration gmao de openerp 6.1 vers odoo 8

  1. 1. Mémoire de Projet de Fin d’Études Pour l’Obtention du Titre D’Ingénieur d’État en Informatique Option Ingénierie logicielle Sujet Migration des données et portage du module GMAO de OpenERP 6.1 vers Odoo 8 Soutenu par : Sous la direction de : Fouad ELOUAD M. Youness KHAMLICHI M. Abdrahman ELKAFIL Année Universitaire 2013-2014
  2. 2. Dédicace Je dédie ce travail à toutes les personnes qui me sont chères, et spécialement à : Mes parents qui ont toujours été là pour moi, et qui m'ont donné un magnifique modèle de sacrifice et de persévérance. Ma soeur IMANE, que Dieu la garde et l’aide dans ses études. Ma tante FATIMA Toute ma famille Tous mes amis
  3. 3. Projet de Fin d’Etudes 2013-2014 4 Remerciements Au terme de ce travail je tiens à exprimer mes profonds remerciements à toutes les personnes qui ont contribué au bon déroulement et à l’aboutissement de mon projet de fin d’études. Je tiens à remercier vivement mes encadrants, M. Abdrahman ELKAFIL et M. Youness KHAMLICHI pour leur disponibilité et leurs conseils qui m’ont permis de mener à bien ce projet, ainsi tous les membres du jury de bien vouloir évaluer mon modeste travail. Je remercie aussi tout le corps professoral de l’Ecole Nationale des Sciences Appliquées de Khouribga de m’avoir prodigué, durant ces cinq années de formation, une base de connaissances suffisante, exploitée pour l’aboutissement de ce projet et utile pour toute ma vie professionnelle. Je ne pourrais terminer mes remerciements, sans les exprimer à tous mes amis et à toute autre personne ayant contribué de près ou de loin à la réalisation de ce projet dans les meilleures conditions.
  4. 4. Projet de Fin d’Etudes 2013-2014 5 Résumé Un ERP (Entreprise Resource Planning) est un référentiel central de gestion de toutes les données d’une entreprise, et représente aujourd’hui un facteur clé dans l’implication de l’entreprise dans son environnement de travail, pour cela les entreprises visent à bénéficier de toute nouveauté apportée par les ERPs. Notre projet de fin d’étude consiste à réaliser une migration des données du PGI existant OpenERP v6.1 vers Odoo v8 et le portage du module GMAO (Gestion de la Maintenance Assistée par Ordinateur) à la nouvelle version en faveur d’un client de la société NEXTMA. Notre travail est de préparer des scriptes de migration fiables et performants et assurer l’intégrité des données par des tests fonctionnels effectués sur le système après la migration, et enfin assurer une formation aux utilisateurs et les aider à s’adapter au nouveau système. Mots-clés : - OpenERP - Odoo - ETL - Migration des données
  5. 5. Projet de Fin d’Etudes 2013-2014 6 Abstract ERP is a central repository for managing all company data, and is now a key factor in the involvement of the company in its working environment, so companies seek to benefit from any new aspect of the ERP. Our final project study is to perform a data migration of existing information system OpenERP v6.1 to Odoo v8 and porting the CMMS module (Computerized maintenance management system) to the new version in favor of a customer of the company NEXTMA. Our job is to prepare script migration reliability and performance and ensure data integrity by functional tests performed on the system after migration, and finally provide training to users and help them adapt to the new system.
  6. 6. Projet de Fin d’Etudes 2013-2014 7 ملخص تخطيط موارد المؤسسة هو مستودع مركزي لإدارة جميع بيانات الشركة، و يعد الآن عاملا رئيسيا في انخراط الشركة في بيئة عملها لهذا تسعى الشركات للاستفادة من أي جانب جديد من نظم تخطيط موارد المؤسسات. يهدف هذا المشروع إلى نقل البيانات و المعلومات الموجودة في أوبن أورب 1.6 إلى أودو 8 و ترقية وحدة إدارة الصيانة بالحاسب الآلي إلى الإصدار الجديد لصالح أحد عملاء شركة نيكستما. مهمتنا هي إعداد إسكريبتات لتحويل البيانات وضمان سلامتهم عن طريق اختبارات وظيفية للنظام بعد الهجرة وأخيرا توفير التدريب للمستخدمين ومساعدتهم على التكيف مع النظام الجديد.
  7. 7. Projet de Fin d’Etudes 2013-2014 8 Liste des abréviations Abréviation Désignation ERP Entreprise Resource Planning ETL Extract Transform Load PGI Progiciel de Gestion Intégré GMAO Gestion de Maintenance Assistée par Ordinateur TMS Transport Management System SSLL Société de Services en Logiciels Libres CRM Client Relationship Management PME Petites et Moyennes Entreprises BI Business Intelligence CMS Content Management System API Application Programming Interface PDI Pentaho Data Integration TOS Talend Open Studio MCD Modèle Conceptuel de données
  8. 8. Projet de Fin d’Etudes 2013-2014 9 Table des figures Figure 1 : logo et slogan NEXTMA ................................................................................. 17 Figure 2 : Références de NEXTMA ................................................................................. 20 Figure 3 : Processus de migration de l'éditeur ................................................................... 23 Figure 4 : Interface OpenERP 6.1 ..................................................................................... 27 Figure 5 : fonctionalités de la GMAO .............................................................................. 29 Figure 6 : Support des versions OpenERP ........................................................................ 31 Figure 7 : Interface Odoo 8 .............................................................................................. 32 Figure 8 : ETL ................................................................................................................. 38 Figure 9 :graph de comparaison en performance entre ETL .............................................. 42 Figure 10 : Caractéristiques de TOS ................................................................................. 45 Figure 11 : caractéristiques de PDI ................................................................................... 45 Figure 12 : interface DbVisualizer.................................................................................... 46 Figure 13 : MCD module de base ..................................................................................... 48 Figure 14 : MCD module Produits et liste des prix ........................................................... 49 Figure 15 : MCD module gestion de stock ....................................................................... 49 Figure 16 : MCD module comptabilité ............................................................................. 50 Figure 17 : MCD module ressources humaines................................................................. 50 Figure 18 : MCD module gestion d'achat ......................................................................... 51 Figure 19 : MCD module GMAO .................................................................................... 51 Figure 20 : MCD partenaire OpenERP 6.1 ....................................................................... 52 Figure 21 : MCD partenaire Odoo 8 ................................................................................. 52 Figure 22 : MCD employé OpenERP 6.1 ......................................................................... 53 Figure 23: MCD employé Odoo 8 .................................................................................... 53 Figure 24 : MCD email OpenERP 6.1 .............................................................................. 54 Figure 25 : MCD email Odoo 8 ........................................................................................ 54 Figure 26 : job de migration des partenaires ..................................................................... 55 Figure 27 : schéma de mapping des partenaires ................................................................ 56 Figure 28 : job de migration des employés ....................................................................... 56
  9. 9. Projet de Fin d’Etudes 2013-2014 10 Figure 29 : Job d'importation des plans comptables .......................................................... 57 Figure 30 : Routine de sélection ....................................................................................... 57 Figure 31 : Routine de concaténation ............................................................................... 58 Figure 32 : Routine d'incrémentation des séquences ......................................................... 58 Figure 33 : schéma de mapping des plans comptables ...................................................... 59 Figure 34: Exemple de contenu après la migration ........................................................... 59
  10. 10. Projet de Fin d’Etudes 2013-2014 11 Liste des tableaux Tableau 1 : Méthodologie de conduite du projet ............................................................... 25 Tableau 2 : Tables principales du module de base ............................................................ 33 Tableau 3 : tables principales du module comptabilité ...................................................... 34 Tableau 4: tables principales du module stock .................................................................. 35 Tableau 5 : tables principales du module Achat ................................................................ 34 Tableau 6 : tables principales du module produit .............................................................. 33 Tableau 7 : tables principales du module resources humaines ........................................... 35 Tableau 8 : comparaison en convivialité entre ETL .......................................................... 43 Tableau 9 : comparaison en qualité entre ETL .................................................................. 43 Tableau 10 : comparaison en référentiel ver métadonnées entre ETL ................................ 44 Tableau 11 : comparaison en outil de création des requêtes entre ETL ............................. 44 Tableau 12 : comparaison en validité des fichiers plats entre ETL .................................... 44
  11. 11. Table des matières Projet de Fin d’Etudes 2013-2014 12 Table des matières Liste des abréviations .........................................................................................................8 Table des figures ................................................................................................................9 Liste des tableaux ............................................................................................................ 11 Table des matières ........................................................................................................... 12 Introduction générale ....................................................................................................... 14 Chapitre 1 ........................................................................................................................ 16 Présentation de l’organisme d’accueil ............................................................................ 16 1 Présentation de l’organisme d’accueil ....................................................................... 17 1.1 La Société NEXTMA ....................................................................................... 17 1.2 Prestations et services ....................................................................................... 18 1.3 Secteurs d’activités ........................................................................................... 19 1.4 Références ........................................................................................................ 19 Chapitre 2 ........................................................................................................................ 21 Cadre générale du projet ................................................................................................. 21 2 Cadre générale du projet ........................................................................................... 22 2.1 Présentation du projet ....................................................................................... 22 2.2 Problématique .................................................................................................. 22 2.3 Objectifs ........................................................................................................... 23 2.4 Conduite de projet ............................................................................................ 24 2.5 Conclusion ....................................................................................................... 25 Chapitre 3 ........................................................................................................................ 26 Etude technique et fonctionnelle .................................................................................... 26 3 Étude technique et fonctionnelle ............................................................................... 27 3.1 Étude fonctionnelle ........................................................................................... 27 3.1.1 Etude de l’existant .................................................................................... 27 3.1.2 Couverture fonctionnelle de la migration .................................................. 28 3.1.3 Couverture fonctionnelle de la GMAO ...................................................... 29 3.1.4 Système cible ............................................................................................ 31 3.2 Étude technique ................................................................................................ 32 3.2.1 Système source ......................................................................................... 32 3.3 Conclusion ....................................................................................................... 36 Chapitre 4 ........................................................................................................................ 37 Etude comparative des outils de migration ..................................................................... 37
  12. 12. Table des matières Projet de Fin d’Etudes 2013-2014 13 4 Étude comparative des outils de migration ................................................................ 38 4.1 Méthode de migration ....................................................................................... 38 4.2 Choix de l’ETL................................................................................................. 40 4.2.1 Critères de comparaison ............................................................................ 40 4.3 Bilan de comparatif .......................................................................................... 45 4.4 Outil de rétro-ingénierie.................................................................................... 45 4.5 Conclusion ....................................................................................................... 46 Chapitre 5 ........................................................................................................................ 47 Conception de l’ETL et Réalisation de la migration ......................................................... 47 5 Conception de l’ETL et Réalisation de la migration .................................................. 48 5.1 Rétro-ingénierie de l’OpenERP 6.1 ................................................................... 48 5.1.1 Module de base ......................................................................................... 48 5.1.2 Module produit ......................................................................................... 49 5.1.3 Module gestion de stock............................................................................ 49 5.1.4 Module comptabilité ................................................................................. 50 5.1.5 Module ressources humaines ..................................................................... 50 5.1.6 Module gestion d’achat ............................................................................. 51 5.1.7 Module GMAO......................................................................................... 51 5.2 Mapping entre OpenERP 6.1 et Odoo 8 ............................................................ 52 5.2.1 Les principales changements dans l’architecture ....................................... 52 5.2.2 La Conception de l’ETL............................................................................ 54 5.3 Conclusion ....................................................................................................... 59 6 Conclusion générale ................................................................................................. 60 7 Bibliographie et webographie ................................................................................... 61
  13. 13. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 14 Introduction générale Dans un contexte toujours très concurrentiel sur tous les niveaux, L’ERP constitue l’outil idéal pour l’organisation et l’optimisation du fonctionnement globale de l’entreprise, c’est l’un des facteurs d’efficacité et de compétitivité. Il est l’outil essentiel pour automatiser et optimiser les processus métier, il intègre les principales composantes fonctionnelles de l'entreprise, comptabilité, gestion de stock, gestion de production, gestion commerciale, logistique, ressources humaines, contrôle de gestion etc. La prise de décision est devenue cruciale pour les dirigeants d'entreprises. L'efficacité de cette prise de décision repose sur la mise à disposition d'informations pertinentes et d'outils adaptés, Aujourd’hui les ERP comportent les outils de pilotage et d’aide à la décision appropriés. A cet effet, les entreprises s’engagent à lancer les projets de migration vers les Progiciels de Gestion Intégrées les plus récents pour bénéficier des dernières nouveautés techniques et fonctionnelles offert par ces produits, aussi les modules métiers pris en charge nativement dans les novelles versions. C’est dans cette optique que s’inscrit mon projet de fin d’étude, qui consiste à réaliser la migration des données du système existant OpenERP 6.1 à Odoo 8 et le portage du module GMAO à la nouvelle version en faveur d’un client de la société NEXTMA. La migration va être établie pour tous les composants fonctionnels utilisés par l’entreprise cliente, comptabilité, gestion de stock, Achat et vente, gestion des ressources humaines etc. Ainsi les modules métiers développés spécifiquement pour ce client, le module GMAO et le module TMS (Transport Management System). Apres la migration nous devons effectués des tests fonctionnels pour vérifier l’intégrité des données sur le nouveau système, et enfin assurer une formation aux utilisateurs et les aider à s’adapter au nouveau système.
  14. 14. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 15 Ce rapport se compose de cinq chapitres dont la description détaillée est comme suit. Dans le premier chapitre, nous présenterons l’organisme d’accueil. Ensuite, dans le deuxième chapitre, nous allons présenter le projet et la démarche. Dans le troisième chapitre, nous détaillerons les aspects techniques et fonctionnels du système source et système cible Puis, dans le quatrième chapitre, nous allons argumenter nos choix des outils de réalisation de migration suivant des critères techniques et fonctionnels. Et enfin, le dernier chapitre sera dédié à nos réalisations concernant la migration.
  15. 15. Projet de Fin d’Etudes 2013-2014 16 Chapitre 1 Présentation de l’organisme d’accueil Dans ce chapitre, nous allons présenter l’organisme d’accueil, à savoir la société de service en logiciels libres NEXTMA
  16. 16. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 17 1 Présentation de l’organisme d’accueil 1.1 La Société NEXTMA NEXTMA est une Société de Services en Logiciels Libres (SSLL) qui accompagne les entreprises et institutions dans le choix des solutions open source ainsi que dans l'intégration, le développement, l'adaptation aux besoins spécifiques, la maintenance et le support. Afin de bénéficier des meilleures solutions libres dans la gestion des systèmes d'information. NEXTMA a développé une expertise autour d’OpenERP depuis 2006 (premier partenaire officiel OpenERP au Maroc en 2007) et a contribué à faire connaître cet ERP open source au Maroc à travers plusieurs déploiements réussis dans les PME marocaines et des conférences dans les universités et adapte celui-ci à la législation marocaine et aux besoins spécifiques des entreprises. Figure 1 : logo et slogan NEXTMA
  17. 17. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 18 1.2 Prestations et services NEXTMA offre une large palette de prestations et de services basés sur des composants libres adaptés aux systèmes et aux réseaux des clients. La principale tâche de cette société est d’offrir des solutions sur mesure, en matière de formation et d’assistance, concernant les problématiques relevant des systèmes d’informations, moyennant des outils libres. La gamme de services de NEXTMA est articulée autour de quatre axes majeurs qui permettent d'accompagner les clients durant toutes les phases d'un projet afin d'assurer sa réussite en : - Formation : L’offre des formations, techniques et fonctionnelles, permet d'accompagner les organisations qui disposent d’équipes opérationnelles capables de mener à bien des projets. Ces formations peuvent être établies sous forme de transferts de compétences, en phases avals des projets. - Support : En plus des offres de formations, la société propose aux équipes dédiées au développement, des prestations de support d’aide à la maintenance, afin de réduire le temps de résolution des interrogations ou des difficultés que les entreprises pourraient rencontrer lors de la mise en oeuvre de certains logiciels. - Conseil : NEXTMA possède une équipe formée de consultants techniques et fonctionnels qui assure soit dans le cadre de projets, soit en amont, des missions de conseil dans les domaines suivants: gestion de contenu, travail collaboratif, dématérialisation des procédures, migration vers le libre, architecture et dimensionnement d'applications basées sur OpenERP…etc. - Développement : le coeur métier de NEXTMA et comprend le développement sur la base de logiciels libres, de portails collaboratifs internet ou intranet, avec des composantes de publication web, de travail collaboratif, de gestion électronique de documents et de workflow.
  18. 18. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 19 1.3 Secteurs d’activités De part les multiples projets que NEXTMA a mené, elle a acquis un savoir faire susceptible de lui permettre l’implantation de logiciels libres dans les différents secteurs. - Enterprise Ressource Planning (ERP) NEXTMA est le partenaire officiel de l’ERP open source OpenERP au Maghreb depuis 2006. Elle adapte celui-ci à la législation marocaine et aux besoins spécifiques des entreprises. - Customer Relationship Management (CRM) NEXTMA propose l’offre SUGARCRM qui permet la gestion de la relation client. - Business Intelligence (BI) ou informatique décisionnelle. - Intranet des entreprises et gestion des contenus - Création d’identités visuelles et sites Internet institutionnels et e-Commerce La solution proposée est SMARTSHOP qui une solution libre de e-commerce (commerce électronique) qui s'appuie sur le gestionnaire contenu Joomla. - Gestion électronique des documents Il s’agit d’un système informatisé d’acquisition, classement, stockage et archivage des documents. 1.4 Références NEXTMA compte plusieurs déploiements réussît d’OpenERP dans des PME marocaines, parmi les références :
  19. 19. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 20 Figure 2 : Références de NEXTMA
  20. 20. Projet de Fin d’Etudes 2013-2014 21 Chapitre 2 Cadre générale du projet Dans ce chapitre, nous allons présenter une description générale du projet ainsi que les problématiques et les objectifs qui lui sont liés
  21. 21. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 22 2 Cadre générale du projet 2.1 Présentation du projet Jour après jour les entreprises mettent le point sur leurs choix des ERP pour bénéficier des nouvelles fonctionnalités et rester en amont des autres concurrents, c’est pour ca les entreprises démarrent les projets de migration vers les systèmes récents. A cet effet, notre projet de fin d’étude consiste à conduire une migration du l’ERP existant OpenERP v6.1 vers Odoo v8 et le portage du module GMAO, Notre travail est de veiller à la récupération de plusieurs éléments fonctionnels depuis l’ERP source puis de les adapter aux contraintes techniques et fonctionnelles du nouvel environnement à savoir la base des données liée a l’ERP cible Ainsi, notre mission comporte le portage et l’adaptation du GMAO, un module métier développé spécifiquement pour le client et existe nativement dans la nouvelle version. 2.2 Problématique Les entreprises sont de plus en plus besoin de bénéficier des dernières nouveautés techniques et surtout fonctionnelles offert par les ERP, utilisé les données pour sortir les indicateurs de performance, Odoo est depuis la version 7 a introduit un système de gestion d’entrepôt très efficace, apporte une amélioration importante de l'ergonomie et de la facilité d'utilisation de l'interface Web, les nouvelles fonctionnalités de CMS et de e- commerce et l’amélioration du point de vente, donc les entreprise prennent le choix de passer vers les versions les plus évolués. L’éditeur a introduit aussi une nouvelle politique de prix pour les contrats de maintenance. Auparavant, le prix dépendait uniquement du nombre d'utilisateurs, désormais, le prix dépend à la fois du nombre d'utilisateurs et du nombre d'applications installées sur Odoo.
  22. 22. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 23 La migration des bases des données est un service payant offert par l’éditeur d’Odoo, mais il ne supporte pas les transformations spécifiques et le recodage des données pour les clients, par exemple recoder les bons de commande durant la migration. Figure 3 : Processus de migration de l'éditeur L’éditeur d’Odoo a annoncé que seul le client est responsable de nettoyage de la base de données et que la garantie de la migration ne concerne que les modules standards/certifiés. L’éditeur n’assure pas le nettoyage, la conversion et la transformation intermédiaire des données. 2.3 Objectifs Pour répondre à la problématique abordée ci-dessus, nous serons amenés à réaliser une migration du système d’information existant qui est intégrés sous l’ERP OpenERP 6.1 vers l’ERP Odoo 8, et cela pour une meilleure maitrise des processus métier de l’entreprise cliente, une analyse fonctionnelle du module métier GMAO et assurer son portage vers la nouvelle version, ainsi la formation des utilisateurs de l’entreprise cliente sur le nouveau système
  23. 23. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 24 En résumé, on pourrait décliner la finalité du travail qui nous a été assigné dans les objectifs suivants : - Réaliser la montée vers la version 8 de Odoo et assurer l’environnement matériel et logiciel - Un mapping entre OpenERP 6.1 et Odoo 8 pour touts les modules (Comptabilité, Stock, Achats, Ventes, Ressources humaines, produits et listes des prix etc.) sans oublié les modules spécifiques de ce client. - Procéder à la migration des données entre les deux ERP - Assurer l’intégrité des données par les tests fonctionnels. - Portage de la GMAO - Rédaction des guides d’utilisation - Formation des utilisateurs sur site de production 2.4 Conduite de projet La conduite de projet est une démarche visant à organiser de bout en bout le bon déroulement d’un projet, la démarche sera décortiquée en quartes principales phases:
  24. 24. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 25 Phases Tâches Livrables Phase avant projet - Prise de connaissance du contexte et métier de l’entreprise cliente. - Environnement du projet. - Document du contexte et motivation du projet. Etude technique et fonctionnelle - Comprendre et se familiariser avec les données. - Tenir des réunions avec les responsables et les utilisateurs. - rédiger les spécifications fonctionnelles - fixer les choix techniques - Un document de spécification des besoins découlant de l’analyse et de l’expression des besoins du client. Réalisation de la migration - étudier le système cible. - préparer les scriptes de migration. - tester l’intégrité des données et le bon fonctionnement du nouveau système. - La base de données créée conformément à la conception livrée. Formation des utilisateurs - préparer les scenarios d’utilisation - formation sur site de production - Un document de guide d’utilisation. Tableau 1 : Méthodologie de conduite du projet 2.5 Conclusion L’objectif de ce chapitre était une présentation générale du projet, sa problématique et ses objectifs, dans les chapitres qui suivent, nous allons détailler toutes les phases présentées dans la conduite du projet ci-dessus
  25. 25. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 26 Chapitre 3 Etude technique et fonctionnelle Ce chapitre présente l’étude et critique de l’existant, ainsi la rédaction des cahiers de charge technique et fonctionnel
  26. 26. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 27 3 Étude technique et fonctionnelle 3.1 Étude fonctionnelle 3.1.1Etude de l’existant La version actuelle de l’OpenERP version 6.1 avec laquelle travaille le client de NEXTMA est sortie en février 2011, elle a fait preuve d’un manque de flexibilité, une faiblesse fonctionnelle, interface web classique, un système décisionnel très limité, ainsi que des défauts de navigation. Ces problèmes entravent le bon déroulement des projets d’intégration SI (paramétrage et/ou développement spécifique). A cet effet, et pour bénéficier des nouveautés de l’OpenERP. Le client a décidé de procéder à une montée en version de son ERP vers une intégration sous le progiciel Odoo version 8, dernière version de ce progiciel. Figure 4 : Interface OpenERP 6.1
  27. 27. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 28 3.1.2Couverture fonctionnelle de la migration La migration devrait inclure tous les composants fonctionnels de l’entreprise cliente. Le système migré constituera le nouveau framework de travail, Donc nous devons concevoir un mappage fonctionnel entre le schéma source de la base des données liée à l’OpenERP 6.1 et le schéma cible lié à Odoo 8 en respectant les propriétés et les contraintes de chaque système. L’entreprise cliente travaille avec plusieurs composants fonctionnels de l’ERP, parmi ces composants : - Gestion de ressources humaines - Gestion de stock - Comptabilité - Gestion d’achat - Gestion de ventes - Gestion commerciale - Gestion d’entrepôt - CRM Ainsi les composants métiers spécifiques : - GMAO - TMS La migration devrait inclure aussi des transformations spécifiques : - Un remplacement des numéros des comptes comptables des clients et des fournisseurs, l’entreprise cliente a met a notre disposition un document Excel contient les anciens numéros des comptes comptables et les nouveaux. - La suppression de plusieurs produits qui sont plus utilisés par l’entreprise cliente mais par contre il faut garder les mouvements de stock, les factures, les
  28. 28. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 29 bons de commande qui inclurent ces produits, c'est-à-dire sans supprimer l’historique et les traces de ces articles du système après la migration. 3.1.3Couverture fonctionnelle de la GMAO La GMAO permet la gestion et le pilotage de l’activité de maintenance au sein de l’entreprise afin de l'aider dans ses missions, nous avons résumé les besoins du client en termes de fonctionnalités suivantes : Figure 5 : fonctionalités de la GMAO
  29. 29. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 30 - Gestion des maintenances de déférents types (correctives, préventives). - Planification des alertes et les rappels automatiques (visite technique, vidange, kilométrage maximale des pneus) - Gestion des stocks de magasin (stock minimum des pièces de rechange …) - Gestion des achats des pièces ou services - Planification et optimisation des interventions - Gestion documentaire liée aux interventions (rapports, photos des pièces de rechange…) - Affectation des personnels aux actions de maintenance - Affectation des pièces de rechange à une maintenance depuis le magasin de stock (magasin virtuel d’affectation) - Suivi des coûts de maintenances - Gestion du cycle de vie du matériel - Gestion des types de maintenance, types de panne et sous-panne - Suivi de consommation des ressources (huile, filtres, pièces….) - Statistiques et tableaux de bord - Générations des rapports - Historisation - Saisie des temps de main d’oeuvre et des travaux effectués - Les options de tri et de recherche - Génération des indicateurs de performance (Aide à la décision) - Utilitaires d’importation et d’exportation
  30. 30. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 31 3.1.4Système cible La nouvelle version majeure Odoo 8 suit la version 7 qui a remporté un franc succès auprès des utilisateurs, avec cette version les utilisateurs pourront profiter d'un gestionnaire de sites internet (CMS) complètement intégré avec l'ERP, un gestionnaire de blog prometteur, Il pourra, dans certains cas, devenir une alternative à une interface entre Odoo et un outil comme WordPress, des fonctionnalités complètes pour l'e-commerce sont intégrées, le système de gestion d'entrepôts a été revu en profondeur avec l'aide d'intégrateurs proches du terrain pour répondre aux différentes problématiques logistiques. Figure 6 : Support des versions OpenERP Un nouveau moteur de rapport d'éditions permettra de faciliter la gestion des rapports et de rendre les utilisateurs plus autonomes dans la personnalisation et la maintenance des éditions de pièces commerciales (factures, devis etc.). Le décisionnel fait désormais partie de la feuille de route de l'éditeur, avec l'intégration de cubes (outils d'agrégation de données multi-applications), ainsi des nouveaux efforts sont portés sur l'amélioration des gestionnaires de fenêtres et des vues graphiques. La nouvelle interface de programmation (API) / framework, qui prend en compte les besoins des programmeurs, pour le portage des modules de la version 7 à la version 8, les API sont interopérable, par contre la version 6.1 ne l’est pas, A cet effet, les modules métiers du système actuel doivent être portés et adaptés a la version 8.
  31. 31. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 32 Figure 7 : Interface Odoo 8 3.2 Étude technique Le système OpenERP est basé sur une architecture 3-tiers, avec PostgreSQL comme serveur de base de données qui peut contenir plusieurs bases de données, alors les deux systèmes de gestion de base de données sont compatibles 3.2.1Système source La base de donne du système source est composé de plus de 500 tables dont notre mission est de réaliser un plan de migration des données avec le choix des tables à migrer, tout en réduisant les risques de manière importante et gardant la cohérence fonctionnelle du nouveau système. Nous allons citer dans des tableaux chaque module avec ses tables à migrer, sachant qu’il y’a des tables qui sont remplies par défaut des données durant l’installation des modules associés, donc il faut adapter les nouvelles données aux celles par défaut.
  32. 32. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 33 Voici une liste des noms tables principales utilisées dans OpenERP et leurs utilisations fonctionnelles.  Module de base Nom de la table Description res_users Utilisateurs res_partner Partenaire (client ou fournisseur) res_partner_address Adresses du partenaire res_lang Langage d’OpenERP res_groups Droits d’accès des groupes res_currency Devise res_company Entreprise (Multi-sociéte) Tableau 2 : Tables principales du module de base  Module Produit Nom de la table Description product_category Catégorie de produits product_product Produit ou service product_template Modèle de produit product_pricelist_item Liste des prix product_pricelist_version Version des listes des prix Tableau 3 : tables principales du module produit
  33. 33. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 34  Module Comptabilité Tableau 4 : tables principales du module comptabilité  Module Gestion d’achat Tableau 5 : tables principales du module Achat Nom de la table Description account_account Compte client et fournisseur account_analytic_account Comptes analytique account_analytic_journal journal analytique account_fiscalyear Année fiscale account_invoice Facture account_invoice_tax Tax des factures account_journal Journal comptable account_move Ecritures comptables Nom de la table Description purchase_order Bon d’achat purchase_invoice_rel Facture de bon d’achat purchase_order_taxe Tax de bon d’achat
  34. 34. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 35  Module Gestion de stock Nom de la table Description stock_inventory Inventaire de stock stock_location Emplacement de stock stock_move Mouvement de stock stock_partial_move Mouvement partiel de stock stock_warehouse Entrepôt de stock Tableau 6: tables principales du module stock  Module Resource humaine Tableau 7 : tables principales du module ressources humaines Nom de la table Description hr_department département hr_employee Les employées hr_employee_category Catégorie des employées hr_job Mission product_pricelist_version Version des listes des prix account_move Mouvement de compte
  35. 35. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 36 3.3 Conclusion Les tables citées ci-dessus se sont que les tables principales de chaque module, il reste encore d’autres moins importants, et les tables de référencement. Le chapitre suivant sera dédié au choix des outils de migration, ainsi l’outil idéal pour la retro-ingénierie.
  36. 36. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 37 Chapitre 4 Etude comparative des outils de migration Dans ce chapitre, nous allons présenter les résultats des études comparatives menées pour le choix des outils de migration à utiliser dans notre projet.les comparatifs concerner le choix de l’ETL qui va mettre en place le système de migration, ainsi l’outils de reverse engineering
  37. 37. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 38 4 Étude comparative des outils de migration 4.1 Méthode de migration Le choix le plus difficile dans tout projet d'intégration/migration de données consiste à déterminer quelle méthode doit être mise en oeuvre : - Faut-il créer du code spécifique (procédures SQL, code python ou code Java) ? - Faut-il utiliser un ETL ? La première solution semble intéressante, car elle permet de rester au plus près des spécificités métiers des données à traiter. Cependant, cette solution peut s'avérer coûteuse à long terme, tout simplement car l'évolutivité constante des données métier entraîne une nécessaire adaptation des traitements d'intégration. Celle-ci n'est pas toujours facile à gérer, surtout si les équipes projets évoluent au cours du temps. La deuxième solution va permettre de mettre en oeuvre très rapidement les traitements d'intégration, les ETL disposent d'une interface graphique permettant l'élaboration des différents scénarios d'intégration. Figure 8 : ETL
  38. 38. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 39 Le travail est ainsi grandement facilité, tant au niveau de la conception que de la maintenance des traitements de données. Tandis que NEXTMA est une SSLL qui s’implique dans la culture de l’Open Source et les logiciels libres, sachant que les ETL Open Source peuvent répondre de façon équivalente à la plupart des ETL propriétaires disponibles sur le marché. Donc nous bénéficions des avantages d'un ETL tout en gardant une maîtrise lissée des coûts, aucune licence n'est à payer, parmi ces avantages : - Maintenance moins coûteuse - Conception rapide - Lecture/Ecriture des données sur un large choix de supports - production automatique des rapports de mise en correspondance des données et d’analyse de dépendance de données. - Une très bonne performance même pour une grande quantité de données. Voici une liste des ETL Open Source : - Talend Open Studio (TOS) : un produit d'ETL particulièrement complet, il génère directement les tâches de transformation en Java ou en PERL et dispose de multiples connecteurs pour les principaux produits logiciels d'entreprises. - Pentaho Data Integration (PDI) : la solution d'ETL Kettle intégrée au sein du projet Pentaho. - Enhydra Octopus : un outil d'Extraction, Transformation, Loading. Il se connecte aux bases de données sous JDBC et s'appuie comme il se doit sur un schéma XML. - Clover ETL : une solution d'intégration des données écrite en Java. - Ketl : un produit d'ETL basé sur une architecture Java.
  39. 39. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 40 4.2 Choix de l’ETL Nous avons décidé de limité la comparaison sur les solutions PDI et Talend car se sont des solutions gratuites et open source et qui font parti des solutions les plus complets et reconnus.  Talend Open Studio Actuellement en version 5, Talend Open Studio (TOS) est édité par la société Talend. Talend est un ETL dont l'interface graphique s'appuie sur Eclipse RCP et est de type "générateur de code" : un code spécifique est généré (et visible) pour chaque traitement d'intégration de données.  Pentaho Data Integration Egalement connu sous le nom de Kettle, actuellement en version 5, PDI est un ETL dont l’interface basée sur Java SWT. PDI embarque en effet la totalité du code nécessaire dans son noyau et ne traite ainsi que les flux de données. Ainsi, un traitement Kettle peut être stocké sous forme de fichier plat (XML) ou bien dans un SGBD. 4.2.1Critères de comparaison 4.2.1.1 Critères Fonctionnelles  Fonctionnalités : couverture fonctionnelle du logiciel (métadonnées, transformations etc.).  Talend - Génération de code Java ou Perl à partir des Jobs créées par l'utilisateur. - Récupération des schémas des tables automatiquement en se connectant à celles-ci
  40. 40. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 41 - Génération automatique de la documentation - Traitements spécifiques par ajout de code en Java - Composants principaux : SGBD, transformation, association, agrégation, filtrage, LDAP, XML, accès fichiers... - Mode debug/traçage permettant de visualiser pas à pas le traitement effectué - Modifier le code du logiciel en fonction de ses besoins (le code doit être sous licence GPL) - Composants spécifiques : FTP, POP/SMTP, Shell... - Composants personnels - Création de ses propres composants (écris en Java ou Perl) - Utilisation de ceux de la communauté - Des composants (non connecteurs) permettent d'attraper les exceptions. Les erreurs peuvent ainsi être gérés et affichés dans une console ou un fichier de log. - Jouer un scénario différent en cas d’échec d’un composant.  PDI - Utilisation de JavaScript pour le traitement - spécifique de types primitifs - Traitement FTP - Communication avec serveur LDAP PDI est constituée de plusieurs composantes : - Spoon est l’outil permettant de créer graphiquement des transformations, de les exécuter et les sauvegarder. Des étapes sont ajoutées à la tâche de transfert à l'aide de glisser-déposer. - Kitchen permet l'exécution d'une transformation en ligne de commande, il a été créé pour la planification des tâches de transferts (Compatible Windows et Linux). - Pan permet quant à lui l'exécution de transformations en ligne de commande.
  41. 41. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 42  Performance : temps d’exécution des taches. Lancement d’un test de filtrage des données et lookup donne les résultats représentés dans le graphe suivant : Figure 9 :graph de comparaison en performance entre ETL
  42. 42. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 43  Convivialité : qualité de l'interface utilisateur et de l'accessibilité du logiciel. PDI TOS Mapping graphique + + Drag and drop (Glisser/déposer) + + Représentation graphique des flux + + Visualisation des données en cours de développement + + Tableau 8 : comparaison en convivialité entre ETL  Qualité : qualité de la conception, du code et des tests. PDI TOS Gestion des erreurs d'intégration - + Outils de debugging + + Compilation des traitements - + Possibilité de traitements par un langage de programmation + + Fonctions statistiques de qualité - + Tableau 9 : comparaison en qualité entre ETL
  43. 43. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 44 4.2.1.2 Critères techniques  Référentiel vers métadonnées : un historique des Jobs/Fichiers manipulés, et une description détaillée de ceux-ci (structure/format). PDI TOS Référentiel vers métadonnées + + Tableau 10 : comparaison en référentiel ver métadonnées entre ETL  Outil de création de requêtes : possibilité de pré-visualiser le contenu d’une base de données via des requêtes : SELECT, UPDATE etc. sous l’ETL. PDI TOS Outil de création de requêtes + + Tableau 11 : comparaison en outil de création des requêtes entre ETL  Validité des fichiers plats : possibilité de valider la structure d’un fichier CSV/XML/Excel etc. Au préalable, conformément à un schéma prédéfini par l’outil de l’ETL. PDI TOS Validité des fichiers plats - + Tableau 12 : comparaison en validité des fichiers plats entre ETL
  44. 44. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 45 4.3 Bilan de comparatif Les deux ETL, Talend et pentaho, proposent l'ensemble des fonctionnalités nécessaires à un ETL. D’après cette étude, nous avons met le choix sur Talend pour réaliser la migration, c’est l’ETL le plus adapté au contexte de notre projet. Voici deux figures qui représentent les caractéristiques de chaque ETL réalisés par Smile, un intégrateur français des solutions open source. 4.4 Outil de rétro-ingénierie L'ingénierie inverse permet de créer des représentations graphiques détaillées et enrichies des environnements de base de données. Cette technique consiste à se connecter sur la base de données physique et de convertir les informations contenues, en un modèle de données. Le schéma résultant de la rétro-ingénierie présente alors les entités, les attributs, les clés primaires, les relations ainsi que les cardinalités des relations. Nous avons fixé le choix sur DbVisualizer, une application universelle de bases de données spécialement conçue pour les développeurs, les administrateurs de bases de données et les analystes. Il est la solution parfaite qui accèdent à un large éventail de bases Figure 11 : caractéristiques de PDI Figure 10 : Caractéristiques de TOS
  45. 45. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 46 de données. Ce programme permet à l'utilisateur de naviguer à travers les données. Il peut éditer chaque objet et afficher même les plus petits détails. La structure des bases de données est configurable selon les besoins de l'utilisateur. Figure 12 : interface DbVisualizer 4.5 Conclusion Ce chapitre a présenté les résultats de comparaison menés pour le choix des outils de migration les plus adaptés à notre projet. Nous avions le choix entre deux ETL, TOS et PDI, nous avons comparé les ETL retenus suivant des critères d’évaluation Techniques et fonctionnels) pour trancher finalement sur le plus puissant et le plus approprié. Ce comparatif a mené au choix de TOS comme outil de migration. Le chapitre suivant fera l’objet de la réalisation de la migration.
  46. 46. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 47 Chapitre 5 Conception de l’ETL et Réalisation de la migration Dans ce chapitre, nous allons présenter la conception de l’ETL par la comparaison des schémas, puis la réalisation de la migration
  47. 47. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 48 5 Conception de l’ETL et Réalisation de la migration 5.1 Rétro-ingénierie de l’OpenERP 6.1 Dans cette section nous avons réalisé une rétro-ingénierie des principaux modules de l’OpenERP 6.1 à l’aide de l’outil DbVisualizer pour comprendre les relations entre les différents objets du system et designer les tables qui vont être migré vers Odoo 8. Dans les schémas qui suivent, Nous n’allons pas représenter les noms des champs des tables, les clés primaires et les clés étrangères. Pour des raisons de clarté nous représenterons que les noms des tables et les relations entre eux. 5.1.1 Module de base Le module qui fournit les objets de base : utilisateurs, clients, fournisseurs, langues pays, devises etc. Figure 13 : MCD module de base
  48. 48. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 49 5.1.2 Module produit Figure 14 : MCD module Produits et liste des prix 5.1.3 Module gestion de stock Figure 15 : MCD module gestion de stock
  49. 49. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 50 5.1.4 Module comptabilité Figure 16 : MCD module comptabilité 5.1.5 Module ressources humaines Figure 17 : MCD module ressources humaines
  50. 50. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 51 5.1.6 Module gestion d’achat Figure 18 : MCD module gestion d'achat 5.1.7 Module GMAO Figure 19 : MCD module GMAO
  51. 51. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 52 5.2 Mapping entre OpenERP 6.1 et Odoo 8 La nouvelle version a subit plusieurs changements fonctionnels, surtout que la monté de la version 6.1 vers la version 8 est passée par une version intermédiaire, l’OpenERP 7 5.2.1 Les principales changements dans l’architecture Nous avons fait une comparaison des modèles conceptuels de données des deux versions, et voici quelques différences Figure 20 : MCD partenaire OpenERP 6.1 Figure 21 : MCD partenaire Odoo 8
  52. 52. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 53 Figure 22 : MCD employé OpenERP 6.1 Figure 23: MCD employé Odoo 8
  53. 53. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 54 Figure 24 : MCD email OpenERP 6.1 Figure 25 : MCD email Odoo 8 5.2.2 La Conception de l’ETL Comme expliqué précédemment , les outils ETL gèrent toutes les étapes de la collecte de données au sein des systèmes d’information hétérogènes : SGBD, applications spécifiques, fichiers plats, bases hiérarchiques et base des ERP, depuis le nettoyage de données collectées, la consolidation et la mise en concordance des données éparses jusqu’à leur distribution auprès des applications cibles ou des systèmes décisionnels (analyse, tableaux de bord, etc.). L’ETL se déroule en trois étapes majeures : l’extraction, la transformation et le chargement des données.
  54. 54. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 55 - Extraction des données sources : C’est un processus important car c’est lors de ce processus que nous devrons résoudre les problèmes d’intégration et de qualité des données. - Transformation : Application de filtre, agrégation, traitement des données manquantes ou aberrantes et contrôle des rejets, intégrité et cohérence. - Chargement des données : synchronisation des chargements, transfert de fichiers ou transfert de base à base. - Données de stockage : cette première étape porte sur la consolidation des données source, pour notre cas, les sources de données sont : - Système de production (PostgreSQL). - OpenERP 6.1 Pour procéder la migration nous devons créer les jobs Talend, ils permettent l’extraction, la transformation et le chargement des données. Nous allons extraire les données de la base des données source liée à l’OpenERP 6.1, faire les conversions de données nécessaires, alimenter les tables qui se correspondent, et faire des jointures entre les tables lorsque cela est nécessaire. Cette phase est la plus critique de l’ETL par ce que une simple erreur peut provoquer un bug sur l’environnement cible de la migration.  Migration des partenaires Figure 26 : job de migration des partenaires
  55. 55. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 56 Figure 27 : schéma de mapping des partenaires  Migration des employés Figure 28 : job de migration des employés
  56. 56. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 57  Importation des plans comptables L’importation se fait depuis un fichier csv avec l’utilisation des agrégations et des jointures. Figure 29 : Job d'importation des plans comptables Dans cette importation nous avons utilisé une Routine pour passer les valeurs et les données appropriées aux tables cibles par des tests de sélection sur les données sources La routine permet de choisir entre les types de compte à passer, compte client ou compte fournisseur, selon la valeur retourné a partir du test fait sur les deux données boolean passer en paramètres, customer (client) et suplier ( fournisseur). Figure 30 : Routine de sélection
  57. 57. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 58 Nous avons utilisé cette routine pour des opérations de concaténation sur les codes des plans comptables migrés pour réussir les tests de comparaison des codes Figure 31 : Routine de concaténation Nous avons utilisé une autre routine pour corriger le problème des séquences de la base des données, durant l’alimentation nous devons mettre a jours le compteur des séquence pour la prise en charge des lignes insérées, A cet effet nous avons déclaré des variables de contextes qui permettent d’enregistrer la valeur du curseur de la table pour l’incrémenter a chaque insertion d’une nouvelle ligne. Figure 32 : Routine d'incrémentation des séquences Nous avons utilisé ces routines et d’autres dans les jobs de migration pour résoudre plusieurs problématiques liés à la transformation et la conversion des données, par exemple l’utilisation de la routine de sélection des types de compte dans le schéma de mapping des plans comptables ci-dessous.
  58. 58. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 59 Figure 33 : schéma de mapping des plans comptables 5.3 Conclusion Dans ce chapitre, nous avons présenté quelques travaux de conception des ETL et le procédé de la migration, ainsi les routines développées pour répondre aux besoins de transformation. Voici un aperçu de l’interface du system Odoo 8 après la migration. Figure 34: Exemple de contenu après la migration
  59. 59. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 60 6 Conclusion générale Lors du passage vers une nouvelle version d'une base de données ou d'une application, ou lors de la migration vers un nouveau système, les données doivent être préservées dans ce nouveau système. Après une fusion ou acquisition, les applications redondantes sont la plupart du temps abandonnées mais les données qu'elles contiennent doivent être préservées dans le système subsistant. Le but de la migration de données est de transférer les données existantes dans le nouvel environnement. Celles-ci doivent être transformées sous un format approprié pour le nouveau système et ce, tout en préservant l'information stockée dans l'ancien système. L’objectif du ce projet était la migration des donnes et le portage de la GMAO de l’OpenERP 6.1 vers Odoo 8, parmi les tâches réalisées, la montée en version et la migration de la base des données, par contre le portage est encours de réalisation puisque la nouvelle API est encore instable. Sur le plan technique, ce projet ayant touché à plusieurs domaines, il m’a permis d’acquérir de bonnes connaissances dans le domaine des ERP, ainsi que des techniques de rédaction fonctionnelle. Il m’a permis également d’approfondir mes connaissances en développement ETL. Sur le plan professionnel, ce stage a été une occasion pour moi d’améliorer et de faire un pas de plus dans le relationnel. J’ai également profité des multiples réunions tenues avec les responsables et les utilisateurs de l’entreprise cliente durant le stage pour améliorer ma communication et l’adapter à celle en entreprise où on est appelé à communiquer régulièrement et de façon efficace avec le client afin d’éviter tout malentendu et de pouvoir progresser vers les mêmes objectifs. Comme perspective, même si nous avons commencé travailler dedans, je propose d’automatiser le plus possible le processus de migration des données, une telle amélioration nécessite l’installation de touts les modules concernés par la migration, ce qui augmente la complexité du système et rend très difficile la gestion des dépendances et des relations entre objets.
  60. 60. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 61 7 Bibliographie et webographie [1] Smile, « Guide de l’open source », France, 2014. [2] les étapes de la migration des données : http://sinergique.com/2012/10/10/openerp-pour-une-montee-en-version-rapide-et- efficiente/ [3] un article d’une expérience de déploiement Odoo dans les entreprises françaises : http://people.via.ecp.fr/~alexis/openerp/ [3] le forum officiel d’Odoo : http://www.odoo.com/fr_FR/forum/help-1/
  61. 61. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 62 Glossaire A API : est une interface de programmation, une façade clairement délimitée par laquelle un logiciel offre des services à d'autres logiciels. D Data mapping : ou mise en correspondance de données, est un procédé permettant de définir au niveau d'un langage de programmation la correspondance entre deux modèles de données. E ETL : extracto-chargeur, il s'agit d'une technologie informatique intergicielle permettant d'effectuer des synchronisations massives d'information d'une source de données (le plus souvent une base de données) vers une autre. Selon le contexte, on est amené à exploiter différentes fonctions, souvent combinées entre elles : « extraction », « transformation », « constitution » ou « conversion », « alimentation ». ERP : est un ensemble de logiciels intégrant les principales fonctions nécessaires à la gestion des flux et des procédures de l'entreprise (comptabilité et finances, logistique, paie et ressources humaines, etc.). Tous ces logiciels accèdent à des ressources communes, en particulier des bases de données. G GMAO : est la gestion de maintenance assistée par ordinateur, une méthode de gestion assistée d'un logiciel destiné aux services de maintenance d'une entreprise afin de l'aider dans ses activités. J JOB : Unité de traitement principale, un job peut représenter un processus (ETL) simple ou une chaine complète de sous-processus.
  62. 62. Migration des données et portage du module GMAO Projet de Fin d’Etudes 2013-2014 63 Jointure : est l'opération permettant d’associer plusieurs tables ou vues de la base par le biais d’un lien logique de données entre les différentes tables ou vues, le lien étant vérifié par le biais d'un prédicat. Le résultat de l'opération est une nouvelle table. M MCD : ou Modèles Conceptuels de Données, est un modèle de données ou diagramme pour des descriptions de haut niveau. Il fournit une description graphique pour représenter de tels modèles de données sous la forme de diagrammes contenant des entités et des associations. R Retro-ingénierie : reconstituer un modèle de données à partir des structures physiques des fichiers ou des tables. Routine : est une entité informatique qui encapsule une portion de code (une séquence d'instructions) effectuant un traitement spécifique bien identifié (asservissement, transformation, calcul, etc.) relativement indépendant du reste du programme, et qui peut être réutilisé dans le même programme, ou dans un autre. T Transformation de données : est un Processus automatisé qui utilise les données brutes extraites pour les transformer selon les règles de gestion de l’entreprise et les préparer selon les besoins des utilisateurs. TMS : est un système de gestion du transport qui couvre un ensemble cohérent de briques fonctionnelles s’étendant sur les niveaux de décision stratégique, tactique, opérationnel et d’exécution.

×