You are on page 1of 96

MMOIRE

Prsent la Facult des sciences Semlalia de Marrakech pour


obtenir: Le Diplme du MASTER spcialis ISI
Ingnierie des Systmes dInformation

Conception et ralisation d'une application de gestion intgre au


sein de la socit Eone Group base sur OpenERP.

Par
Ait mlouk Addi

Soutenu le 26 juin 2013 devant la commission dexamen:

ELFAZZIKI Abdelaziz : Coordinateur du Master (FSSM)


SADGAL Mohammed : Encadrant Pdagogique (FSSM)
AGOUTI Tarik

: Professeur (FSSM)

EL BOUANANI Salim : Encadrant entreprise (MIT)


Promotion 2012 2013

Ddicace

Je ddi ce Modest travaille


A ma mre, ma raison dtre, ma raison de vivre, la lanterne qui claire mon chemin et
millumine de douceur et damour.
A mon pre, en signe damour, de reconnaissance et de gratitude pour tous les soutiens
et les sacrifices dont il a fait preuve mon gard.
A mes chres frres et surs
Aucun mot ne pourra dcrire vos dvouements et vos sacrifices.
A tous mes amis, En tmoignage de lamiti sincre qui nous a lies et des bons
moments passs ensemble. je vous ddie ce travail en vous
Souhaitant un avenir radieux et plein de bonnes promesses.
A tous les gens qui ont cru en moi et qui me donnent lenvie daller en avant,
Je vous remercie tous, votre soutien et vos encouragements me donnent
la force de continuer.

Remerciements
Au terme de ce travail, je tiens exprimer ma profonde gratitude et mes sincres
remerciements M. Abdelaziz. EL FAZZIKI, qui ma donn la permission de passer
ce stage au sein de la socit MIT (MULTI INFORMATION TECHNOLOGY),
Je remercie particulirement M. SADGAL Mohammed pour son encadrement, son
soutien, ainsi que pour ses conseils instructifs durant toute la priode de ce travail.
Mes plus vifs remerciements sadressent aussi tout le cadre professoral et
administratif de la formation Master spcialis Ingnierie des systmes dinformation,
pour leur patience et savoir qui nous a illumins durant ces deux annes de formation.
Nous tenons aussi remercier lentreprise MIT pour laccueil qui nous a t rserv et
particulirement M. EL BOUANANI Salim, directeur gnral de lentreprise et
tuteur de ce stage, pour la mission qui nous a t confie.
Je remercie aussi vivement M. Mohamed Cherkaoui pour son aide son soutien, ainsi
que pour ses conseils pour russir ce projet.
En fin, Je tiens aussi remercier tous les membres du jury qui mont fait lhonneur
daccepter de juger mon travail.
Pour tous ceux que jai oublis, je vous dis Merci.

Rsum
Pour amliorer sa performance, lentreprise daujourdhui vise
automatiser la gestion interne de ses activits en faisant appel des
technologies informatiques. Dailleurs cest le cas de la socit Eone group qui
souhaite optimiser la totalit de sa gestion autour dun mme systme
dinformation laide des progiciels de gestion intgre connu sous lacronyme
ERP. Pdagogique
Notre projet consiste identifier et analyser les besoins lis la socit qui
sarticulent autour des modules fonctionnels savoir : la gestion des ventes, la
gestion comptable, la gestion des achats et entrept, puis la gestion de
maintenance.
Pour y arriver, il a fallu dabord une tude comparative entre les diffrents types
dERP open source existant dans le march qui a abouti au choix dOpenERP.
A l'aide de ce systme unifi, les utilisateurs de diffrents mtiers travaillent
dans un environnement applicatif identique qui repose sur une base de donnes
unique. Ce modle permet d'assurer l'intgrit des donnes, la non-redondance
de l'information, ainsi que la rduction des temps de traitement.
La ralisation de ce

projet, quant elle, est compose de deux parties

essentielles : le paramtrage et le dveloppement spcifique des modules


fonctionnels non pris en charge par OpenERP savoir la gestion de
maintenance.
Ensuite pour assurer la flexibilit et la facilit dutilisation nous avons dvelopp
un client mobile qui permet daccs aux fonctionnalits du notre application via
des tablettes et des smartphones. Ltape finale consiste faire des simulations
et tests pour sassurer que le travail a bien t fait, et corriger les bugs qui
peuvent arriver, si jamais il y en a.

Abstract
To improve the business performance, today's company aim to automate
the internal management of its activities, through computing technologies.
In fact, this is the case of Eone Group company that wishes to optimize its entire
management around the same information system, using an Enterprise
Resource Planning systems known by the acronym ERP.
Our project establishing an integrated management solution, has been to
identify and analyze the needs of the company, that revolve around its functional
modules including : management accounting, sales, purchasing, warehouse
management, human resources management and maintenance management.
To get there, the first step to take is a comparative study between the different
types of existing open source ERP in the market , which ended with a choice of
OpenERP the most appropriate solution for the company Eone Group.
Thanks to the unified system, users of different professions are working in an
identical application environment,based on a single database. This model
ensures data integrity, non-redundant information and reducing processing
time.
The implementation phase of the project has two essential parts: the setup part
and the specific development of functional modules,which were not considered
by OpenERP such as the maintenance management.
Finally, to provide flexibility of the system we have developed a mobile
application, that uses the database of OpenERP in reading and writing mode,
then run simulations and tests to ensure that the work has been done, and fix
bugs that can occurs, if ever there was.

Liste des abrviations


Abrviation
PGI
ERP
PME
CRM
UML
RUP
XP
2TUP
XML
BSD
SGBDRO
SQL
MVC
ORM
MIT

Dsignation
Progiciel de Gestion Intgr
Enterprise Resource Planning
Petites et Moyennes Entreprises
Client Relationship Management
Unified Modeling Language
Rational Unified Process
eXtreme Programming
Two Track Unified Process
eXtended Markup Language
Berkeley Software Distribution
Systme de Gestion de Base de Donnes Relationnelle et Objet
Structured Query Language
Modle Vue Contrleur
Object Relational Mapping
Multi Information Technology

Liste des Figures


Figure 1 : Plan organisationnel de MIT .........................................................................................................15
Figure 2 : Services MIT ...................................................................................................................................16
Figure 3 : Les partenaires...............................................................................................................................17
Figure 5 : Diagramme de gant ..........................................................................................................................21
Figure 6: Cycle de dveloppement en Y ..........................................................................................................32
Figure 7 : Le systme fonctionnel. ...................................................................................................................34
Figure 8:Architecture Client-Serveur dopen ERP...........................................................................................39
Figure 9:Architecture modulaire dopen ERP ..................................................................................................40
Figure 10:Structure dun module OpenERP Python ........................................................................................40
Figure 11: Modle vue contrleur ....................................................................................................................41
Figure 12: XML RPC services .........................................................................................................................43
Figure 13: Le flux de documents ......................................................................................................................62
Figure 14: Le processus interne........................................................................................................................63
Figure 15: Cycle de dveloppement de test ......................................................................................................66
Figure 16: Connexion au systme ....................................................................................................................67
Figure 17: Accueil OpenERP - client web .......................................................................................................67
Figure 18: Liste des utilisateurs........................................................................................................................68
Figure 19: Formulaire des droites daccs........................................................................................................69
Figure 20: Fonctionnalits des ventes - Liste des clients .................................................................................69
Figure 21: Nouveau commende en tat devis...................................................................................................70
Figure 22: Envoi et conversion de devis en commande de vente .....................................................................70
Figure 23: Bon de commande dachat confirm en attente de rception .........................................................71
Figure 24: Gestion dentrept et ces fonctionnalits ........................................................................................72
Figure 25: Liste des bons de livraison ..............................................................................................................72
Figure 26: Liste des bons de rception .............................................................................................................72
Figure 27: Exemple de la facture client ou fournisseur ....................................................................................73
Figure 28: Service technique, cration dun ticket ...........................................................................................74
Figure 29: Service technique, affectation dintervention au ticket ...................................................................74
Figure 30: Suivi dactivit des ventes ..............................................................................................................75
6

Figure 31: Suivi dactivit des achats...............................................................................................................75


Figure 32: Suivi dactivit des stocks...............................................................................................................76
Figure 33: Service de messagerie .....................................................................................................................76
Figure 34: Connexion mobile
Figure 35: Accueil mobile
Figure 36: Liste utilisateurs .......77
Figure 37: Formulaire dajout
Figure 38: Mobile : modification Figure 39: Mobile liste partenaire .....77
Figure 40: Bitvise SSH Client ..........................................................................................................................78
Figure 41: les tapes dinstallation dopenerp sous Windows .........................................................................83
Figure 42: les tapes dinstallation des outils postgresql sous Windows .........................................................84
Figure 43: contrle des services openerp .........................................................................................................85
Figure 44: Modle commande ..........................................................................................................................89
Figure 45: Modle facture ................................................................................................................................90
Figure 46: Exemple de bon de commande de vente .........................................................................................91
Figure 47: Exemple dune facture de vente ......................................................................................................92
Figure 48: Exemple de bon de commande dachat ..........................................................................................93
Figure 49: Exemple dune facture dachat .......................................................................................................94
Figure 50: Workflow gestion des achats ..........................................................................................................95
Figure 51: Workflow gestion des ventes ..........................................................................................................96

Les diagrammes
Diagramme 1: Diagramme de contexte. ...........................................................................................................35
Diagramme 2: Diagramme de cas dutilisation dadministration du systme. .................................................43
Diagramme 3: Diagramme de cas dutilisation global de la gestion des ventes. ............................................44
Diagramme 4: Diagramme de cas dutilisation dtaill de la gestion des ventes. ...........................................46
Diagramme 5: Diagramme de cas dutilisation global de la gestion des achats et stocks. ..............................47
Diagramme 6: Diagramme de cas dutilisation dtaill de la gestion des achats et stocks. ............................48
Diagramme 7: Processus mtier des ventes......................................................................................................49
Diagramme 8: Processus mtier des achats. .....................................................................................................50
Diagramme 9:Processus mtier de la gestion comptable .................................................................................50
Diagramme 10: Diagramme de squence des ventes. ......................................................................................51
Diagramme 11: Diagramme de squence des achats. ......................................................................................52
Diagramme 13: Diagramme des classes dtaill ..............................................................................................54
Diagramme 14: Diagramme des composantes .................................................................................................55
Diagramme 15: Diagramme de dploiement ....................................................................................................56
Diagramme 16: Diagramme darchitecture dapplication ................................................................................57

Les tableaux
Tableau 1: Liste des fonctionnalits requises ...................................................................................................20
Tableau 2: Comparaison des mthodes de dveloppement ..............................................................................31
Tableau 3 Liste des fonctionnalits requises ....................................................................................................34
Tableau 4: Evaluation des capacits fonctionnelles des ERPs choisis .............................................................25
Tableau 5: Evaluation des facteurs de fiabilit et de facilite de lutilisation ....................................................25
Tableau 6: Evaluation du facteur de rendement des ERPs choisis ...................................................................26
Tableau 7: Evaluation de facteur de maintenabilit des ERPs choisis .............................................................27
Tableau 8: Evaluation de facteur de portabilit des ERPs choisis ...................................................................27
Tableau 9: Evaluation par type de lentreprise des ERPs choisis.....................................................................28

Table des matires


Ddicace ............................................................................................................................................... 2
Remerciements ..................................................................................................................................... 3
Rsum ................................................................................................................................................. 4
Abstract ................................................................................................................................................ 5
Introduction Gnrale ......................................................................................................................... 11
Chapitre 1 : Contexte gnral du projet ............................................................................................. 12
1.

2.

Prsentation de lorganisme daccueil .....................................................................................13


1.1.

Prsentation de MIT .........................................................................................................13

1.2.

A propos de MIT ..............................................................................................................14

1.3.

Fiche signaltique MIT ....................................................................................................14

1.4.

Domaines dactivits ........................................................................................................15

1.5.

Prestations et services ......................................................................................................16

Cadre gnral du projet ...........................................................................................................18


2.1

Prsentation gnrale de projet ........................................................................................18

2.2

Problmatique ..................................................................................................................18

2.3

Objectif du projet .............................................................................................................18

2.4

Elaboration de Cahier des charges fonctionnel ................................................................19

2.5

Planification du projet ......................................................................................................20

Chapitre 2 : Etude comparative des progiciels de gestion intgre (PGI) ......................................... 22


1.

Etude comparative des progiciels de gestion intgre (PGI) ..................................................23


1.1.

Les progiciels de gestion intgre ....................................................................................23

1.2.

Pourquoi un PGI Open Source ? ......................................................................................23

1.3.

Les critres dvaluation ..................................................................................................23

1.3.1

Profil par capacit fonctionnelle ...............................................................................24

1.3.2

Profil par facteur de fiabilit et facilit dutilisation ................................................25

1.3.3

Profil par facteur de rendement ................................................................................26

1.3.4

Profil par facteur de maintenabilit ..........................................................................26

1.3.5

Profil par facteur de portabilit .................................................................................27

1.3.6

Profil par type de lentreprise ...................................................................................27

Chapitre 3: Etude fonctionnelle et technique ..................................................................................... 29


1.

Analyse et mthodologie de travail .........................................................................................30


1.1

Analyse du projet .............................................................................................................30

1.2

Choix de la mthodologie de conception .........................................................................30

1.3

Le processus 2TUP ..........................................................................................................31

1.4
2.

UML (Unified Modeling Language) ...............................................................................32

Etude fonctionnelle .................................................................................................................33


2.1

Etude de lexistant............................................................................................................33

2.2

Le systme fonctionnel ....................................................................................................33

2.3

Diagramme de contexte ...................................................................................................34

3.

Etude technique .......................................................................................................................37


3.1

Prsentation gnrale de lopen source ............................................................................37

3.2

OpenERP..........................................................................................................................37

3.3

Architecture technique de lOpenERP .............................................................................38

3.4

Architecture modulaire dOpenERP ................................................................................39

3.5

Modle vue contrleur .....................................................................................................40

3.6

Gestion lectronique des processus mtier (workflow) ...................................................41

3.7

Les services Web .............................................................................................................42

4.

Conception dtaill du projet .................................................................................................43


4.1

Cas dutilisation ...............................................................................................................43

4.1.1 Administration du systme ...........................................................................................43


4.1.2 Diagramme de cas utilisation global de La gestion des ventes ....................................44
4.1.3 Diagramme de cas utilisation dtaille de La gestion des ventes ................................45
4.1.4 Diagramme de cas utilisation global de La gestion des achats et dentrept ...............47
4.1.5 Diagramme de cas utilisation dtaill de La gestion des achats et dentrept ............47
4.2

Les processus mtiers ......................................................................................................49

4.2.1 Le processus mtier des ventes ....................................................................................49


4.2.2 Le processus mtier des achats .....................................................................................49
4.2.3 Processus mtier de la gestion comptable ....................................................................50
4.3

Diagramme de squence ..................................................................................................51

4.3.1 Diagramme de squence des ventes .............................................................................51


