You are on page 1of 130

UNIVERSITE HASSAN II MOHAMMEDIA Facult des Sciences Ben MSik Dpartement de Mathmatiques et Informatique

Master Spcialis Qualit de Logiciels


Rapport de stage de fin dtudes Etude, synchronisation et mise en place dun progiciel de gestion intgre Openbravo ERP

Ralis par : MOUKRIM Chouaib Au sein de : ELECTRO PROTECT

Soutenu en septembre 2012 devant le jury :


Hamza MECHTALY : encadrant professionnel

Abderrahim TRAGHA : encadrant acadmique Habib BENLAHMAR : examinateur

Anne Universitaire 2011/2012

MOUKRIM Chouaib

Septembre 2012

Page 2

Ddicaces
mon pre et ma trs chre mre qui m'a toujours donne un magnifique modle de sacrifice, de persvrance et de bonne conduite. J'espre qu'elle trouvera dans ce travail toute ma reconnaissance et tout mon amour. mon frre et mes surs en tmoignage de ma profonde reconnaissance pour tout d'amour et lmotion qui mont donns, que je puisse jamais les rcompenss. toute ma famille. toutes mes amies, merci pour les moments inoubliables et votre soutien. ma ville natale Casablanca, tout le peuple syrien et palestinien rsistants, tous les musulmans travers le monde. Je ddie cette mmoire

MOUKRIM Chouaib

Septembre 2012

Page 3

Remerciements
En premier lieu, je remercie Dieu, le Tout-Puissant pour ses faveurs et ses grces, de mavoir donn le courage et la patience de mener ce travail. Au terme de ce travail, je tiens remercier Mr. ABDERRAHIM TRAGHA mon encadrant la facult des sciences Ben M'sik, pour les conseils quil ma prodigu, son judicieux encadrement ainsi que son assistance. Ainsi, jexprime ma profonde gratitude et je tiens remercier tout le personnel du Dpartement informatique, pour leur soutien et pour leur gnrosit considrable quant loffre de linformation. Je tiens exprimer mes gratitudes mes encadrant ElectroProtect et plut prcisment lquipe du Perf Informatique pour leur soutien, et surtout Mr. MECHTALY HAMZA responsable du projet RAWAJ qui ma assist tout au long de ce travail. Mes remerciements sadressent galement Mr. NABIL LAHLOU Directeur Gnral de la socit ElectroProtect de m'avoir accept parmi son quipe, et de me donner lopportunit de travailler sur un sujet trs intressant. Que messieurs les membres du jury trouvent ici lexpression de mes reconnaissances po ur avoir accept de juger mon travail. Que tous ceux et celles qui ont contribu de prs ou de loin laccomplissement de ce travail trouvent lexpression de mes remerciements les plus chaleureux.

MOUKRIM Chouaib

MOUKRIM Chouaib

Septembre 2012

Page 4

Rsum
Le sujet prsent consiste lImplmentation dune Solution ERP Open Source. Ltude de cas consiste rpondre au besoin du projet RAWAJ ayant une activit nationale.

Notre travaille consiste a ladaptation et lintgration de la solution ERP Open Source choisie, pour ce projet. Cette socit dsire se doter dune solution ERP afin daugmenter son efficacit de rduire ainsi ses frais de gestion, et la plus essentielle est ldition des donnes comptables de manire pouvoir effectuer un suivi et une transmission une entit comptable externe en incluant les divers lments ncessaire ltablissement des divers documents comptables rglementaires tels que Compte de Rsultats, Bilan, Dclaration de TVA et autre.

Une investigation prliminaire sur les solutions ERP Open Source disponibles t conduite et Openbravo a retenu lattention grce au haut niveau de ces fonctionnalits.

Le noyau du sujet est limplmentation dune plateforme test de manire valider la pertinence de la solution et son ergonomie. Cette plateforme test devra tre implmente sous forme dune machine virtuelle Linux dployable sous VMWare. Donc notre rle est de synchroniser les donnes de lERP et de POS (Point Of Sales), adapte de la plateforme de test dautres normes comptables et dautres langues en particulier le franais, langlais et larabe, le dvelopper de tel sort, il adopte les diffrents modles tel que : les modles de documents, les modles de rapports. Ce nouveau ERP sera menu dune documentation complte pour le dploiement et une documentation dupdate et dupgrade.

MOUKRIM Chouaib

Septembre 2012

Page 5

Sommaire
DEDICACES .................................................................................................... 3 REMERCIEMENTS ............................................................................................. 4 RESUME ........................................................................................................ 5 GLOSSAIRE .................................................................................................. 11 LISTE DES FIGURES ET DES TABLEAUX ................................................................ 12 INTRODUCTION ............................................................................................. 15 STRUCTURE DU MEMOIRE ................................................................................ 16 PARTIE 1 : ................................................................................................... 18
SYNTHESE BIBLIOGRAPHIQUE ...................................................................................................... 18

I.

CONTEXTE GENERAL DU PROJET ........................................................ 20


1. ORGANISME DACCUEIL ......................................................................................................... 20 2. PRESENTATION DU PROJET RAWAJ IT ? ........................................................................................ 21 3. PRESENTATION DU SUJET ...................................................................................................... 21 4. APPROCHE PROPOSEE ......................................................................................................... 22

II.

PLAN DE SELECTION DE LERP ........................................................... 24


1. ENTREPRISE RESOURCE PLANNING (ERP) ...................................................................................... 24 2. CARACTERISTIQUE GENERALE DES ERP......................................................................................... 25 3. ARCHITECTURE MODULAIRE .................................................................................................... 26 4. LES PRINCIPAUX EDITEURS DES ERP ............................................................................................ 26 i. les principaux ERP propritaires ........................................................................................ 26

ii. Les principaux ERP Open Source ........................................................................................ 27 5. ETUDE COMPARATIVE ENTRE OPEN SOURCE .................................................................................... 28 6. SYNTHESE ...................................................................................................................... 31

MOUKRIM Chouaib

Septembre 2012

Page 6

III.

OPENBRAVO ERP ............................................................................ 33


1. PRESENTATION DE LEDITEUR OPENBRAVO ..................................................................................... 33 A. Introduction ................................................................................................................ 33 B. Historique .................................................................................................................. 33 2. PRESENTATION DE L`ERP OPENBRAVO ........................................................................................ 33 Les caractristiques de l`ERP Openbravo .................................................................................. 33 3. MODE DE FONCTIONNEMENT DE L`ERP OPENBRAVO ........................................................................... 34 LArchitecture ............................................................................................................. 34 A. LArchitecture Gnrale ................................................................................................. 34 B. LArchitecture dtaille : ................................................................................................ 35 4. LES MODULES DE L`ERP OPENBRAVO ......................................................................................... 37 5. LES TECHNOLOGIES UTILISEES POUR LE DEVELOPPEMENT ...................................................................... 41 6. SYNTHESE : .................................................................................................................... 42

PARTIE 2 : ................................................................................................... 43
DEVELOPPEMENT DU SYSTEME ..................................................................................................... 43

IV.

ETUDE DES BESOINS ........................................................................ 45


1. ETUDE DE LEXISTANT : ........................................................................................................ 45 A. Openbravo POS v2.30.2 (IPOS) .......................................................................................... 45 B. Lacunes du systme actuel .............................................................................................. 46 C. Synthse : .................................................................................................................. 46 2. ETUDE DES PROCESSUS ET CIRCULATION DE LINFORMATION ................................................................... 47 A. Le processus de synchronisation POS ................................................................................... 48 B. Gestion des donnes principales: ....................................................................................... 48 C. Le processus de vente .................................................................................................... 49 D. Le processus stock :....................................................................................................... 50 E. Le processus achat : ...................................................................................................... 51 3. DIAGNOSTIC DE L`ETUDE DU SYSTEME ......................................................................................... 52

MOUKRIM Chouaib

Septembre 2012

Page 7

A. Diagnostic .................................................................................................................. 52 B. Solutions et suggestions pour amliorer le systme existant ....................................................... 53 4. RETRO-CONCEPTION ........................................................................................................... 54 5. CONDUITE DU PROJET .......................................................................................................... 55 A. Processus de dveloppement ............................................................................................ 55 B. Planning du projet ........................................................................................................ 57

V.

ANALYSE & CONCEPTION DU NOUVEAU SYSTEME .................................... 59


INTRODUCTION ..................................................................................................................... 59 1. LANALYSE FONCTIONNELLE ................................................................................................... 59 A. Identification des acteurs du nouveau systme ....................................................................... 59 B. Identification des cas d`utilisation ..................................................................................... 60 C. Larchitecture fonctionnelle du systme en pacquages : ............................................................ 61 D. Les diagrammes de cas dutilisation .................................................................................... 62 Package : Gestion des donnes principales ......................................................................... 62 Package : Gestion des ventes ......................................................................................... 63 Package : Gestion des achats ......................................................................................... 63 Package : Comptabilit ................................................................................................ 64 Package : Synchronisation POS........................................................................................ 65 E. Description des cas d`utilisation ........................................................................................ 65 i. Module : Gestion des donnes principale. ........................................................................... 65 ii. Module : Point de vente ............................................................................................. 68 iii. Module : Comptabilit ............................................................................................... 69 iv. Module : Gestion des ventes ........................................................................................ 70 v.Module : Gestion des achats .......................................................................................... 72 2. LANALYSE STATIQUE .......................................................................................................... 74 Lauthentification ............................................................................................................. 74 Diagrammes de classe : Gestion des ventes ................................................................................ 76 Diagrammes de classe : Gestion dachat ................................................................................... 77

MOUKRIM Chouaib

Septembre 2012

Page 8

Diagrammes de classe : Gestion des donnes principales ................................................................ 78 Diagrammes de classe : module synchronisation POS ..................................................................... 79 Diagrammes de classe : module comptabilit ............................................................................. 80 3. LANALYSE DYNAMIQUE : ...................................................................................................... 81
I.

CONCEPTION DES DIAGRAMMES DE DACTIVITE ................................................................................. 81 Diagramme dactivit : Gestion des ventes ................................................................................ 81 Diagramme dactivit : Gestion des achats ................................................................................ 82

II.

CONCEPTION DES DIAGRAMMES DE SEQUENCE .................................................................................. 83

PARTIE 3 : ................................................................................................... 87
LA REALISATION DU NOUVEAU SYSTEME ........................................................................................... 87

VI.

LE PROCESSUS DE SYNCHRONISATION POS ............................................ 89


1. INTRODUCTION ................................................................................................................. 89 2. VUE D'ENSEMBLE DE L'INTEGRATION ........................................................................................... 89 3. LE PROCESSUS DE SYNCHRONISATION POS ..................................................................................... 90 A. La configuration dOpenbravo ERP...................................................................................... 90 La notion du systme de modularit dOpenbravo ERP............................................................ 90 Installation du module Webservice pour la synchronisation dOpenbravo POS ............................ 90 Vrification de l'installation du module ............................................................................. 91 Ajout du point de vente externe dans Openbravo erp : ........................................................... 92 Paramtres de la requte ............................................................................................. 93 Les Business Objects disponibles ..................................................................................... 93 B. La configuration dOpenbravo POS ..................................................................................... 94 Prsentation et concept de PDI ....................................................................................... 94 Installation de Pentaho Data Integration ............................................................................ 95 Configurer Pentaho Data Integration................................................................................. 96 C. Excution de la synchronisation ......................................................................................... 97 La synchronisation principale ......................................................................................... 97

MOUKRIM Chouaib

Septembre 2012

Page 9

La Synchronisation des commandes .................................................................................. 98

VII.

REALISATION ET MISE EN PLACE ........................................................101


1. ENVIRONNEMENT DE PROGRAMMATION ........................................................................................ 101 Choix de lOpenBravo ....................................................................................................... 101 Description des serveurs .................................................................................................... 101 Choix du SGBD ................................................................................................................ 101 Choix du domaine d`application & lIDE .................................................................................. 102 Choix du serveur d`application (Apache Tomcat) ....................................................................... 102 Choix du modle de dveloppement de l`application .................................................................. 103 2. CONCEPTS DE BASE DE LA PLATEFORME OPENBRAVO ................................................................. 103 Model Driven Dveloppement (MDD) ...................................................................................... 103 MVC Fondation Framework ................................................................................................. 104 3. IMPORTATION DES DONNEES ................................................................................................... 105 Format dimportation ....................................................................................................... 105 Importation des articles .................................................................................................... 106 Importation des commandes ............................................................................................... 107 4. PARAMETRAGE ................................................................................................................ 108 Paramtrage des taxes ...................................................................................................... 108 Paramtrage des catgories darticles .................................................................................... 109 Paramtrage des tarifs ...................................................................................................... 109 Paramtrage des tiers ....................................................................................................... 110 5. MISE EN PLACE DE LERP ..................................................................................................... 111 Module achat ................................................................................................................. 112 Module vente ................................................................................................................. 115 Module comptabilit......................................................................................................... 118 6. SECURITE INFORMATIQUE ..................................................................................................... 119

CONCLUSION ...............................................................................................120

MOUKRIM Chouaib

Septembre 2012

Page 10

BIBLIOGRAPHIE ............................................................................................121 WEBOGRAPHIE.............................................................................................121 ANNEXES ...................................................................................................122


ANNEXE 1 OPENBRAVO POS ................................................................................................... 122 ANNEXE 2 OPENBRAVO ERP................................................................................................... 125

Glossaire
Dans ce glossaire nous citons quelques termes ncessaires pour la comprhension du rapport.
ERP: Entreprise Ressource Planning. PFE: Projet de Fin dEtude. MVC : Modle Vue Contrleur MDD: Model Driven Development WAD: Wizard for Application Development POS : Point de vente CNC : Conseil National de la Comptabilit IDE: Integrated Development Environment JDBC: Java Data Base Connectivite PGI : Progiciel de Gestion Intgr PME : Petites et Moyennes Entreprises SI : Systme dInformation SQL: Structured Query Language UML: Unified Modeling Language HTTP: Hyper Text Transfer Protocol EJB : Entreprise JavaBean

MOUKRIM Chouaib

Septembre 2012

Page 11

Liste des figures et des tableaux


Liste des figures
Figure 1 Solution Propose .................................................................................................................................... 22 Figure 2 : Lvolution des ERP .............................................................................................................................. 25 Figure 3 : l'Architecture gnrale d'Openbravo................................................................................................... 34 Figure 4 : LEnvironnement de dveloppement de l'ERP Openbravo ........................................................... 36 Figure 5 : Les interactions entre les interfaces "Utilisateur-Openbravo" ........................................................ 37 Figure 6 : La structure modulaire de l'ERP Openbravo .................................................................................... 37 Figure 7 : Interface de vente OpenbravoPOS(*) .................................................................................................. 46 Figure 8 : larchitecture modulaire et linterconnexion entre les modules....................................................... 47 Figure 9 : Schma illustre le processus de vente en Action, et interactions avec les autres processus. ...... 49 Figure 10 : Schma illustre le processus de commande de stock. .................................................................... 50 Figure 11 : Schma illustre le processus dachat .................................................................................................. 51 Figure 12 : Schma illustre le processus de demande dachat ........................................................................... 52 Figure 13 : Processus de Rtro-Conception......................................................................................................... 54 Figure 14 : Processus 2TUP ................................................................................................................................... 56 Figure 15 : Planning des tches .............................................................................................................................. 57 Figure 16 : les packages d'Openbravo erp ............................................................................................................ 61 Figure 17 : Gestion des donnes principales........................................................................................................ 62 Figure 18 : Gestion des ventes ............................................................................................................................... 63 Figure 19 : Gestion des achats................................................................................................................................ 64 Figure 20 : comptabilit ........................................................................................................................................... 64

MOUKRIM Chouaib

Septembre 2012

Page 12

Figure 21 Synchronisation de POS........................................................................................................................ 65 Figure 22 : gestion des droits d'accs .................................................................................................................... 75 Figure 23 : les interfaces .......................................................................................................................................... 75 Figure 24 : Gestion des ventes ............................................................................................................................... 76 Figure 25 : Gestion d'achat ..................................................................................................................................... 77 Figure 26 : Gestion des donnes principales........................................................................................................ 78 Figure 27 : module synchronisation POS ............................................................................................................. 79 Figure 28 : comptabilit ........................................................................................................................................... 80 Figure 29 : Diagramme dactivit : Gestion des ventes ................................................................................ 82 Figure 30 : Diagramme d'activit : gestion des achats .................................................................................. 83 Figure 31 : Authentification .................................................................................................................................... 84 Figure 32 : Tlcharger le catalogue des produits ............................................................................................... 85 Figure 33 : Synchroniser les ventes........................................................................................................................ 86 Figure 34 : page d'accueil du Web service. ........................................................................................................... 92 Figure 35 : point de vente externe dans Openbravo erp ................................................................................... 93 Figure 36 : Excution du processus de synchronisation .................................................................................... 98 Figure 37 : importation de la commande.............................................................................................................. 99 Figure 38 : Description des serveurs ...................................................................................................................101 Figure 39 : le modle MVC...................................................................................................................................103 Figure 40 : Gnration automatique de code WAD........................................................................................104 Figure 41 : Format dimportation des donnes .................................................................................................106 Figure 42 : Importation dun article ....................................................................................................................107 Figure 43 : Importation de commande ...............................................................................................................108 Figure 44 : Paramtrage de taxes .........................................................................................................................108

MOUKRIM Chouaib

Septembre 2012

Page 13

Figure 45 : Paramtrage de catgories produites ...............................................................................................109 Figure 46 : Paramtrage des tarifs ........................................................................................................................110 Figure 47 : Configuration des tiers ......................................................................................................................111 Figure 48 : cration initial de la socit ...............................................................................................................112 Figure 49 : Commande d'achat.............................................................................................................................113 Figure 50 : rception marchandise......................................................................................................................114 Figure 51 : facture d'achat .....................................................................................................................................115 Figure 52 : commande vente ................................................................................................................................116 Figure 53 : Gestion dexpdition commande de vente.....................................................................................117 Figure 54 : Facture de vente .................................................................................................................................118 Figure 55 : comptabilit .........................................................................................................................................119 Figure 56 : Schma Entit Relation d'Openbravo POS 2.30.2 .......................................................................124 Figure 57 : les interactions entres les couches dOpenbravo ..........................................................................126 Figure 58 : Data Access Layer dOpenbravo ERP 3MP11..............................................................................127 Figure 59 : web service REST du module synchronisation POS ...................................................................130

Liste des tableaux


Tableau 1 : les principaux modules de l'ERP ....................................................................................................... 26 Tableau 2 : Etude Comparative 1 (Caractristiques gnrales) ......................................................................... 30 Tableau 3 : Etude Comparative 2 (Module fonctionnels) ................................................................................ 30 Tableau 4 : Etude Comparative 3 (Technologies)............................................................................................... 30 Tableau 5 : Etude comparative entre les diffrents processus de dveloppement ........................................ 55 Tableau 6 : les acteurs du systme ......................................................................................................................... 60 Tableau 7 : Liste des cas dutilisation .................................................................................................................... 61 Tableau 8 : Business Objects .................................................................................................................................. 94

MOUKRIM Chouaib

Septembre 2012

Page 14

Introduction
Aujourdhui, toute entreprise est prte investir des sommes considrables dans limplantation des technologies logicielles afin damliorer ses services daccroitre son agilit et sa flexibilit, de rduire les couts daugmenter la production et de faire face aux dfis du march en effet, vu la croissance des activits au sein des entreprises, la tche de grer efficacement toutes ces fonctions savre de plus en plus complexe et difficile. Pour dpasser ces difficults, une entreprise doit utiliser des outils optimiss et adaptes facilitant les taches et offrant des fonctionnalits riches et utiles, parmi ces outils nous trouvons les systmes intgres de gestion tel que les ERP (Entreprise Ressources Planning). Ces ERP sont des outils de gestion et danalyse permettant doptimiser la diffusion des information en interne, damliorer les processus de gestion et dautomatiser les tches ce qui augmente normment la ractivit des entreprises et leurs agilits fonctions savre de plus en plus complexe et difficile.