4.3.2 Diagramme de squence des achats ............................................................................52
4.4

Diagramme de class .........................................................................................................53

4.5

Diagramme de composants ..............................................................................................55

4.6

Diagramme de dploiement .............................................................................................56

4.7

Diagramme darchitecture dapplication .........................................................................57

Chapitre 4 : Les outils et technologies utilis .................................................................................... 58


1.1.

Ubuntu .................................................................................................................................59

1.2.

Environnement de dveloppement Eclipse..........................................................................59

1.3.

PostgreSQL ..........................................................................................................................59

1.4.

Python ..................................................................................................................................60

1.5.

XML (eXtensible Markup Language) .................................................................................61

1.6.

OpenOffice et la conception des rapports............................................................................62

1.7.

Power AMC .........................................................................................................................63

1.8.

Loutil pour lapplication mobile (jQuerymobile)...............................................................64

Chapitre 5 : Ralisation de lapplication Desktop et mobile .............................................................. 65


1.

Installation et Simulation ........................................................................................................66

1.2.

Installation ...........................................................................................................................67

1.3.

Paramtrage .........................................................................................................................68

1.4.

Gestion de base ....................................................................................................................68

1.5.

Gestion des ventes ...............................................................................................................69

1.6.

Gestion des achats ...............................................................................................................71

1.7.

Gestion du stock ..................................................................................................................71

1.8.

Facturation ou comptabilit .................................................................................................73

1.9.

Gestion de maintenance Ticket et Intervention ...................................................................73

1.10. Suivi dactivit(les tableaux de bord) ..................................................................................74


1.11. Services de Messagerie ........................................................................................................76
1.12. Application mobile ..............................................................................................................77
1.13. La production et installation ................................................................................................78
Conclusion gnrale et perspectives .................................................................................................. 79
ANNEXE : ......................................................................................................................................... 81
ANNEXE 1:methode installation ...................................................................................................81
ANNEXE 2: dveloppement de modules OpenERP avec le framework Open Object ............85
ANNEXE 3 : Les modles de messageries ....................................................................................89
ANNEXE 4 : Les rapports ..............................................................................................................90

10

Introduction Gnrale
Lentreprise daujourdhui est plus consciente de limpact de la gestion efficiente des
ressources internes sur lamlioration de sa performance et par la suite de sa comptitivit
dans le march. Or, la tche de grer savre de plus en plus difficile et complexe. En effet, la
croissance des activits engendre un norme flux de donnes, alors que la diversit des
processus fonctionnels ncessite une gestion adquate des comptences humaines. Pour
surpasser ces difficults, toute entreprise est prte investir des sommes considrables dans
l'implantation de technologies logicielles afin d'amliorer ses services et d'accrotre son
agilit vis--vis ses clients tout en optimisant la communication au sein de ses quipes.
Pour la socit Eone group, la gestion de lensemble de ses activits se fait manuellement ou
par le biais des applications informatiques. La socit souhaite grer la totalit de ses activits
autour dun mme systme dinformation, laide dun progiciel de gestion intgre connu
sous lacronyme ERP.
Cest dans ce cadre que sinscrit notre projet de fin dtudes qui a pour objectif de mettre en
place une solution de gestion intgre au sein de la socit Eone group. Pour cela, lanalyse
des besoins a permis didentifier les modules mettre en place savoir la gestion comptable,
la gestion des ventes, la gestion des achats et stocks, ainsi que la gestion des messageries. La
phase suivante a consist paramtrer lERP choisi et concevoir et dvelopper les modules
non pris en charge par lERP savoir la gestion de la maintenance.
Ce prsent rapport se compose de cinq chapitres. Dans le premier chapitre, nous prsentons
le contexte et la dmarche du projet. Le deuxime fera lobjet dune tude comparative entre
les solutions existantes dans le march des ERP pour choisir un qui rpond aux besoins de
lentreprise. Le troisime chapitre, quant lui, englobe lanalyse et conception dtaille des
besoins de la socit. Les technologies mise en uvre sont dtailles dans le quatrime
chapitre. Le dernier chapitre est consacr la ralisation desktop et mobile de lapplication
puis la mise en production sur un serveur locale, ou sur un rseau prive pour tester le
fonctionnement de notre systme. Enfin, une conclusion pour dresser le bilan de ce travail.

11

Chapitre 1 : Contexte gnral du projet


- Prsentation de lorganisme daccueil
- Cadre gnral du projet
- Planification du projet

Dans ce chapitre, nous allons prsenter lorganisme daccueil.


Par la suite, nous allons dcrire le contexte et la conduite puis
la planification du projet.

12

1. Prsentation de lorganisme daccueil


1.1.

Prsentation de MIT

Multi Information Technology MIT

est une Socit de Services en Ingnierie

Informatique (SSII), Elle dveloppe depuis sa cration des savoir-faire dans le domaine des
Technologies de lInformation quelle dcline en services (formation, accompagnement, conseil,
Ingnierie et Intgration) destination des PME nationaux et Internationaux, Publics et Privs.
Depuis sa cration en Mars 2012, MIT a su gagner la confiance de nombreuses entreprises pour
leurs besoins informatiques ou de formations IT. Ainsi plusieurs socits ont dj sollicits MIT
pour ses savoir-faire dans le domaine des Technologies de lInformation.
MIT met disposition des clients une quipe dintervenants de profil divers (fonctionnel, technique,
managrial) et ayant une exprience confirme.
Les mtiers de MIT couvrent tous les angles dun projet informatique, de la dfinition des besoins
jusqu linstallation des machines et la mise en uvre des solutions. Cette comptence de MIT,
permet non seulement davoir la maitrise du projet sans avoir grer plusieurs prestataires, mais
aussi rduire les cots et diminuer les risques.
MIT

vous permet galement de choisir la prestation qui vous convient le plus grce une

flexibilit due lorganisation des mtiers :


-

la distribution dquipements micro-informatiques

Cblage et intgration de matriel actif

Ingnierie et administration de rseaux

Conseil en Infrastructure : Architecture, Scurit, Maintenance et Support

Conseil en Architecture Logicielle : SOA, MVC 2, MVVP, Design Pattern, etc.

Intgration et dploiement de solutions ERP comme Sage

Dveloppement, intgration et dploiement de solutions spcifiques en .NET, PHP/MySQL,


Java/J2EE

Audit, conseil et gestion de projets

Formation et dlgation de personnel

Les mthodes :
Approche du projet
Analyse, tude et critique de l'existant
Dtermination du cahier des charges

13

Slection des solutions acceptables


Intgration, formation et support
Les domaines d'excellence :
Les solutions de qualit
Un service de proximit
Le conseil
L'assistance aux utilisateurs
La formation

1.2.

A propos de MIT

Lentreprise MIT a t lanc en mars 2012, les collaborateurs ont en commun des parcours riches
dans lunivers du conseil et de lintgration des systmes :
Lexprience moyenne des collaborateurs est de cinq ans et plus.
50 % des collaborateurs sont des managers.
Services professionnels :
Projet d'intgration : Base de donnes Oracle , J2ee, .Net
Projet de dveloppement WEB : PHP, JEE, GWT, CMS,
Solutions serveurs : Tlphonie par IP, serveur de domaine, Serveur de partage ou
dimpression, Cryptage ou VPN
Assistance technique : Installation des logiciels, Personnalisation des outils installs
Formation et certification sur les principales technologies : Java, Oracle, Windows, Adobe
garantie et maintenance.

1.3.

Fiche signaltique MIT

Raison social : MIT MULTI INFORMATION TECHNOLOGY


Adresse : 16, Avenue Mouzdalifa, Bureau 16, 4me E, Marrakech, Maroc
Date de cration : 15/03/2012
RC: 50773
TP: 45320142
IF: 40476205
CNSS : 9421752
Plan organisation

14

La socit Mit son propre organisation qui constitue dun ensemble des services savoir le
service technique, service commercial et service communication. Lorganigramme suivant illustre
le plan organisationnel de MIT.

Figure 1 : Plan organisationnel de MIT

1.4.

Domaines dactivits

Intgration de projet et dveloppement d'applications sur Mesure


Mise en place de portails internet, dapplications web et de logiciels sur mesure:
Dernires technologies Open Source.
Info design, charte graphique et animations propritaires.
Stratgie Web Marketing.
Commercialisation de solutions informatiques :
Serveurs
Solutions de stockage et de sauvegarde
Solutions d'impression
Solution de golocalisation sur mesure GPS
Solution de golocalisation sur mesure SIG (Systme dinformation gographique
Prestations de conseils et de dploiement, de formation, dassistance technique et de maintenance.
Mise en place de projets de communication (Media, Impression, Web).

Moyens humains :
15

MIT sappuie sur des consultants et ingnieurs certifies dans leurs domaines dintervention .Ils
analysent votre besoin en fonction de votre organisation et assure la conception, la ralisation et la
maintenance de la solution.

1.5.

Prestations et services

MIT offre une large palette de prestations et de services bass sur des composants libres adapts aux
systmes et aux rseaux des clients. La principale tche de cette socit est doffrir des solutions sur
mesure, en matire de formation et dassistance, concernant les problmatiques relevant des
systmes dinformations.
La gamme de services de MIT est articule autour dun ensemble daxes majeurs qui permettent
d'accompagner les clients durant toutes les phases d'un projet afin d'en assurer sa russite.

Figure 2 : Services MIT


Formation et conseil

: Loffre des formations, techniques et fonctionnelles, permet

d'accompagner les organisations qui disposent dquipes oprationnelles capables de mener bien
des projets. Ces formations peuvent tre tablies sous forme de transferts de comptences, en phases
avals des projets.
Dveloppement : Il constitue le cur mtier de MIT et comprend le dveloppement soit sur la
base de logiciels libres soit sur des plateformes de dveloppement, de portails collaboratifs Internet
ou Intranet, avec des composantes de publication web, de travail collaboratif.

16

Conception et ralisation de logiciel personnalis ;


Cration et intgration des sites web statiques et dynamiques;
E-commerce, Rfrencement web, Hbergement et nom de domaine.
Conception dapplications pour IPhone, Ipad.
Open source : intgration, adaptation, dveloppement, support.
MIT propose un large ventail de services professionnelles pour les entreprises

Des projets d'intgration haute valeur ajoute : Base de donnes Oracle , J2ee, .Net

Projets de dveloppement informatique: PHP, JEE, IOS, Android, GWT, CMS, MYSQL

Solutions de : Tlphonie par IP, Serveur de Domaine, Serveur de partage ou dimpression,


Cryptage ou VPN.

Assistance technique: Installation des logiciels, Personnalisation des outils installs.

Formation sur les technologies les plus avances: Java, Oracle, Windows, Adobe & Cisco,
Joomla

Partenaires

Figure 3 : Les partenaires

17

2. Cadre gnral du projet


2.1 Prsentation gnrale de projet
Le systme dinformation coordonne grce linformation les activits de lorganisation, et lui
permet ainsi datteindre ses objectifs. Il est le vhicule de communication de lorganisation. Il
reprsente lensemble des ressources (humaines, matrielles et logicielles) organises pour
collecter, stocker, traiter et communiquer les informations au sein de lentreprise.
Notre projet de fin dtudes sinscrit dans le cadre dune solution optimis de la gestion dachat,
vente, stock et maintenance, base sur la lgislation marocaine, laide de lERP open source dans
lequel on se base pour adapter nos besoin et de dvelopper des nouvelles fonctionnalits.

2.2 Problmatique
Pour grer lactivit globale de la socit, chaque dpartement utilise indpendamment des
applications informatiques. Ceci gnre non seulement une difficult dchange de donnes entre
les diffrents dpartements, mais galement une incohrence de linformation interne.
Certes il existe des solutions sur le march, mais elles sont payantes, en plus du fait quil est
difficile de communiquer entre ces applications avec dautres solutions externes (le cas
dautomatiser les commandes des produits), et leur support est bien limit vu quelles ont t codes
la demande, noter aussi quelles ne sont pas flexibles.
Avec ces outils, un grant se retrouve oblig deffectuer lui-mme un bon nombre de tches qui
normalement, avec ces solutions, doivent tre automatises, je cite comme exemple lenvoi des
bons de commande vers le fournisseur : le grant (agent ou administrateur) cre un bon de
commande avec une liste des produits demands ainsi que leur quantits, ce bon devra tre transmis
automatiquement vers un fournisseur parmi ceux enregistrs dans la liste, aprs sa validation, cette
option tait oprationnelle avant, donc le grant est oblig de passer par la mthode classique qui est
passer sa commande par tlphone.
Les bons de commande sont donc temporaires, et se trouvent dans la plupart des cas supprims
aprs avoir effectu la rception des produits.
Ainsi, il savre important de coordonner lensemble des activits de la socit (comme la gestion
des projets, la gestion comptable, la gestion des ressources humaines, etc.) autour dun mme
systme dinformation.

2.3 Objectif du projet


Notre projet de fin dtudes a pour objectif dautomatiser un ensemble des processus dentreprise
tout en travaillant sur une base de donnes unique et homogne afin de gagner en productivit et
rduire les travaux redondants. Ainsi, chaque maillon de lorganisation apportera sa contribution et
la mettra disposition des autres acteurs de la chaine.

18

Notre projet consiste donc proposer une solution rpondant aux besoins fonctionnels dentreprise.
Cette solution devra entre autres assurer :

Loptimisation de la gestion des processus mtiers : en loccurrence, la gestion des ventes,


achats, maintenance et gestion facturation.

Permettre deffectuer des achats auprs des fournisseurs, o il est possible dditer des
devis, de crer des bons de commande et de recevoir les produits.

Permettre une gestion optimise de stock efficace, avec la possibilit de faire les inventaires
physiques et de consulter ltat des stocks nimporte quand.

La cohrence et lhomognit de linformation interne

la gestion des lments de bases, savoir les clients, les fournisseurs avec une interface
ergonomique qui facilite la navigation entre les fonctionnalits du systme.

Enfin, avoir des statistiques concernant ces points cits auparavant

La possibilit de dvelopper de nouvelles fonctionnalits

Un client mobile qui permet laccs ou fonctionnalits systme laide des smartphones.

2.4 Elaboration de Cahier des charges fonctionnel


Afin de mener bien notre projet il est bien donc ncessaire de faire une lanalyse prliminaire des
besoins et de faire une liste des diffrentes fonctionnalits mettre en uvre.
Les fonctionnalits requises sont prsentes dans le tableau ci-dessous :
Objectif
Gestion de base

Gestion des ventes

Gestion des Achats et stocks

Les rapports

Statistiques et tableau du bord

Fonctionnalit
- Gestion des clients
- Gestion des fournisseurs
- Gestion des utilisateurs
- Gestion des produits
- Consulter la liste des clients
- Grer les devis
- Grer les bons de commandes
- Grer les bons de livraison des produits
- Grer les paiements
- Consulter la liste des fournisseurs
- Grer Les demandes de prix
- Grer les devis de fournisseurs
- Grer les bons de commandes
- Grer les bons de rceptions des produits
- Grer les paiements
- Vrification des stocks
- Imprimer les rapports (bon de commande)
- Imprimer les rapports (facture)
- Tiquet des produits
- Imprimer listes des produits
- Consulter les produits du stock
- Distribution mensuelle des ventes par client
-Distribution mensuelle des achats par
19

fournisseur
- Distribution dtaille des achats par produit /
fournisseur
- Distribution dtaille des ventes par produit /
client
- Inventaire physique des produits
- Gestion des emailes des partenaires
- Envoi des commandes et factures par mail
Tableau 1: Liste des fonctionnalits requises

Les services de messageries

2.5 Planification du projet


La planification consiste prvoir le droulement du projet tout au long des phases constituant
le cycle de vie prvu. Cest ainsi quon peut diviser le projet de mise en place dune solution de
gestion intgre en quatre grandes parties :
Description et lanalyse des besoins spcifiques : les objectifs de cette phase sont de
bien cerner le sujet dune part, et de dlimiter le primtre du projet dautre part au
niveau fonctionnel.
Ltude comparative des solutions existantes sur le march: cette tude doit aboutir au
choix dune solution de gestion intgre tout en prenant en considration
lenvironnement de lentreprise et son cahier de charge.
La mise en production du progiciel de gestion intgre (PGI): Lobjectif de cette
phase est de construire le systme PGI cible, puis den vrifier la fiabilit des diffrents
traitements. Les tches typiques associes cette tape sont :

La personnalisation et le paramtrage.

La mise jour de la base de donnes.

La fermeture des trous fonctionnels (si un bouton ne fait pas son rle
correctement on doit changer son fonctionnement)

Le dveloppement spcifique des fonctionnalits non traites par le progiciel.

La mise jour finale de la documentation du systme final.

La bascule : Lobjectif de cette phase est le dmarrage oprationnel du progiciel sur le


site. Les tches typiques associes cette tape sont :

La formation des utilisateurs finaux et la documentation des utilisateurs.

Le pilotage : Test dintgration sur la base des processus et validation des modes
opratoires par les utilisateurs.

20

Le diagramme de Gantt suivant traduit la planification temporelle des phases du projet

Figure 4 : Diagramme de gant

Dans ce chapitre on a dcrit le contexte gnral dans lequel sinscrit notre projet de fin dtudes. Au dbut, nous avons prsent lentreprise daccueil
MIT. Puis, on a dtermin la problmatique et les objectifs du projet qui se rsument la mise en place dun systme de gestion intgre. Aprs la
description et llaboration du cahier des charges de la socit, nous allons chercher la solution adquate pour assurer la bonne gestion des
processus mtiers interne de lentreprise. Pour ce faire, nous allons faire une tude du march des solutions de la gestion intgre tout en se
basant sur une norme de qualit logiciel.

Chapitre 2 : Etude comparative des progiciels de


gestion intgre (PGI)
Pourquoi les PGI
Les critres dvaluation
Le choix de PGI

Dans cette tude, nous allons dfinir les progiciels de gestion, puis
nous allons numrer les secteurs dont les progiciels Open Source
peuvent tre plus bnfique, et finalement nous allons comparer
les solutions Open source existantes afin de choisir un rpondant
nos besoins.

1.

Etude comparative des progiciels de gestion intgre (PGI)

Dans ce chapitre, on va valuer les solutions de gestion intgre qui existent dans le march, afin de
choisir un PGI propritaire ou bien Open Source, alors on va faire une tude comparative basant sur
une norme ISO, le PGI choisi doit tre adquat aux besoins de lentreprise.

1.1. Les progiciels de gestion intgre


Les entreprises daujourdhui doivent rationaliser leur pilotage vu lvolution progressive et la
comptitivit froce du march. Pour ce faire, lutilisation dun progiciel de gestion intgre est une
ncessit car il centralise, prsente les donnes de faon pertinente et affecte les bons processus aux
bons acteurs.
L'acronyme PGI signifie "Progiciel de Gestion Intgre" traduit en anglais par Enterprise Resource
Planning (ERP). ERP est le terme le plus couramment utilis. Un ERP est un progiciel qui assure la
gestion automatique de l'ensemble des processus d'une entreprise comme la gestion des ressources
humaines, la gestion comptable, la gestion des ventes, l'approvisionnement, la production ou encore
du e-commerce. [Wiki, 2012]. Le principe fondateur d'un ERP est lutilisation des applications
informatiques correspondantes aux divers processus mtiers de manire modulaire, en partageant
une base de donnes unique et commune au sens logique. L'autre principe, qui caractrise un ERP,
est l'usage de ce qu'on appelle un moteur de Workflow. Il permet dacheminer une donne qui est
enregistre dans le systme d'information(SI), vers les autres modules qui en ont besoin.

1.2. Pourquoi un PGI Open Source ?


D'une manire gnrale, en utilisant un produit open source, on peut s'attendre des conomies de
licence en installant un ERP open source. En effet, l'ERP tant un progiciel complexe, les cots
d'intgration et de maintenance reprsente le cot total de possession de l'ERP. Ainsi, l'conomie
d'une licence propritaire reprsenterait entre 25% et 50% du cot total dimplmentation dun
ERP.
Par ailleurs, les solutions open source arrivent leur maturit. Ce qui fait, les petites et moyennes
entreprises (PME) et les trs petites entreprises (TPE) peuvent disposer d'un outil de gestion
complet au meilleur cot en leur apportant rapidement un vrai bnfice en termes de comptitivit.

1.3. Les critres dvaluation


Afin dvaluer la qualit dun logiciel, nous allons nous rfrer la norme ISO 9126, "Technologies
de l'Information : Qualits des produits logiciels", qui dcrit une srie de caractristiques qualit
dun produit logiciel qui peuvent tre utilises pour spcifier les exigences fonctionnelles et non
fonctionnelles des utilisateurs. Elle est compose de six facteurs principaux suivant :
Capacit fonctionnelle : Est-ce que le logiciel rpond aux besoins fonctionnels exprims ?

23

Cest un facteur qui mesure ladquation des fonctionnalits du logiciel aux besoins prescrits des
utilisateurs et sa possibilit dinteraction avec dautres systmes.
Fiabilit : Est-ce que le logiciel maintient son niveau de service dans des conditions prcises et
pendant une priode dtermine ?
Cest l'aptitude du logiciel maintenir son niveau de service et de fonctionnement pendant une
priode dtermine.
Facilit d'utilisation : Est-ce que le logiciel requiert peu deffort lutilisation ?
Ce facteur value le degr dutilisation du logiciel par les utilisateurs finaux. Ce degr rvle
leffort requis pour exploiter et comprendre les concepts logiques et fonctionnels.
Rendement / Efficacit : Est-ce que le logiciel requiert un dimensionnement rentable et
proportionn de la plate-forme dhbergement en regard des autres exigences ?
Ce facteur mesure le rapport existant entre le niveau de service d'un logiciel, savoir le temps de
rponse de lexcution des requtes, et la quantit des ressources utilises.
Maintenabilit : Est-ce que le logiciel requiert peu deffort son volution par rapport aux
nouveaux besoins ?
Cest l'effort ncessaire pour faire des modifications de donnes et des tests, ce facteur permet en
plus de mesurer la stabilit du logiciel.
Portabilit : ce facteur value la capacit du logiciel de fonctionner dans diffrents environnements
et sa facilit de migration dun systme un autre.
En se basant sur les facteurs dvaluation prcdents, nous allons entamer une tude comparative
entre les logiciels Open source dj cit. Pour ce faire, nous allons dtailler les fonctionnalits
mtiers offertes par chaque ERP, puis nous allons valuer les ERP selon chaque facteur pour enfin
choisir le plus adquat pour nos propres besoins. Notant que ltude se base sur une chelle de six
niveaux suivant :

0 : pour mentionner linexistence de la fonction.

1 : niveau faible.

2 : niveau passable.

3 : niveau moyen.

4 : niveau bon.

5 : niveau excellent.

1.3.1 Profil par capacit fonctionnelle


Lchelle fonctionnelle reprsente un facteur principal dans lvaluation des diffrents ERPs choisis
vu quelle permet de comparer les modules de gestion offerts par le progiciel et les modules

24

prciss dans le cahier de charge de la socit. Pour valuer cette chelle, nous allons nous rfrer
une tude faite par Smile, le premier intgrateur Europen de lOpen Source.
ERP fonction

Achats

Ventes

Comptabilit CRM

RH

Paies

Projets

OpenERP

ERP5

Adempiere

CompiereGPL 4

Tableau 2: Evaluation des capacits fonctionnelles des ERPs choisis


OpenERP et ERP5 englobe la majorit des fonctions du notre cahier de charge Sauf que ERP5 ne
possde pas un module de gestion du projet chose qui prsente un avantage pour OpenERP. En
contrepartie, ERP5 maitrise le module de la gestion de paie plus quOpenERP. Or, la communaut
marocaine de ce dernier a pu dvelopper un module de gestion de paie qui tient compte des
exigences de la paie marocaine.

1.3.2 Profil par facteur de fiabilit et facilit dutilisation


Pour la fiabilit, part Compiere qui est trs robuste, aucun des autres outils noffre un degr de
fiabilit parfait. La gestion des exceptions et des situations de blocage reste en somme peu
satisfaisante en tenant en considration les exigences des utilisateurs. Cette faiblesse est due
principalement au manque de maturit des outils open source par rapport au march.
Par ailleurs, la facilit dutilisation est un point fort dOpenERP. En effet, lapprentissage
dOpenERP est assez ais, car il utilise une logique simple, intuitive et gnralise, contrairement
aux autres ERPs. Cette facilit dutilisation est un point dterminant, car il est trs sollicit la fois
par les utilisateurs simples et expriments. Labsence dun manuel dutilisateur pour Adempiere,
Compiere et ERP5 est dcevante pour quiconque veuille les tester ou les utiliser. Ceci nest pas bien
entendu le cas dOpenERP. Ce tableau rsume lvaluation de ces deux facteurs :
Nom ERP fonction

Fiabilit

Facilite de lutilisation

OpenERP

ERP5

Adempiere

CompiereGPL

Tableau 3: Evaluation des facteurs de fiabilit et de facilite de lutilisation

25

1.3.3 Profil par facteur de rendement


Afin de dtailler ce facteur, on doit tout dabord dterminer les ressources ncessaires pour le bon
fonctionnement du progiciel puis son rendement.
Larchitecture dAdempiere est base sur une JVM (Java Virtuelle Machine) et un serveur
dapplication JBOSS. Les transactions sont rapides tant que la puissance du son serveur augmente,
donc le rendement dpend de cette puissance. Tandis quafin de faire tourner Compiere, il a besoin
dun serveur ddi lui, de 2GO de RAM et dun processeur puissant pour offrir le mme service
ce qui explique son faible rendement.
Pour ERP5, il ne demande pas de ressources normes, un seul serveur de base est suffisant pour
fournir des transactions rapides ce qui prouve son excellent rendement. Alors quOpenERP mme
sil ne demande dun serveur de base, les transactions sont lentes sur machine distante et rapides en
local
Nom ERP\Facteur

rendement

OpenERP

ERP5

Adempiere

CompiereGPL

Tableau 4: Evaluation du facteur de rendement des ERPs choisis


Selon ce facteur, Adempiere, Compiere et OpenERP sont galit. Si OpenERP permet une
conomie trs remarquable en termes de ressources matrielles, les transactions effectues par
Adempiere ou Compiere sont plus rapides quand il sagit dutiliser des machines distantes. ERP5
est nettement plus rentable que les autres PGI ceci est d au fait quil ne demande pas de ressources
normes pour faire tourner plusieurs postes clients.

1.3.4 Profil par facteur de maintenabilit


Les ERPs choisis sont tous dvelopps selon lapproche oriente objet. Cette approche offre un
accs rapide aux donnes et leurs dpendances, et par la suite une facilit de modification de
donnes. En effet, les donnes dpendantes sont structures dans un objet qui possde des mthodes
qui lui donne la possibilit dinteragir avec les autres objets, par la suite avec dautres donnes.
Par ailleurs, OpenERP est le plus stable. En effet, une nouvelle version stable est disponible chaque
6 8 mois.

26

Nom ERP\Facteur

Maintenabilit

OpenERP

ERP5

Adempiere

CompiereGPL

Tableau 5: Evaluation de facteur de maintenabilit des ERPs choisis

1.3.5 Profil par facteur de portabilit


Pour valuer ce facteur il suffit de prsenter les diffrents environnements sur lesquels les diffrents
ERPs choisis peuvent fonctionner.
Adempiere peut tourner sur tous les systmes dexploitation et utilise les bases de donnes
PostgreSQL et Oracle. OpenERP, quant lui, supporte les systmes dexploitation Windows et
Linux et PostgreSQL pour sa base de donnes. Pour Compiere peut fonctionner sur tous les
systmes dexploitation et fait appel une base de donnes Oracle. Tandis pour ERP5, il est
possible de l'installer sur RedHat mais aucune version Windows ne nous semble disponible selon
mes recherches webographies.
Nom ERP\Facteur

Portabilit

OpenERP

ERP5

Adempiere

CompiereGPL

Tableau 6: Evaluation de facteur de portabilit des ERPs choisis

1.3.6 Profil par type de lentreprise


Si on considre les aptitudes fonctionnelles particulires des ERP valus ainsi que leurs autres
caractristiques comme le degr d'ouverture de l'diteur, la qualit de finition, la complexit ou
simplicit des extensions, on peut dduire un profil type d'utilisation, selon le secteur d'activit,
mais aussi selon la taille et le chiffre d'affaire de la socit.

27

Nom

Taille dentreprise

Secteur

Chiffre

ERP

daffaire

par million deuros


Distribution

Service

Industrie

x<5

5<x<10

10<x<50

50<x<250

x>250

X<5M

5M<x<500M

OpenERP

ERP5

Adempiere

Compiere

Tableau 7: Evaluation par type de lentreprise des ERPs choisis


On Remarque que pour les socits de service comme Eone Group et dont les employs sont une
vingtaine du personnel et le C.A est infrieure cinq millions deuros, OpenERP est le progiciel le
plus adapt.

Une analyse des rsultats de ltude savre indispensable afin de dgager les points
favorisants lun des PGI par rapport lautre parmi les quatre solutions. Cette analyse doit tenir en
compte les contraintes imposes par lenvironnement et les besoins de la socit. Vu que
lenvironnement de la socit ddi la solution de gestion intgre est un serveur Windows, alors
ERP5 est entirement limin. Pour les ERPs restants, lERP qui rpond la majorit des
fonctionnalits dj dfinies dans le cahier de charge est OpenERP. En effet, il est le plus
compatible avec le secteur dactivit de la socit, sa taille et son chiffre daffaire. De plus,
lvaluation dOpenERP selon les critres de la norme ISO 9126 est bonne dans sa totalit.
Donc, aprs cette tude, la solution choisie est le progiciel de gestion intgre OpenERP.

28

Chapitre 3: Etude fonctionnelle et technique

- Analyse et mthodologie de travail.


- tude fonctionnelle et technique
- conception dtaill du projet.

Dans ce chapitre, nous allons dcrire la mthodologie de


conception et les besoins de la socit, par la suite nous allons
les analyser en utilisant le formalisme UML.

29

1. Analyse et mthodologie de travail


1.1

Analyse du projet

La complexit croissante des systmes informatiques a conduit les concepteurs sintresser aux
mthodes. On a comptabilis en 1994 jusqu 50 mthodes. Chaque mthode se dfinit par une
notation et un processus spcifique. UML a ouvert le terrain en fusionnant la notation. Il reste
cependant dfinir le processus pour rellement capitaliser des rgles dans le domaine du
dveloppement logiciel. Les groupes de travail UML ont donc travaill unifier non pas les
processus, mais plus exactement les meilleures pratiques de dveloppement objet. Ces processus se
distingueront par le gnrique UNIFIED PROCESS .
Un processus dfinit une squence dtapes, en partie ordonn, qui concoure lobtention dun
systme logiciel ou lvolution dun systme existant. Pour produire des logiciels de qualit, qui
rpondent aux besoins des utilisateurs dans des temps et des cots prvisibles. On dcoupe le
processus en deux axes :

Laxe de dveloppement technique, qui

concentre principalement sur la qualit de

production.

Laxe de gestion du dveloppement, qui permet la mesure et la prvision des cots et des
dlais.

1.2

Choix de la mthodologie de conception

Avant dadopter une mthode, il faut dabord faire une comparaison entre les diffrentes mthodes
existantes, voir les points forts et les points faibles de chacune, puis dterminer celle qui va mieux
dans le contexte du projet. Ci-dessous un tableau qui rsume cette comparaison.

Mthode

Description

Points forts

Rational
Unified -Mthodologie centre
Process (RUP)
sur larchitecture et
couple
aux
diagrammes UML
-Concerne des projets
de +10 personnes
-Processus
complet
assist par des outils
exhaustifs

eXtreme
Programming (XP)

-Coteux

personnaliser
-Trs ax processus, au
dtriment
du
dveloppement
-Lourd,
largement
tendu, il peut tre
difficile mettre en
uvre
de
faon
spcifique
-Convient pour les
grands projets qui
gnrent beaucoup de
documentation
-Dveloppement guid -Itratif
-Ne couvre pas les
par les besoins du -Simple mettre en phases en amont et en
client
uvre
aval du dveloppement
-Equipes
rduites, -Laisse une large place -Assez flou dans sa mise

30

-Itratif
-Spcifie le dialogue
entre les diffrents
intervenants du projet :
les livrables, plannings
et prototypes
-Propose des modles
de documents, et des
canevas
pour
des
projets types
-Rles bien dfinis,
modlisation

Points faibles

centres
sur
dveloppeurs

les aux aspects techniques


-Builds journaliers
-Amlioration
constante adaptation
aux modifications

Two Track Unified -Articul autour de


Process (2TUP)
larchitecture
-Cycle
de
dveloppement en Y
-Convient aux projets
de toutes tailles

-Itratif, laisse une


large partie la
technologie et la
gestion du risque
-Dfinit les profils des
intervenants,
les
livrables,
les
prototypes

en uvre : quels
intervenants ? Quels
livrables ?
-Focalis sur laspect
individuel
du
dveloppement,
au
dtriment dune vue
globale et des pratiques
de management ou de
formalisation.
-Superficiel sur les
phases en amont et en
aval du dveloppement
-Aucune proposition de
document type

Tableau 8: Comparaison des mthodes de dveloppement


Pour atteindre les objectifs, nous avons suivi la mthode 2TUP (2Track Unified Process), qui sera
plus dtaille dans ce qui suit.

1.3

Le processus 2TUP

2TUP est un processus UP (processus unifie). Le processus 2TUP apporte une rponse aux
contraintes de changement continuel imposes aux systmes dinformation de lentreprise. En ce
sens, il renforce le contrle sur les capacits dvolution et de correction dun tel systme. 2Track
signifient littralement que le processus suit deux chemins. Il sagit des chemins fonctionnels et
darchitecture technique , qui correspondent aux deux axes des changements imposes au
systme informatique.
Le processus 2TUP apporte une rponse aux contraintes de changement continuel imposes aux
systmes dinformation de lentreprise.
Ce processus suit deux chemins.

Architecture fonctionnelle

Architecture technique

31

Figure 5: Cycle de dveloppement en Y


Laxe fonctionnel comporte :
Capture des besoins fonctionnels, qui produit un modle des besoins focalis sur le
mtier des utilisateurs. Elle qualifie au plus tt le risque de produire un systme
inadapt aux utilisateurs.
Analyse, qui consiste tudier prcisment la spcification fonctionnelle de manire
obtenir une ide de ce que va raliser le systme en terme de mtier.
Laxe technique, quant lui, comporte :
Capture des besoins techniques, qui recense toutes les contraintes et les choix
Dimensionnant la conception du systme.
Conception gnrique, qui dfinit ensuite les composants ncessaires la conception de
larchitecture technique. Elle a pour objectif duniformiser et de rutiliser les mmes
mcanismes pour tout un systme. Larchitecture technique construit le squelette du systme
informatique et carte la plupart des risques du niveau technique.
Conception prliminaire, qui reprsente une tape dlicate, car elle intgre le modle
danalyse fonctionnelle dans larchitecture technique de manire tracer la cartographie des
composants du systme dvelopper.
Conception dtaille, qui tudie ensuite comment raliser chaque composant.
Codage, qui produit ses composants et teste au fur et mesure les units de code ralises.
Recette, qui consiste enfin valider les fonctionnalits du systme dvelopp.
1.4 UML (Unified Modeling Language)
Dfinition
UML se dfinit comme un langage de modlisation graphique et textuel destin comprendre et
dcrire des besoins, spcifier et documenter des systmes, esquisser des architectures logicielles,
concevoir des solutions et communiquer des points de vue.

32

UML unifie est la fois les notations et les concepts orientes objet. Il ne sagit pas dune simple
notation, mais les concepts transmis par un diagramme ont une smantique prcise et sont porteurs
de sens au mme titre que les mots dun langage. UML a une dimension symbolique et ouvre une
nouvelle voie dchange de visions systmiques prcises, Ce langage est certes issu du
dveloppement logiciel mais pourrait tre applique toute science fonde sur la description dun
systme. Dans limmdiat, UML intresse fortement les spcialistes de lingnierie systme

[Wikipdia].
2. Etude fonctionnelle
Avant de spcifier les besoins il est ncessaire de raliser une tude de lexistant. Ltude de
lexistant est une tape cl dans la ralisation de nimporte quelle application informatique, quel que
soit le domaine concern. Il sagit dune tude permettant de comprendre la problmatique du projet
et de dtecter les avantages et inconvnients des solutions proposes actuellement sur le march afin
den profiter pour la ralisation de notre projet.

2.1 Etude de lexistant


La socit Eone group repose principalement sur trois divisions qui assurent son fonctionnement
normal qui sont : le service des ventes, le service des achats et enfin le service de gestion
comptable.
En effet, Le service des ventes, quant lui, est constitu essentiellement de commerciaux. Chaque
commercial dispose dune base de donnes enregistre sous forme de fichiers Excel, et qui
contiennent ses clients. Ce processus demande une gestion pointue des suggestions, des avis voire
des rclamations des clients, Ensuite le service des achats est ddi la gestion des dossiers
fournisseurs et leurs commandes se forme des fichiers Excel, enfin la gestion comptable est ralise
sous le logiciel Sage. Cette application de gestion assure lenregistrement de toutes les oprations
comptables de la socit. Cependant, la socit se trouve dans la ncessit de lguer llaboration du
journal mensuel et du bilan annuel une expertise externe.

2.2 Le systme fonctionnel


Lensemble des activits de la socit est gr par des traitements manuels ou bien par le biais des
applications diversifies tout en utilisant des supports papiers.
Les besoins de la socit Eone group sarticulent sur les modules fonctionnels suivantes : la gestion
des ventes, la gestion comptable, la gestion des achats. A cela, sajoutera le module de gestion de
maintenance.
Dans cette partie nous commenons par dcrire lensemble des fonctionnalits relatives chaque
module du systme global. Le schma suivant reprsente les diffrentes liaisons entre les
procdures fonctionnelles :

33

Administration du systeme fonctionnel


Geston des
ventes

Gestion de
maintenance

Gestion
comptable

Gestion de la
relation clientl

Gestion des
achats

Figure 6 : Le systme fonctionnel.

2.3 Diagramme de contexte


Le domaine tudi :
Conception et ralisation dune application de gestion intgre au sien de Eone Group.
Les activits internes du domaine :
Gestion des ventes
Gestion des achats et stocks
Gestion de la relation clientle
Gestion de la comptabilit
Gestion de maintenance
Les acteurs du systme
Sur le diagramme de contexte, on constate que ce systme est en interaction avec des divers acteurs
tel que:
Acteur
Le commercial

Le responsable commercial

Description
Peut crer un dossier pour ces clients comme il peut le mettre
jour, il a le droit de visualiser lensemble des clients de la socit.
Dautre part, le commercial peut crer les commandes pour
raliser une opration de vente.
Assure le suivi des ventes faites par les commerciaux, et gre les
factures. Il peut aussi effectuer les mmes oprations que le
commercial. De plus, il valide lensemble des bons de
commandes et il gre lensemble des articles.

Supervise lensemble des activits et il possde les mmes droits


dutilisation comme tous les acteurs du systme.
Peut crer un dossier pour les produits comme il peut le mettre
Le magasinier
jour. Dautre part, le commercial peut crer les commandes pour
raliser une opration dachat
Assure le suivi des achats et gre les factures en les crant et les
Le responsable des achats
mettant jour. De plus, il valide lensemble des bons de
commandes dachats et il gre lensemble des articles achets.
Superviseur et administrateur systme.
Administrateur
Tableau 9 Liste des fonctionnalits requises
Directeur

34

Diagramme 1: Diagramme de contexte.

Analyse des cas dutilisations


Description des scnarios
La gestion des partenaires
Cration d'un Dossier partenaire:
Cette fonction permettra de crer le dossier d'un partenaire lors de sa premire opration (vente,
achat), les donnes peuvent tre complts ultrieurement et sont toujours modifiables. Ce
dossier contient : Le Nom, le Prnom, le sexe, La Date de naissance, l'adresse, le code postal, la
ville, la profession, les N de tlphone.
Accs / modification d'un Dossier partenaire :
Cette fonction permet de rechercher et d'accder au dossier dun partenaire ainsi que le modifier ou
le complter si ncessaire.
Suppression d'un Dossier partenaire :
En cas de mauvaise manipulation, cette fonction permet de supprimer le dossier partenaire aprs
confirmation.
Gestion de stock:
Ce module permet de grer l'ensemble des donnes ncessaires concernant les produits.
Ajouter un produit :
Lapplication permet d'ajouter un produit dans la banque de donne en saisissant la description
relative au produit (Nom, Quantit, Nature, Type, ...)
35