MOUKRIM Chouaib

Septembre 2012

Page 15

STRUCTURE DU MEMOIRE
Pour tent de rpondre aux notre objectifs de notre tude, nous avons organis notre mmoire en trois parties : Une partie thorique ou nous ferons une synthse bibliographique des dfrents concepts thoriques. Cette partie prsente une tude dtaille sur le contexte de notre travail qui est lERP et plus prcisment lintgration des modules comptabilit, achat, ventes dans lERP Openbravo, cette partie est structur en trois chapitres, qui prsentent toutes linformation rcolte dans la littrature et ncessaire pour introduire la partie Pratique : Le premier chapitre : Contexte gnral du projet Dans ce chapitre, nous allons prsenter la socit ELECTRO PROTECT, son partenariat avec le projet RAWAJ, en termes dactivits et dorganisation. Le second chapitre : Plan de slection de lERP Dans ce chapitre et aprs avoir prsent lorganisme daccueil ainsi que les objectifs atteindre on effectue un tat de lart li au concept de lERP et ses dfrents processus. Nous montrons grce aux dfinitions que ce concept signifie. Ce chapitre rassemble les fondements importants des ERP. Le troisime chapitre : OpenBravo ERP Dcrit spcialement l`ERP open bravo, on a tente de faire une description sur toutes les faades de cet ERP (organisationnelle, technique.), dans ce chapitre, nous prsentons dans un premier temps des notions lmentaires de base sur lopen source. La deuxime partie prsente le rsonnement quon a mis en place pour la construction de notre systme et en dtaillera clairement notre tude. Pour accompagner tous ce qui a t fait, nous commencerons par les concepts les plus touchants ces domaines de lOpenBravo, pour arriver finalement ce qui nous intressent vraiment dans le cadre de llaboration de ce mmoire, cette partie regroupant les deux chapitres : prsente notre proposition qui dcrit laspect spcification et conception. Le chapitre quatre : tude de lexistant Prsente notre proposition qui dcrit laspect spcification des modules gestion financire, vente, et achat. Ce chapitre traite la gestion de comptabilit en pratique telle quelle est applique au sein de lERP OpenBravo, elle est analyse en dtail et diagnostique pour dfinir de faon dtaille les besoins de lentreprise et aboutir une bauche solution. Ce chapitre traite aussi lOpenbravo POS : est un logiciel de point de ventes pour crans tactiles qui est en cours de dveloppement par ElectroProtect. Le chapitre cinq: Analyse du nouveau systme. Ce chapitre dcrit une phase trs importante qui comporte la conception dtaille du nouveau systme en utilisant diffrents diagrammes et qui dcrit le droulement des processus.

MOUKRIM Chouaib

Septembre 2012

Page 16

La troisime partie prsente la ralisation du nouveau systme. Le sixime chapitre: Le processus de synchronisation POS. Le but de cette intgration est de crer un systme o Openbravo est le dpt central des donnes. Openbravo POS la capacit de grer le catalogue des produits tlcharg depuis Openbravo et de tlcharger les ventes crent par les activits de ventes dOpenbravo POS vers Openbravo, cette intgration a t dveloppe avec des services web. Le dernier chapitre : ralisation et mise en place. Dcrit limplantation et le dploiement. Ce dernier chapitre dcrit aussi les taches accomplies en titre de ralisation. Lors de ce chapitre on prsentera les diffrentes interfaces de notre application. Enfin On terminera par une conclusion gnrale rcapitulant le travail ralis ainsi que des perspectives futures pour dventuelles amliorations. Ces chapitres seront suivis dannexes qui donneront des claircissements qui enlveront lambigut qui pourrait entourer certaines notions et termes.

___________________________ Traduction : un POS (Point Of Sales) est un logiciel de point de ventes pour crans tactiles

MOUKRIM Chouaib

Septembre 2012

Page 17

Partie 1 :

Synthse Bibliographique

Chapitre :
Chapitre 1 : Contexte gnral du projet Chapitre 2 : Plan de slection de lERP Chapitre 3 : OpenBravo ERP

MOUKRIM Chouaib

Septembre 2012

Page 18

Dans ce cadre, cette partie a pour objectif de situer notre projet dans son contexte gnral savoir lorganisme daccueil et le sujet trait. Dans la premire section nous donnons une brve prsentation de l organisme d accueil ELECTRO PROTECT et son partenariat celle de RAWAJ. Dans la deuxime section nous dcrivons le sujet traiter et les objectifs atteindre.

MOUKRIM Chouaib

Septembre 2012

Page 19

I. CONTEXTE GENERAL DU PROJET


1. Organisme daccueil
Cr en 1996 par Mr. Nabil LAHLOU, ElectroProtect est une socit de service spcialise dans les secteurs : - Pesage lectronique (Balance et ponts bascules) - Solution dinformatisation du processus de vente - Equipement informatique mobile - Traabilit - Procs et quipements de valorisation (Machines glaces, chambres froides) - Equipements de manutention (chariot et convoyeur) Situe au cur du Maroc Casablanca, ElectroProtect dispose d'un axe gographiquement bien desservi (Agadir, Oujda, Layoune, Dakhla, Tanger) et propose des prestations de services informatiques de qualit avec une couverture nationale et des comptences dcentralises. a. Fiche Signaltique Raison sociale Capital Sige social Effectif Date de cration Site web b. Dpartements Les principaux dpartements du sige social sont les suivants : - Dpartement des ressources humaines - Dpartement finance et comptabilit Dpartement production Dpartement marketing Dpartement informatique Rseaux et tlcommunication : Soccupe de limplmentation et paramtrage des systmes et rseaux en suivant les bonnes pratiques (Best Practices) du groupe. Dveloppement informatique : Cest lentit qui prend en charge le dveloppement, limplmentation, et le suivi des projets informatiques. : : : : : : ElectroProtect SARL 2.000.000 DH 22, rue Imam Al Boukhari 20370 Maarif Casablanca Maroc plus de 70 personnes 1996 www.electroprotect.org

Durant mon stage, jai intgr le dpartement informatique qui se compose de deux entits :

MOUKRIM Chouaib

Septembre 2012

Page 20

2. Prsentation du projet Rawaj IT ?


Rawaj IT est un projet qui a t initi par le ministre du commerce et de lindustrie (dpartement du commerce intrieur). Il vise promouvoir la modernisation des outils dencaissement et de gestion des commerces de proximit. Par une subvention de 12.000 DH TTC par installation, ltat envisage daccompagner 20.000 commerces dici fin 2015. Le MCI (Ministre de lIndustrie du Commerce) par lintermdiaire de lANPME (Agence Nationale pour la Promotion de la Petite et Moyenne Entreprise) a lanc en Novembre 2011, un appel manifestation dintrt. La socit ELECTRO PROTECT a particip cet appel doffre, et a propos un package articul autours dquipements et de solution soft (open source). Aprs de multiples prsentations, et ladaptation des quipements et de lapplication aux exigences du CPS (Cahier des Prescriptions Spciales), le MCI a qualifi 4 offres dont celle dELECTRO PROTECT. Le dmarrage de ce projet, attend lapprobation du ministre des finances.

3. Prsentation du sujet
Le but dELECTRO PROTECT est de continuer fournir le meilleur service qui soit auprs de sa clientle. Pour accomplir ses taches, ELECTRO PROTECT est toujours la recherche de nouveaux produits et de nouvelles mthodes issues ddies des traitements spcifiques et les technologies de pointe. ELECTRO PROTECT s'est forg devenir un intgrateur de solutions et offre ses clients des solutions cls en main. ELECTRO PROTECT sintresse une solution plus robuste et paramtrable qui garde trace de toutes ses actions commerciales. Dans ce contexte, notre objectif de travail se traduit par ltude du systme existant (Openbravo POS) au sein de lorganisme daccueil afin daboutir lidentification des fonctionnalits du systme dans le but de la synchronisation avec ERP. La phase de spcification des besoins prend en compte les dfaillances du systme existant dans le but de dtecter les nouveaux besoins au niveau de la mise en place de lERP open source. Nous sommes donc appeles mettre en place lERP au sein de cette entreprise, dvelopper quelques fonctionnalits pour satisfaire leurs besoins. Limportation de donnes reste la phase la plus importante dans le processus dintgration de lERP. Ainsi, on utilise une mthode dextraction ETL (Extraction, Transformation and Loading) destin extraire les donnes du systme existant et les transformer ensuite les charger dans lentrept de donnes relatif lERP. Cette mise en place se focalise essentiellement sur ltude comparative des ERP Open Source, la retro-conception, la personnalisation, le paramtrage ainsi que le dveloppement des fonctionnalits spcifiques au sein des modules existants. Nous allons donc sintresser principalement aux lacunes suivantes : Amliorer le systme actuel en vitant les circuits papier et en gardant trace des diffrentes activits de lentreprise ; Faciliter lactivit commerciale de lentreprise ;

MOUKRIM Chouaib

Septembre 2012

Page 21

Etablir des analyses statistiques afin de suivre la tendance du produit pour chaque semestre. Pour cela, la meilleure solution tait dimplmenter un ERP multifonctions qui vise centraliser le systme dinformation et automatiser ses activits tout en garantissant une scurit de haut niveau.

4. Approche Propose
Durant ce travail, nous allons suivre la dmarche suivante : La retro-conception de lERP qui touche les aspects courants les donnes manipuls dun ct et les processus excuts de lautre ct ; La collecte des besoins spcifiques du client ; La classification des parties manquantes en deux types : le premier concerne le paramtrage des modules existant et le deuxime concerne le dveloppement spcifique.

La prsentation solution sera suivie tout au long de ce mmoire. La figure suivante illustre la succession des taches de la solution propose.

Figure 1 Solution Propose

Dans ce chapitre nous avons prsent ELECTRO PROTECT lorganisme daccueil. Dans la deuxime partie, nous avons dcrit lobjectif du travail puis nous avons propose lapproche rponds au besoin de la socit.

MOUKRIM Chouaib

Septembre 2012

Page 22

Le chapitre prcdent de ce rapport a prsent le cadre du projet ainsi que lobjectif de notre travail. Dans ce chapitre nous introduisons les concepts cls que nous avons utilises pour la ralisation de notre projet. Tout dabord, nous commenons par introduire le concept de lERP. Ensuite, ltude comparative entre les ERP Open source.

MOUKRIM Chouaib

Septembre 2012

Page 23

II. PLAN DE SELECTION DE LERP


1. Entreprise Resource Planning (ERP)
Dans cette section nous essayons de donner les diffrentes dfinitions de terme ERP mentionnes par plusieurs auteurs, chacun selon son domaine de recherche : Dans [Caillaud J. 2004], lauteur donne une dfinition qui concerne le concept ERP: Un systme ERP, ou PGI (progiciel de gestion intgr), est un progiciel qui vise couvrir et optimiser la totalit des fonctions et des processus de gestion dune organisation. Il sappuie sur une couche standard pour traiter les besoins gnriques et rpond aux besoins spcifiques par des paramtrages. Enfin, il peut fonctionner indiffremment sur plusieurs serveurs de donnes, systmes d'exploitation et SGBD . [ERP : GOC] prcise que les ERP sont des progiciels conus pour la gestion des entreprises, composs de plusieurs modules entourant les dfrents secteurs fonctionnels comme : planification, fabrication, ventes, distribution, comptabilit financires, gestion des ressources humaines, gestion des projets, gestion des stocks, service et entretien, transport et ebusiness . Dans [SUPINFO, 2008] cit par [Matthieu CIRELLI, 2008]: Il est ncessaire de paramtrer de manire trs pousse (rle de lintgrateur) chacun des modules fonctionnels pour rpondre aux besoins spcifiques de lentreprise .

Synthse
De ces dfinitions, nous retenons que lERP est un progiciel implanter qui permet de grer lensemble des processus de lentreprise en intgrant lensemble de ces processus et lensemble des fonctions de cette dernire comme : la gestion des ressources humaines, la gestion financire et comptable, la vente et la production, lachat et lapprovisionnement tout en partageant une base de donnes commune. Appellations : Le terme ERP est une appellation qui nest pas trs bien contrle et nexiste pas une seule mais pas moins de sept dnominations : progiciel, progiciel intgr, progiciel applicatif, progiciel applicatif intgr, progiciel de gestion, progiciel de gestion intgr et le plus courant cest lERP (entreprise ressource planning), connaissent un dveloppement acclr de puis le dbut des annes 1990, ils ont t dvelopps, lorigine, par extension des systmes de gestion de production de type MRP en fin des annes 60 (voir : Figure 2).

MOUKRIM Chouaib

Septembre 2012

Page 24

Figure 2 : Lvolution des ERP

2. Caractristique gnrale des ERP


Aprs avoir vu l`apport des ERP aux organisations, il est important de citer leurs caractristiques, on sintresse seulement leurs caractristiques gnrales: Premirement, l`ERP est un progiciel : cest un ensemble de programmes conus par un diteur pour correspondre aux besoins de plusieurs types d`entreprise. Un ERP est modulaire, ce n`est pas une construction monolithique, mais un ensemble de programmes (modules) sparables correspondant chacun a un processus de gestion. Un ERP est intgr : ou les divers modules ne sont pas conus de manire indpendante, ils peuvent changer des informations selon des schmas prvus. Un ERP vise optimiser les processus de gestion : a la construction de l`ERP, le concepteur s`appuie sur des modles de processus issus des meilleurs pratiques du secteur, de fait, l`diteur de l`ERP obtient un ensemble de rgles de gestion qui constitue un standards de fait pour un secteur donne. L`ERP est un paramtrable : cest un produit standardis, est conus a l`origine pour satisfaire les besoins d`entreprises diverses. Cependant, il existe gnralement des versions diffrentes par secteur d`activit, encore par langue d`utilisation (options locales ou rgionales).

MOUKRIM Chouaib

Septembre 2012

Page 25

3. Architecture modulaire
Nous avons donc vu que lERP est le plus performant et le plus avanc des logiciels de gestion du march, et quil est compos de modules fonctionnels rpondant diffrents besoins dans divers secteurs de lentreprise. Voici les principaux secteurs:
Comptabilit et Finance Etablissement de tous types dinformations comptables ou financires : Bilans, comptes de rsultats, prvisions Gestion des achats et des stocks, tablissement des factures

Achat et Stock Investissement

Production Pilotage dentreprise Qualit Ressources Humains Vente Service aprs vente (SAV) Gestion Projets

Suivi des dcisions dinvestissements, gestion de la rentabilit, Nous avons donc vu que lERP est le progiciel de gestion intgr le plus performant et le plus avanc du march, et quil est compos de modules fonctionnels rpondant diffrents besoins dans divers secteurs de lentreprise. Prvision et gestion de la production : Cots de fabrication, gestion de la chane de gestion logistique, Gestion de la productivit et de la comptitivit de lentreprise. Gestion des processus qualit GRH : Embauche, licenciements, Gestion des ventes : Prix, gestion des commandes, vente en ligne, Gestion du service aprs vente : Hotline, maintenance, gestion des techniciens Regroupe les phases dune gestion de projets : Suivi budgtaire, planning,
Tableau 1 : les principaux modules de l'ERP

4. Les principaux diteurs des ERP


On distingue deux sortes d'ERP : les ERP propritaires dits par des socits qui impliquent l'achat d'une licence et les ERP Open-source qui sont gratuits . i. les principaux ERP propritaires

Parmi les principaux ERP propritaires existent sur le march, nous voquerons ici quelques grands diteurs : SAP Oracle-PeopleSoft

MOUKRIM Chouaib

Septembre 2012

Page 26

SAGE ADONIX Microsoft SSA Global ii. Les principaux ERP Open Source

Avant de dcouvrir les principaux ERP Open Source, nous allons voir quest ce que lOpen Source et pourquoi choisir lOpen Source ERP Open Source Un ERP Open Source est diffrent dun logiciel ERP propritaire, non pas en ce qui concerne les fonctionnalits disponible, mais sur tout ce qui touche la licence du produit, ainsi qu la personnalisation de ce dernier. Quest ce que Open Source ? A la diffrence dun logiciel propritaire dont le cadre source est protg, un logiciel Open Source doit proposer le libre tlchargement du code source. En effet, le principe de lOpen Source est de permettre chacun de participer au dveloppement du produit. Aussi, la ou les diteurs de logiciels propritaires ont un monopole total sur la personnalisation de ce dernier, un logiciel Open Source sera personnalisable par toute personne maitrisant le langage de programmation utilis lors du dveloppement. De nombreux logiciels open source ont su sduire les consommateurs du monde entier : Firefox, Open Office, Apache, Linux, Asterisk, etc. Pourquoi choisir lopen source ? Ils permettent des petites PME de disposer d'outils de gestion complets au meilleur cot, leur apportant rapidement un vrai bnfice en termes de comptitivit. Les seuls cots tant alors la formation des utilisateurs et le service ventuellement assur par le fournisseur du logiciel. Ils s'adressent aussi des PME de plus de 1000 salaris, que ce soit dans les secteurs industriels, distribution ou services. D'une manire gnrale, comme avec toute famille de produits Open Source on peut s'attendre des conomies de licence en installant un ERP Open Source. En premire approche, l'ERP tant un progiciel complexe, les cots d'intgration et de maintenance rendent cette conomie directe de licence modre au regard du cot total de possession de l'ERP. Ainsi, l'conomie d'une licence propritaire prsenterait entre 25% et 50% du cot total de possession (incluant intgration, support et maintenance) primtre quivalent.

MOUKRIM Chouaib

Septembre 2012

Page 27

Cependant, face aux dpenses marketing engages par les ERP propritaires, nous savons qu'il n'est pas toujours facile de dfendre un produit open source dont le cot certain est annonc de faon transparente d'entre de jeu par les intgrateurs face des produits propritaires qui font tout pour masquer leur cot rel moyen terme en jouant sur les promotions confidentielles, les packages, les licences, le nombre d'utilisateurs..

5. Etude comparative entre Open Source


La majorit des ERP Open Source existants et tout particulirement Openbravo, Opiner, Compiere, Adempiere, Apache OFBiz, Neogia, et ERP5. Dans une communaut trs active, Plusieurs ERP Open source apparaissent alors que dautre sont dlaisses. Nous avons tudies ltude comparative dOpen source par rapport leurs caractristiques gnrales. En fait, nous intressons sur la dynamique, technologie, notorit, primtre enfin la souplesse comme suite Dynamique : Il sagit de la dynamique communautaire autour de la solution open source. Avec la qualit technique, elle va dterminer directement la place de la solution dans le futur. Technologie : Investissements et communaut sont encore peu de chose devant la cohrence, la puissance et ladquation Avec les standards des modlisations au cur dun ERP. Ils sont considrs : Respect de standards existants si possible ; Degr de factorisation du code (La fiabilit et de prise en main) ; Maturit et couverture des web services ; Modularit de lapplication (pattern Inversion Of Control si possible afin que lapplication soit compose dun noyau minimal et de plugins qui sachent bien tenir compte les uns des autres) ; Absence de problme vident de performance.

Notorit actuelle : Sont considrs : Nombre et importances des rfrences clients ;

MOUKRIM Chouaib

Septembre 2012

Page 28

Nombre et notorit des intgrateurs existants (sagit-il uniquement damateurs isols ou de vraies entreprises ? Ny a-t-il quun seul intgrateur derrire un projet ?) ; Citations dans la presse professionnelle.

Primtre : Il sagit du volume global des fonctionnalits. A not quil faut aussi garder cette vision globale des fonctionnalits. Beaucoup de ces dernires ne sont jamais utilises ou devront tre modifies. Le critre de Souplesse est autrement plus impactant en termes de cot ou de capacit cot donn. Dautant que sur un ERP souple, lajout dune fonctionnalit peut se rvler relativement simple. On retiendra quOpenbravo est meilleurs dans la gestion de production en face de Compiere. Souplesse : La souplesse rejoint la technologie mais elle met spcifiquement laccent sur la modularit de la plateforme de lERP et sur lefficacit du dveloppement par des tierces parties. Il sagit aussi, dun critre absolument dterminent dans le cot total de possession compte-tenu du fort cot relatif des dveloppements spcifiques. Ils sont considrs : Facilit modifier les structures de donnes pour ajouter ou altrer le stockage des objets mtier ; Facilit modifier les interfaces utilisateurs pour leur donner une bonne ergonomie mtier ; Facilit adapter les rapports (factures et autres).