Rechercher un produit :
Lapplication permet la recherche d'un produit. La recherche est effectue par la saisie d'une de ses
caractristiques cites ci-dessus.
Supprimer un produit :
Lapplication effectue la suppression d'un produit donn par la personne autorise. Une
Confirmation est demande.
Signaler un produit en fin de stock :
Lapplication permet notamment de prvenir l'utilisateur quant la diminution du stock relatif au
produit.
Gestion des droits d'accs :
Cration dutilisateurs
Cette fonction permet de crer les diffrentes fiches du personnel utiliser le systme.
Il suffit de saisir dans le module les donnes correspondant l'identification de l'utilisateur concern
Nom, Login, Mot de passe
Modification : Le systme permet de modifier toutes les donnes relatives l'utilisateur.
Suppression : le systme permet galement de supprimer un utilisateur dans le cas o il n'est
Plus habilit utiliser l'application.
Cration de groupes d'utilisateurs :
Le systme permet de crer un groupe selon la fonction de l'utilisateur et de spcifier les droits
d'accs pour chaque groupe.
Modification : cette fonction permet de modifier les droits d'accs d'un groupe.
Suppression : Le systme permettra de supprimer un groupe d'utilisateur pralablement cre.
Facturation et paiement:
Sauf disposition lgale spcifique, toute prestation fournie par lentreprise doit faire lobjet dune
facturation et dune mise en paiement par le partenaire (client ou fournisseur).
La facture tant tablie conformment la rglementation de la tarification applicable aux
entreprises.
Crer la facture :
Il permet de crer automatiquement la facture du partenaire ds son admission contient toutes les
informations.
Rechercher :
Cette fonction permet de chercher la facture d'un partenaire donn par le nom et prnom ou dautre
information administrative.
Rgler une facture :
Cette fonction permet de rgler la facture en prcisant le mode de rglement chque ou espce.

36

Gestion des ventes et achats:


Ce module permet de grer l'ensemble des donnes ncessaires concernant les ventes
Cree un devis :
Lapplication permet dtablir un devis dans un premier temps qui doit tre suivi par le systme
laide dun workflow pour quil arrive la facturation.
Rechercher une commande :
Lapplication permet la recherche dune commande. La recherche est effectue par la saisie d'une
de ses caractristiques savoir ltat, date, client, fournisseur,...
Annuler une commande :
Lapplication permet dannuler une commande donne par la personne autorise. Une
Confirmation est demande.
Suivi des commandes :
Lapplication permet notamment de suivi toutes les commandes du systme pay ou non pay.
Serveur demail
Le systme doit configurer un serveur mail qui assure le flux de communication entre les entits
dentreprise, ainsi que les partenaires.

3. Etude technique
3.1 Prsentation gnrale de lopen source
Lacronyme ERP signifie Enterprise Ressource Planning traduit en franais par Progiciel
de Gestion Intgr ou PGI. Cest un progiciel qui permet de grer lensemble des processus dune
entreprise intgrant lensemble de ses fonctions comme la gestion des ressources humaines, la
gestion financire et comptable, laide la dcision, la vente, la distribution, lapprovisionnement,
la production ou encore le e-Commerce. On distingue deux types dERP : les ERP propritaires,
dits par des socits, ce qui implique lachat dune licence, et les ERP open source qui sont
gratuits . Dans notre projet Nous nous intressons la catgorie des ERP open-source et plus
particulirement OPENERP cest grce une tude comparatif des ERP open source on a fait le
choix de lOpenERP [Wikipdia].

3.2 OpenERP
Anciennement connu sous le nom Tiny ERP, signifiant la fourmi de lEnterprise Resource
Planning) est un progiciel intgr de gestion ouvert, libre de droits comprenant les ventes, la gestion
de relation client (CRM), la gestion de projet, la gestion d'entrept, la production, la comptabilit et
les ressources humaines. OpenERP a trois composants spars : le serveur openerp-server qui
stocke ses donnes dans une base postgresql, le client openerp-client qui s'installe sur le poste de

37

l'utilisateur et le serveur web openerp-web qui permet une utilisation depuis un navigateur. Ces trois
composants communiquent par les protocoles xml-rpc et net-rpc.
Le logiciel est bas sur une forte architecture MVC, des flux de travail flexibles, une interfaceutilisateur graphique dynamique, une interface XML-RPC, et un systme personnalisable de
comptes rendus avec une intgration pratique d'OpenOffice.org.
Dans la classification des logiciels, OpenERP, comme tout autre PGI sur le march est un package
destin, a priori, tous les secteurs, toutes les fonctions, les adaptations ncessaires se faisant par
paramtrage.
Il dispose de forts arguments commerciaux pour sduire les dirigeants, Cette offre sduisante par sa
qualit et sa cohrence se rvle lusage plus risque que lon avait pu limaginer : elle ne peut
tre efficace que si lon accepte les contraintes quelle impose. Sa mise en uvre comporte des
difficults et des piges.

Avantages
diteur trs dynamique
Communaut dynamique et exprimente
Primtre fonctionnel ingal avec ses quelques 500 modules et des nouveaux modules tous les
mois.
Conception trs intelligente. Souvent jusqu' 10 fois moins de code que les ERP en Java pour
offrir les mmes fonctionnalits.
Interface web trs comptitive.
Vrai ORM qui fait le pont entre la base relationnelle et le code objet proche des spcifications
fonctionnelles.
Tout le data model et les mthodes mtier sont nativement exposs en web services, c'est un
gage d'interoprabilit facile.
Moteur BPM intgr trs efficace.
Grand souplesse gnrale, notamment grce la scriptabilit des rapports.
Les cots d'intgration les plus faibles

3.3 Architecture technique de lOpenERP


Architecture Client/Serveur
Open ERP est bas sur une architecture client/serveur. Le serveur et le client communiquent via le
protocole XML-RPC. Cest un simple protocole qui permet au client de faire des appels aux
Procdures. Une fois la fonction est appele, ses arguments et ses rsultats sont envoys par le
Protocole http, eux-mmes sont encods par le langage XML.

38

OpenERP est coupl une base de donnes PostgreSQL. De plus, il est compatible au pack Open
Office, et aussi avec des outils de reporting (ReportLab) pour produire des rapports en PDF ou en
HTML.
La logique dopenERP est entirement du ct serveur. La tche du client se rsume demander les
donnes (formulaire ou listes) au serveur et de les renvoyer. Avec cette approche, presque tout le
dveloppement est fait du ct serveur. Ce qui rend OPENERP plus simple au dveloppement et
la maintenance.
Lopration client est trs simple. Quand un utilisateur excute une action (sauvegarder un
formulaire, ouvrir un menu, imprimer, ...) il envoie cette action au serveur. Le serveur envoie alors
la nouvelle action pour s'excuter ct client.
Il y a trois types d'actions :

Ouvrir une fentre (formulaire, listes)

Imprimer un document.

Excuter un wizard.

Figure 7:Architecture Client-Serveur dopen ERP

3.4 Architecture modulaire dOpenERP


Un module OpenERP est la dfinition, dans le Framework OpenERP, dune gestion informatise
dun domaine. Cette architecture nest pas propre open ERP. Elle est en fait partage par tous les
ERP. Il sagit de la facult de construire des applications informatiques de manire modulaire
(modules indpendants entre eux) tout en partageant une base de donnes unique. Ceci apporte une
importance significative puisque les donnes sont maintenant standardises et partages. Ce qui

39

limine les saisies multiples et vite l'ambigut des donnes de mme nature. Larchitecture
modulaire dopen ERP lui permet de couvrir plusieurs domaines illustrs dans la figure ci-dessous :

Figure 8:Architecture modulaire dopen ERP

Structure dun module OpenERP

Figure 9:Structure dun module OpenERP Python

3.5 Modle vue contrleur


Un (MVC) est une architecture de modles utilise en gnie logiciel. Dans des applications
complexes qui prsentent des lots de donnes aux utilisateurs, on souhaite souvent sparer les
donnes (modle) et l'interface utilisateur (vue), de sorte que les changements l'interface

40

utilisateur n'affectent pas le traitement des donnes, et que les donnes peuvent tre rorganises
sans changer l'interface utilisateur. Le MVC rsout ce genre de problme en dcouplant l'accs des
donnes et la logique des applications de la prsentation des donnes et de l'interaction utilisateur,
en introduisant un composant intermdiaire : le contrleur .
Dans open ERP, on peut appliquer cette smantique de Model View Controller avec :
Model : les modles sont les objets dclars dans OpenERP. Ils sont galement des tables
PostgreSQL.
View : les vues sont dfinies en fichiers XML dans OpenERP.
Controller : le contrleur est les classes Python qui contrle OpenERP.

Figure 10: Modle vue contrleur


OpenERP offre un cadre de dveloppement, cest dire des services techniques informatiques :

Un serveur de base de donnes objet pour reprsenter et mmoriser les objets de gestion et
les rendre accessible via le rseau.

Un "workflow" qui contrle lvolution des objets suivant une procdure.

Des formulaires et crans pour linteraction avec lutilisateur.

Des tats imprimables des objets.

3.6 Gestion lectronique des processus mtier (workflow)


On appelle workflow la modlisation et la gestion informatique de l'ensemble des tches
accomplir et des diffrents acteurs impliqus dans la ralisation d'un processus mtier (aussi appel
processus oprationnel ou bien procdure d'entreprise). Le terme de workflow pourrait donc tre
traduit en franais par gestion lectronique des processus mtier . De faon plus pratique, le
workflow dcrit le circuit de validation, les tches accomplir entre les diffrents acteurs d'un
processus, les dlais, les modes de validation, et fournit chacun des acteurs les informations
ncessaires pour la ralisation de sa tche. Pour un processus de publication en ligne par exemple, il
s'agit

de

la

modlisation

des

tches

de

l'ensemble

de

la

chane

ditoriale.

Il permet gnralement un suivi et identifie les acteurs en prcisant leur rle et la manire de le
remplir au mieux,[Wikipdia].
41

Bute

Description de l'volution du document dans le temps


dclenchement automatique d'actions si certaines conditions sont remplies
gestion des rles de l'entreprise et les tapes de validation
gestion des interactions entre les diffrents objets / modules

3.7 Les services Web


Un service web est un programme informatique permettant la communication et l'change de
donnes entre les applications et systmes htrognes dans des environnements distribus. Il s'agit
donc d'un ensemble de fonctionnalits exposes sur internet ou sur un intranet,

Pourquoi faire ?
Dcomposition d'une application en briques fonctionnelles ou units logiques applicatives.
Composant rutilisable fournissant des donnes et des services dautres Applications.
Facilite l'interoprabilit des diffrents modles de composants en interne comme en externe.
Utilisation et intgration trs facilites de composants mtiers de partenaires
Agrgation de plusieurs services de mtiers diffrents sur un mme site (horaires/rservation
train, assurance, htel...)

Invocation
Il existe deux grands standards de services web, tous deux bass sur XML :

XML-RPC (XML Remote Procedure Call), le plus ancien, fonctionnant sur un principe
procdural et sans gestion des tats.

SOAP

(Simple Object Access Protocol), fonctionnant selon le modle objet.

Quel que soit le standard utilis, le principe de programmation est le mme : l'appel de mthode
distante est ralis grce une bibliothque cliente qui transmet la demande au fournisseur de
service en la formatant en XML de manire transparente; au niveau du serveur une bibliothque
serveur dcode la requte, le serveur fait ses traitement, puis rpond grce cette mme
bibliothque; la bibliothque client dcode enfin la rponse afin qu'elle puisse tre utilise par
l'application client.

XML-RPC
XML-RPC est un protocole RPC (Remote procedure call), une spcification simple et un ensemble
de codes qui permettent des processus s'excutant dans des environnements diffrents de faire des
appels de mthodes travers un rseau.
XML-RPC permet d'appeler une fonction sur un serveur distant partir de n'importe quel systme
(Windows, Mac OS X, GNU/Linux) et avec n'importe quel langage de programmation. Le serveur
est lui-mme sur n'importe quel systme et programm dans n'importe quel langage.
42

Un message XML-RPC est une requte HTTP POST dont le corps est formalis en XML
La rponse de la procdure distante est galement au format XML

Figure 11: XML RPC services

4. Conception dtaill du projet


4.1 Cas dutilisation

4.1.1 Administration du systme


Ladministration complte du systme est assure par ladministrateur. Celui-ci se charge de
contrler laccs des utilisateurs et de grer lensemble des fonctionnalits du systme. Ceci
est modlis par le diagramme de cas dutilisation suivant :

Authentification

<<extend>>
Grer les comptes et les droits
utilisateurs
Administrateur

Grer les fonctionalits du systeme

Diagramme 2: Diagramme de cas dutilisation dadministration du systme.

43

Authentification : avant de se connecter au systme, chaque acteur doit tre identifi par un
login et un mot de passe afin davoir les permissions daccs au systme.
Grer les comptes et les droits des utilisateurs : ce cas permet chaque utilisateur du
systme davoir son compte qui comporte lensemble des processus mtiers dont lesquels il
intervient. Comme, il attribue les droits daccs lutilisateur afin de garantir la fiabilit du
systme.
Grer les fonctionnalits du systme : ce cas permet ladministrateur de grer la totalit
des fonctions mtiers du systme, comme il peut paramtrer des nouvelles fonctionnalits en
cas de besoin.

4.1.2 Diagramme de cas utilisation global de La gestion des ventes


La gestion des ventes consiste grer lensemble dactivits des commerciaux, et assurer le
suivi des commandes des clients tout en grant les factures et les dossiers des clients.
Les utilisateurs sont tenus dutiliser le systme dans la ralisation de leurs tches qui sont
accordes.

Grer les clients

Grer les Devis


Commercial

<<include>>
<<include>>

Grer les commandes


<<include>>
Se connecter
<<include>>
Grer les tickets
<<include>>
Responsable commercial
Grer la facturation

<<include>>
<<include>>

Grer les produits

Suivi d'activit
Directeur gnral

Diagramme 3: Diagramme de cas dutilisation global de la gestion des ventes.


Ce diagramme regroupe les fonctionnalits globales que doit assurer le systme vis--vis la
gestion des ventes, et par la suite on va dtailler ce diagramme pour bien claircir lutilit de
chaque cas dutilisation.

44

4.1.3 Diagramme de cas utilisation dtaille de La gestion des ventes


Description des cas dutilisation :

Grer les clients : ce cas dutilisation permet aux acteurs de crer et mettre jour les
dossiers lis aux clients, comme il doit assurer le suivi des clients, comme il permet
dassocier les contacts au client si le client est une socit.

Grer les commandes : permet de grer et de faire le suivi des commandes vis--vis au
client avec les rapports imprims.
Grer la facturation : ce cas assure la cration et la mise jour des factures, comme il
permet de faire le suivi des factures jusqu la dernire tape qui est le paiement.

Grer les produits : comporte la cration des produits ou bien les mettre jour. Aussi,
ce cas dutilisation permet de visualiser la variation des stocks et de signaler les
besoins vis--vis les produits matriels non disponibles.

Suivi dactivit : contient lensemble des tableaux de bords qui font lanalyse des
ventes selon les indicateurs (comme le chiffre daffaire par mois, le nombre des ventes
par client, analyse des factures).

45

Grer les clients

<<extend>>

Cre client

<<extend>>
<<extend>>

client est
societe

Cre contact
<<include>>

Grer tickets
<<include>>
<<extend>>
Intervention

Commercial

Se connecter

<<include>>
Grer les commandes
<<extend>>
<<extend>>
<<extend>>
<<extend>>
Annuler
commande

Valider
commande

Cre
commande

<<include>>

Imprimer/envoyer
commande

Grer la facturation

Responsable commercial

<<extend>>

<<extend>>
<<extend>>

Pay la
facture

Annuler
facture

Cre facture
<<extend>>

Imprimer/envoyer
facture

<<include>>

Grer les produits


Directeur gnral

<<extend>>
<<extend>>
<<extend>>
Ajout produit

Modifier
produit

supprimer
produit
<<include>>

Suivi d'activit

<<extend>>
<<extend>>

Analyse des
factures

Analyse des vente

Diagramme 4: Diagramme de cas dutilisation dtaill de la gestion des ventes.

46

4.1.4

Diagramme de cas utilisation global de La gestion des achats et dentrept

La gestion des achats consiste grer les produits entrants et sortants dans le stock comme
elle assure la gestion des achats des produits.
Grer les stocks

<<extend>>
<<include>>
Grer les produits

Responsable stock

<<include>>

Grer les fournisseurs


<<include>>
Se connecter
Grer les dde de prix/
devis

<<include>>

<<include>>

Responsable Achat

Grer les commandes d'


achat

<<include>>
<<include>>

Grer la facturation

Suivi d'activit
Directeur gnral

Diagramme 5: Diagramme de cas dutilisation global de la gestion des achats et stocks.


Ce diagramme regroupe les fonctionnalits globales que doit assurer le systme vis--vis la
gestion des achats et par la suite, on va dtailler ce diagramme pour bien montrer lutilit de
chaque cas dutilisation.
4.1.5 Diagramme de cas utilisation dtaill de La gestion des achats et dentrept
Description des cas dutilisation :
Grer les stocks : ce cas permet le contrle des produits entrants et sortants et la
mise jour du stock si par exemple un produit est livr il doit tre supprim
automatiquement, comme il doit le mettre jour si un produit est achet.
Grer les fournisseurs : permet de crer des dossiers des fournisseurs et de les
mettent jour une fois il y a une notification ajouter.
Grer les demandes dachat: permet de faire le suivi des demandes dachat quon
peut les crer, mettre jour et les analyser.
Grer la facturation : ce cas assure la cration et la mise jour des factures,
comme il permet de faire le suivi des factures.

47

Grer les produits : comporte la gestion des produits. Aussi, ce cas dutilisation
permet de visualiser la variation des stocks et de signaler les besoins vis--vis les
produits non disponible.
Suivi dactivit : contient lensemble des tableaux de bords qui font lanalyse des
produits selon les indicateurs.
<<extend>>

Mouvement des
stocks

Grer les stocks


<<extend>>
<<extend>>
Grer les
produits

Inventair
physique

<<include>>

Grer les fournisseurs

Responsable stock
<<extend>>

<<extend>>

Ajout
fournisseur

<<extend>>

Modifier
fournisseur

Supprimer
fournisseur

Grer les demande de


prix/Devis

<<include>>

<<include>>
Se connecter

Grer les commandes d'


achat

Responsable Achat

<<include>>
<<extend>>

<<extend>>

<<extend>>

<<extend>>
Cre
commande

imprimer
commande

Modifier
commande

<<include>>
Annuler
commande

<<include>>

Grer la facturation
Directeur gnral

<<extend>>

<<extend>>
<<extend>>
Consulter
facture

Etablir facture
Imprimer
facture

Suivi d'activit
<<extend>>

<<extend>>
<<extend>>
Analyse des
achats