Nous concluons au final, en synthtisant tout ceci avec les tableaux suivants : Evaluation entre 0 (faible) et 5(excellent)

MOUKRIM Chouaib

Septembre 2012

Page 29

Caractristiques gnrales
Dynamique Technologie 3 4 4 3 Notorit 4 3 4 5 Primtre 4 4 4 4 Souplesse 3 3 4 3

Openbravo Neogia ERP5 Compiere

5 3 2 3

Tableau 2 : Etude Comparative 1 (Caractristiques gnrales)

Modules fonctionnels :
Achats Ventes 4 4 4 4 Compta 3 4 5 5 CRM 2 3 4 3 RH 0 1 4 0 Paies 0 0 4 0 Projet 0 3 ? 3 Web 5 3 4 1 BI

Openbravo 4 Neoga ERP5 4 Compiere 5 ? 3 4 4 3

Tableau 3 : Etude Comparative 2 (Module fonctionnels)

Technologies
Langage de programmation Base de donnes PostgreSQL, oracle Indpendant PostgreSQL, oracle PostgreSQL JDBC, Oracle Sybase Interface Client Windows WEB WEB Windows Web, Gnome, KDE, Win 32

Adempiere Apache OFBiz Openbravo Open ERP Compiere

Java Java, JavaScript, Prolog Java, JavaScript, PL/SQL, XML, XHTML Pyhon Java, JavaScript, PL/SQL

Tableau 4 : Etude Comparative 3 (Technologies)

MOUKRIM Chouaib

Septembre 2012

Page 30

Nous concluons, au final, pour la ralisation de ce travail, nous avons choisi Openbravo. Il se distingue avec son activit communautaire trs importante et sa diversit de modules, Nous notons quici que les ERP tels que Openbravo a une trs bonne capacit tre configurs (notamment Workflow dans la gestion dachat, rapports) et requirent donc moins de dveloppement spcifique. Il est mieux paramtrable que ses concurrents dans le domaine technologique et fonctionnel. Ainsi, il rpond aux besoins dentreprise telle que la gestion commerciale ainsi que la gestion de la relation client (GRC/CRM).

6. Synthse
Dans ce chapitre nous avons vu cest quoi rellement les ERP. Ce chapitre sert donc prsenter des principes et concept de base sur les ERP. A travers de cette prsentation, il importe de constater la place prpondrante que prennent actuellement les ERP au cur des diffrentes systmes des organisations. Ou lintrt des ERP semble tre double. Dun part, nous pouvons retenir un indiscutable intrt technique, du principalement lintgration des donnes de lentreprise qui permet un gain de temps et dargent considrable, dautre part, ce sont des progiciels de gestion prt implanter couvrant lensemble des processus de lorganisation de lentreprise. Dans la suite de ce document nous allons prsenter ltude auxquels on doit rpondre Notre application, nous allons procder une tude dtaille sur lERP OpenBravo.

MOUKRIM Chouaib

Septembre 2012

Page 31

Ce chapitre traite les caractristiques, le mode de fonctionnement, les modules, les technologies utilises pour le dveloppement dOpenbravo ERP.

MOUKRIM Chouaib

Septembre 2012

Page 32

III. OPENBRAVO ERP


1.
A.

Prsentation de lditeur Openbravo


Introduction

Openbravo est le nom dune socit espagnol qui dite une suit de logiciels et des progiciels de gestion intgrs appel PGI, qui offre une proposition de valeur unique une valeur suprieure un cot infrieur . Le progiciel est pour les petites et moyennes entreprises qui sont la recherche d'un systme intgr pour grer et adapt aux besoins de n'importe quelle entreprise. B. Historique

Lditeur espagnol Openbravo a prsent, le 1er mars 2001 un projet qui a t initie catalogne en Espagne. La premire partie de leur objectifs est dvelopper et lancer sur le march un logiciel d`entreprise standard qui intgre touts les processus mtiers, la seconde partie de leur objectifs tait que les outils et l`architecture ont t dvelopp afin d`une part de faciliter le dveloppement et d`autre part de rduire le temps de maintenance du code existant. Entre 2001 et 2006 elle a dvelopp un fork (logiciel bas sur la mme base de donnes) de Compiere partiel web avec des fonctionnalits, notamment en gestion de production. En octobre 2007, elle a acquis le leader des logiciels Open Source de gestion des points de vente Open. Elle a apporte une solution full Web appel Openbravo, avec lensemble des besoins fonctionnels dune Entreprise totalement intgr.

2.

Prsentation de l`ERP openbravo

Nous avons not dans les parties ci avant que les PME/PMI sont touches par lre des ERP au dbut de ce sicle, du fait de la disponibilit d`offre intgres adaptes a leurs tailles et a leurs budgets. Open bravo est la plateforme bout a bout dune solution particulirement conue pour de petites et moyenne entreprise, en offrant une solution complte couvrant tous les aspects des affaires de l`entreprise (les achats, les ventes, la production, comptabilit, administration, ). Dans cette partie nous allons citer en premier lieux les caractristiques de cet ERP, une vues fonctionnelles, et on terminera cette partie par une prsentation technique dOpenbravo. Les caractristiques de l`ERP Openbravo Openbravo apporte une solution full Web, avec lensemble des besoins fonctionnels dune entreprise totalement intgr. IL nous permis: de grer facilement vos tches quotidiennes. dautomatiser des activits manuelles. de rationaliser les processus mtier. daccder vos informations de nimporte o et nimporte quand. dobtenir une pleine visibilit de votre business.

MOUKRIM Chouaib

Septembre 2012

Page 33

de rduire vos cots oprationnels. Lexprience des utilisateurs de lERP OpenBravo montre un retour sur investissement suprieur 40% sur 3 ans. Il a t spcialement conu pour aider les entreprises optimiser leur performance. Sa couverture fonctionnelle stend lensemble des dpartements de lentreprise. Openbravo est un ERP Open Source libre semble tre une de ces solutions Open Source appeles devenir un hit. Coupl un e-commerce, il pourrait devenir le compagnon idal des petites et moyennes entreprises dsirant se lancer dans le e-commerce. Son progiciel intgr est une solution mature, fiable et ltat de lart technologique. OpenBravo apporte une solution full Web, avec lensemble des besoins fonctionnels dune entreprise totalement intgr.

3.

Mode de fonctionnement de l`ERP Openbravo

LERP OpenBravo est une pure application web conu sur des standards ouverts, autour dune combinaison unique dune architecture et dune mthode de conception MVC, et de Framework Ingnierie dirige par les modles MDD, la plupart du code est gnr automatiquement sur la base du modle de dictionnaire de donnes par le moteur WAD, LArchitecture Pour mieux comprendre bien Openbravo on doit savoir son mode de fonctionnement, le bien tudier, comprendre et matriser. Aprs une tude approfondie on a aperus deux sortes darchitectures fonctionnelles : une architecture gnrale et une architecture dtaill. A. LArchitecture Gnrale

Figure 3 : l'Architecture gnrale d'Openbravo

Modle Vue Contrle MVC :

MOUKRIM Chouaib

Septembre 2012

Page 34

Est un modle trois couches pour isoler busines logique de l'interface utilisateur. L'utilisateur interagit via une interface utilisateur. Le contrleur se charge ensuite de ces intrants et les dirige vers le modle. Ce moteur excute et recompile les fichiers de lapplication (la figure3) chaque fois que l'administrateur systme modifie la configuration sur une demande utilisateur. Il gre ses donnes et les affiche l'utilisateur par l'intermdiaire de points de vue. (Un IDE, contient le code source et l'affiche via un diteur de texte). Cest une gamme doutils solides de programmation, slectionns soit partir des meilleurs outils disponibles en Open Source sinon celles cre par Openbravo lui mme. Ces outils favorisent le dveloppement de lapplication web MVC. Model Driven Development MDD :

Un concept de logiciel qui dpend des mtas donns conserves dans un dictionnaire pour reflter le comportement du programme. Il en rsulte en une grande diminution dencodage manuel et moins de problmes, permettant aux experts ayant peu dexprience de codage de paramtrer le logiciel pour sadapter aux besoins de chaque entreprise. Son rle est de conserve le mta donnes qui dcrivent chaque lment du logiciel et son comportement. Wizard for Application Development (WAD):

Un moteur construit par Openbravo, produit automatiquement les applications binaires partir du dictionnaire de donnes MDD et les fichiers produits par WAD sont conformes aux normes MVC. B. LArchitecture dtaille : Larchitecture dtaille reprsente les diffrents environnements dans laquelle lERP Openbravo fonctionne, et on distingue : i. Environnement de dveloppement Openbravo est une pure application web construite suivant le modle MVC. La plupart du code est gnr automatiquement sur la base du MDD par un moteur que nous appelons WAD. Le moteur excute et recompile l'application chaque fois que l'administrateur systme modifie la configuration sur une demande utilisateur. Cela excute une cration et une recompilation des fichiers pour les diffrentes composantes du modle MVC que montre la figure ci-dessous:

MOUKRIM Chouaib

Septembre 2012

Page 35

Figure 4 : LEnvironnement de dveloppement de l'ERP Openbravo

Modle: xsql fichiers excutables SQL Vue: des fichiers HTML et XML de dfinition de la disposition des formulaires et de dfinition de la relation avec les donnes Control: java servlets pour dfinir les actions excuter, grer et gnrer le modle de la vue.

ii. Lenvironnement d'exploitation Openbravo sexcute sur le dessus d'un groupe d'applications bien connus tiers: Apache-Tomcat. On utilise Apache Tomcat comme le conteneur de servlet. Apache-Ant. est utilis pour automatiser un certains nombre de tches telles que la construction du systme de code source. PostgreSQL (8.4) ou Oracle SE (10g-11g) comme systme de gestion de la base de donnes SGBD.

iii. Environnement d'excution Pour excuter le code, l'application doit tre installe dans un serveur excutant MVC et un groupe d'applications de tierce-partie que nous appelons l'environnement d'excution. Les utilisateurs n'ont besoin de rien de plus qu'un navigateur Web standard de prfrence, le navigateur Open Source FireFox ou Google chrome.

MOUKRIM Chouaib

Septembre 2012

Page 36

Figure 5 : Les interactions entre les interfaces "Utilisateur-Openbravo"

Le WAD et le MVC-FF Openbravo sont en grande partie du dveloppement interne. Le MDD est une extension de celui de lERP Compiere, avec les modules d'origine (comme la production), et les ajustements ncessaires pour l'adapter la construction aux normes comptables et aux processus de paiement. Toutes ces applications peuvent tre installes dans les deux OS (Windows et Linux).

4.

Les modules de l`ERP Openbravo

Figure 6 : La structure modulaire de l'ERP Openbravo

MOUKRIM Chouaib

Septembre 2012

Page 37

Gestion des donnes Openbravo ERP centralise les donnes dans une base de donnes unique pour lensemble des applications permettant ainsi: Dorganiser et de regrouper toutes les donnes cls (produits, composants, factures, clients, fournisseurs, employs,) efficacement, De garantir la cohrence de celles-ci et viter les duplications, De permettre le partage et la circulation fluide des informations travers tous les services de votre entreprise D'optimiser la maintenance du systme dinformation avec un point central et unique de gestion des donnes. Gestion des achats Openbravo gre le flux dachat dans son intgralit avec l'intgration en comptabilit. Les demandes dachats, les commandes dachats, les rceptions des marchandises et lenregistrement des factures s'effectuent de manire simple, fiable et efficace avec, tout moment, une visibilit comptable jour. Openbravo permet : De garantir lintgrit et lhomognit du processus achat, De minimiser lintroduction de donnes et viter ainsi les erreurs humaines, D'apporter une navigation aise travers diffrents documents dun mme processus dachat, De connatre en temps rel ltat dune commande donne D'optimiser les demandes dachat avec des propositions d'achats automatises

MOUKRIM Chouaib

Septembre 2012

Page 38

Gestion de la logistique Le module logistique d'Openbravo prend en compte toute la gestion des entrepts avec les rceptions, les livraisons, les inventaires, les stocks et les mouvements entre les diffrents entrepts: Linventaire jour et correctement valoris tout moment, La localisation exacte du produit est accessible en permanence, Les changes entre les diffrents entrepts n'ont jamais t aussi faciles. De plus, Openbravo offre la possibilit de grer des lots, des numros de srie et des dates de premption.

Gestion de la production Openbravo dispose dun module de gestion de production trs abouti avec des fonctions de planification, BOMs, MRP, ordres de fabrication, cot de production, maintenance prventive, reporting des tches, Ce module offre une vision globale de la structure de production de l'entreprise avec la construction de plans de production dtaills tenant compte des interdpendances. Il utilise un module de planification pour grer la disponibilit des diffrentes ressources (matriel, humain,..) avec une gestion de la maintenance performante.

MOUKRIM Chouaib

Septembre 2012

Page 39

Gestion des ventes Les fonctionnalits de gestion des ventes ont t conues avec lobjectif de permettre un maximum de flexibilit et dadaptabilit dans leurs excutions: Liaison de tous les documents (commandes, livraisons, factures,..) dans une commande, Ne pas tenir compte des documents non utiliss par l'entreprise, Grer des produits et des tarifs diffrents en fonction du point de ventes, du client, Garantir le tracking des processus de ventes, Optimiser la gestion des commerciaux, Optimiser le suivi et lanalyse des ventes Pouvoir facilement s'intgrer avec un systme de prise de commandes (Palm, Pocket PC,...).

Gestion de projets Le module de gestion de projet est orient pour les entreprises qui ralisent des projets et des prestations de service. Il offre la possibilit de grer les diffrentes phases et tches, les ressources, les budgets, les achats et les dpenses spcifiques chaque projet: Une gestion efficace de tous types de projets individuels Une dfinition prcise des services et des ressources avec un contrle de toutes les activits. La gestion de projet peut-tre lie la gestion de production, la gestion des achats voir la gestion de ventes si une facturation par phase ou par tche est ralisable.

MOUKRIM Chouaib

Septembre 2012

Page 40

Gestion financire et comptable Le module de comptabilit d'Openbravo agit comme un collecteur de toutes les oprations effectues par les autres modules. De nombreuses oprations comptables sont de ce fait totalement automatiss, permettant de minimiser la saisie manuelle de donnes, de limiter les erreurs et de favoriser les tches forte valeur ajoute ( reporting, simulation, analyse,). Openbravo apporte toutes les fonctionnalits de comptabilit gnrale, analytique et budgtaire avec un minimum de rcriture comptable.

Openbravo POS

Plus qu'un module, Openbravo POS est une solution complte de ventes et d'encaissement adapte aux crans tactiles. Parfaitement intgr Openbravo ERP, il peut tre utilis en mode autonome ou en liaison permanente avec celui-ci tout en garantissant une continuit du flux d'encaissement.

5.

Les technologies utilises pour le dveloppement

Openbravo utilise des technologies modernes mais testes pour respecter la performance rigoureuse et les besoins de classement des divers services des organisations, on a : Java et JavaScript, SQL(PostgreSQL) et PL/SQL(Oracle), XML * XHTML. Openbravo compte aussi sur un certain nombre de structures dj connues dOpen Source pour un processus de dveloppement plus efficace. Diffrents outils Open Source sont utiliss pour le dveloppement de lERP Openbravo :

MOUKRIM Chouaib

Septembre 2012

Page 41

Java : Langage de dveloppement orient objet sur lequel se base le dveloppement. Eclipse : Plateforme de dveloppement dvelopp par IBM quOpenbravo utilise pour dvelopper les diffrents composants Java constituant Cortex. PostgreSQL : Base de donnes relationnelle utilise pour stocker les donnes. Toutes les donnes sont centralises ce qui simplifie l'administration, la maintenance et la sauvegarde ce celles-ci. Apache Tomcat : Serveur d'application dans lequel Cortex est excut. Il s'agit d'un conteneur de servlet dvelopp par Apache Software Foundation implmente les spcifications JavaServer Pages (JSP) et Java Servlet de Sun Microsystems. Apache Web Server : Server Web dvelopp par Apache Software Fondations et souvent appel Apache (ou Apache2), et ne pas confondre avec Tomcat. Il s'occupe de rendre le contenu statique et / ou dynamique, il peut grer le cache entre le serveur d'application et l'utilisateur ou compresser les donnes transfres entre le serveur et le client pour rduire les volumes transfrs. Apache Ant : Logiciel Open Source, crit en Java et dvelopp par Apache Software Foundation qui a pour but d'automatiser les processus de compilation d'applications en particulier le langage Java, son rle consiste a : la compilation, la gnration de pages HTML de document (Javadoc), la gnration de rapports, l'excution d'outils annexes (checkstyle, findbugs etc.), l'archivage sous forme distribuable (JAR etc.). Mercurial : Systme de gestion de versions dcentralis. Cet outil nous permet de grer les versions et de garder l'historique des modifications des diffrents composants dvelopps. Hibernate : Hibernate est un Framework Open Source, fort et performant grant la persistance des objets en base de donnes relationnelle. Hibernate nous permet de, dvelopper des classes persistante suivant les principes de lorient objet, exprimer les requtes dans son propre langage HQL portable du langage originale SQL.

6.

Synthse :

Nous avons analys trois environnements de Larchitecture dtaille dans la quelle lERP openbravo fonctionne, et reprsentant chacun un type doutil. Pour la conception de contenu nous pouvons dire que : Openbravo est un site Web entirement fonctionnel et intgr. Le systme est pour les petites et moyennes entreprises qui sont la recherche d'un systme intgr pour grer leur entreprise. Openbravo comprend toutes les fonctionnalits que vous attendez d'une solution ERP tendu. Openbravo est distribu sous une licence Open Source. La licence garantit pas de frais d'utilisation, l'accs public au code source et la permission de le modifier librement. Openbravo est bas sur une architecture rvolutionnaire qui offre une meilleure faon de crer des applications logicielles.

MOUKRIM Chouaib

Septembre 2012

Page 42

Partie 2 :

Dveloppement du Systme

Chapitre :
Chapitre 4 : Etude des besoins Chapitre 5 : Analyse & conception du nouveau systme

MOUKRIM Chouaib

Septembre 2012

Page 43

ELECTRO PROTECT utilise actuellement comme un logiciel POS (Point Of Sales), nous prsenterons ltude de lexistant de lentreprise. Nous focaliserons notre tude sur la fonction de la comptabilit ainsi que sur ces interconnexions avec les autres modules. A travers ce chapitre, notre analyse de la situation nous permettra de dlimiter les frontires du sujet dtude.

MOUKRIM Chouaib

Septembre 2012

Page 44

IV. ETUDE DES BESOINS


Afin de pouvoir proposer une restriction dun systme, rpondant aux attentes de ses utilisateurs, il est important dtablir une tude pralable, qui servira prendre connaissance du systme actuel, ses spcificits, les postes existants, procdures de travail, et faire ressortir ses principaux fonctionnements et contraintes.

1.

Etude de lexistant :
A. Openbravo POS v2.30.2 (IPOS)

Openbravo-POS, anciennement TinaPOS, solution libre de vente en caisse rpute mondialement, dsormais passe sous le girond d'Openbravo. Openbravo-POS va notamment beaucoup plus loin qu'un simple client lourd puisqu'il embarque beaucoup de logique propre de gestion des stocks ce qui permet de grer une boutique avec plus dautonomie vis vis de l'ER P central. Openbravo POS est le leader des solutions de gestion et d'encaissement Open Source sur le march de la distribution. Il a t conu avec des logiciels Open Source ltat de lart technologique : Dvelopp en java Utilisation de Swing pour une interface utilisateur sophistique Base de donnes performante et Open Source utilisant linterface standard JDBC Utilisation doutils puissants de rapports et graphiques : Jasper Reports et FreeChart Support dune large varit de matriels de points de vente Processus de localisation facile implmenter Trs simple configurer fournissant une adaptation parfaite tous types dutilisateurs de points de vente.

MOUKRIM Chouaib

Septembre 2012

Page 45

Figure 7 : Interface de vente OpenbravoPOS(*)

B.

Lacunes du systme actuel

Manque de la centralisation et lhistorisation des donnes client. Outils de gestion commerciale limite qui ne garantit pas une cohrence de donne parfaite ; Perte de temps pour la recherche de linformation chez le client et besoin dun systme plus robuste ; Perte dinformation concernant le client ; limitation des capacits poule traitement dun grand nombre de donnes. Manque des fonctions transversales ncessaire pour lentreprise : finance et comptabilit C. Synthse :

Aprs analyse du systme actuel de lentreprise et la dtection des diffrents anomalies qui peuvent sy prsenter ainsi que quelques dfauts lies aux solutions commercialises pour ___________________________
(*) OpenbravoPOS : les fonctionnalits dIPOS sera dtailles dans lannexe.

MOUKRIM Chouaib

Septembre 2012

Page 46

la gestion commerciale nous traitons plutt les diffrentes notions lies la gestion commerciale y compris la gestion des commandes dachats et de ventes, la gnration des rapports semestrielles de vente/achats ainsi que la comptabilit afin de dtecter les besoins lies. Dans cette logique, ce progiciel doit permettre une consolidation de linformation de gestion entre tous les dpartements de lorganisation tout en assurant lintgration et ladaptation des fonctionnalits suivantes : Au niveau du sige central Gestion des achats Gestion des stocks et approvisionnements Gestion des ventes Gestion financire (comptabilit) Au niveau des rgions et Point de vent Gestion des stocks et approvisionnements Gestion des ventes Gestion logistique (tourns)

Cette tude a pour objectif de recenser les diffrents postes de travail entrant affectant, Chaque filire de lentreprise a ces spcificits de gestion, cela tout en prcisant les tches assures par chaque poste et les diffrents documents manipuls ( information, entres, sortie,etc.). Le module comptabilit reprsente le maillon principal dans la chaine, ce qui nous mne nous concentrer sur ce module lors de ltude de lexistant (et ltude des processus). Ainsi sur ces impacts et ces interactions, et les flux changs avec les autres modules.

Figure 8 : larchitecture modulaire et linterconnexion entre les modules.

2. Etude des processus et circulation de linformation


Lobjectif de cette tude est la description de la circulation dinformation entre les dfrents modules et le module de la comptabilit ainsi que les tches ralises par ces derniers dans le systme.

MOUKRIM Chouaib

Septembre 2012

Page 47

Le module comptabilit, est le module le plus convoit par les entreprises car il permet de grer tout ce qui rapporte aux vente/achat, en particulier la gestion des stocks qui coutent chers aux entreprises. Ce module grer les commandes clients et les livraisons, il assure aussi une liaison directe avec le compte de rsultat et le systme de production, il permet loptimisation des processus de la gestion des stocks, des contrles qualits et facture. A. Le processus de synchronisation POS Openbravo gre une seule base de donnes, intgre les processus parmi les diffrents dpartements, une interface cohrente pour chaque utilisateur, et des rapports homognes affichant les donnes oprationnelles de toute l'organisation. Toutefois il y a des domaines spcifiques d'une organisation qu'un systme ERP ne peut rsoudre. Par exemple, les systmes POS (systme de point de vente) comme Openbravo POS o des types d'utilisateurs spciaux ou des supports de priphriques sont requis. L'utilisateur du systme POS est un vendeur qui utilise un ERP d'une manire diffrente. L'interface doit tre trs facile utiliser et doit fournir uniquement les informations spcifiques dont le vendeur a besoin. Ce vendeur a besoin d'utiliser le POS aussi vite que possible puisque son travail est de vendre et non pas de faire fonctionner le POS. Par exemple il n'a pas besoin d'une souris et d'un clavier, il prfrera un cran tactile. De plus, le systme POS a besoin de supporter beaucoup de priphriques tels que: les imprimantes tickets, les lecteurs de code-barres, les crans d'affichage clients, les tiroirs caisses, les balances, etc. Le but de lintgration dOpenBravo POS avec OpenBravo ERP est de crer un systme o Openbravo est le dpt central des donnes. B. Gestion des donnes principales: Lensemble des informations collectes sur la clientle et les fournisseurs, les produits est ensuite exploite de manire proposer des offres en correspondance avec les attentes. Il existe en gnral de nombreuses oprations que lon voit apparaitre tous les mois. On peut distinguer ainsi les oprations relatifs au paramtrage initiale des informations sur les tiers (clients /fournisseurs) ainsi que les informations sur les produits et les familles de produit .On opte par consquent augmenter la marge ralise avec chaque client ainsi que chaque fournisseur, organiser les diffrentes gammes de produit associes avec les tiers et les groupes de tiers en question. La gestion des donnes principales permet donc lentreprise de rpondre trois objectifs : Augmenter la marge ralise avec chaque client et chaque fournisseur ; Distinguer les clients en les regroupant en groupes de tiers ; Fournir une organisation hirarchique des diffrentes gammes de produit; Garantir la cohrence et robustesse des donnes parfaite avec une distinction entre les diffrents groupes de tiers ; Possibilit de limportation dune grande quantit de donne ; Possibilit de configurer les listes de prix pour les diffrents produits.

MOUKRIM Chouaib

Septembre 2012

Page 48

C. Le processus de vente Pour effectuer une opration de vente, il faut avoir les donnes de base : les articles, les clients et les fournisseurs, La gestion de vente permet grer toute les activits lies aux ventes la clientle, tels que les factures, prix, livraison, facturation et Reporting. Ci-dessous est dcrit le processus de vente connaitre afin deffectuer, dans lordre, une commande de vente. i. Schma du processus de vente Une vente peut tre de plusieurs types : Commande dun devis valid totalement ou partiellement Commande de vente normale avec certain accs, par exemple, fiche client, conditions tarifaires, accs aux stocks, etc. Commande de vente de type march (avec contrat).

Figure 9 : Schma illustre le processus de vente en Action, et interactions avec les autres processus.

ii. Description du scnario de processus vente Lorsque un document commande de vente est rserv, diffrents types de document peuvent tre slectionns pour indiquer la destination du document. La quantit de la commande reste en stock jusqu la livraison et lenvoie aura lieu. Utilis un document Les produits de retour (ristourne) lorsquun produit expdi est retourn, les quantits du commande sont ngatives afin daugmenter la taille des stocks. Les devis sont aussi utiliss pour enregistrer les clients potentiels. Commande prpay et un type de commande de vente, la facture est envoye et elle doit tre paye avant que les marchandises seront expdies. la fin de la commande de vente , le systme cre automatiquement une expdition et une facture. Le client reoit la marchandise et la facture ensemble.

MOUKRIM Chouaib

Septembre 2012

Page 49

Donc suite une vente, il faut suivre le processus de vente soit : livraison (dj programmer par dfaut dans lERP), facturation ou retour sur vente. iii. La comptabilisation du processus de ventes : Facture de vente : c'est la facture client, contient les articles vendus. L'entre comptable gnrer sera de crditer les comptes de ventes et taxes dues du montant total de la facture et le total des taxes de la facture respectivement, et de dbiter le compte des rceptions d'argent. Expdition marchandise: consiste livrer les composants de la facture de vente (les lignes de la facture). La livraison correspondre a dbit le COGS (produits consomms) et crditer le compte de lactif du produit pour chaque ligne de facture de vente. D. Le processus stock : Lors dune vente, un achat ou autre, il ya diffrents mouvements internes qui ont une influence sur le stock : Les entres diverses, Les sorties diverses, Les inventaires et Les contrles qualit. i. Schma du processus de stock Voici une description schmatique qui modlise le processus stock au sein de lERP :

Figure 10 : Schma illustre le processus de commande de stock.

Dans lERP, les stocks sont grer de manire automatique. Son paramtrage doit, par ailleurs, tre dfini en fonction de lentreprise le type de gestion ainsi que les quantits minimales et maximales. ii. Description du scnario de processus stock Le demandeur exprime une demande pour des biens ou des services part une rquisition. Le responsable des achats choisit le fournisseur le plus appropri en fonction des

MOUKRIM Chouaib

Septembre 2012

Page 50

objectifs d'achat et gnre le bon de commande, soit manuellement, soit automatiquement en fonction de rgles. Rception Un document indique les produits ou marchandises reues d'un fournisseur. Lorsque le document de rception des marchandises est gnr et complt, la quantit en stock du produit est mise jour. Les Factures d'achat reus du Fournisseur seront vrifies par rapport aux factures prvues. E. Le processus achat :

Ce processus permet deffectuer le paiement des biens ncessaires et les fournir. Elle est lie au stockage, la gestion financire, et de la gestion des projets et de services. i. Schma du processus dachat

Figure 11 : Schma illustre le processus dachat

Le flux suivre pour paramtrer un ERP concernant la commande dachat est modlis ci Dessous. Celle-ci est crer pres un appel doffre et une demande dachat, elle-mme tant gre par des rgles de signature.

MOUKRIM Chouaib

Septembre 2012

Page 51

Figure 12 : Schma illustre le processus de demande dachat

Pour effectuer une commande dachat, il faut connaitre les articles, les fournisseurs, la quantit commander pour chaque article ainsi quun tarif de vente, par consquent, les donnes de base manipuler sont donc les fournisseurs, les articles, et les tarifs dachat car ces derniers peuvent varier fonction de certains critres (priode, quantit, etc.). Enfin, concernant le formulaire de la commande dachat, il suit le mme principe de paramtrage que pour la commande de vente ; paramtrage/achat/transaction achat, le paramtrer doit afficher ou non, donner la possibilit de modification ou non, etc. ii. La comptabilisation des achats Facture dachat : aprs avoir cr une facture dachat et la complter. Le logiciel nous permettre de gnrer lentre comptable correspondante a cette facture. Grce la fonction POST (bouton), on gnre une entre comptable dans le registre. Lopration dachat est une sortie dargent pour lentreprise, donc le compte qui reprsente la sortie dargent sera prendra le montant total facture, et les deux comptes correspondants la taxe aura la valeur du taxe et le reste pour le produit achet (actif). Rception marchandises : ce document prouve quune marchandise command et factur a t livre. Cette opration mise jour notre stock du point de vue valeur et volume, et puis la reprsentation comptable sera, dbiter le compte du produit reus et crditer le compte des rceptions non factur, et cela pour chaque ligne de la rception.

3.

Diagnostic de l`tude du systme


A. Diagnostic

Afin d`assurer un dveloppement harmonieux du nouveau systme, il importe de dtecter l`ensemble des causes ventuelles de disfonctionnements, en vue d`y remdier et d`apporter les amliorations ncessaires. Cette recherche s`effectue au moyen du diagnostic.

MOUKRIM Chouaib

Septembre 2012

Page 52

Le diagnostic conduira mettre en vidence les anomalies et les points faible pour un dduire les corrections apporter et la manire de le faire, les points forts pour mieux les utiliser et s`y appuyer. 1- Gestion des droits d`accs Le systme actuel, se base juste sur un super utilisateur avec la possibilit de change le rle actuel vers plusieurs autres profiles. 2- dfaut de structuration, importation des donnes du systme La gestion des donnes de la comptabilit de l`openbravo est fortement dpendante des fichiers Excel. 3- Importer la liste des organisations, produites, entrepts de stockage : Openbravo nous donne la possibilit dimporter que les clients et les commandes. B. Solutions et suggestions pour amliorer le systme existant

Apres avoir effectue un diagnostic complet du systme, nous sommes en mesure de proposer des solutions pour l`amliorer et ladapter pour satisfaire nos besoins. 1. Apporter certain changement au niveau informationnel et traitement de donnes: Openbravo propose une fonctionnalit dimportation et dexportation des donnes, et en particulier les donnes de la comptabilit. Mais, cette mthode est limite puisquelle propose un nombre limit de modle. Donc, notre solution consiste proposer dautres modles et fournir des outils de teste de cohrence des donnes lintrieur des modles. 2. Rle et privilges : La Solution consiste manager les rles et privilges ou on distingue les utilisateurs suivants : Super utilisateur , Administrateur systme, Le simple utilisateur, Le planificateur, Utilisateur comptable, Comptable chef, Comptable assistant, Comptable contrleur 3. Importer la liste des organisations, produites, entrepts de stockage : Openbravo nous donne la possibilit dimporter les clients et les commandes, notre solution permettre aussi dimporter les organisations, les produits, les entrepts de stockages, etc. 4. Les fonctionnalits non implmentes : a. La traduction dOpenbravo et lajout dune barre de langue. b. Lajout dun web services pour lintgration dOpenbravo POS avec ERP central. Ces fonctionnalit ne sont pas implmentes en Openbravo, et notre travail est les ajouter, et on fait notre possible de y arriver.

MOUKRIM Chouaib

Septembre 2012

Page 53

4.

Rtro-Conception

La rtro-conception (Reverse Engineering) est lactivit qui consiste tudier un systme pour en dterminer les composants et leurs relations, dans le but de le reprsenter sous une autre forme ou dans un niveau suprieur dabstraction. Cette technique a pour objectifs : R-documenter le systme ; Comprendre le fonctionnement dun systme pour bien lutiliser ou le modifier ; Identifier les fonctionnalits dun systme dans le but de la rutilisation ; Crer un nouveau systme ayant des fonctionnalits identique au systme de dpart sans violation de brevet.

Figure 13 : Processus de Rtro-Conception

Les composants du systme sur lesquels on peut effectuer de la rtro- Conception sont :

Larchitecture. Les donnes. Les traitements. Les Interfaces Utilisateurs.

MOUKRIM Chouaib

Septembre 2012

Page 54

5.

Conduite du projet
A. Processus de dveloppement

Ladquation du projet au processus de dveloppement peut largement affecter le sort dun projet informatique. Donc un mauvais choix du processus de dveloppement peut conduire un projet lchec. Afin de minimiser ce risque jai dress un tableau comparatif des diffrents processus utiliss dans le cadre de dveloppement de projet informatique prsent dans le Tableau 5.
Description -Mthodologie entre sur larchitecture et couple aux diagrammes UML. - Cible des projets de + que 10 personnes. - Cible des projets de moins de 10 personnes. Points Forts -Itratif. -Spcifie le dialogue entre les diffrents intervenants du projet : les livrables, les plannings, les prototypes - Propose des modles de documents, et des canevas pour des projets types. - Itratif. - Simple mettre en uvre. - Fait une large place aux aspects techniques. - Itratif. - Fait une large place la technologie et la gestion du risque. - Dfinit les profils des intervenants, les livrables, les plannings, les prototypes Points Faibles - Coteux personnaliser - Trs ax processus, au dtriment du dveloppement

RUP Rational Unified Process

XP eXtreme Programmin g 2TUP Two Track Unified Process

-S'articule autour de l'architecture -Propose un cycle de dveloppement en Y - Cible des projets de toutes tailles

- Ne couvre pas les phases en amont et en aval au dveloppement : - Assez flou dans sa mise en uvre: quels intervenants, quels livrables ? - Plutt superficiel sur les phases situes en amont et en aval du dveloppement. - Ne propose pas de documents types

Tableau 5 : Etude comparative entre les diffrents processus de dveloppement

Nous constatons que toutes ces mthodologies proposent de travailler de faon itrative, que ce soit au niveau des plannings, des spcifications, ou du dveloppement. Si l'itratif s'est impos, c'est parce qu'il rduit la complexit de ralisation des phases en travaillant par approches successives et incrmentales. Il est alors possible de prsenter rapidement aux utilisateurs des lments de validation. De plus, l'itratif permet une gestion efficace des risques, en abordant ds les premires itrations, les points difficiles.

MOUKRIM Chouaib

Septembre 2012

Page 55

Ainsi, le choix de la technologie et larchitecture logicielle et applicative de mon futur systme est lune des phases les plus importantes de mon projet vu le degr lev de sa complexit technique. Et puisque 2TUP fait une place part entire la technologie dans le processus de dveloppement, il semble le plus adapt pour mener bien mon projet. 2TUP propose un cycle de dveloppement en Y, qui dissocie les aspects techniques des aspects fonctionnels. Illustr en figure 14, le processus en Y s'articule autour de 3 phases : une branche technique une branche fonctionnelle une phase de ralisation

Figure 14 : Processus 2TUP

2TUP est un processus qui rpond galement dautres caractristiques telles que:

Un processus incrmental pilot par les risques Un processus pilot par les exigences des utilisateurs Un processus de modlisation avec UML

MOUKRIM Chouaib

Septembre 2012

Page 56

B.

Planning du projet

Durant mon stage, jai suivi le planning suivant :

Figure 15 : Planning des tches

MOUKRIM Chouaib

Septembre 2012

Page 57

Ce chapitre prsente une phase importante pour analyser et modliser les besoins requis avant daborder la phase bas sur ladaptation de lERP nos besoins spcifiques. Cette phase comprend son tour ltude de lexistant par rapport au systme quon utilise et quintroduit par la suite les modifications adopter en termes de fonctionnalits ajouter ainsi que les scnarios relatifs.

MOUKRIM Chouaib

Septembre 2012

Page 58

V. ANALYSE & CONCEPTION DU NOUVEAU SYSTEME


Introduction
L`analyse, pour sa part, met en place les fondements du systme raliser en donnant une ide prcis et claire sur ce dernier qui dlimit son tendue et notamment son fonctionnement. Cela se fait en prsentant les dfrents diagrammes (cas d`utilisation, classe, squences,), suivant la mthode de modlisation UML2.4, dont chacun rsume et explique un aspect du nouveau systme et sa marche. L`analyse prsente une abstraction total tant indpendante de toute technologie ou implmentation. Cette analyse se base sur les rsultats de l`tude de l`existant qui nous a permis d`valuer le systme actuel et d`en percevoir les besoins, et ainsi en d`crire le bon comportement que doit avoir le nouveau systme a raliser pour ensuite proposer des alternatives et des solutions qu`il comportera. Lanalyse de notre systme sera faite sur les trois axes suivants o Laxe fonctionnel : qui dcrit le savoir-faire (opration, rgle de gestion). o Laxe statique : dcrit la structure statique du systme (objet, association). o Laxe dynamique : dcrit la dynamique des objets du systme.

1.

Lanalyse fonctionnelle

Les besoins sont le point de dpart pour le dveloppement du nouveau systme, et qui doivent traduire ce qu`il est possible d`apporter aux utilisateurs, en montrant les diffrentes fonctionnalits. Pour cette phase on a utilise le diagramme de cas d`utilisation pour bien collecter les besoins des utilisateurs du nouveau systme, et pour cela nous avons procd comme suit : A. L`identification de tous les acteurs du nouveau systme. B. L`identification des cas d`utilisation. C. Le regroupement des cas d`utilisation en package. D. La description de chaque cas d`utilisation Cette phase nous permet de bien connaitre les utilisateurs du nouveau systme, chacun avec son rle, ainsi que ce que le nouveau systme pourra leur apporter. A. Identification des acteurs du nouveau systme

Le tableau ci-aprs contient la description des acteurs du systme :

MOUKRIM Chouaib

Septembre 2012

Page 59

Acteur Ladministrateur de lERP Ladministrateur du POS Commercial Le comptable

Description Il a tout les droits au niveau de la gestion de la base de travail, durant la mise en uvre de lERP Openbravo, ladministrateur du systme est le consultant, et celui qui sera charg de configurer lapplication pour les nouveaux besoins, et de grer les profils utilisateurs (la scurit du systme). Cest un utilisateur final du POS, son principal rle est la synchronisation des donnes Son rle consiste fournir les paramtres ncessaires au bon fonctionnement du module et lintgrit des donnes rsultants. il a le droit de manipuler les donnes comptable, initialis la comptabilit, gnrer et crer des rapports comptables.
Tableau 6 : les acteurs du systme

Remarque : l`administrateur remplissent essentiellement le rle de super utilisateur pour les dcisions d`un certain degr. En bref. Ladministrateur du systme, est un utilisateur spcifique. Sur Openbravo, il doit tre un super utilisateur. B. Identification des cas d`utilisation