Analyse
reception

Analyse stock

Diagramme 6: Diagramme de cas dutilisation dtaill de la gestion des achats et stocks.

48

4.2 Les processus mtiers

4.2.1 Le processus mtier des ventes


Afin de comprendre le processus des ventes de point de vue mtier et dclaircir la relation
entre les diffrentes phases dune vente, le diagramme suivant illustre ses relations:

Diagramme 7: Processus mtier des ventes.


Une fois le commercial reoit un bon de commande de la part dun client, il cre un devis qui
doit tre envoy par la suite ce client par email pour vrifier les informations afin de la
convertir en une commande de vente valide. Pour ensuite passer par le service de facturation
et de livraison. La vente se termine une fois elle est livre et facture.

4.2.2 Le processus mtier des achats


Aprs un besoin exprim par les entits de lentreprise et un contact avec le fournisseur, on
peut prsenter le processus dachat comme suivant :

49

Diagramme 8: Processus mtier des achats.


Une fois lentreprise a besoin dun produit le responsable, dclenche une opration dachat
qui commence par la cration dun devis pour la demande de prix envoyer au fournisseur, et
aprs la validation dachat par le responsable, la demande de prix doit tre converti en une
commande dachat valide. Cette dernire passe, par la suite, par le service de facturation et
de rception. Lachat se termine une fois elle est rceptionne et facture.

4.2.3 Processus mtier de la gestion comptable


Lenchainement de lensemble des activits de la gestion comptable et ses liaisons avec les
autres services est prsent dans le diagramme suivant :

Diagramme 9:Processus mtier de la gestion comptable

50

Une fois la facturation de vente ou dachat est valide, une criture comptable doit tre
associe. Cest ce moment o commence le processus du paiement qui aboutit en fin une
facture paye.

4.3 Diagramme de squence


4.3.1

Diagramme de squence des ventes

Les diagrammes de squences sont la reprsentation graphique des interactions entre les
acteurs et le systme selon un ordre chronologique

Diagramme 10: Diagramme de squence des ventes.

Les scnarios :

51

Dans le processus des ventes on a lacteur responsable qui interagie avec le systme
central(ERP).
Un client a besoin dun produit doit interagit avec le responsable du vente afin dtablir
un devis.
Aprs ltablissement de devis le systme doit consulter ltat de stock pour enregistrer
cette dernire.
Aprs lenregistrement, le responsable valider la commande et notifi le client par un
email ou SMS pour lui confirmer la commande.
Gnration de la facture totale a pay par le client.

4.3.2 Diagramme de squence des achats


Aprs un besoin exprim par les entits de lentreprise et un contact avec le fournisseur, on
peut prsenter le diagramme de squence suivant :

Diagramme 11: Diagramme de squence des achats.

52

Les scnarios :
Dans le processus dachat, on a lacteur responsable des achats qui interagie avec le systme
central(ERP).
Aprs un besoin exprim par les entits de lentreprise et un contact avec le
fournisseur, le responsable dachat demande une liste des prix
Aprs la consultation des prix des produits par les entits de lentreprise le
responsable tablit le bon de commande dachat.
Aprs la validation de commande, le systme doit traiter les donnes et enregistrer la
commande.
Le responsable cre le bon de rception de commande.
Aprs la rception de la commande le systme approuver la facture finale a pay.
Mis jour du stock.

4.4 Diagramme de class

53

Groupe

Utilisateur

- id
: int
- nom
: char
- privileges : char

1..*
0..*

id
nom
prenom
login
mot_de_pass
active

:
:
:
:
:
:

Fournisseur

int
char
char
char
char
boolean

0..*
1..1

Ticket
-

id
auteur
lieu
detaille
date_debut
titre
contact
motif
etat
date_fin

1..1

1..1
:
:
:
:
:
:
:
:
:
:

int
char
char
char
Date
char
char
String
char
Date

1..1 -

commandeAchat
-

id
total
date
etat

:
:
:
:

int
int
Date
char

1..*

1..1

1..1

0..*
0..1

0..*

0..1

1..1

CommandeVente
0..*

1..1

id
totale
date
etat

:
:
:
:

int
long
Date
char

id
line_cde_id
date
description
etat

:
:
:
:
:

int
int
Date
String
char

1..1 -

1..*

id
date
method
type

:
:
:
:

1..*
LigneAchat

1..1

1..1

1..*
1..1

id
date_debut
date_fin
lieu
intervenent
titre
rapport
etat

:
:
:
:
:
:
:
:

Client
-

int
Date
Date
char
char
char
String
char

id
nom
prenom
adresse
civilite
telephon
fax
couriel
ville
image
active

:
:
:
:
:
:
:
:
:
:
:

int
char
char
char
char
int
int
char
char
char
boolean

1..*
LigneVente
-

id
quantite
prix_unitaire
description
sous_total

:
:
:
:
:

id
mode
date_paiement
montant
origine

:
:
:
:
:

Produit
1..*
1..1

0..*

- id
: int
- nom
: char
- discription : String

Contacte
:
:
:
:
:

int
float
float
String
float

1..1

Categories

id
nom
fonction
courriel
telephone

:
:
:
:
:

int
char
char
char
long

1..*

int
char
Date
long
char

int
float
float
String
float

1..1

id
quantite
prix_unitaire
discription
sous_total

Paiement

1..1

Intervention

int
char
char
String
double
double
char
char
boolean

int
Date
char
char

1..*

1..*

:
:
:
:
:
:
:
:
:

Recue

Facture
-

id
nom
prenom
adresse
telephone
fax
ville
couriel
active

1..1
1..*

id
nom
prix_vente
prix_achat
etat
image
quantit_disponible
description
active

:
:
:
:
:
:
:
:
:

int
char
float
float
char
String
float
String
boolean

1..*

1..*
MouvementStock
- id
: int
- date
: Date
- movdest : char

Diagramme 12: Diagramme des classes dtaill


Ce diagramme reprsente les classes ncessaires pour assurer un bon fonctionnement du
systme mettre en uvre, les utilisateurs de lapplication sont regroups dans des groupes,
chaque groupe possdant des privilges qui permettent ses utilisateurs inscrits daccder
certaines fonctionnalits.
Les utilisateurs peuvent effectuer des achats des produits auprs des fournisseurs, chaque
achat se compose des lignes dachat, chacune de ces lignes contient un article dsign, avec la
quantit acheter. Comme ils peuvent aussi effectuer des ventes des produits aux clients,
chaque vente se compose des lignes vente, chacune de ces lignes contient un article dsign,
avec la quantit vendre. Un utilisateur peut aussi cre un ticket pour un service fourni un
client, comme il peut aussi affecter des interventions aux tickets pour suivre ltat des services
offerts au client par lentreprise.

54

4.5

Diagramme de composants

Le diagramme de composants dcrit l'organisation du systme du point de vue des lments


logiciels comme les modules (paquetages, fichiers sources, bibliothques, excutables), des
donnes (fichiers, bases de donnes) ou encore d'lments de configuration (paramtres,
scripts, fichiers de commandes). Ce diagramme permet de mettre en vidence les
dpendances entre les composants de notre projet ERP.
Couche presentation(XML)
Composant1
Les fenetres

Composant_3
les interfaces
utilisateur
Composant_2
Les actions

Couche logique metier(python)


Composant_4
Web services
Composant_9

Composant_6

base module
distribution

report engine

Composant_5
object busnes

Composant_7
Composant_8
ORM

workflow engine

Couche de persistance (ORM)

Composant_10
SGBD postgreSQL

XML-RPC

Diagramme 13: Diagramme des composantes

La couche prsentation : joue le rle de la vue dans le model MVC, il dcrit tous ce qui
est interface, fentres et les actions. dans notre cas les vues sont dveloppes en XML
55

La couche logique mtier : joue le rle de contrleur de model MVC il permet de


dcrire les objets les classes du projet via le Framework open Object qui assure la
persistance des objets, via le langage de programmation python.

La couche persistance : concerne la persistance des donnes (ORM) dans un serveur


Postgresql.

4.6

Diagramme de dploiement

Le diagramme de dploiement est une vue statique qui sert reprsenter l'utilisation de
l'infrastructure physique par le systme et la manire dont les composants du systme sont
rpartis ainsi que la relation entre eux. Les lments utiliss par un diagramme de
dploiement sont principalement les nuds, les composants, les associations. Les
caractristiques des ressources matrielles physiques et des supports de communication
peuvent tre prcises par strotype.

Diagramme 14: Diagramme de dploiement

56

4.7

Diagramme darchitecture dapplication

Ce diagramme reprsente larchitecture dapplication de notre ERP dans lequel on possde


un serveur SGBD qui reprsenter par Postgresql, et un serveur dapplication openerp qui
contient tous les modules concerns par notre systme en interaction avec un interprteur
des scripts python, puis des service web, des appel XML-RPC qui assurent linterface entre
lutilisateur et le systme.

Diagramme 15: Diagramme darchitecture dapplication


Aprs la description et lanalyse des besoins de la socit, nous allons utiliser la solution
adquate pour assurer la bonne gestion des processus mtiers interne de lentreprise. Pour ce
faire, nous avons utilis un ensemble des outils et technologies pour assurer la mise en place
de la solution.

57

Chapitre 4 : Les outils et technologies utilis

Ubuntu
Postgresql
OpenERP
OpenOffice
jquerymobile

Dans ce chapitre, nous allons prsenter les diffrents outils et


technologies utilis pour la ralisation de ce projet.

58

1. les technologies mises en uvre


Ce chapitre dcrit les diffrentes technologies adoptes et utilises pour la ralisation de ce
projet, commencer par le systme dexploitation Linux, tout en passant par le PGI OpenERP,
le systme de gestion de bases de donnes PostgreSQL, OpenOffice pour les rapports, les
langages ncessaires pour le dveloppement, savoir le langage Python et XML, et en fin
JQuery mobile pour la version mobile,

1.1.Ubuntu
Ubuntu est un systme dexploitation libre commandit par la socit Canonical et une
marque dpose par cette mme socit.
Fond sur la distribution Linux Debian et utilisant le bureau Unity, Ubuntu se veut convivial,
intuitif et sr . Il est constitu de logiciels libres, est disponible gratuitement y compris pour
les entreprises, et bnficie d'une nouvelle version (appele mise niveau ) tous les six
mois.
Avec une utilisation globale estime plus de 25 millions d'utilisateurs, il est principalement
conu pour une utilisation sur des ordinateurs personnels (portables et fixes), bien que
d'autres versions consacres aux netbooks et aux serveurs existent aussi. Depuis Ubuntu
11.04, la version Netbook a fusionn avec la version Desktop. Cette dernire tant passe
l'interface Unity, il n'y avait plus de raison de maintenir deux branches distinctes.

1.2.Environnement de dveloppement Eclipse


Eclipse est un projet de la Fondation Eclipse visant dvelopper un environnement de
dveloppement intgr libre, extensible, universel et polyvalent.
Son objectif est de produire et fournir des outils pour la ralisation de logiciels, englobant les
activits de programmation (notamment au moyen dun environnement de dveloppement
intgr) mais aussi de modlisation, de conception, de test et de reporting. Son
environnement de dveloppement intgr vise supporter tout langage de programmation.
Dans notre projet lutilit dclipse consiste dvelopper certain taches en utilisant le plugin
python dveloppement (pydev) et xml.

1.3.PostgreSQL
PostgreSQL est un systme de gestion de base de donnes relationnelle et objet (SGBDRO).
C'est un outil libre disponible selon les termes d'une licence de type BSD. Ce systme est
concurrent d'autres systmes de gestion de base de donnes, qu'ils soient libres (comme
MySQL et Firebird), ou propritaires (comme Oracle, Sybase, DB2, Informix et Microsoft SQL
Server). Comme les projets libres Apache et Linux, PostgreSQL n'est pas contrl par une
seule entreprise, mais est fond sur une communaut mondiale de dveloppeurs et
d'entreprises.

59

PostgreSQL peut stocker plus de types de donnes que les types traditionnels entiers,
caractres, etc. L'utilisateur peut crer des types, des fonctions, utiliser l'hritage de
type etc.

PostgreSQL est pratiquement conforme (de plus en plus conforme) aux normes ANSI
SQL 89, SQL 92 (SQL 2), SQL 99 (SQL 3), SQL:2003 et SQL:2008. Il fonctionne sur
diverses plates-formes matrielles et sous diffrents systmes d'exploitation.

PostgreSQL fonctionne sur Solaris, SunOS, Mac OS X, HP-UX, AIX, Linux, IRIX, Digital
Unix, BSD, NetBSD, FreeBSD, OpenBSD, SCO unix, NeXTSTEP, UnixWare et toutes sortes
d'Unix. Depuis la version 8.0, PostgreSQL fonctionne galement nativement sur
Windows. Avant la version 8, il fallait un mulateur de type cygwin pour faire
fonctionner PostgreSQL sur ce systme d'exploitation.

PostgreSQL est largement reconnu pour son comportement stable, proche dOracle.
Mais aussi pour ses possibilits de programmation tendues, directement dans le
moteur de la base de donnes, via PL/SQL. Le traitement interne des donnes peut
aussi tre coupl d'autres modules externes compils dans d'autres langages.

1.4.Python
Python est un langage de programmation multi-paradigme. Il favorise la programmation
imprative structure, et oriente objet. Il est dot d'un typage dynamique fort, d'une gestion
automatique de la mmoire par ramasse-miettes et d'un systme de gestion d'exceptions ; il
est ainsi similaire Perl, Ruby, Scheme, Smalltalk et Tcl. Le langage Python est plac sous une
licence libre proche de la licence BSD et fonctionne sur la plupart des plates-formes
informatiques, des supercalculateurs aux ordinateurs centraux, de Windows Unix en
passant par Linux et Mac OS, avec Java ou encore .NET. Il est conu pour optimiser la
productivit des programmeurs en offrant des outils de haut niveau et une syntaxe simple
utiliser. Il est galement apprci par les pdagogues qui y trouvent un langage o la syntaxe,
clairement spare des mcanismes de bas niveau, permet une initiation plus aise aux
concepts de base de la programmation.
Python est un langage :

conu pour produire du code de qualit, portable et facile intgrer : grce sa


syntaxe claire, cohrente et concise, Python permet aux dveloppeurs de produire du
code de qualit, lisible et maintenable.

60

Fourni ds le dpart avec des modules de tests, Python est un langage agile. Le terme
agile est originellement issu de la mthodologie de programmation agile, trs proche
de la programmation itrative. Cette mthodologie, qui rduit les risques lis la
conception de logiciels, introduit entre autres des principes de tests continus du code.

De haut niveau, orient objet et totalement libre : mme si elle nest pas impose,
Python permet la programmation oriente objet. Tous les mcanismes objet essentiels
sont implments et toutes les donnes manipules sont des instances de classes,
comme pour les langages SmallTalk ou Ruby.

Dynamique : dans la plupart des implmentations, le code source nest pas compil
contrairement des langages comme C ou Pascal, mais excut la vole. On parle
alors de langage interprt.

Ce mode de fonctionnement rend la programmation beaucoup plus souple puisquil est


possible de changer un programme en cours dexcution.

1.5.XML (eXtensible Markup Language)


XML est en quelque sorte un langage HTML amlior permettant de dfinir de nouvelles
balises. Il s'agit effectivement d'un langage permettant de mettre en forme des documents
grce des balises (markup).
Contrairement HTML, qui est considrer comme un langage dfini et fig (avec un nombre
de balises limit), XML peut tre considr comme un mtalangage permettant de dfinir
d'autres langages, c'est--dire dfinir de nouvelles balises permettant de dcrire la
prsentation d'un texte (Qui n'a jamais dsir une balise qui n'existait pas ?). La force de XML
rside dans sa capacit pouvoir dcrire n'importe quel domaine de donnes grce son
extensibilit. Il va permettre de structurer, poser le vocabulaire et la syntaxe des donnes qu'il
va contenir.
En ralit les balises XML dcrivent le contenu plutt que la prsentation (contrairement
HTML). Ainsi, XML permet de sparer le contenu de la prsentation, ce qui permet par
exemple d'afficher un mme document sur des applications ou des priphriques diffrents
sans pour autant ncessiter de crer autant de versions du document que l'on ncessite de
reprsentations.
XML a t mis au point par le XML Working Group sous l'gide du World Wide Web
Consortium (W3C) ds 1996. Depuis le 10 fvrier 1998, les spcifications XML 1.0 ont t
reconnues comme recommandations par le W3C, ce qui en fait un langage reconnu. XML est
un sous ensemble de SGML (Standard Generalized Markup Language), dfini par le standard
ISO8879 en 1986, utilis dans le milieu de la Gestion Electronique Documentaire (GED). XML

61

reprend la majeure partie des fonctionnalits de SGML, il s'agit donc d'une simplification de
SGML afin de le rendre utilisable sur le web , XML fait partie du code des modules composants
OpenERP, les vues par lesquelles sont reprsents les diffrents objets sont crites en XML,
ainsi nous y trouvons la description dtaille de laffichage des arbres, formulaires, menus et
autres actions.

1.6.OpenOffice et la conception des rapports


OpenOffice est une suite bureautique libre et gratuite qui offre des modules de traitement de
textes, tableur, prsentation, dessin vectoriel, base de donnes, et dition de formules
mathmatiques.
OpenOffice Texte est un outil du traitement de texte. Il permet de grer en plusieurs langues
les paragraphes et mettre en forme les documents, tant au niveau de leur contenu smantique
que de leur mise en page.

Rapports OpenOffice.org
Rapports OpenOffice sont les formats de rapports les plus couramment utiliss par OpenERP
aprs linstallation dun plugin qui permet de grer la connexion entre le serveur OpenERP et
OpenOffice Texte via le protocole XML-RPC afin de cre des nouveau rapports ou de modifier
des rapports existant dj.
OpenOffice Texte est utilis pour gnrer un modle RML, qui son tour est utilis pour
gnrer un rapport PDF imprimable.

Figure 12: Le flux de documents

Le processus interne

62

Figure 13: Le processus interne


Le fichier de modle. SXW
Nous utilisons un fichier (.SXW) pour le modle, qui est le format OpenOffice. Le modle
inclut des expressions entre parenthses ou des champs d'OpenOffice point sur les
donnes du serveur OpenERP, Ce document est uniquement utilis pour les dveloppeurs
pour facilement gnrer le fichier. RML.
Le gabarit. RML
Nous gnrons un fichier (.RML) partir du fichier (.SXW) en utilisant SXW2RML. Un
fichier (.RML) est un format XML qui reprsentent un document (.PDF). Il peut tre
converti Aprs en un format PDF.
Le moteur de rapport
Le moteur de rapport Ouvrir le fichier (.RML) et affecter les donnes de la base de donnes
chaque expression.
Le document final
Enfin le fichier (.RML) est converti au format PDF ou HTML selon les besoins,

1.7.Power AMC
PowerAMC est un logiciel de conception cr par la socit SDP, qui permet de modliser les
traitements informatiques et leurs bases de donnes associes.
Cr par SDP sous le nom AMC*Designor, rachet par Powersoft, ce logiciel est produit
par Sybase depuis leur achat par cet diteur en 1995. Hors de France, la version
internationale est commercialise par Sybase sous la marque PowerDesigner.

63

PowerAMC permet de raliser tous les types de modles informatiques. Il reste un des seuls
qui permet de travailler avec la mthode Merise. Selon Riff News, cela permet d'amliorer la
modlisation, les processus, le cot et la production d'applications.

1.8.Loutil pour lapplication mobile (jQuerymobile)

Framework
Cration de site web/ web application optimises mobiles
Bas sur HTML5 et CSS
Fonctionne avec la librairie jQuery
JQuery est un clbre framework Javascript, permettant de raliser des interfaces animes
pour le web. Un nouveau projet a vu le jour lintrieur de ce Framework : JQuery Mobile, le
but tant de proposer un systme pour dvelopper facilement des applications web pour
mobile, avec une interface unifie.
Pourquoi utiliser jquery mobile pour un site/application mobile ?
Optimisation cross plateforme
Optimisation mobile
optimisation de linterface utilisateur.
comportements semblables aux natifs
Jquery mobile est responsive
cross-device: sadapte la taille de lcran sans code supplmentaire

64

Chapitre 5 : Ralisation de lapplication Desktop et


mobile

installation et test
Application desktop
Application mobile
La production

Dans ce chapitre, nous allons prsenter un ensemble des


fonctionnalits offert par notre systme se forme des prise
dcran ainsi la simulation et tests de systme.

65

1.

Installation et Simulation
1.1. les Test

Le test est une activit importante dont le but est darriver un produit zro dfaut .
C'est la limite idaliste vers laquelle on tend pour la qualit du logiciel. Gnralement 40% du
budget global est consacr leffort de test.
Cycle de dveloppement de test

Figure 14: Cycle de dveloppement de test

Test Boite noire


Le test de la bote noire est utilis en programmation informatique et en gnie logiciel, pour
tester un programme en vrifiant que les sorties obtenues sont bien celles prvues pour des
entres donnes.
Principe :

On considre le programme dans son aspect fonctionnel et non plus structurel.

On partitionne le domaine (DE) en classes.

On gnre des cas de test aux limites de classe.

66

1.2.

Installation

Maintenant que le codage est termin, on peut passer linstallation des modules
personnaliss Vente, Achat, Stock, maintenance , qui installera dabord les modules
auxquels il est li, ensuite ajoutera ses propres fonctionnalits. Avant de lancer le serveur
dOpenERP, on doit copier les dossiers de ces modules dans le dossier Addons dOpenERP,
ensuite on lance le serveur (fichier openerp-server.py), et nous pourrons ce stade, installer
notre nouveau module.
Bien videmment, on doit dabord se connecter puis accder aux paramtres.

Figure 15: Connexion au systme


Une fois connect, on se rend aux paramtres, puis dans le menu modules, on lance une mise
jour de la liste des modules, afin quon puisse trouver celui quon vient dajouter parmi la liste,
l on lance linstallation des modules concerns.

Figure 16: Accueil OpenERP - client web


67

1.3. Paramtrage
Maintenant que nous avons install les modules, on peut commencer paramtrer le PGI et
dmarrer une simulation pour sassurer de son bon fonctionnement.
Paramtrage Gnral
Avant de se lancer dans le paramtrage de lapplication, on va commencer par un
paramtrage gnral, o il faut saisir les dtails de lentreprise, son adresse, et autres
coordonnes aussi il faut changer la devise vers le Dirham, pour que les prix et les factures
soient bien affichs ultrieurement, selon le contexte marocain.
Plan comptable
Toute application fonctionnant sous OpenERP, il faut spcifier un plan comptable utiliser
pour la gnration des diffrentes critures comptables et journaux de comptabilit.
Pour le plan comptable de ce projet, nous avons choisi le plan comptable marocain de
kazacube, dOpenERP pour enregistrer les diffrentes critures comptables dans leurs
journaux respectifs.
1.4. Gestion de base
La gestion de base (ajout, modifier, supprimer) concerne les objets lmentaires, comme les
utilisateurs, les produits, les clients et groupes. Ci-dessus la liste des utilisateurs qui doivent
interagit avec le systme :

Figure 17: Liste des utilisateurs


Pour bien contrler les droits daccs et scuriser notre systme, openerp dot dune fonction
des groupes qui permet de grer et daffecter les utilisateurs a des groupes distincts avec leurs
tches raliser.
Plus spcifiquement dterminer les menus accessibles par chaque utilisateur comme il
montre la figure suivant.

68

Figure 18: Formulaire des droites daccs


Pour faciliter lutilisation de lapplication, des info-bulles saffichent lorsquon survole les
champs, fournissant des explications concernant la fonction du champ pour aider bien le
renseigner.
1.5. Gestion des ventes
Dans ce volet nous pouvons consulter la liste des clients, ainsi que les dtails de chaque client
et autres actions en relation. A savoir la barre de recherche personnalise par un ensemble
des critres, puis un mode daffichage soit sous format liste, formulaire ou kanban.
Toutes les fonctionnalits de gestion des ventes sont regroupes par un cadre comme il
illustre la figure suivant.

Figure 19: Fonctionnalits des ventes - Liste des clients

69

En crant un bon de commande en tat brouillon, on slectionne un client auquel il est


adress, ensuite on ajoute les produits quon souhaite vendre, on peut aussi choisir la
mthode de facturation si elle doit tre base sur le bon de commande ou sur les rceptions
des produits, Pour ensuite lenvoyer au client par mail afin davoir son accord autour de ce
dernier cre (prix ).

Figure 20: Nouveau commende en tat devis


Aprs laccord de client lutilisateur doit confirmer le bon de commande qui doit dispatcher
dans le systme laide dun moteur de workflow pour quil arrive au service de facturation et
paiement.

Figure 21: Envoi et conversion de devis en commande de vente


70

1.6. Gestion des achats


Les figures suivantes montrent la gestion des achats, qui comprend ldition et validation de
bons de commande.
Aprs un besoin exprim par lentreprise lutilisateur envoi une demande de prix un
fournisseur spcifique en raison de lui demande les informations autour dun tel produit pour
ensuite tablir un bon de commande dachat.
La figure suivante reprsente un bon de commande dachat confirm qui vient dtre termin
par la rception des produits demands pour ensuite tablir la facture fournisseur payer.

Figure 22: Bon de commande dachat confirm en attente de rception


1.7. Gestion du stock
Dans cette partie on trouve tout ce qui concerne la gestion des produits, les bons de
rceptions, bon de livraison, et les inventaires physiques.

71

Figure 23: Gestion dentrept et ces fonctionnalits


Dans cette section on peut aussi voir les bons de livraison en cliquant sur le menu bon de livraison
:

Figure 24: Liste des bons de livraison


Les rceptions peuvent se faire sur des bons de commande, ou tout simplement sans origine.
Si une rception est base sur un bon de commande valid.
On peut aussi consulter les bons de rception en cliquant sur le menu bon de rception :

Figure 25: Liste des bons de rception


On peut aussi dfinir les rgles de stock minimum des produits, condition quon ait spcifi
le fournisseur dans la fiche du produit, pour quensuite ds quun produit franchit la limite

72

dfinie, un bon de commande est automatiquement cr et est envoy au fournisseur quand le


planificateur est lanc.
1.8. Facturation ou comptabilit
Ce module concerne tout ce qui est factures, paiements et critures dans les journaux.
OpenERP considre les clients et fournisseurs comme tant une seule entit : partenaire, avec
un attribut qui dsigne si ce dernier est un client ou un fournisseur, donc les factures et
paiements pour les fournisseurs ont la mme prsentation que celle des clients.
Autres fonctionnalits possibles dans ce module, cest la gestion des mthodes de paiements,
diffrents journaux de comptabilits, on peut mme changer de plan comptable et utiliser un
autre.
A travers ce module nous pouvons suivre de prs les rglements de factures des clients,
visualiser les factures qui nont pas encore t valids, comptabiliser les factures payes

Figure 26: Exemple de la facture client ou fournisseur


Une fois la commande est termine elle doit tre stocke dans la base de donne pour des
raisons de scurit et mentionner comme livre et paye ainsi que tous les informations
ncessaires de la cration de devis jusqu ltablissement du facture.
1.9. Gestion de maintenance Ticket et Intervention
Le service technique consiste crer des tickets et intervention sur les services offerts par
lentreprise par exemple si un client a besoin dun service il doit le demander lentreprise,
une fois la demande de client arrive, lutilisateur tablit un ticket ouvert avant de rendre

73

service au client. Une quipe doit assurer le service pour le client. Pour ensuite termin par
laffectation des interventions au ticket.

Figure 27: Service technique, cration dun ticket

Figure 28: Service technique, affectation dintervention au ticket


1.10. Suivi dactivit(les tableaux de bord)
Dans cette section, on a un ensemble des statistiques pour les ventes, les achats et la
facturation. Pour les ventes, le systme affiche tous les commandes en tat devis qui ont
besoin de confirmation afin de faciliter la tche lutilisateur ainsi que le chiffre daffaire
mensuel des ventes.

74

Figure 29: Suivi dactivit des ventes


La figure suivante prsente le tableau de bord des achats qui permet dafficher les commandes
dachat en tat brouillons (demande de prix) ainsi que les achats mensuels par catgories des
produits.

Figure 30: Suivi dactivit des achats


La figure suivante prsente le tableau de bord des stocks qui permet dafficher les statistiques
des rceptions par catgorie darticle ainsi que les statistiques des catgories darticles
expdier.

75

Figure 31: Suivi dactivit des stocks


1.11. Services de Messagerie
Le service de messagerie constitue lun des lments les plus importants dans notre ERP cest
lui qui permet de faire communiquer les documents entre lentreprise et les clients /
fournisseurs ainsi que le partage dinformation entre les utilisateurs du systme puis lenvoi
des emails partir dERP vers les partenaires.

Figure 32: Service de messagerie

76

1.12. Application mobile


En plus dapplication desktop, nous avons dvelopp une application mobile qui permet aux
utilisateurs daccder par tlphone des fonctionnalits du systme en mode lecture et
criture. Ci-dessus des prises dcran de certaines fonctionnalits.
Les figures suivantes sont numrotes de 1 3 afin de montrer les dtails de chaque fonction
1-Page dauthentification lapplication avec la possibilit de charger tous les bases de
donnes et choisir une.
2 Les fonctionnalits globales offertes par lapplication mobile.
3-Liste des utilisateurs avec possibilit dajout (+) un nouveau utilisateur, modifier et
supprimer un utilisateur dj exist.

Figure 33: Connexion mobile

Figure 34: Accueil mobile

Figure 35: Liste utilisateurs

4-Page dajout dun nouvel utilisateur.


5- Modification dun utilisateur.
6-Listes des partenaires (gestion partenaire) avec des liens pour modifier, supprimer ou
consulter les dtails complets dun tel partenaire.