Les cas d`utilisation dterminent pour les fonctionnalits, les diffrentes acteurs concernes et leurs enchainement. Les lments de base des cas d`utilisation sont : Acteur : est une entit externe qui interagit avec le systme, les acteurs peuvent tre de trois types : Humaine : sont les utilisateurs du logiciel a travers l`interface graphique du systme. Logiciel : ce sont les logiciels qui communiquent avec les logiciels une interface. Matriel : ce sont les robots ou les automates qui interagissent avec le systme. Cas d`utilisation : ensemble d`action ralises par le systme, en rponse a une action d`un acteur Le tableau ci-dessous contient une classification des cas dutilisation par acteur : Dclencheur Administrateur ERP Cas dutilisation Installation du systme Gestion des profils (Cration et mise jour) Gestion de la socit Gestion des rles

MOUKRIM Chouaib

Septembre 2012

Page 60

Administrateur POS Comptable

effectuer une vente synchronisation des ventes grer les produits importer le catalogue des produits cration dun calendrier budgtaire Crer la comptabilit gnrale Crer une catgorie fiscale Mise jour des partenaires commerciaux Comptabilit de la facture dachat Payer la facture dachat Comptabilit de la facture vente Crer un versement Crer un rglement Grer format dimportation Grer catgorie produit Grer inventaire physique Importer les donnes (Produits, commandes, ) Crer liste des prix Grer la planification facture Crer un bon de commande Crer la rception des marchandises Crer la facture dachat Grer les ventes Crer une expdition de marchandises Crer la facture vente
Tableau 7 : Liste des cas dutilisation

Chef Commercial

C.

Larchitecture fonctionnelle du systme en pacquages :

Le schma ci-dessous reprsente les diffrents pacquages qui regroupent les fonctionnalits de notre systme

financialmgmt

procurement

dataimport

pos

shipping

sales

Figure 16 : les packages d'Openbravo erp

MOUKRIM Chouaib

Septembre 2012

Page 61

D.

Les diagrammes de cas dutilisation

Package : Gestion des donnes principales

Crer socit
<<extends>> <<extends>>

supprimer socit

Gestion socit

<<extends>>

Modifier socit

Gestion utilisateur
Administrateur Openbravo ERP

Supprimer produits Gestion rle


<<include>> <<include>>

Modifier les produits

Crer le Format d'importation Crer une catgorie de produit Crer inventaire physique

Ajouter produits
<<extends>>

importer partenaire commercial


<<extends>> <<extends>>

importer les taxes importer les comptes Importer les produits

Chef commercial.

Importer les donnes

<<extends>> <<extends>>

Crer Liste des prix

Crer une planification facture


Figure 17 : Gestion des donnes principales

MOUKRIM Chouaib

Septembre 2012

Page 62

Package : Gestion des ventes

Crer une vente

Crer expdition de marchandises


Chef Commercial

<<include>> <<include>>

Crer facture de vente

<<include>>

Gnrer processus de factures

<<include>> <<include>>

S'authentifier

Comptable

Comptabilit Facture de vente

<<include>> <<include>>

Crer versement

Crer rglement
Figure 18 : Gestion des ventes

Package : Gestion des achats

MOUKRIM Chouaib

Septembre 2012

Page 63

Crer un bon de commande

Crer la rception des marchandises


Chef Commercial

<<include>> <<include>>

Crer facture d'achat


<<include>> <<include>> <<include>>

Authentification

Comptabilit de Facture d'achat

<<include>>

Comptable

Payer la facture d'achat


Figure 19 : Gestion des achats

Package : Comptabilit

Crer un calendrier b udgtaire


<<include>>

Crer la comptab ilit gnrale


comptable

<<include>>

S'authentifier

<<include>>

Crer une catgorie fiscale

<<extends>>

Mise jour des partenaires commerciales

Figure 20 : comptabilit

MOUKRIM Chouaib

Septembre 2012

Page 64

Package : Synchronisation POS


<<extends>>

Effectuer une vente


<<include>>

Synchroniser les ventes

Administrateur OpenBRAVO POS

s'authentifier au POS gerer les produits


<<include>>

<<include>>

<<extends>>

Se connecter OpenBRAVO ERP


<<include>>

Tlcharger le catalogue de produit

Figure 21 Synchronisation de POS

E.

Description des cas d`utilisation

Dans ce qui suit nous proposons une description textuelle des cas d`utilisation, cette dernire elle permet d`avoir une ide sur le fonctionnement de chaque cas d`utilisation. Et on va les structures comme suit : Sommaire didentification qui contient : o Le titre du cas dutilisation. o Le but du cas dutilisation. o Le rsum du cas dutilisation. Les diffrents enchainements du cas d`utilisation.

i.

Module : Gestion des donnes principale.

Crer une socit

Le but de cas dutilisation : Testez le processus client Configuration initiale

MOUKRIM Chouaib

Septembre 2012

Page 65

Les acteurs : administrateur Pr-conditions : o Lutilisateur se connecte en tant que Openbravo/ openbravo Enchainements o Ladministrateur slectionne la configuration de la socit initiale puis remplit les informations de la nouvelle socit avec les droits daccs. o Il Remplit les donnes dans : Configuration gnrale -> Socit-> configuration de la socit initial o Il valide en cliquant sur le bouton crer

Gestion des profils (Cration et mise jour)

Le but de cas dutilisation : permettre ladministrateur de crer, de modifier ou de supprimer un profil utilisateur. Les acteurs : Ladministrateur Pr-conditions : o Ladministrateur se connecte au systme par authentification. Enchainements(a) : ajout dun nouveau profil o ladministrateur saisit le libell du nouveau profil. o Il coche le/les privilges lui accorder et valide cet Il valide en cliquant sur le bouton crer Enchainement(b) : modification dun profil slectionn
o o o

Ladministrateur slectionne le profil modifier. Le systme affiche les privilges associs. Ladministrateur modifier le libell et/ou les privilges et valide.

Enchainement(c) : suppression dun profil slectionn


o o o

Ladministrateur slectionne le profil supprimer. Le systme affiche les privilges associs. Ladministrateur valide sa suppression.

Gestion des rles


Le but de cas dutilisation : Cration d'un rle pour un utilisateur Les acteurs : administrateur Pr-conditions : o Lutilisateur se connecte en tant que Openbravo/ openbravo

MOUKRIM Chouaib

Septembre 2012

Page 66

Enchainements o Ladministrateur slectionne dans la configuration gnrale loption scurit o Il Remplit les donnes et plan de comptes o Il valide en cliquant sur le bouton crer

Grer format dimportation

Le but de cas dutilisation : Crer le chargeur de format d'importation pour entreprises partenaires, les produits et les taxes Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements o Le Chef commercial slectionne dans la configuration des donnes ce chemin Importer des donnes-> Format Loader importation o Il Remplit les donnes. o Il valide en cliquant sur le bouton crer

Importation des donnes (Produits, Taxes, Partenaires commerciaux, commandes, )

Le but de cas dutilisation : Importer partir du POS les derniers changements des (Produits, Taxes, ). Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements o Le Chef commercial slectionne dans la configuration des donnes ce chemin Importer des donnes-> Importer (Produits, taxes, commandes,) o Il clique sur traiter limportation pour valider. o Il valide en cliquant sur le bouton importer

Grer la planification facture

Le but de cas dutilisation : Crer un calendrier de facturation utiliser dans la gnration des factures Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements

MOUKRIM Chouaib

Septembre 2012

Page 67

o o o

Le Chef commercial ouvre la page dans ce chemin Gestion des donnes principales-> Configuration du partenaire commercial -> Facture calendrier Il clique sur nouveau et remplit les champs ncessaires. Il valide en cliquant sur le bouton OK

ii.

Module : Point de vente

Synchronisation des ventes

Le but de cas dutilisation : Envoyer les commandes qui ont t faites par lutilisateur du POS Les acteurs : administrateur POS Pr-conditions : o Lutilisateur se connecte Openbravo pos o Lutilisateur doit se connecter aussi Openbravo erp Enchainements o Ladministrateur POS ouvre la page de Pentaho Data Integration et doit configurer le fichier kattle.properties et remplir les paramtres de connexion de lERP o Ladministrateur lance la synchronisation avec loutil PDI pour envoyer les donnes lERP centrale. Post-conditions : o La synchronisation des ventes devra se terminer

Importer le catalogue des produits

Le but de cas dutilisation : importer les donnes partir des tables dOpenbravo ERP Les acteurs : administrateur POS Pr-conditions : o Lutilisateur se connecte Openbravo pos o Lutilisateur doit se connecter aussi Openbravo erp Enchainements o Ladministrateur POS ouvre la page de Pentaho Data Integration et doit configurer le fichier kattle.properties et remplir les paramtres de connexion de lERP o Ladministrateur lance la synchronisation avec loutil PDI pour envoyer les donnes lERP centrale.

MOUKRIM Chouaib

Septembre 2012

Page 68

o Il valide en cliquant sur le bouton crer Post-conditions : o La synchronisation dimportation devra se terminer

iii.

Module : Comptabilit

Cration dun calendrier budgtaire


Le but de cas dutilisation : Le comptable cre des priodes et les documente. Les acteurs : Comptable Pr-conditions : o Le comptable se connecte Openbravo erp Enchainements o Le comptable ouvre la page dans ce chemin Gestion financire-> Comptabilit> Configuration-> Fiscal calendrier> Anne o Il Clique sur le bouton crer priodes o Il Dplace chaque priode et cliquez sur le bouton Ouvrir / Fermer tout o Il valide en cliquant sur le bouton crer

Cration de la comptabilit gnrale

Le but de cas dutilisation : Le comptable cre la comptabilit gnrale pour tester d'autres fonctions. Les acteurs : Comptable Pr-conditions : o Le comptable doit se connecter Openbravo erp Enchainements o Le comptable ouvre la page dans ce chemin Gestion financire-> Comptabilit> Configuration-> comptabilit gnrale o Il clique sur Nouveau dans la comptabilit gnrale. o Il accde l'onglet Comptabilit. o Il cre un nouveau record. o Il slectionne un compte de dpenses la fois pour dbit et de crdit o Il valide en cliquant sur le bouton crer

Mise jour des partenaires commerciaux

MOUKRIM Chouaib

Septembre 2012

Page 69

Le but de cas dutilisation : Le comptable cre une catgorie fiscale du partenaire commerciale pour faire des impts dans les documents transactionnels. En outre il ajouter une nouvelle catgorie de clientle. Les acteurs : Comptable Pr-conditions : o Le comptable doit se connecter Openbravo erp Enchainements o Le comptable ouvre la page dans ce chemin Gestion des donnes principales-> Partenaire commercial o Il slectionne un client o A l'intrieur de longlet Client, il slectionne une Catgorie fiscale. o Il valide en cliquant sur le bouton valider

iv.

Module : Gestion des ventes

Crer une vente

Le but de cas dutilisation : son objectif est la cration dune vente utiliser lors de l'expdition des marchandises. Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements o Le Chef commercial ouvre la page dans ce chemin Gestion de vente -> Transaction-> vente o Il remplit tout les champs : TVA, produit, o Il valide en cliquant sur le bouton OK

Crer une expdition de marchandises

Le but de cas dutilisation : son objectif est la cration dun envoi des marchandises d'une vente du client Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements

MOUKRIM Chouaib

Septembre 2012

Page 70

Le Chef commercial ouvre la page dans ce chemin Gestion de vente -> Transaction-> Crer expditions de vente o Il slectionne la commande client et cliquez sur processus o Il valide en cliquant sur le bouton OK Post-conditions : o L'ordre de vente doit tre disparatre
o

Crer une facture de vente

Le but de cas dutilisation : son objectif est la cration dune facture de vente du client Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements o Le Chef commercial ouvre la page dans ce chemin Gestion de vente -> Transaction-> facture de vente o Il remplit tout les champs : TVA, produit, o Il valide en cliquant sur le bouton OK

Comptabilit de la facture vente


Le but de cas dutilisation : Comptabiliser toutes les achats qui ont t faites. Les acteurs : Comptable Pr-conditions : o Le comptable doit se connecter Openbravo erp o Le bouton "Non publi" doit tre apparu Enchainements o Le comptable ouvre la page dans ce chemin Gestion des ventes-> Transactions> Facture de vente o Il clique sur les ventes "Non publi" o Il Vrifie si l'entre du journal cr est correcte o Il valide

Crer un rglement

Le but de cas dutilisation : Traiter toutes les rglements de ventes Les acteurs : Comptable Pr-conditions : o Le comptable doit se connecter Openbravo erp

MOUKRIM Chouaib

Septembre 2012

Page 71

Enchainements o Le comptable ouvre la page dans ce chemin Gestion financire-> Transactions> rglement o Il remplit les champs obligatoires du nouveau rglement. o Il cre un nouveau paiement et valide (et slectionne un client comme partenaire commercial) o Il valide en cliquant sur valider

Crer un versement

Le but de cas dutilisation : Le comptable peut crer des remises avec des versements. Les acteurs : Comptable Pr-conditions : o Le comptable doit se connecter Openbravo erp Enchainements o Le comptable ouvre la page dans ce chemin Gestion financire-> Crances et dettes-> Transactions-> Remise o Il remplit les champs obligatoires du nouveau versement. o Il clique sur continue o Il valide en cliquant sur valider

v.

Module : Gestion des achats

Crer un bon de commande

Le but de cas dutilisation : Cration dune commande utiliser lors de la rception des produits Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements o Le Chef commercial ouvre la page dans ce chemin Gestion de l'approvisionnement -> Transaction-> Bon de commande o Il clique sur nouveau et remplit les champs ncessaires. o Il valide en cliquant sur le bouton OK

MOUKRIM Chouaib

Septembre 2012

Page 72

Crer une rception des marchandises


Le but de cas dutilisation : son objectif est la cration de biens pour la rception Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements o Le Chef commercial ouvre la page dans ce chemin Gestion de l'approvisionnement -> Transaction-> Entre de marchandises o Il cre un nouveau vendeur : il remplit les champs, slectionne un partenaire commercial et valide. o Il slectionne le bon de commande o Il slectionne une position dentrept o Il slectionne la ligne de commande o Il valide en cliquant sur le bouton OK

Crer une facture d'achat


Le but de cas dutilisation : son objectif est la cration dune facture dachat Les acteurs : Chef commercial Pr-conditions : o Lutilisateur se connecte en tant que Chef commercial Enchainements o Le Chef commercial ouvre la page dans ce chemin Gestion de l'approvisionnement -> Transaction-> facture dachat o Il remplit tout les champs : TVA, vendeur , o Il valide en cliquant sur le bouton OK

Comptabilit de la facture dachat


Le but de cas dutilisation : Comptabiliser toutes les achats qui ont t faites Les acteurs : Comptable Pr-conditions : o Le comptable doit se connecter Openbravo erp Enchainements

MOUKRIM Chouaib

Septembre 2012

Page 73

o o o

Le comptable ouvre la page dans ce chemin Gestion de l'approvisionnement de -> Oprations-> facture dachat Il clique sur "Non Publi" pour tre en mode d'dition, puis il clique sur OK Il vrifie si le journal cr est correct et valide.

Payer la facture dachat

Le but de cas dutilisation : Le comptable cre le journal de caisse en utilisant ce paiement Les acteurs : Comptable Pr-conditions : o Le comptable doit se connecter Openbravo erp Enchainements o Le comptable ouvre la page dans ce chemin Gestion financire-> Crances et Paiements> Transactions-> Cash revue o Il clique sur Nouveau, remplisse les champs obligatoires et sauvegarde o Il accde l'onglet Lignes o Il clique sur Nouveau type de trsorerie et slectionne: dette-paiement o Il clique sur l'icne de paiement, remplit les champs obligatoires et valide o Il clique sur "Non publi" o Il vrifie si l'entre du journal est correcte et valide

2.

Lanalyse statique

Cette phase doit dterminer le modle statique du nouveau systme qui dterminer les objets, leurs attributs et leurs mthodes ainsi que les relations qui relient ces objets. Lobjectif de cette tape est de produire le diagramme de classes qui servira pour limplmentation. Nous dcrirons les relations entre les classes de modle de domaine, en prcisant les attributs et les oprations prives de diffrentes classes. Lauthentification

MOUKRIM Chouaib

Septembre 2012

Page 74

AuthenticationManager
{abstract}

+ + + + <<Constructor>> OBException (Throwable cause) + # getLogger () + <<Constructor>> + <<Constructor>> #

- log4j - DEFAULT_AUTH_CLASS - SUCCESS_SESSION_STANDARD - SUCCESS_SESSION_WEB_SERVICE OBException - REJECTED_SESSION_WEB_SERVICE - SUCCESS_SESSION_CONNECTOR (<ModeleOrienteObjet_1>) - FAILED_SESSION serialVersionUID : long = 1L # conn <<Constructor>> OBException () # defaultServletUrl <<Constructor>> OBException (String message, Throwable cause) # localAdress <<Constructor>> OBException (String message) # username

: Logger : String : String : String FieldProvider (<ModeleOrienteObjet_1>) : String : String : String : ConnectionProvider + getField (String fieldName) : String : String : String : String

getAuthenticationManager (HttpServlet s) AuthenticationManager () AuthenticationManager (HttpServlet s) bdErrorAjax (HttpServletResponse response, String strType, String strTitle, String strText) ...

conn ConnectionProvider (<ModeleOrienteObjet_1>)

AuthenticationData

* log4j : Logger = Logger.getLogger - InitRecordNumber : String = "0" + adUserId : String


: : : : : : : : : : Connection String Connection void void PreparedStatement PreparedStatement PreparedStatement void Statement

+ + + + + + + + + +

getConnection () getRDBMS () getTransactionConnection () releaseCommitConnection (Connection conn) releaseRollbackConnection (Connection conn) getPreparedStatement (String poolName, String strSql) getPreparedStatement (String strSql) getPreparedStatement (Connection conn, String strSql) releasePreparedStatement (PreparedStatement preparedStatement) getStatement (String poolName) ...

+ <<Getter>> getInitRecordNumber () + <<Implement>> getField (String fieldName) + getUserId (ConnectionProvider co

AuthenticationException
- serialVersionUID : long = 1L - error : OBError
+ <<Constructor>> AuthenticationException (String msg) + <<Constructor>> AuthenticationException (String msg, Throwable cause) + <<Constructor>> AuthenticationException (String msg, OBError error) + getOBError () : OBError

error

OBError (<ModeleOrienteObjet_1>)
type title message connectionAvailable : String : String : String : boolean

+ <<Constructor>> OBError () + setType (String _data) + getType () ...

Figure 22 : gestion des droits d'accs

Remarque : Tous les diagrammes de classes qui seront prsents par la suite, implmentent les interfaces suivantes :
OrganizationEnabled (<Openbravo erp>)
+ getOrgani zati on () ... : Organi zati on + +

ClientEnabled (<Openbravo erp>)


getCl i ent () setCl i ent (Cl i ent cl i ent) : Cl i ent : voi d

Traceable (<Openbravo erp>)


+ + + + + + + + getCreatedBy () setCreatedBy (User user) getCreati onDate () setCreati onDate (Date date) getUpdatedBy () setUpdatedBy (User user) getUpdated () setUpdated (Date date) : : : : : : : : User voi d Date voi d User voi d Date voi d

ActiveEnabled (<Openbravo erp>)


+ + i sActi ve () setActi ve (Bool ean acti ve) : Bool ean : voi d

Figure 23 : les interfaces

MOUKRIM Chouaib

Septembre 2012

Page 75

Diagrammes de classe : Gestion des ventes


Commission
+ + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE ... : long : String : String : String : String : String : String : String

CommissionAmount
+ + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE ... : long : String : String : String : String : String : String : String

CommissionLine
+ + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY ... : long : String : String : String : String : String : String : String : String

BaseOBObject (<Openbravo>)
{abstract}

CommissionDetail
+ + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY ... : long : String : String : String : String : String : String : String : String

log serialVersionUID model newOBObject data isDerivedReadable allowRead dataTrl hasLookedForTrl ...

: org.apache.log4j.Logger : long : Entity : boolean : Object[] : Boolean : boolean : BaseOBObject : boolean

ConditionGoods
+ + + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY ... PROPERTY_UPDATED : long : String : String : String : String : String : String : String : String : String

CommissionRun
+ + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY ... : long : String : String : String : String : String : String : String : String + + + + + + + + +

SalesRegion
serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY PROPERTY_UPDATED ... : long : String : String : String : String : String : String : String : String : String

Figure 24 : Gestion des ventes

MOUKRIM Chouaib

Septembre 2012

Page 76

Diagrammes de classe : Gestion dachat

RequisitionLine
+ + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE ... : long : String : String : String : String : String : String : String

POInvoiceMatch
+ + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE ... : long : String : String : String : String : String : String

BaseOBObject (<Openbravo>)
{abstract}

log serialVersionUID model newOBObject data ...

: org.apache.log4j.Logger : long : Entity : boolean : Object[]

Requisition
+ + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE ... PROPERTY_CREATIONDATE : long : String : String : String : String : String : String : String + + + + + + +

ReceiptInvoiceMatch
serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE ... : long : String : String : String : String : String : String : String

RequisitionPOMatch
+ + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_CREATIONDATE PROPERTY_CREATEDBY PROPERTY_UPDATED ... : long : String : String : String : String : String : String : String : String

Figure 25 : Gestion d'achat

MOUKRIM Chouaib

Septembre 2012

Page 77

Diagrammes de classe : Gestion des donnes principales


ElementValue
+ + + + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATEDBY PROPERTY_CREATIONDATE PROPERTY_UPDATED PROPERTY_UPDATEDBY ... : long : String : String : String : String : String : String : String : String : String : String

BankStatement
+ + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE ... : long : String : String : String : String : String : String : String

BudgetLine2
+ + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION ... : long : String : String : String : String : String

ImportFormatRow
+ + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE ... : long : String : String : String : String : String : String

GLJournal
+ + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_NEWCLIENTIDENTIFIER ... : long : String : String : String : String : String

Product BaseOBObject (<Openbravo>)


{abstract}

Order
+ + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_TRXORGANIZATION ... : long : String : String : String : String : String : String -

log serialVersionUID model newOBObject data ...

: org.apache.log4j.Logger : long : Entity : boolean : Object[]

+ + + + + + + + + +

serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY PROPERTY_UPDATED PROPERTY_UPDATEDBY ...

: long : String : String : String : String : String : String : String : String : String : String

Invoice
+ + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION ... : long : String : String : String : String : String

ImportFormat
+ + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE ... : long : String : String : String : String : String : String : String

BusinessPartner
+ + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY ... : long : String : String : String : String : String : String : String : String

Tax
+ + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE ... : long : String : String : String : String : String : String : String

Inventory
- serialVersionUID = 1L + TABLE_NAME + ENTITY_NAME = "I_Tax" + PROPERTY_ID = "DataImportTax" = "id" + PROPERTY_CLIENT + PROPERTY_ORGANIZATION = "client" + PROPERTY_ACTIVE = "organization" + PROPERTY_CREATIONDATE = "active" ... = "creationDate" : long : String : String : String : String : String : String : String

Figure 26 : Gestion des donnes principales

MOUKRIM Chouaib

Septembre 2012

Page 78

Diagrammes de classe : module synchronisation POS


<<bind>> <T>

Comparable

PosInventory
+ + + + PROPERTY_WAREHOUSE PROPERTY_PRODUCT PROPERTY_ATTSETINSTANCE PROPERTY_UNITS ... : String : String : String : String + + + + +

PosProduct
PROPERTY_NAME PROPERTY_SEARCHKEY PROPERTY_UPCEAN PROPERTY_PRODUCTCATEGORY PROPERTY_TAXCATEGORY ... : String : String : String : String : String

Comparable_PosTax

PosAttributeValue
+ PROPERTY_SEARCHKEY : String + PROPERTY_NAME : String + PROPERTY_ATTRIBUTE : String ...

PosProcessedOrdersResults
+ + + + + PROPERTY_TITLE PROPERTY_OLNOTIMPORTED PROPERTY_OINSERTED PROPERTY_OLINSERTED PROPERTY_ONOTPROCESSED ... : String : String : String : String : String

PosTax
+ + + + PROPERTY_NAME PROPERTY_RATE PROPERTY_PARENTTAXRATE PROPERTY_TAXCATEGORY ... : String : String : String : String

PosObject
+ + + + PROPERTY_ENTITYNAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION properties orderByProperties : String : String : String : String : Properties : List<String> = "entit yName" = "id" = "client" = "organization"

PosTaxCustomerCategory
+ PROPERTY_NAME : String = "name"
+ <<Constructor>> PosTaxCustomerCategory () order () ...

PosAttribute
+ PROPERTY_NAME : String = "name"
+ <<Constructor>> PosAttribute () order () : void ...

PosTaxCategory
+ PROPERTY_NAME : String = "name"
+ <<Constructor>> PosTaxCategory () ... () order

+ <<Constructor>> PosObject () defaultOrder () : void ...

PosBP
+ + + + + PROPERTY_NAME PROPERTY_SEARCHKEY PROPERTY_TAXID PROPERTY_FIRSTNAME PROPERTY_LASTNAME ... : String : String : String : String : String = "name" = "searchKey" = "taxID" = "firstName" = "lastName"

PosOrder PosProductCategory PosWarehouse


+ PROPERTY_NAME : String + PROPERTY_ADDRESS : String + + + PROPERTY_NAME : String PROPERTY_PARENT : String PROPERTY_IMAGE : String ... + + + + + PROPERTY_TICKET_NUMBER PROPERTY_TICKET_TYPE PROPERTY_TICKET_DATE PROPERTY_CUSTOMER PROPERTY_LINE ... : String : String : String : String : String

PosAttributeUse
+ PROPERTY_ATTRIBUTE : String + PROPERTY_ATTRIBUTESET : String + PROPERTY_SEQUENCENUMBER : String ...

PosAttributeSet
+ PROPERTY_NAME : String
+ <<Constructor>> PosAttributeSet () ...

PosAttributeSetInstance
+ PROPERTY_ATTRIBUTESET : String + PROPERTY_DESCRIPTION : String ...

Figure 27 : module synchronisation POS

MOUKRIM Chouaib

Septembre 2012

Page 79

Diagrammes de classe : module comptabilit


AccountingFact
+ + + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY PROPERTY_UPDATED ... : long : String : String : String : String : String : String : String : String : String + + + + + + +

TablePostV
serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_NAME PROPERTY_LANGUAGE PROPERTY_CLIENT PROPERTY_ORGANIZATION ... : long : String : String : String : String : String : String : String

OrganizationClosing
+ + + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY PROPERTY_UPDATED ... : long : String : String : String : String : String : String : String : String : String

Budget
+ + + + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY PROPERTY_UPDATED PROPERTY_UPDATEDBY ... : long : String : String : String : String : String : String : String : String : String : String

BaseOBObject (<Openbravo>)
{abstract}

Dimension
+ + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE ... : long : String : String : String : String : String : String

log serialVersionUID model newOBObject data isDerivedReadable allowRead dataTrl ...

: org.apache.log4j.Logger : long : Entity : boolean : Object[] : Boolean : boolean : BaseOBObject

FIN_FinancialAccountAccounting
+ + + + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_ACCOUNT PROPERTY_ACCOUNTINGSCHEMA PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY ... : long : String : String : String : String : String : String : String : String : String : String

BudgetLine
+ + + + + + + + + + serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY PROPERTY_UPDATED PROPERTY_UPDATEDBY ... : long : String : String : String : String : String : String : String : String : String : String + + + + + + + + + + +

ADCreatefactTemplate
serialVersionUID TABLE_NAME ENTITY_NAME PROPERTY_ID PROPERTY_CLIENT PROPERTY_ORGANIZATION PROPERTY_ISACTIVE PROPERTY_CREATIONDATE PROPERTY_CREATEDBY PROPERTY_UPDATED PROPERTY_UPDATEDBY PROPERTY_NAME ... : long : String : String : String : String : String : String : String : String : String : String : String

= 1L = "FIN_Fina = "FIN_Fina = "id" = "account" = "accountin = "client" = "organizat = "active" = "creationD = "createdBy

Figure 28 : comptabilit

MOUKRIM Chouaib

Septembre 2012

Page 80

3.

Lanalyse dynamique :

Cette phase a pour but de prciser la modlisation dynamique du nouveau systme se basant sur divers modles, nous y utiliserons deux diagrammes savoir : Diagramme dactivit Les diagrammes dactivits permettent de mettre laccent sur les traitements. Ils sont donc particulirement adapts la modlisation du cheminement de flots de contrle et de flots de donnes. Ils permettent ainsi de reprsenter graphiquement le comportement dune mthode ou le droulement dun cas dutilisation. Diagramme de squence permet de reprsenter des collaborations entre objets impliqu dans les scnarios (prsents dans les cas dutilisation) selon un point de vue temporel, on y met laccent sur la chronologie des envois de messages.

i.

Conception des diagrammes de dactivit

Diagramme dactivit : Gestion des ventes

La figure suivante prsente le diagramme dactivit des diffrentes transactions de vente. En effet, une transaction de vente est rsume par le scnario suivant : La prparation de devis est une tape ncessaire llaboration dune commande de vente. En effet, le devis prsente un document transactionnel qui a lallure de facture et qui permet au client en question ainsi qu lagent commercial de distinguer les caractristiques dun produit et du prix et de lancer aprs acceptation un ordre de vente. La deuxime tape indispensable cest lexcution de la commande de vente en elle-mme qui ncessite le paramtrage et la slection des produits et des diffrents partenaires qui entrent en jeu au moment de la commande. Une commande en gnral se termine par une Livraison et ncessite la vrification du stock lors de lexcution. En cas de terminaison des paramtrages ncessaires la commande et en parallle avec la livraison au client le processus traite la phase de facturation. En effet, une facture doit tre associe chaque livraison-commande.

MOUKRIM Chouaib

Septembre 2012

Page 81

Figure 29 : Diagramme dactivit : Gestion des ventes

Diagramme dactivit : Gestion des achats Le processus dachat est semblable celui de la vente. En outre, il traduit la gestion des transactions dachat entre responsable commercial et fournisseur en question. La figure suivante prsente le diagramme dactivit des diffrentes transactions dachat autrement dit processus daffaires de la gestion des achats. En effet, une transaction dachat est rsume par le scnario suivant :

MOUKRIM Chouaib

Septembre 2012

Page 82

Figure 30 : Diagramme d'activit : gestion des achats

ii.

Conception des diagrammes de squence

MOUKRIM Chouaib

Septembre 2012

Page 83

In Terfa ce Uti l i s a teur

ba s e d e d o n n es

1.Demande d'authentification

2.Interface affiche 3.Saisir login et mot de passe 4.Envoi mot de passe)d'authentificationmot de passe)(login 5.Vrification
alt identification incorrect

6.Login / mot de passe incorrect

7.Message d'erreur
identification correct

8.login et mot de passe correct 9.Interface d'accueil affiche

Figure 31 : Authentification

MOUKRIM Chouaib

Septembre 2012

Page 84

INTERFACE Ad mi n i stra teur Open B ra vo B ra vo POS

OPen B RAVO POS

OPen B RAVO ERP

1.Demande d'afficher la liste de produits 2.Envoi la demande 3.Liste de produits affiche 4.Liste de produit affiche 5.Se connecter Openbravo ERP 6.Demande de connection 7.Connection confirme 8.Rechercher la liste de produit

9.Demande de tlecharger les catalogues de produits

10.Confirmation 11.Liste des catalogues affiches 12.Liste des catalogues affiches

13.Mise jour avec succs

14.Informations ajoutes

Figure 32 : Tlcharger le catalogue des produits

MOUKRIM Chouaib

Septembre 2012

Page 85

i n ter fa ce a d mi n i s tr a teur o pen B r a vo POS

Open B r a vo POS

Open B r a vo ERP

1.Demande d'ajouter un client

2.Interface affiche 3.Saisir les informations de nouveau client 4.Information saisie 5.Client a ajouter avec succs 6.Client a ajouter avec succs 7.Demande d'une commande de produit 8.Envoi de commande

9.Commande valide 10.Commande valide 11.Synchronisation vente 12.Synchronisation confirme

Figure 33 : Synchroniser les ventes

Dans ce chapitre nous avons entam la phase danalyse et conception qui se prsente selon trois vues : une vue fonctionnelle (diagramme de cas dutilisations), une vue statique (diagramme de classes), une vue dynamique (diagrammes dactivit et de squence). Aprs avoir achev cette tape, nous passons maintenant l'implmentation de lapplication. Ceci doit tre prcd par une tude qui dterminera le choix technologique chapitre 7 que nous avons suivi dans ce projet.

MOUKRIM Chouaib

Septembre 2012

Page 86

Partie 3 :

La ralisation du nouveau systme


Chapitre :
Chapitre 6 : Processus de synchronisation POS Chapitre 7 : Ralisation et mise en place.

MOUKRIM Chouaib

Septembre 2012

Page 87

Ce chapitre dcrit l'effort d'intgration fait entre Openbravo ERP et Openbravo POS pour combiner et travailler avec le mme jeu de donnes. Cette intgration est base sur les web services.

MOUKRIM Chouaib

Septembre 2012

Page 88

VI. LE PROCESSUS DE SYNCHRONISATION POS


1. Introduction
Dans une organisation, il existe souvent plus d'une application pour supporter un aspect particulier des besoins oprationnels. Le rsultat est un ensemble dapplications htrognes exigeant le partage des donnes et l'intgration. Un systme ERP (progiciel de gestion intgr) tel quOpenbravo essaye de rsoudre ce problme en offrant une solution pour chaque besoin oprationnel. Openbravo gre une seule base de donnes, intgre les processus parmi les diffrents dpartements, une interface cohrente pour chaque utilisateur, et des rapports homognes affichant les donnes oprationnelles de toute l'organisation. Toutefois il y a des domaines spcifiques d'une organisation qu'un systme ERP ne peut rsoudre. Par exemple, les systmes POS (systme de point de vente) comme Openbravo POS o des types d'utilisateurs spciaux ou des supports de priphriques sont requis. L'utilisateur du systme POS est un vendeur qui utilise un ERP d'une manire diffrente. L'interface doit tre trs facile utiliser et doit fournir uniquement les informations spcifiques dont le vendeur a besoin. Ce vendeur a besoin d'utiliser le POS aussi vite que possible puisque son travail est de vendre et non pas de faire fonctionner le POS. Par exemple il n'a pas besoin d'une souris et d'un clavier, il prfrera un cran tactile. De plus, le systme POS a besoin de supporter beaucoup de priphriques tels que: les imprimantes tickets, les lecteurs de code-barres, les crans d'affichage clients, les tiroirs caisses, les balances, etc.

2.

Vue d'ensemble de l'intgration

L'objectif de cette intgration est de crer un systme o Openbravo ERP est le rfrentiel central des donnes: produits, les clients, les taxes, les commandes ... Et Openbravo POS a la capacit de fonctionner avec les donnes de base tlcharge depuis Openbravo ERP et de tlcharger des commandes cres par l'activit de vente dOpenbravo POS. Cette intgration a t dveloppe avec le Web services REST. Le web services REST dOpenbravo ERP fonctionne sur Business Objects ( Openbravo ERP). Un Business Object (dans Openbravo ERP) peut tre une entit simple (un tableau), comme une monnaie qui vient de champs primitifs de base. Ou peut-tre aussi complexe que la structure des entits, par exemple un bon de commande avec ses lignes de commande. Le web services REST dOpenbravo ERP offre les fonctionnalits suivantes:

Rcuprer un objet mtier ou une liste d'objets mtier l'aide d'une norme HTTP GET demande. Interrogation, le filtrage, la pagination et le tri des listes d'objets mtier, de nouveau dans les requtes HTTP standard. Mettre jour un objet mtier existant ou plusieurs objets mtier avec XML et HTTP POST ou PUT oprations. Crer de nouveaux objets mtier avec un POST / PUT opration.

MOUKRIM Chouaib

Septembre 2012

Page 89

Exporter et importer des donnes: les fichiers XML qui contiennent un mlange de diffrents types d'objets mtier et d'un mlange d'objet mtier existants et nouveaux. Opration de suppression en utilisant soit une URL pointant vers un objet mtier spcifique qui doit tre enlev ou un document XML qui contient les objets mtier (comme XML complte ou partielle en XML) qui doivent tre supprims.

Les services Web REST dOpenbravo ERP utilisent le mme accs/autorisations que l'application standard Openbravo ERP. Avant d'appeler un service Web, l'appelant doit se connecter. La fonctionnalit de connexion est fournie par le cadre Openbravo ERP REST. Toutes les actions REST sont alors excutes dans le contexte d'un rle de client/organisation et le courant de l'utilisateur.

3.

Le processus de synchronisation POS

Dans un environnement intgr toutes les informations produits, informations entrept, catgories de produits, les impts et les informations clients sont maintenus dans Openbravo ERP. Ce processus est excut quand est ncessaire pour synchroniser Openbravo POS avec l'information qui a chang dans Openbravo ERP. A. La configuration dOpenbravo ERP

La notion du systme de modularit dOpenbravo ERP Un module d'extension est un morceau de fonctionnalits supplmentaires qui peuvent tre ventuellement et indpendamment dploy au-dessus dOpenbravo ERP. L'exprience de l'utilisateur de dployer des modules est similaire celui des plugins Firefox: parcourir un catalogue de modules, l'installation (et de dsinstallation), de dployer et de les mettre jour directement partir de l'interface utilisateur Openbravo ERP administration. Un dveloppeur d'un module d'extension peut emballer et livrer un module indpendamment dOpenbravo ERP, ce qui signifie qu'il est possible d'emballer les modules avec un mcanisme de prestation qui inclut uniquement les fichiers et les mtadonnes responsables. La fonctionnalit des Web services REST est trs utile pour les scnarios d'intgration standard et dans notre cas nous permettre de Business Objects dsirs partir dOpenbravo ERP et mettre jour un objet mtier existant. L'ide est d'installer un module (indpendant dOpenbravo ERP) qui est le responsable de dployer un Webservice REST en charge de la synchronisation. Installation du module Webservice pour la synchronisation dOpenbravo POS Pour installer le module de la synchronisation il faut suivre les tapes suivantes :

Connectez-vous en tant qu'administrateur systme dans Openbravo ERP. Aller la Configuration gnrale> Application Management Module>. Aller longlet Ajouter modules.

MOUKRIM Chouaib

Septembre 2012

Page 90

Slectionnez dans la liste ci-dessous POS WebService synchronisation et appuyez sur la touche Installer maintenant le bouton.

Aprs il faut suivre les tapes dinstallation et de la recompilation du systme. Vrification de l'installation du module Pour vrifier si le module est correctement install, pointez votre navigateur sur: http://localhost:8000/openbravo/ws/org.openbravo.pos.sync.ws Cet exemple suppos quOpenbravo ERP sexcute localement surle port 8000, il peut tre ncessaire de remplacer le localhost:8000 par le nom de serveur : port. Avant d'appeler le service Web, l'appelant doit se connecter. Le rsultat devrait une page d'accueil avec une brve description de l'utilisation du service Web.

MOUKRIM Chouaib

Septembre 2012

Page 91

Figure 34 : page d'accueil du Web service.

Ajout du point de vente externe dans Openbravo erp : Dans Openbravo ERP on ajoute le point externe pour dfinir les produits qui seront disponibles pour chaque point de vente. Avec cela, On peut obtenir le catalogue de produits dOpenbravo POS, et vis versa. Pour ajouter le point de vente externe, il faut changer le rle de l'administrateur Openbravo ERP de l'entit avec lequel on travaille, puis on ouvre le menu Application>Gestion des ventes> Configuration > point de vente.

MOUKRIM Chouaib

Septembre 2012

Page 92

Figure 35 : point de vente externe dans Openbravo erp

Paramtres de la requte Dans la base de donnes et le web services install il faut savoir les valeurs suivantes :

erp.id: L'identifiant client dOpenbravo ERP interne de vente. erp.org: L'identificateur dOpenbravo ERP de lorganisation interne de la pointe externe de vente. erp.pos: La cl de recherche ou le code pour la traduction franaise du point de vente externe dfini dans Openbravo ERP utilis pour identifier le systme Openbravo POS l'intrieur dOpenbravo ERP. erp.user: L'utilisateur dOpenbravo ERP, utilis pour appeler la fonctionnalit d'intgration. erp.password: Le mot de passe de l'utilisateur Openbravo ERP. Les Business Objects disponibles

MOUKRIM Chouaib

Septembre 2012

Page 93

POS Business Object


Attribute AttributeSet AttributeValue AttributeUse AttributeInstance AttributeSetInstance Warehouse BusinessPartnerTaxCategory TaxCategory Tax ProductCategory Product Inventory BusinessPartner

POS Table
ATTRIBUTE ATTRIBUTESET ATTRIBUTEVALUE ATTRIBUTEUSE ATTRIBUTEINSTANCE ATTRIBUTESETINSTANCE LOCATIONS TAXCUSTCATEGORIES TAXCATEGORY TAXES CATEGORIES PRODUCTS STOCKCURRENT, STOCKDIARY, STOCKLEVEL CUSTOMERS Tableau 8 : Business Objects

ERP Table
m_attribute m_attributeset m_attributevalue m_attributeuse m_attributeisntance m_attributesetinstance m_warehouse c_bp_taxcategory c_taxcategory c_tax m_product_category m_product m_storage_detail c_bpartner

Restrictions :

Product (Article pour la traduction franaise) o Type de produit doit tre objet o Emballage du produit doit tre unitaire o Le produit doit appartenir la Version Liste rcente des Prix l'intrieur du Tarif choisie dans le point de vente externe. Inventory

Le modle de stockage Openbravo ERP est diffrent:


Openbravo ERP | |--- Warehouse |-----| |--- Storage Bin | |--- Products # # # # # # # Openbravo POS | |--- Warehouse | |---Products

Lorsque le stock d'un produit est synchronis, la somme du stock disponible dans le stock de l'entrept slectionn est termine. B. La configuration dOpenbravo POS

Prsentation et concept de PDI PDI (Pentaho Data Integration), qui tait auparavant connu sous le nom de Kettle, est un logiciel dETL (Extract, Transform, Load) Open Source qui permet la conception ainsi que

MOUKRIM Chouaib

Septembre 2012

Page 94

lexcution des oprations de manipulation et de transformation de donnes trs complexes. Quest ce quun ETL ? Il s'agit d'une technologie informatique intergicielle (comprendre middleware) permettant d'effectuer des synchronisations massives d'information d'une base de donnes vers une autre. Selon le contexte, on est amen exploiter diffrentes fonctions, souvent combines entre elles : extraction , transformation , constitution ou conversion , alimentation . PDI permet d'effectuer deux types de traitements : 1. Des transformations : traitement de base comprenant l'extraction de sources, la transformation et le chargement de cibles. 2. Des jobs : traitement permettant de squencer plusieurs transformations. PDI est aussi compos de trois applications : 1. Spoon : interface graphique, faite avec SWT (Standard Widget Toolkit). 2. Pan : application en ligne de commande afin de lancer une transformation donne. 3. Kitchen : application en ligne de commande afin de lancer une tche donne. Pentaho Data Integration est un outil trs flexible et convivial qui fournit un outil trs graphique intuitif (Spoon) pour modifier et crer nos transformations. Pour l'utilisateur final est trs facile utiliser et ne ncessitent pas de comptences en programmation spciaux. En outre, il ya une communaut active derrire le projet, ce qui signifie Forum, une documentation complte et ainsi de suite. L'architecture actuelle rduit l'effort ncessaire pour modifier une fonctionnalit existante et minimise l'impact de la mise en uvre d'une nouvelle fonctionnalit. La fonctionnalit des Webservices REST est trs utile car ils permettent de rcuprer des informations partir de tous les Business Objects de Openbravo ERP, juste il faut faire une requte HTTP. Donc, si des donnes supplmentaires sont ncessaires, les modifications seront seulement affecter l'environnement Pentaho Data Integration. D'autres applications peuvent s'intgrer avec Openbravo POS par Pentaho Data Integration d'une manire simple: la cration d'une nouvelle transformation ou d'emploi. Ils n'ont pas besoin de modifier le code Openbravo POS, Pentaho Data Integration fournit un mcanisme suffisant pour atteindre une synchronisation russie entre une application externe et Openbravo POS. Pentaho Data Integration offre la possibilit de programmer des transformations ou des travaux excuter dans un serveur distant ou de forcer la synchronisation aprs vnement exceptionnel qui se passe dans Openbravo POS, par exemple, lorsque l'argent est ferm. Ce point est important, car n'est pas besoin d'une interaction avec l'utilisateur chaque fois quon a besoin pour faire fonctionner l'intgration, il suffit de prparer le calendrier dans un temps convenable et excuter une fois. Installation de Pentaho Data Integration Pour l'installer, il faut le tlcharger dans ce site www.pentaho.com et le dcompresser simplement dans un dossier.

MOUKRIM Chouaib

Septembre 2012

Page 95

Pentaho Data Integration ncessite de Sun Java Runtime Environment (JRE) version 1.5 ou plus rcent. Tous les pilotes JDBC fournis dans Pentaho Data Integration sont situs dans data integration/libext/JDBC . Est obligatoire d'utiliser dans Pentaho Data Integration une version du pilote JDBC compatible avec la version du pilote JDBC utilis dans Openbravo POS.

Configurer Pentaho Data Integration Il faut modifier le fichier kettle pour configurer notre base de donnes et les paramtres de connexions pour Openbravo ERP. Ce fichier se trouve pour mon ordinateur dans ce chemin :
C:\Users\Chouaib\.kettle\kettle.properties # Database Connection db.URL = jdbc:derby:C:\\ipos_base ; create=true db.driver = org.apache.derby.jdbc.EmbeddedDriver db.user = db.password = # Openbravo ERP erp.URL = http://localhost:8000/openbravo/ws/org.openbravo.pos.sync.ws erp.id = 6BCACEB47FA24B9687729D4478A8BF40

MOUKRIM Chouaib

Septembre 2012

Page 96

erp.org = A955BB2978F54372BCDD6DCAAF99BFC6 erp.pos = monpos erp.user = Openbravo erp.password = openbravo

Les valeurs de configuration sont les suivantes:


db.URL: Pour localiser le pilote JDBC et la base de donnes. db.driver: Le nom de la classe Java qui implmente le pilote JDBC. Ce nom est galement dfini par le fournisseur de moteur de base de donnes. db.user: Le nom de l'utilisateur de base de donnes autorise. db.password: Le mot de passe de l'utilisateur de base de donnes. Le mot de passe doit tre rdig en texte brut et non cod tel qu'il apparat dans le fichier de configuration Openbravopos.properties erp.URL: LURL du Web service. erp.user: L'utilisateur Openbravo ERP utilis pour appeler la fonctionnalit d'intgration. erp.password: Le mot de passe de l'utilisateur Openbravo ERP. Le mot de passe doit tre rdig en texte brut. erp.id: L'identifiant client Openbravo ERP interne de la pointe externe de vente. erp.org: L'identificateur dOpenbravo ERP organisation interne de la pointe externe de vente. erp.pos: (le code) du point de vente externe dfini dans Openbravo ERP utilis pour identifier le systme Openbravo POS l'intrieur dOpenbravo ERP.

Il faut vrifier les variables aprs louverture de loutil Spoon. Dans le menu principal aller Edition> Edition du fichier kettle.properties ou simplement (Ctrl + Alt + P) et les variables et leurs valeurs doivent apparatre dans la bote de dialogue. C. Excution de la synchronisation La synchronisation principale Il faut ouvrir le fichier Job ALL SYNCHRONIZATION.kjb puis on clique sur le bouton Excuter pour effectuer la synchronisation, dans le menu, ou en appuyant sur F9. Le processus de synchronisation dmarre automatiquement.

MOUKRIM Chouaib

Septembre 2012

Page 97

Figure 36 : Excution du processus de synchronisation

La Synchronisation des commandes Il faut ouvrir ORDERS.ktr dans la transformation Spoon et puis on excute en cliquant sur le bouton Excuter dans le menu, ou en appuyant sur F9. Aprs la synchronisation des commandes, on traite ensuite les commandes importes dans Openbravo ERP. Il faut changer le rle de l'administrateur Openbravo ERP l'entit quon travaille avec. Enfin pour finaliser le processus dimportation, il faut naviguer dans Gstion des donnes principales> Importer des donnes>importer commande et excuter.

MOUKRIM Chouaib

Septembre 2012

Page 98

Figure 37 : importation de la commande

Remarque : pour plus de dtails sur les autres types dimportation voir le chapitre suivant.

MOUKRIM Chouaib

Septembre 2012

Page 99

La ralisation et la mise en place vient couronner les phases prcdentes, donnant un aspect tangible aux suggestions prsentes lors de l`tude de l`existant et une forme concrt a la conception. Afin de prsenter le prototype ralis, on utilise des prises dcran (Screen Shoots) pour figurer le travail fait et dillustrer les grandes et principales fonctionnalits du systme.

MOUKRIM Chouaib

Septembre 2012

Page 100

VII.
1.

REALISATION ET MISE EN PLACE


Environnement de programmation

Choix de lOpenBravo Divers sont les progiciels ERP sur le marche, tels indique dans ltat de lart, payants ou libre (Open Source). Le choix dpendra essentiellement des fonctionnalits de bases offertes par l`ERP. Dans notre cas, nous avons opte pour le produit : Openbravo 3 MP11. Description des serveurs La structure de dveloppement de notre systme tant en architecture web.