Figure 36: Formulaire dajout

Figure 37: Mobile : modification

77

Figure 38: Mobile liste partenaire

1.13. La production et installation


On appelle serveur de production, le serveur sur lequel sera install notre ERP une fois
termine, donc accessible aux utilisateurs finaux. Par opposition, il y a le serveur de
dveloppement, celui sur lequel nous dveloppons notre ERP.
Aprs lachvement dun projet ou application informatique, il est ncessaire de la mettre en
production sur un serveur pour que les utilisateurs puissent utiliser le systme, dailleurs cest
le cas de la socit Eone Group. Cest pour cela la socit a achet un espace serveur auprs de
1&1 Internet France avec les caractristiques suivantes :
CentOS 6 (64 bits) 2Go de memoir, 300 Go Stockage
Parallels Plesk Panel 11(Plesk est une interface de gestion de serveur payante, dite
par Parallels)
En suite pour faire linstallation sur le serveur nous avons utilis Bitvise SSH Client comme il
illustre la figure suivante.

Figure 39: Bitvise SSH Client

78

Conclusion gnrale et perspectives


Ce stage de fin dtudes a t une occasion pour nous pour ctoyer le monde des ERP et de
lentreprise, mais avec plus de responsabilits.
Dans notre projet de fin dtudes, le travail a t ralis au profit de la socit Eone Group. Dans ce
cadre, nous avons mis en place un systme de gestion intgre au sein de la socit.
Pour ce faire, nous avons commenc par la description des besoins des futurs utilisateurs du
systme. Par la suite, nous nous sommes bass sur une tude bibliographique sur les diffrentes
solutions existantes savoir les progiciels de gestion intgre dans le march afin de choisir une
solution qui respecte les exigences de la socit comme la matrise des cots dimplmentation.
OpenERP est la solution lue aprs une tude comparative entre les diffrents progiciels de gestion
intgre. La phase suivante a consist de paramtrer les modules dOpenERP avec les modules
fonctionnels de la socit. Or, la socit possde des modules fonctionnels non prise en charge par
OpenERP savoir la gestion de maintenance. Donc, pour ce dveloppement spcifique, on a dbut
par une analyse conceptuelle de ces modules et par la suite nous avons dvelopp lensemble des
vues et des objets. Finalement, nous avons implment ces modules au sein dOpenERP afin
davoir un systme spcifique de la socit Eone Group qui assure sa gestion globale.
Cot personnel, travailler dans le monde de lopen source, et plus prcisment sur un PGI tel que
OpenERP. Qui ma permet d'acqurir une large partie des technologies notamment le langage
python et lutilisation du framework OpenObject , et de rejoindre une communaut mondiale de
plus de 1500 individus impliqus eux aussi dans la recherche et le dveloppement de nouveaux
modules, afin de faciliter lintgration dune telle solution dans tous les domaines professionnels et
sociaux.
Comme perspective, nous proposons de continuer le paramtrage du module du marketing qui va
assurer la gestion de leurs compagnes publicitaires, puis le passage des commandes par des
smartphones laide de lapplication mobile.

79

Bibliographie & webographie


Bibliographie

Tiny ERP, OpenERP, pour une gestion dentreprise efficace et intgre, Edition
Eyrolles, (Geoffrey S. Gardiner and Fabien Pinckaers), Mai, 2008.
OpenERP : A modern approach to integrated business management based on a free
Open Source software system (Geoffrey S. Gardiner and Fabien Pinckaers), janvier,
2011.
Open Object Developer Book (Tiny ERP) ,2011.
Smile - Livre blanc ERP Open Source version 1.2. (), 2008.
Programmation python Edition Eyrolles, (Tarek ZIAD), janvier 2006.
Apprendre programmer avec Python3 Edition Eyrolles (Grard Swinnen), fvrier
2012.
Webographie

[Open, 2013]: http://www.openerp.com


Le site officiel dOpenERP
[Open, 2013]: http://forum.openerp.com/forum/forum20.html
Forum OpenERP.
[launchpad, 2013]: https://launchpad.net/~openerp
Communi OpenERP.
[Wiki, 2013]: http://fr.wikipedia.org/wiki/Enterprise_Resource_Planning
Informations sur les progiciels de gestion intgre.
[Wiki, 2013]: http:// http://fr.wikipedia.org/wiki/ISO_9126
Informations sur la norme ISO 9126.
Site officiel du cabinet du conseil International Data Conseil IDC
[Postgre, 2012]: http://www.postgresql.org/
Site officiel du PostgreSQL
[Wiki, 2012]: http://fr.wikipedia.org/wiki/PhpPgAdmin
Information sur PhpPgAdmin
[Kazacub, 2013]: http://www.kazacube.com/
Site officiel du Kazacub
[jquerymobile, 2013]: http://jquerymobile.com/demos/1.2.1/
Documentation jQuerymobile.
[openova, 2013]: http://doc.ubuntu-fr.org/openerp

80

ANNEXE :
Ce prsent rapport comprend des annexes
Portant sur :

Installation dOpenERP sous Ubuntu & Windows


Le framework Open Object development module
Les models de missileries.
les rapports

ANNEXE 1:methode installation


1. La dmarche dinstallation dOpenERP Sous linux (distribution ubuntu):
1. crer un utilisateur openerp
Dans un premier temps on se connect en tant que root sous le terminale linux et on cre un
nouveau utilisateur openerp :
sudo adduser --system --home=/opt/openerp --group openerp

2. installer le package PostgreSQL


Aprs lajout de lutilisateur openerp on Install le serveur de base de donne postgresql et
pgadmin3 pour simplifier la gestion laide des interfaces graphique fourni par pgadmin3 :
sudo apt-get install postgresql
sudo apt-get install pgadmin3

3. crer l'utilisateur de base de donne openerp


Dont le terminal on se connecte en tant que postgres.
sudo su postgres

On crer lutilisateur de base de donne openerp


createuser --createdb --username postgres --no-createrole --no-superuser -pwprompt openerp

4. Installer les dpendances


Lutilisation dOpenERP ncessite un ensemble des bibliothques python on les installe
comme suit :
apt-get install python-dateutil python-feedparser python-gdata python-ldap \
python-libxslt1 python-lxml python-mako python-openid python-psycopg2 \ pythonpybabel python-pychart python-pydot python-pyparsing python-reportlab \ pythonsimplejson python-tz python-vatnumber python-vobject python-webdav \ pythonwerkzeug python-xlwt python-yaml python-zsi python-docutils \ python-psutil bzr
wget python-unittest2 python-mock

81

Sinon lors de linstallation dOpenERP toutes les dpendances python sont installer
automatiquement (cest lavantage dutilisation dOpenerp sous linux par rapport Windows
qui oblige linstallation de ces dpendances manuellement).
5. Tlcharger la dernire version de openerp
Toutes les versions dopen source OpenERP sont disponible sur les sites suivant dans notre
cas (linux ubuntu) on va tlcharger le paquet openerp_7.0-20130302-002131-1_all.deb
https://www.openerp.com/en/pricing
https://launchpad.net/openobject/
http://nightly.openerp.com/7.0/nightly/deb/
Aprs le tlchargement du paquet on cherche le paquet et on vrifier sil nest pas installer et
aprs on lance linstallation :
sudo dpkg -i `find . -type f -name '*.deb'`
sudo apt-get -f install

6. Flash plugin
Votre navigateur doit avoir le plugin Flash install, car OpenERP Web utilise des
Composants Flash.
Sudo apt-get install flashplugin-nonfree

2.

La dmarche dinstallation dOpenERP Sous windows (toutes les versions):

a) Installation dOpenERP et Postgresql


OpenERP fonctionne en mode Saas (Software as a service, en fait logiciel en ligne) ou en mode
client/serveur. Je vous conseille de lutiliser en mode logiciel en ligne pour deux raisons
il suffit dinstaller sur un PC (ou un serveur) le serveur et le serveur web et cest
tout, pas dinstallation sur les autres PC, lutilisation du logiciel se fait avec un
navigateur web.
Linterface graphique est plus actuelle .
En cliquant sur le programme dinstallation, tout est automatis, linstallation du Server, du
Web client ainsi que le gestionnaire de base de donnes.
Il suffit de cliquer sur SUIVANT, chaque tape de linstallation.

82

Figure 40: les tapes dinstallation dopenerp sous Windows


Conservez et notez le nom dutilisateur et le mot de passe ncessaire lors de linstallation.
Pour accder au logiciel en mode Web il faut simplement ouvrir un navigateur web et saisir
ladresse suivante : http://localhost:8069
b) Installation des composants postgresql
Afin dexploiter les base de donnes du SGBD postgresql il fout installer un ensemble des outils
savoir le serveur Apache PHP et phpPgadmin qui permet dexcuter les scriptes PHP. Puis
pgAgent qui permet de planifier les taches en fonction du temps choisie (la sauvegarde
automatique de base de donnes). Pour procd linstallation on utilise stackbuilder qui
existe par dfaut dans le dossier dinstallation de postgresql.
C:\Program Files (x86)\OpenERP 7.0-20130302-002131\PostgreSQL\bin

83

Figure 41: les tapes dinstallation des outils postgresql sous Windows
c) Contrle des services

84

Vous pouvez contrler ltat des services openerp et postgresql via linterface suivant :

Figure 42: contrle des services openerp


ANNEXE 2: dveloppement de modules OpenERP avec le framework Open Object
Toutes les donnes OpenERP sont accessibles travers des "objets". Par exemple,
il y a un objet eone.ticket qui accd aux donnes du ticket , un objet account.invoice
concernant les donnes factures, etc... .
Pour dfinir un nouvel objet, on doit dfinir une nouvelle classe dans Python puis l'instantier.
Cette classe doit hriter de la classe osv module osv.
Le fichier: addons/module_name/module_name.py :
class object_name(osv.osv):
_name = "module_name.object_name"
_columns = {
'field_name': fields.field_type('Libell du champs', ...),
'other_field_name' : fields.other_field_type(...),
}
object_name()

Exemple :
class res_partner_address(osv.osv):
_name = 'res.partner'
_columns = {
'name': fields.char('Name', size=128, required=True, select=True),
'date': fields.date('Date'),
'ref': fields.char('Code', size=64),
}
res_partner()

85

Deux lments sont obligatoires (_name et _columns), le reste est optionnels.


Les noms des champs doivent respecter les normes suivantes :
- Tout doit tre minuscule.
- Pas d'espace.
- Pas de caractres spciaux.
Voici un petit exemple d'un module standard qui vous aidera mieux comprendre comment
a marche:
Structure de lexemple de module :
_init_.py
_openerp_.py
Ticket.py
Ticket_view.xml

Crer le dossier Ticket dans \server\bin\addons


Crer le fichier __init__.py dans le dossier Ticket Ce fichier contiendra l'instruction
suivante:
import ticket
Import ticket

Cette instruction permet d'importer le module(les classes) ticket


Crer le fichier __openerp__.py dans le dossier Ticket qui correspond au fichier config de
module.
{
"name": "Gestion des ticket",
"version": "0.1",
"author": "Ait Mlouk Addi",
"website": "http://www.iminoika.com",
"depends": ['base',],
"init_xml": [],
"update_xml": ['ticket_view.xml'],
"active": False,
"installable": True,
}

Crer le fichier ticket.py dans le dossier Ticket:


Ce fichier contiendra toutes les classes du module.
On commence par une classe permettant de grer les tickets :

86

from osv import fields,osv


class eone_ticket(osv.osv):
_name = 'eone.ticket'
_columns = {
'cree par': fields.many2one('res.users','cree par',size=60,required=True),
'client': fields.many2one('res.partner','Client'),
'affecter a': fields.char('Affecter a',size=60,required=True),
'detaille': fields.char('Detaille'),
'date creation': fields.date('Date creation',required=True),
'titr ticket': fields.char('Titre ticket'),
'contact appelent': fields.char('Contact appelent'),
'motif': fields.text('Motif'),
'etat': fields.selection([('sav','Sav'),('avent vent','Avent
Vente'),('diagnostic','Diagnostic'),('contrat','contrat')],'Etat'),
'date fermiture': fields.date('Date Fermeture'),
'intervention': fields.one2many('eone.intervention','ticket','intervention'),
}
eone_ticket()

Les interfaces graphiques


Apres la cration des classe il nous reste a cr des interfaces graphique dsir avec la
syntaxe XML Et des balises propre pour openerp comme il prsente le doc suivant :
Crer le fichier ticket_view.xml dans le dossier Ticket qui correspond au fichier interface de
module

87

<?xml version="1.0"?>
<openerp>
<data>
<record model="ir.ui.view" id="view_eone_ticket_form">
<field name="name">ticket</field>
<field name="model">eone.ticket</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="eone.ticket">
<group colspan="4" col="4">
<field name="cree par" select="1"/>
<field name="client" select="0"/>
<field name="affecter a" select="2"/>
<field name="detaille" select="0"/>
<field name="date creation" select="0"/>
<field name="titr ticket" select="0"/>
<field name="contact appelent" select="0"/>
<field name="motif" select="0"/>
<field name="etat" select="0"/>
<field name="date fermiture" select="0"/>
</group>
<separator string="affectation des interventionnnn"/>
<newline/>
<field name="intervention" select="0"/>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_eone_ticket_tree">
<field name="name">ticket</field>
<field name="model">eone.ticket</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="eone.ticket">
<field name="cree par"/>
<field name="affecter a"/>
<field name="date creation"/>
<field name="titr ticket"/>
<field name="contact appelent"/>
<field name="motif"/>
<field name="etat"/>
<field name="date fermiture"/>
<field name="detaille"/>
<field name="client"/>
<field name="intervention"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="action_eone_ticket">
<field name="name">Ticket</field>
<field name="res_model">eone.ticket</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem name="Service Technique" id="menu_eone_ticket"
action="action_eone_ticket"/>
</data>
</openerp>

88

ANNEXE 3 : Les modles de messageries


Afin de suivre ltat des documents (devis, commande facture, demande de prix) par les
clients et fournisseurs le systme dot dun service de messagerie qui permet denvoyer par
mail ces documents chaque tape de validation aux partenaires pour vrifier les
informations.
Le model ci-dessus reprsente un devis-commande envoyer au client ait mlouk addi pour lui
sinformer quun devis a tait tablir par lentreprise Eonegroup.

Figure 43: Modle commande

Le model ci-dessus reprsente une facture envoyer au client ait mlouk addi pour lui
sinformer quune facture a tait tablir par lentreprise Eonegroup.

89

Figure 44: Modle facture

Les modles de messageries a pour but dassurer le suivi des commandes et factures.

ANNEXE 4 : Les rapports

90

Figure 45: Exemple de bon de commande de vente

91

Figure 46: Exemple dune facture de vente

92

Figure 47: Exemple de bon de commande dachat

93

Figure 48: Exemple dune facture dachat

94

Figure 49: Workflow gestion des achats

Figure 50: Workflow gestion des ventes

96

You might also like