Figure 38 : Description des serveurs

Choix du SGBD Nous avons choisi de travailler avec PostgreSQL 8.4 comme systme de gestion de base de donnes. Grace a certaines fonctionnalits orientes objet qui`il incorpore. PostgreSQL est un systme de gestion de Base de Donnes Relationnelles Objet (SGBDRO), fonctionnant sur diverses plates formes matrielles sous diffrents systmes dexploitation.

MOUKRIM Chouaib

Septembre 2012

Page 101

PostgreSQL est largement considrer comme le systme de base de donnes non commercial le plus avanc. IL dispose de nombreuses fonctionnalits que lon ne rencontre que dans des grands produits commerciaux. Ce SGBD est un projet Open Source, ce qui signifie quon peut obtenir son code source, lutiliser et le modifier fin quil satisfasse nos besoins personnels, librement sans subir les restrictions des logiciels propritaires. Choix du domaine d`application & lIDE Le choix de ces outils est principalement motive par le fait que ces outils soient dvelopps en JAVA. Ils sont galement gratuits et possdent des environnements de dbogage. LIDE Eclipse Un langage de programmation ncessite forcement un environnement dans lequel on dsire dvelopper une application. Eclipse est un environnement de dveloppement libre (le terme Eclipse dsigne galement le projet correspondant, lanc par IBM) extensible, universel et polyvalent, permettant potentiellement de crer des projets de dveloppent mettant en uvre nimporte quel langage de programmation. Eclipse IDE est principalement crit en Java ( laide de la bibliothque graphique SWT, dIBM), et ce langage, grce des bibliothques spcifiques, est galement utilis pour crire des extensions. Choix du serveur d`application (Apache Tomcat) Le serveur d`application Apache Tomcat joue le role de conteneur JSP /Servlet qui permet a sa connexion avec un serveur web de dlivrer du contenu dynamique aux clients. La version du serveur utilise dans notre projet est Apache Tomcat 6.0.32. Tomcat est un serveur Web qui gre les servlets J2EE. Il est souvent employ en combinaison avec un serveur Web Apache : Apache s'occupe de toutes les pages web traditionnelles, et Tomcat uniquement des pages d'une application web Java. Issu du projet Jakarta, Tomcat implmente les spcifications des servlets et des JSP de Sun Microsystems. Il inclut des outils pour la configuration et la gestion, mais peut galement tre configur en ditant des fichiers de configuration XML. Comme Tomcat inclut un serveur HTTP interne, il est aussi considr comme un serveur HTTP, il est aussi une plateforme pour le dveloppement et le dploiement dapplications web et des web services. Le serveur dapplication Java Tomcat 6 est utilis dans lexcution officielle de rfrence

MOUKRIM Chouaib

Septembre 2012

Page 102

pour les technologies de Java Servlet et des pages JSP. Il est dvelopp dans un environnement Open Source et est sous le permis de logiciel dapache. Tomcat offre aussi beaucoup davantage soient: o Une parfaite conformit avec les spcifications de SUN pour les SERVLET et les JSP. o Une fiabilit certaine rsultat de plusieurs annes dvolutions et damliorations par les meilleurs dveloppeurs. o La gratuit : son cout reste loin du prix dachat des produits commerciaux concurrents. Tomcat a t crit en langage Java, il peut donc s'excuter via la JVM (machine virtuelle java) sur n'importe quel systme d'exploitation. Choix du modle de dveloppement de l`application Pour assurer le bon fonctionnement de notre systme et mettre en uvre les caractristiques cites prcdemment, nous avons dvelopp une architecture base sur le modle J2EE (une plate-forme ddie aux applications multi-tiers), pour le modle J2EE, nous avons applique le modle MVC.

Figure 39 : le modle MVC

2.

Concepts de base de la plateforme OpenBravo

Model Driven Dveloppement (MDD) OpenBravo ERP suit lapproche dirige par les modles (Driven Dveloppements Model (MDD)). En effet, il utilise un modle de technologie agnostique afin de dfinir les composants d'application, tels que les fentres et les processus. Bas sur ce modle d'application, la plateforme open bravo utilise un assistant de gnration de code java appel (Assistant au dveloppement dapplications WAD ) partir des mtadonnes

MOUKRIM Chouaib

Septembre 2012

Page 103

stockes dans le dictionnaire applicatif. Plus, concrtement le dictionnaire applicatif de la plateforme Open Bravo permet de dfinir et de personnaliser les diffrents composants dapplication il est reprsent au niveau de la base de donnes par les tables ayant le prfixe AD . Ces tables prsentent les diffrents types de mtadonnes utiliss tout au long de lapplication , nous prsentons ainsi le mta model de lERP open bravo ainsi que larchitecture de gnration de code automatique WAD.

Figure 40 : Gnration automatique de code WAD

MVC Fondation Framework Openbravo suit une approche modle-vue-contrleur pour le design des interfaces utilisateur et ce via se une gnration d'excution et de la technologie avance de Template (MVC-FF) afin de gnrer l'interface utilisateur (la page html) demande. MVC-FF est compos d'un ensemble doutils dvelopps par Openbravo tels que : XmlEngine, SQLC et HttpBaseSecureServlet. Il est ncessaire pour permettre le dveloppement de fichiers dcoupls pour les composants du modle (classes Vue, modle et de contrle de l'architecture MVC).Cet ensemble de services publics s'est avr trs efficace pour l'quipe de dveloppement Openbravo. XmlEngine : est un utilitaire utilis pour crer des documents XML / HTML partir la description du modle sous forme de fichiers XML / HTML ainsi que les fichiers de configuration XML tout en assurant la dynamit des donnes insre. Ces interfaces sont galement conformes aux donnes existantes dans le modle ce qui facilite la saisie des donnes et lexcution des diffrentes transactions. SQLC : (SQL compilateur) est un utilitaire utilis pour viter la tche rptitive de l'criture du code Java dinteraction avec la base de donnes. il gnre automatiquement le code de connexion la base partir des fichiers XML des instructions SQL

MOUKRIM Chouaib

Septembre 2012

Page 104

standards ce qui facilite normment la manipulation des donnes partir des interfaces utilisateur. http BaseServlet : http BaseServlet et HttpBaseSecureServlet sont les servlets partir de lesquelles sont drives toutes les servlets du systme qui dsignent leurs tours la partie contrleur de la composante MVC. Ces servlets assurent les fonctionnalits courantes telles que l'authentification le contrle et, l'autorisation de base de connectivit et de gestion des erreurs. Les servlets drivant de HttpBaseSecureServlet rendent le contrle standard de lecture de donnes encore plus scuris et cooprent avec des classes gnres par SQLC afin de fournir la sortie XmlEngine et gnrer les interfaces utilisateur.

3.

Importation des donnes

Limportation des donnes est une phase indispensable pour la mise en place dun ERP. En effet, nous appliquons une mthode avec lETL qui consiste extraire les donnes du systme existant et les transformer ensuite les charger dans lentrept de donnes relatif lERP. Les interfaces suivantes dcrivent le processus dimportation de donnes. Format dimportation Il permet de crer, dune premire part, le format dimportation comme suit : Ordres Produit, Budget, tiers, comptes et Taxe. Les diffrents formats permettent de dfinir les structures des fichiers Excel importer. Le systme permet de stocker les donnes dans des tables intermdiaires afin de les traiter par la suite. La figure suivante prsente les divers formats que nous avons crs afin de raliser limportation des donnes.

MOUKRIM Chouaib

Septembre 2012

Page 105

Figure 41 : Format dimportation des donnes

Afin de raliser limportation de donnes partir des fichiers Excel contenant les donnes importer dans les tables temporaires. Il est ncessaire de traiter chaque fichier Excel associ chaque format dimportation. Importation des articles Le paramtrage des articles consiste configurer les articles dj imports partir des fichiers Excel ou les POS. La figure suivante prsente un exemple dimportation de produit.

MOUKRIM Chouaib

Septembre 2012

Page 106

Figure 42 : Importation dun article

Importation des commandes Limportation des commandes dsigne la configuration des commandes dj imports par le POS afin de les traiter par la suite lors de lexcution du processus commercial. Lexemple de la figure traite une commande dj importe et qui est prte tre traite.

MOUKRIM Chouaib

Septembre 2012

Page 107

Figure 43 : Importation de commande

4.

Paramtrage

Paramtrage des taxes Le paramtrage des taxes est une tape indispensable pour le paramtrage des produits .En effet, les taxes peuvent tre applicables selon la catgorie de produit. Nous avons dfini dans notre cas la catgorie de taxe TVA comme taxe standard avec trois types de pourcentage : 6%, 12%, 18 %.

Figure 44 : Paramtrage de taxes

MOUKRIM Chouaib

Septembre 2012

Page 108

Paramtrage des catgories darticles Le paramtrage des biens ou des articles joue un rle trs important lors de la manipulation du processus commercial de lERP Open bravo. Il est possible ainsi de classer les articles par catgorie de produit. Linterface suivante prsente le paramtrage du produit Couscous . On peut constater le paramtrage de la catgorie de taxe et la catgorie de produit.

Figure 45 : Paramtrage de catgories produites

Le paramtrage des produits sous Open bravo requiert le paramtrage des catgories darticle ainsi que le paramtrage des catgories de taxe appliques pour chaque produit. Paramtrage des tarifs Le paramtrage des tarifs consiste au paramtrage ainsi que la cration de la liste de prix associs pour chaque produit.

MOUKRIM Chouaib

Septembre 2012

Page 109

Figure 46 : Paramtrage des tarifs

Paramtrage des tiers La gestion des tiers dsigne le paramtrage des clients et des fournisseurs, des catalogues de produits, la dfinition des diffrents types de taxes requises et enfin la gnration des listes de prix ou encore la gestion des tarifs. La phase de configuration des produits reste indispensable lexcution de plusieurs types de transactions dachat et de vente. Configuration des groupes tiers

Les groupes tiers dsignent les catgories de partenaires qui entrent en jeu lors dune transaction de type commerciale, on peut distinguer les clients et les fournisseurs.

MOUKRIM Chouaib

Septembre 2012

Page 110

Figure 47 : Configuration des tiers

5.

Mise en place de lERP

La phase de mise en place dsigne la phase dintgration du systme de lERP au sein de lentreprise. En effet, cette tape requiert la manipulation dun grand nombre de donnes qui prsentent les donnes du systme dinformation dentreprise ainsi que la configuration et le paramtrage de diffrents types de fonctionnalits mises en jeu. Le processus commercial traite la gestion des donnes principales requises la manipulation de diffrentes pices commerciales telles que les commandes les livraisons, les devis, les factures Ltape prambule de la mise en place de lERP est la cration initiale de la socit ELECTRO PROTECT. En effet, elle est dfinit par : le nom de la socit, le devise et mot de passe ainsi que dautre information plus des tailles tel que ladresse, lautre mail

MOUKRIM Chouaib

Septembre 2012

Page 111

Figure 48 : cration initial de la socit

Nous allons dans ce qui suit prsenter le processus de paramtrage ainsi que lexcution des commandes tout en respectant les diffrentes fonctionnalits prsentes lors de la phase de conception. Module achat Ce module traite les tapes principales de gestion commerciale bien spcifies. En effet, la gestion des achats englobe la gestion des diffrentes transactions dachat y compris la gestion des devis fournisseur, des bons de rception de la part du fournisseur ainsi que les factures lies. La dfinition des commandes requiert le pr paramtrage des listes de tiers et de produit et requiert aussi la cration et la configuration de la liste des prix encore appele tarif. Voici un exemple de commande dachat.

MOUKRIM Chouaib

Septembre 2012

Page 112

Figure 49 : Commande d'achat

Aprs avoir trait la commande dachat, il est ncessaire lors dun processus dachat dditer les bon de rception de marchandises. Ces derniers prsentent les documents traiter lors dune rception darticles de la part du fournisseur et aprs terminaison dune commande dachat .cette phase prsente la phase intermdiaire entre le traitement des commandes dachat et aussi le traitement des factures dachats.

MOUKRIM Chouaib

Septembre 2012

Page 113

Figure 50 : rception marchandise

Le systme dOpenbravo traite plusieurs types de factures. On peut en citer par exemple : les factures de retour client, les factures de retour fournisseur, les factures de vente et ceux dachats. Les factures sont gnralement lies dune part au processus financier puisquils traitent le payement lors dune livraison ou dune rception darticles.la figure suivante prsente le type de facture traiter lors dune rception darticles .en effet elle peut tre gnre automatiquement partir des bons de rceptions dans le cas dune transaction dachat.

MOUKRIM Chouaib

Septembre 2012

Page 114

Figure 51 : facture d'achat

Module vente La gestion des ventes englobe la gestion des diffrentes transactions de vente y compris la gestion des devis clients, les bons de livraison, les livraisons ainsi que les factures lies. La dfinition des commandes requiert le pr paramtrage des listes de tiers et de produit et requiert aussi la cration et la configuration de la liste des prix encore appele tarif. La configuration des commandes requiert plusieurs types de donnes lies tels que la configuration des taxes, la configuration des modes de payement. Voici un exemple de commande de vente :

MOUKRIM Chouaib

Septembre 2012

Page 115

Figure 52 : commande vente

La gestion dexpdition dsigne la phase de livraison au moment de vente. Elle poursuive la cration et le traitement dune commande de vente et elle est lie directement la facturation.la figure suivante prsente lexpdition lie la commande prcdente.

MOUKRIM Chouaib

Septembre 2012

Page 116

Figure 53 : Gestion dexpdition commande de vente

La gestion de facturation dans le cas dune transaction de vente dsigne la gnration des factures lies la livraison. La gestion de facturation fait partie de la gestion financire aprs excution de commandes de vente. La gnration des factures se fait automatiquement aprs livraison et peut tre gnre partir des commandes de vente. Dans ce cas on respecte plusieurs normes lors du payement de la facture .en effet le traitement dune facture prend en compte plusieurs paramtres tels que : la liste de tarif slectionne, le mode de payement, le pourcentage .remise lors du payement .etc. La figure suivante traite un exemple de facture avec la slection des tiers, des produits, des diffrents paramtres lis au payement.

MOUKRIM Chouaib

Septembre 2012

Page 117

Figure 54 : Facture de vente

Module comptabilit

MOUKRIM Chouaib

Septembre 2012

Page 118

Figure 55 : comptabilit

6.

Scurit informatique

La fiabilit de tout systme dpend d`une grande part du mcanisme de scurit d`accs aux donnes mise en place. La Scurit du nouveau systme : Openbravo est un ERP qui utilise des moyens technologiques avancs assurant une circulation scurise de linformation. La scurit en Openbravo est bas sur des notions et des principes trs importants, la sparation, le cryptage, la codification, le paramtrage. Touts ces moyens utiliss engendrent un systme scuris, fiable, et oprationnel. La scurit existe dans Openbravo, et elle est trs performante et utile, donc il suffit de lutiliser a notre avantage, notamment dans la gestion des profiles et des droits daccs.

MOUKRIM Chouaib

Septembre 2012

Page 119

Conclusion
Lobjectif de ce projet est de mettre en place lERP Open Source Openbravo en effectuant les paramtrages et les configurations ncessaires des modules achat, vente, finance et stock au bon fonctionnement du nouveau systme dinformation dELECTROPROTECT. Au cours de ce travail, on a ralis dans un premier temps ltude comparative des ERP Open sources qui existent sur le march. La vraie phase de slection sest bas principalement sur cinq critres de slection tels que : la dynamit pour dterminer la valeur ajoute de la solution dans le futur, la technologie pour dtecter la maturit de la solution en termes de technologie, le primtre pour valuer la solution en termes de fonctionnalits, la notorit actuelle afin de mesurer la popularit de lERP et enfin le critre de souplesse. Au cours de ces itrations, nous avons entam par la suite ltude du systme existant afin de dtecter les anomalies qui y existent. En fait, la socit ELECTROPROTECT utilise un systme actuel qui manque de fiabilit et de performance de ce faite on a dfini nos besoins par rapport au systme actuel. La dtection des apports du nouveau systme de lERP open bravo reste indispensable la dfinition de nos principaux cas dutilisation. Ensuite, nous avons abord la phase de conception afin de dtailler la dfinition de nos besoins en utilisant le standard de conception universel UML avec les diffrents diagrammes ncessaires. Dautre part, nous avons dtaill lors de cette phase lexcution des processus mtier du systme dOpenbravo ncessaires la gestion du systme dinformation dentreprise. Nous avons dfini aussi les structures de donnes ncessaires la mise en place de lERP au sein de lentreprise. De point de vue ralisation, jai bien russi mettre en place les quatre modules de lERP de manire gnrique que possible permettant ainsi de capitaliser sur ces modules afin de pouvoir les commercialiser dautre client. Cette tape requiert une bonne comprhension de la cartographie des processus dOpenbravo et une migration de donnes adquate en utilisant les techniques dimportation de donnes ETL. Notre travail sintresse plutt la gestion du processus commercial tout en assurant la gnration automatique des pices commerciales mises en jeu.

MOUKRIM Chouaib

Septembre 2012

Page 120

Bibliographie
[1] P. ROQUES. UML 2. Modliser une application web, 4me dition,2006, Eyrolles.. [2] Mickal Mannechez. La mise en place d'un ERP [3] FLEUR-A. blain. Prsentation gnrale des ERP et leur architecture modulaire [4] Raphal Valyi. Smile ERP open source

Webographie
[Site dOpenbravo] [Site Source] [Wiki dOpenbravo] [Site Pentaho] [Site MDA] [Site Source forge] [Wiki POS] [JavaDoc dOpenbravo] http://www.openbravo.com/ http://sourceforge.net/projects/openbravo/ http://wiki.openbravo.com/wiki/ERP_2.50 http://infocenter.pentaho.com/help http://www.omg.org/mda/ www. sourceforge.net/projets/ Openbravo/ http://wiki.openbravo.com/wiki/OpenbravoPOS_FAQ/fr http://code.openbravo.com/docs/erp/devel/3.0MP11/

MOUKRIM Chouaib

Septembre 2012

Page 121

Annexes ANNEXE 1 OPENBRAVO POS


I. Prsentation
Openbravo POS s'intgre sur la plupart des quipements existants, offre un large panel de modules et de paramtrages, et couvre ainsi l'ensemble des besoins des entreprises et de leurs points de ventes. Conu spcifiquement pour les crans tactiles, Identification des utilisateurs par code, carte ou badge, Gestion des droits daccs par rles d'utilisateurs, dition, rdition et remboursement de tickets, Mise en attente du ticket et dition depuis un autre TPV, Gestion des bons d'achat, clients en compte et de la fidlit, Ouverture et clture de caisse conviviale et en "aveugle",

Openbravo POS s'adapte aussi bien aux boutiques mono-caisse qu'aux chanes de magasin multi-caisses avec son Backoffice Openbravo ERP, la solution offre des capacits de gestion multi-sites puissantes et volutives: Gestion des achats, des commandes et des bons de livraisons, Gestion des stocks et des approvisionnements, Gestion hirarchique par organisations, socits et point de ventes, Gestion financire et comptable, Outils statistiques avances, Accessible de n'importe o grce sa technologie Full Web. Electro Protect ajoute la possibilit de dvelopper et d'intgrer des fonctions et modules, et ainsi couvrir l'intgralit du processus de vente et d'encaissement spcifique chaque entreprise.

MOUKRIM Chouaib

Septembre 2012

Page 122

II.

Dtail des principales fonctionnalits


a) Gestion des donnes

Un module central permet de grer lensemble des donnes de lapplication: Utilisateurs, magasins, produits, catgories, sous-catgories, entrepts, taxes, aire de vente, agencement,

b)

Ventes, remboursement et gestion de la caisse


dition tickets de caisse, factures A4 et facturettes Mise en attente du ticket et rcupration partir d'un autre terminal Multi- paiement Gestion des clients en compte Compatible avec de grands nombres de priphriques Gestion efficace des remboursements Interface trs simple et conviviale

c)

Gestion de la logistique

Gestion multi-entrepts Gestion des catgories, familles et sous-familles Conserver l'inventaire constamment jour Connatre l'tat de stock en temps rel Tracer les mouvements de produits en relation avec les tickets de caisses

III.

Schma Entit Relation d'Openbravo POS

MOUKRIM Chouaib

Septembre 2012

Page 123

Figure 56 : Schma Entit Relation d'Openbravo POS 2.30.2

MOUKRIM Chouaib

Septembre 2012

Page 124

ANNEXE 2 OPENBRAVO ERP


On se focalise dans cette annexe sur les technologies et Framework utiliss dans le dveloppement du nouveau systme, et ses principales caractristiques.

I.

Framework de lERP Openbravo

Openbravo ERP est une application dveloppe grce un cadre de dveloppement intgr inclus dans la distribution Openbravo ERP. Ce Framework intgr prend en charge un large ventail de proccupations dans toutes les zones concernes au cours du processus de dveloppement. Les plus pertinents de niveau faible haut niveau: Intgration avec Eclipse IDE Intgration avec SCM (Mercurial) Processus de conception automatis Processus de mise jour automatis Processus de dploiement automatis Intgr dans l'infrastructure pour les besoins de dveloppement de plusieurs lments communs : o o o o o o o o MVC framework (xmlEngine, httpBaseServlet, sqlc) Interface dutilisateurs Ajax-JavaScript (intgration avec Dojo) Une couche daccs aux donnes (bas sur la technologie Hibernate) Serveur web conteneur servlet (intgration avec Apache-Tomcat et support autre J2EE implmentations) Reporting (intgration avec le moteur Jasper-reports) Services web (intgration avec Apache-Axis) Emailing (intgration avec Sun mail) Lordonnancement des processus (intgration avec Quartz)

Le Framework de dveloppement MDD. Le support dune interface utilisateur multilingues. Incorpor avec une modle de scurit. Incorpor avec une model dentreprise. Support La multidevises. Support un schma de plusieurs plans comptables.

MOUKRIM Chouaib

Septembre 2012

Page 125

Figure 57 : les interactions entres les couches dOpenbravo

Justement, il faut reconnatre que mme si elle est sans doute la meilleure plateforme Open Source actuellement disponible, la plateforme actuelle d'OpenBravo a quelques limites. L encore, OpenBravo offre une vision claire et rassurante avec mme un prototype sur SVN de sa nouvelle plateforme applicative nomme "Green".

II.

Java - Lightweight J2EE :

Openbravo utilise Java come son back-end langage de programmation. Pourquoi Java ? Il existe plusieurs raisons pour choisi Java come un langage server side : Sa nature dOpen Source. Un large soutien l'entreprise au niveau du dveloppement. Une architecture mre pour les applications web

Openbravo suit Java 2 Edition Entreprise architecture (J2EE) sans faire usage du conteneur EJB. Au lieu de cela (EJB) Openbravo utilise linfrastructure lightweight (lger) pour implmenter laccs aux donnes et la logique des affaires (Business Logic). En Openbravo (version 3), Il a livr une nouvelle Couche d'Accs de Donnes (DAL : Data Access Layer) bases sur Hibernate qui fournit un puissant mais toujours lger, persistant mcanisme. La figure suivant montre l'architecture envisage pour la couche d'accs aux donnes DAL dans Openbravo ERP.

MOUKRIM Chouaib

Septembre 2012

Page 126

Figure 58 : Data Access Layer dOpenbravo ERP 3MP11

III.

Support de multiple base de donnes :

Openbravo est prpos pour viter le verrouillage de vendeur dans nimporte quelle technologie incluant la base de donnes. Openbravo marche sur PostgreSQL (8.4) ou Oracle SE (10g-11g). Dans les prochaines versions Openbravo aspire tre indpendant de la base de donnes. La nouvelle couche daccs de donnes (DAL) base sur Hibernate est la premire tape dans cette transition.

IV.

La modularit dOpenbravo ERP

La notion de la modularit est une nouvelle capacit introduite dans Openbravo (spcialement les versions rcents), qui permet de dfinir les packages des fonctionnalits additionnelles, les extensions de configurations indpendamment du cur du produit. La modularit change la faon dont il peut tre adapt aux besoins des utilisateurs. Au lieu la personnalisation du code afin de correspondre a ces besoins, il est possible d'tendre ces fonctionnalits l'extrieur. Cette approche a plusieurs avantages, les plus importantes sont :

Permettre a un pur dveloppement distribu : une nouvelle fonctionnalit, qui peut


tre dvelopp grce a des modules dune manire bien distribu. Les dveloppeurs dun module peuvent travailler sparment des autres, et le cycle de vie de ce module

MOUKRIM Chouaib

Septembre 2012

Page 127

est indpendant des autre modules.

Forte amlioration de la maintenance du code : Le dveloppent par modules veux


dire packaging dune faon indpendante. Avec une dfinition correcte des dpendances entre les modules et les processus de maintien de l'API stable le processus de la mise jour dune instance peut tre effectu en un simple click de la part de lutilisateur.

Encourage le partage et la rutilisation des nouvelles fonctionnalits : le


dveloppement modulaire facilite et simplifier le partage cette nouvelle fonctionnalit avec dautres personnes. Pour partager leurs modules, ils ont juste besoins de publier leur package (le forge Openbravo (Central Repository)).

V.

Caractristiques :

Openbravo ERP possde de nombreuses fonctions habiles qui le dmarquent des autres outils de gestion et qui en font le logiciel parfait des entreprises. Voici une prsentation de quelques uns de ces aspects

Alertes : Des avertissements peuvent tre programmes ils saffichent clairement lors de la
connexion de lutilisateur au logiciel, pour le prvenir quun certain statut est atteint (diminution de stock, les impays dun client, etc.).

Articles associs : Les utilisateurs peuvent accder toutes les donnes du logiciel
associes nimportes quelles autres de ce dernier, condition quelles soient autorises. Trouver des factures correspondantes, des contacts ou tous autres bons dexpdition est trs simple. Ils ont toujours la possibilit dun aperu 360 de toutes les donnes du programme.

Rapport dimensionnel : Afin dobtenir des donnes cruciales incorpores de lentreprise,


les utilisateurs peuvent crer des rapports sous formats personnaliss grce plusieurs champs et catgories. De nouveaux rapports peuvent tre ajouts lERP en peine quelques heures. Un accs facile aux donnes est un lment crucial laccomplissement de lapplication dun ERP, et Openbravo est parfaitement adapt.

Concordance et Partage : Exporter un fichier unique ou une srie de fichiers directement


du logiciel vers Excel, CSV, ou PDF. Les fichiers exports peuvent aussi tre joints nimporte quel fichier du logiciel pour un retrait et une gestion facile.

Mail : En un clic, directement depuis lERP, ouvrez une page mail pour envoyer des
donnes ou des fichiers joints vos clients ou fournisseurs. Les adresses mails peuvent tre

MOUKRIM Chouaib

Septembre 2012

Page 128

paramtres pour chaque utilisateur du logiciel.

Navigation par Clavier : En plus dtre une application sur internet, Openbravo a t
conu de manire tre oprationnel depuis le clavier sans utiliser la souris. Les utilisateurs avancs peuvent gagner du temps et effectuer leurs tches quotidiennes rapidement.

Modulaire : Crer facilement des modules tiers ou dextensions ; ou parcourir le rpertoire


et opter pour linstallation de la fonctionnalit partage cre par dautres utilisateurs. La fonctionnalit de tiers partage comporte des rapports, des mots de liaison, des insertions de produits et des contenus types supplmentaires tels les taux dimposition et les caractristiques des produits. Cette capacit donne accs un plus grand nombre de fonctionnalits tout en diminuant de beaucoup les frais dapplication de lERP.

Paramtrage simple : Chaque organisation est unique et la conception de produit est


facile dvelopper et paramtrer afin de correspondre parfaitement vos besoins. Grce au dveloppement dune maquette avant lancement, vous pouvez personnaliser les fonctionnalits existantes et les rglementations professionnelles, et ajouter de nouvelles fonctionnalits sans aucune programmation. Openbravo ERP peut contribuer vous distinguer de la concurrence.

Rles : Openbravo est accessible des utilisateurs de profils varis dont les fonctions sont
personnalises leurs tches de travail, et qui protgent toutes les donnes quils voient et modifient. Au travers des "rles", vous pouvez assigner les pages accessibles depuis le menu aux utilisateurs de lentreprise, et distinguer celles en mode Modification ou Lecture seule. Langue et autres configurations du systme peuvent aussi tre paramtres pour chaque utilisateur. Le franais et langlais sont en standard, mais aussi bien dautres langues.

Extensibilit : Openbravo peut tre distribu sur un seul serveur ou sur un groupe,
desservant des milliers dutilisateurs. Les serveurs peuvent tre situs sur place, dans le centre des donnes, ou dans le cloud par exemple sur Amazon EC2.

Multi-X: Multi-langues, multi-devises, schmas de multi-comptabilits (dont comptabilit


franaise, US et Suisse), multi-entreprises, etc. Openbravo ERP est prt desservir des environnements multinationaux, multi-sites, multi-clients.

Audit : Comme organisation de solutions logicielles, toutes les donnes du programme


peuvent tre vrifies et retraces jusqu lauteur de sa cration, ou jusquau dernier utilisateur les ayant modifi.

VI.

Web service REST pour la synchronisation :

MOUKRIM Chouaib

Septembre 2012

Page 129

Figure 59 : web service REST du module synchronisation POS

MOUKRIM Chouaib

Septembre 2012

Page 130

You might also like