Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

83
ROYAUME DU MAROC *-*-*-*-* HAUT COMMISSARIAT AU PLAN *-*-*-*-*-*-*-* INSTITUT NATIONAL DE STATISTIQUE ET D‟ÉCONOMIE APPLIQUÉE Projet de Fin d’Études *-*-*-*-* Préparé par : M. Hamza ALMORABETI & Zakariae HALHAL Sous la direction de : M. Adil KABBAJ (INSEA) M. Abderahman EL KAFIL (NEXTMA) Soutenu publiquement comme exigence partielle en vue de l’obtention du Diplôme d’Ingénieur d’État Option : INFORMATIQUE Devant le jury composé de : M. (INSEA) M. Adil KABBAJ (INSEA) M.Abderahman ELKAFIL (NEXTMA) Juin 2009 Conception et réalisation d‟une application de la gestion de la paie adaptée à la législation marocaine

description

Conception et réalisation d‟une application de lagestion de la paie adaptée à la législation marocaine pour openerp réalisé en 2009

Transcript of Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Page 1: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ROYAUME DU MAROC

*-*-*-*-*

HAUT COMMISSARIAT AU PLAN

*-*-*-*-*-*-*-*

INSTITUT NATIONAL

DE STATISTIQUE ET D‟ÉCONOMIE APPLIQUÉE

Projet de Fin d’Études *-*-*-*-*

Préparé par : M. Hamza ALMORABETI & Zakariae HALHAL

Sous la direction de : M. Adil KABBAJ (INSEA) M. Abderahman EL KAFIL (NEXTMA)

Soutenu publiquement comme exigence partielle en vue de l’obtention du

Diplôme d’Ingénieur d’État

Option : INFORMATIQUE

Devant le jury composé de :

M. (INSEA)

M. Adil KABBAJ (INSEA)

M.Abderahman ELKAFIL (NEXTMA)

Juin 2009

Conception et réalisation d‟une application de la

gestion de la paie adaptée à la législation marocaine

Page 2: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp
Page 3: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Dédicace

A nos chers parents Aucun mot, aucune dédicace ne saurait exprimer notre respect, notre considération et

l’amour éternel pour les sacrifices que vous avez consentis pour notre instruction et notre bien être.

Votre générosité et votre bonté ont toujours été un exemple pour nous tous.

Trouvez en ce travail le fruit de votre dévouement et l’expression de notre gratitude et notre

profond amour.

A nos sœurs, nos frères et nos proches. Vous nous avez toujours soutenu durant toutes nos études, on vous souhaite beaucoup de

bonheur et de réussite.

A tous nos amis On vous aime tous …

Page 4: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Remerciements

Nous tenons à remercier toute personne qui nous a aidé à acheminer à bon port le présent

Projet de Fin d’Études.

Et bien que ça ne soit l’évidence qui le dicte, nous tenons à rendre grâce à nos chers

parents, nos sœurs et frères, à toute la famille qui n’a ménagé aucun effort pour nous épauler, nous

soutenir, nous encourager et nous aider à venir à terme de cet humble travail.

Qu’il nous soit permis d’exprimer nos sincères remerciements à M. Adil KABAJ notre

professeur qui nous a orienté tout au long de ce projet.

Nous adressons avec tout le respect et l’estime que cela se doit de requérir, nos

remerciements au personnel de la société NEXTMA, et à leur tête évidemment,

M. Abderrahmane ELKAFIL, M. Mustafa et M.Abdellah qui nous ont été d’un grand apport

pratique quant à l’élaboration de notre Projet de Fin d’Études.

Nous tenons à exprimer notre gratitude à notre Professeur M. Touhami OUAZZANI

pour nous avoir honoré en acceptant de juger notre travail. Veuillez trouver ici le témoignage de

notre respect le plus profond.

Encore, faudrait-il que nous remercions sincèrement M.NAIM, M.Khalid, et M.Yahia

AERAJ pour nous avoir guidé dans certaines phases du projet.

Enfin, nous remercions chaleureusement l’ensemble des stagiaires pour leurs sympathies,

pour les services rendus et pour leurs esprits d’équipe.

Page 5: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Résumé

Il est vrai que la gestion des ressources humaines est l‟une des pratiques les plus

convoitées sur le marché actuel. Ceci vient du fait de son importance dans le développement

des entreprises.

La gestion des ressources humaines couvre de nombreux domaines à savoir le

recrutement, la gestion des carrières, la formation, l‟évaluation des performances, la gestion

des conflits, les conditions de travail, ainsi que la gestion de la paie…

Le présent travail vient pour répondre au besoin de la création d‟une application de la

gestion de la paie à l‟aide de l‟ERP open source open ERP. Cette application doit être à la fois

conforme à la législation marocaine et totalement paramétrable pour garantir son extension et

sa maintenance.

Mots clés : Enterprise Ressource Planning (ERP).

Page 6: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Liste des abréviations

Abréviation Désignation

AMO Assurance Maladie Obligatoire

BI Business Intelligence

CIMR Caisse Interprofessionnelle Marocaine de Retraite

CNSS Caisse Nationale de Sécurité Sociale

CRM Customer Relationship Management

DTD Document Type Definition

EBDS

e-Commerce Electronic Commerce

EFI Echange de Fichiers Informatisés

ERP Enterprise Ressource Planning

GRH Gestion des Ressources Humaines

HTTP Hyper Text Transfet Protocol

IGR Impôt Général sur le Revenu

ISO International Standard Organization

MVC Model View Controller

OMG Object Management Group

PGI Progiciel de Gestion Intégré

PME Petites et Moyennes Entreprises

POO Programmation Orientée Objet

SBI Salaire Brut Imposable

SI Système d‟Information

SGBDO Système de Gestion de Base de Données Relationnelle et

Objet

SSLL Société de Service en Logiciels Libres

SMIG Salaire Minimum Interprofessionnel Garanti

SNI Salaire Net Imposable

SQL Structured Query Language

UML Unified Modeling Lungage

XML eXtensible Makup Langage

Page 7: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Liste des figures

Figure 1 : Formule pour le calcul du salaire net à payer .......................................................... 22 Figure 2 : processus de fonctionnement des télédéclarations................................................... 26

Figure 3 : Axes de modélisation des diagrammes de UML ..................................................... 28 Figure 4 : Diagramme des use-cases ........................................................................................ 31 Figure 5 : Diagramme de classes .............................................................................................. 35 Figure 6 : Diagramme de séquence d‟ajout d‟un employé ....................................................... 37 Figure 7: Diagramme de séquence de l‟archivage du livre de paie.......................................... 38

Figure 8 : Diagramme d‟activités ............................................................................................. 38

Figure 9 : Architecture modulaire d‟open ERP ........................................................................ 43

Figure 10: Modèle vue contrôleur ............................................................................................ 45 Figure 11: Interface de configuration d‟open ERP .................................................................. 49 Figure 12 : Interface de création d‟une nouvelle base de données ........................................... 49 Figure 13: Interface de configuration de la base de données ................................................... 50

Figure 14: Interface de la connexion avec la base de données ................................................. 50 Figure 15 : Interface de configuration du profil de l‟entreprise ............................................... 51 Figure 16: Interface d‟authentification des utilisateurs ............................................................ 51

Figure 17 : Interface principale de l‟application ...................................................................... 52 Figure 18 : Interface illustrant les différentes rubriques de la paie. ......................................... 53

Figure 19: Interface illustrant les rubriques de paramétrage de l‟application .......................... 53 Figure 20 : Interface illustrant les rubriques de consultations et d‟impression ........................ 54 Figure 21: Interface de l‟ajout d‟un nouvel employé ............................................................... 54

Figure 22: Interface principale de l‟application ....................................................................... 55

Figure 23: Interface de la saisie des détails mensuels de la paie .............................................. 56 Figure 24 : Interface la consultation des résultats de la paie .................................................... 56 Figure 25 : Rapport généré pour le bulletin de paie ................................................................. 61

Figure 26 : Rapport illustrant le livre de paie ........................................................................... 62 Figure 27: Rapport illustrant l‟état IGR ................................................................................... 62

Figure 28 : Rapport généré pour l‟état CIMR .......................................................................... 63 Figure 29 : Rapport généré pour l‟état de Mutuelle. ................................................................ 63 Figure 30 : Exemplaire du bordereau de paiement .................................................................. 64

Figure 31: Extrait de code illustrant la méthode du calcul de l‟IGR ........................................ 67 Figure 32 : Extrait de code illustrant la méthode du calcul de l‟IGR ....................................... 67

Figure 33 : Extrait de code illustrant la méthode du calcul de la prime d‟ancienneté ............. 68 Figure 34 : Extrait de code illustrant la méthode du calcul du salaire de base. ....................... 68 Figure 35 : Extrait de code illustrant la création de l‟interface Employé................................. 69

Page 8: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Liste des tableaux

Tableau1 : Barème des heures supplémentaires…………………………………………..15

Tableau2: Barème du taux de la prime d’ancienneté………………………………….…16

Tableau3 : Barème pour le calcul de l’impôt sur le revenu.........................................…...21

Tableau4 : Tableau représentatif des informations contenues dans le livre de paie……23

Page 9: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Sommaire

Introduction générale ............................................................................................................ 1

Chapitre 1 : Contexte général et objectifs du projet ............................................................. 3

1.1 Présentation de NEXTMA ........................................................................................... 4

1.1.1 NEXTMA en Bref ................................................................................................ 4 1.1.2 Prestations et services ........................................................................................... 4 1.1.3 Secteurs d‟activités. .............................................................................................. 5

1.2 Présentation générale du projet .................................................................................... 6 1.2.1 Contexte du projet ................................................................................................ 6

1.3 Objectifs du projet ....................................................................................................... 6

1.4 Démarche de conduite du projet .................................................................................. 7 1.5 Méthode de travail ....................................................................................................... 7

1.5.1 Préambule ............................................................................................................. 7

1.5.2 Principes de SCRUM ........................................................................................... 8 1.5.3 Rôles de SCRUM ................................................................................................. 9

1.5.4 Synthèse. .............................................................................................................. 9 1.6 Conclusion ................................................................................................................... 9

Chapitre 2 : Étude de l’existant et spécification des besoins .............................................. 10

2.1 Préambule .................................................................................................................. 11

2.2 Étude de l‟existant ..................................................................................................... 11 2.2.1 Avantages de l‟existant ...................................................................................... 11 2.2.2 Inconvénients de l‟existant ................................................................................. 12 2.2.3 Spécification des besoins ................................................................................... 12

2.3 Conclusion ................................................................................................................. 12

Chapitre 3 : Étude Fonctionnelle .......................................................................................... 13

3.1 Préambule .................................................................................................................. 14 3.2 Le salaire .................................................................................................................... 14

3.2.1 Définition ........................................................................................................... 14 3.2.2 Les éléments constitutifs du salaire .................................................................... 15 3.2.3 Les retenues du salaire : ..................................................................................... 17

3.3 Traitement fiscal des salaires: .................................................................................... 17 3.3.1 Les cotisations sociales salariales ...................................................................... 17 3.3.2 Les charges supportées par l‟employeur (Les charges patronales) .................... 18 3.3.3 Les autres retenues ............................................................................................. 19 3.3.4 L‟impôt général sur le revenu ............................................................................ 19

Page 10: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

3.3.5 Synthèse : Calcul du salaire net à payer ............................................................. 22

3.4 Enregistrement et preuves de la paie ......................................................................... 22 3.4.1 Le bulletin de paie .............................................................................................. 22 3.4.2 Le livre de paie ................................................................................................... 23

3.5 Télédéclaration .......................................................................................................... 24 3.5.1 Présentation ........................................................................................................ 24 3.5.2 Processus de télédéclaration. .............................................................................. 24 3.5.3 Principe de fonctionnement. ............................................................................... 24

Chapitre 4 :Conception du projet ......................................................................................... 27

4.1 Préambule .................................................................................................................. 28 4.2 Le langage de modélisation UML ............................................................................. 28

4.2.1 Présentation ........................................................................................................ 28 4.2.2 Les diagrammes .................................................................................................. 28

4.2.3 Vues statiques du système. ................................................................................. 29

4.3.3 Vues dynamiques du système. .............................................................................. 29

Chapitre 5 : Dossier technique .............................................................................................. 40

5.1 Préambule ....................................................................................................................... 41 5.2 LINUX ........................................................................................................................... 41

5.2.1 Présentation. ............................................................................................................ 41 5.2.2 Le projet GNU. ........................................................................................................ 41

5.2.3 Ubuntu. .................................................................................................................... 41 5.3 Les ERP .......................................................................................................................... 42

5.3.1 Présentation générale ............................................................................................... 42

5.3.2 OPENERP ............................................................................................................... 42

5.3.3 Architecture modulaire ........................................................................................... 43 5.3.4 Architecture technique. .......................................................................................... 44

5.4 Langage Python .............................................................................................................. 45

5.4.1 Caractéristiques du langage Python : ...................................................................... 45 5.5 Langage XML ................................................................................................................ 46

5.5.1 Présentation du langage XML ................................................................................. 46 5.5 PostgreSQL .................................................................................................................... 47

5.5.1 Présentation de PostgreSQL : .................................................................................. 47

5.5.2 Outils connexes de PostgreSQL : ............................................................................ 47

Chapitre 6 : Réalisation ......................................................................................................... 48

Conclusion et perspectives ..................................................................................................... 58

Annexes ................................................................................................................................... 60

Annexe A : Les rapports générés par l’application. ........................................................... 60

Annexe B : Agilité. .................................................................................................................. 60

Page 11: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

Annexe C : Extraits de code. .................................................................................................. 60

Bibliographie et URLographie .............................................................................................. 70

Page 12: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

1

0 Introduction générale

Page 13: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

INTRODUCTION GENERALE

2

Dans le contexte actuel d‟une compétition internationale féroce, les entreprises doivent

constamment rationaliser leurs façons de présenter les données et leurs manières de déléguer

les bons processus aux bons acteurs. C‟est ce qu‟on appelle le pilotage des entreprises.

L‟idée c‟est qu‟il faut être capable de se comprendre, de travailler efficacement entre

commerciaux, techniciens, comptables et logisticiens d‟une même entreprise pour optimiser le

fonctionnement global. Pour cela il faut un langage commun, des référentiels, des pratiques et

des modes de communications partagés. Les ERP (Enterprise Ressource Planning) ou encore

en Français les progiciels de gestion intégrés, constituent l‟outil idéal pour une telle

organisation de l‟entreprise.

Pourtant traditionnellement les ERP étaient réservées aux grandes entreprises et à une

élite d‟éditeurs. Dès lors, les Petites et Moyennes Entreprises (PME) n‟avaient pas un accès

ou alors se contentaient de plus modestes logiciels de comptabilité et de gestion commerciale.

Pour rendre accessible les ERP aux PME, il a fallu d'abord réduire les coûts. Le logiciel libre

a alors permis de supprimer un intermédiaire (le distributeur), de diminuer les coûts de

développement grâce à la réutilisation de logiciels libres, et de réduire considérablement les

coûts commerciaux et marketing par la libre publication du logiciel.

Ce qui caractérise les ERP c‟est qu‟ils sont dotés de modules génériques et

paramétrables, avec un périmètre fonctionnel qui peut varier. Des modules tels que la

comptabilité, la gestion des ventes, des stocks, des projets, des ressources humaines…etc.

La gestion des ressources humaines oscille de la gestion des emplois du temps, au

recrutement en passant par la gestion de la paie. Cependant les modules de la gestion de la

paie sont très rares dans les ERP open source à cause du morcellement législatif.

C‟est dans ce cadre qu‟intervient le travail qu‟on a effectué au sein de la société

NEXTMA intitulé “Conception et Réalisation d‟une application de la gestion de la paie

adaptée à la législation marocaine” et qui mettra à la disposition de NEXTMA une application

fiable bien documentée et paramétrable.

Ce présent mémoire, qui est la synthèse de notre projet de fin d‟études, est constitué

de trois parties concrétisant les étapes du déroulement du projet :

La première partie est consacrée aux généralités et à la problématique devant laquelle

on se trouve ainsi qu‟à la présentation du contexte général du projet.

La deuxième partie comprend deux volets, d‟une part l‟étude de l‟existant, la

spécification des besoins et l‟étude fonctionnelle et d‟autre part, un dossier conceptuel

du travail.

Enfin, la troisième partie aborde la réalisation de l‟application et les technologies

utilisées à ce propos.

Le rapport s‟achève par une conclusion qui met le point sur le compte rendu du travail

réalisé.

Page 14: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

3

1 Chapitre 1 :

Contexte général et objectifs du projet

Le présent chapitre est une sorte de description générale du contexte de

notre Projet de Fin d’Études. Dans un premier temps nous présentons

l’organisme d’accueil NEXTMA où s’est déroulé notre projet, en exposant

ses domaines d’activités d’une façon générale. Dans un second temps nous

définissons les objectifs attendus du projet.

Page 15: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 1 : CONTEXTE GENERAL ET OBJECTIF DU PROJET

4

1.1 Présentation de NEXTMA

1.1.1 NEXTMA en Bref

NEXTMA est une Société de Services en Logiciels Libres (SSLL) qui accompagne les

entreprises et institutions dans le choix de solutions open source ainsi que dans l'intégration,

le développement, l'adaptation aux besoins spécifiques, la maintenance et le support. Afin de

bénéficier des meilleures solutions libres dans la gestion des systèmes d'information,

NEXTMA offre aux PME marocaines des services qui sont orientés sur le modèle « ONE

STOP SHOPPING ». C'est-à-dire en offrant une gamme étendue des services

complémentaires sur mesure, car chaque entreprise à sa spécificité, afin qu'elles puissent faire

face aux échéances du libre échange et soient à niveau par rapport aux normes de qualité et de

performance internationalement reconnues.

1.1.2 Prestations et services

NEXTMA offre une large palette de prestations et de services basés sur des

composants libres adaptés aux systèmes et aux réseaux des clients. La principale tâche de

cette société est d‟offrir des solutions sur mesure, en matière de formation et d‟assistance,

concernant les problématiques relevant des systèmes d‟informations, moyennant des outils

libres.

La gamme de services de NEXTMA est articulée autour de quatre axes majeurs qui

permettent d'accompagner les clients durant toutes les phases d'un projet afin d'en assurer sa

réussite.

Support

En plus des offres de formations. La société propose aux équipes dédiées au

développement, des prestations de support d‟aide à la maintenance, afin de

réduire le temps de résolution des interrogations ou des difficultés que les

entreprises pourraient rencontrer lors de la mise en œuvre de certains logiciels.

Conseil

NEXTMA possède une équipe formée de consultants techniques et

fonctionnels qui assure soit dans le cadre de projets, soit en amont, des

missions de conseil dans les domaines suivants: gestion de contenu, travail

collaboratif, dématérialisation des procédures, migration vers le libre,

architecture et dimensionnement d'applications basées sur open ERP…etc.

Développement

Il constitue le cœur métier de NEXTMA et comprend le développement sur la

base de logiciels libres, de portails collaboratifs internet ou intranet, avec des

composantes de publication web, de travail collaboratif, de gestion

électronique de documents et de workflow.

Page 16: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 1 : CONTEXTE GENERAL ET OBJECTIF DU PROJET

5

Formation

L‟offre des formations, techniques et fonctionnelles, permet d'accompagner les

organisations qui disposent d‟équipes opérationnelles capables de mener à bien

des projets. Ces formations peuvent être établies sous forme de transferts de

compétences, en phases avals des projets.

1.1.3 Secteurs d’activités.

De part les multiples projets que NEXTMA a mené, elle a acquis un savoir faire

susceptible de lui permettre l‟implantation de logiciels libres dans les différents secteurs :

Enterprise Ressource Planning (ERP)

En français Progiciels de Gestion Intégré (PGI). NEXTMA est le partenaire officiel

de l‟ERP open source Open ERP au Maghreb depuis 2006. Elle adapte celui-ci à la

législation marocaine et aux besoins spécifiques des entreprises.

Customer Relationship Management (CRM)

NEXTMA propose l‟offre SUGARCRM qui permet la gestion de la relation client

Business Intelligence (BI) ou informatique décisionnelle.

Intranet des entreprises et gestion des contenus

Création d’identités visuelles et sites internet institutionnels et

e-Commerce.

La solution proposée est SMARTSHOP qui une solution libre de e-commerce

(commerce électronique) qui s'appuie sur le gestionnaire contenu Joomla!

Gestion électronique des documents

Il s‟agit d‟un système informatisé d'acquisition, classement, stockage, archivage des

documents.

Page 17: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 1 : CONTEXTE GENERAL ET OBJECTIF DU PROJET

6

1.2 Présentation générale du projet

1.2.1 Contexte du projet

Notre Projet de Fin d‟Études s‟inscrit dans le cadre d‟une application de la gestion de

la paie basée sur la législation marocaine, à l‟aide de l‟ERP open source open ERP. Cette

application comprend le module du calcul de la paie, ainsi qu‟un module qui permet la

télédéclaration auprès de la Caisse Nationale de la Sécurité Sociale CNSS.

1.2.2 Aperçu historique

Auparavant la gestion des ressources humaines GRH au sein des entreprises était faite

de façon interne. C'est-à-dire que tous les aspects de la GRH étaient effectués par les

entreprises elle mêmes. Et comme les entreprises s‟élargissaient en matière de nombre

d‟employés et de champs de travaux, ceci a rendu la GRH plus complexe et a fait que le coût

soit de plus en plus élevé. De ce fait il a été judicieux de penser à externaliser le travail en

chargeant d‟autres sociétés de toute la GRH ou d‟une partie des ses modules.

Par conséquent plusieurs sociétés sont apparues dans le but de se charger de la GRH.

Ces sociétés utilisaient différents outils pour accomplir cette tâche, et parmi ces outils figure

les ERP qui ont permis une meilleure gestion des ressources humaines pour les entreprises.

1.3 Objectifs du projet

Les principaux objectifs à atteindre par le présent projet de fin d‟études sont :

Acquérir les bonnes pratiques permettant de développer la capacité de concevoir et la

faculté de résoudre les problèmes rencontrés.

Développer la prise d‟initiative par le biais d‟un ensemble rapports et de présentations

effectuées en guise de formation.

Réaliser le module de la gestion de la paie avec toutes ces composantes et veiller à ce

qu‟il soit conforme aux normes marocaines.

Assurer le paramétrage des différentes rubriques de la paie pour rendre le module

extensible et évolutif.

Réduire les tâches manuelles par le biais d‟une automatisation efficace et conviviale,

Simplifier la saisie par l‟élaboration d‟écrans de saisie indépendants.

Réduire le coût des traitements

Générer des bulletins de paie, des journaux, des bordereaux sociaux et garder la trace

du travail en vue d‟un archivage automatique.

Établir la connexion avec le site DAMANCOM de la CNSS consacré aux

télédéclarations.

Établir la relation avec une pointeuse.

Réaliser le module de la gestion des carrières.

Créer un blog qui sera une source d‟informations et de récolte des données [1].

Réaliser un manuel d‟utilisation pour faciliter l‟usage de l‟application.

Page 18: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 1 : CONTEXTE GENERAL ET OBJECTIF DU PROJET

7

1.4 Démarche de conduite du projet

Dans le cadre de notre projet, nous nous sommes intéressés à la fois à l‟élaboration d‟un

dossier de conception et à la réalisation de l‟application de la gestion de la paie adaptée à la

législation marocaine.

La conduite d‟un tel projet est relativement complexe si on ne suit pas une démarche et

une méthodologie bien définies à l‟avance. Ainsi, nous avons décomposé notre projet en

plusieurs phases, à savoir :

Étude de l’existant : qui consiste à identifier et recenser les informations et

procédures utiles à la compréhension de l‟application en question. Elle a pour objectif

de mettre en évidence les défaillances et les besoins du système existant.

Spécification des besoins : qui définit les services que doit rendre le système. Elle

permet également de déterminer le contexte dans lequel celui-ci va être utilisé.

Étude fonctionnelle : qui permet de se familiariser avec la logique métier de

l‟application avant de commencer la conception.

Conception du système : vise à créer une représentation informatique des éléments

du monde réel auxquels on s‟intéresse, sans se préoccuper de leur implémentation et

indépendamment du langage de programmation.

Réalisation : c‟est la mise en place de l‟application.

1.5 Méthode de travail

1.5.1 Préambule

D‟après l‟étude faite par le Standish Group en 1994, la majorité des projets adoptant le

cycle en cascade aboutissent à l‟échec car ce cycle recommande un planning figé et un

enchainement rigoureux pour les différentes phases du projet. Aussi l‟intervention peu

fréquente du client pendant le processus de développement conduit à un logiciel inadapté et

non fiable.

Pour pallier à ces problèmes de non liberté de client et manque d‟esprit d‟équipe

pendant le déroulement du projet, on a adopté les méthodes agiles qui préconisent les

principes suivants :

L‟adoption d‟un cycle de vie itératif et incrémental

La collaboration entre les personnes et l‟intervention fréquente des utilisateurs

ainsi que leurs interventions.

La délibération d‟un produit fiable satisfaisant aux besoins du client

La flexibilité: la réactivité lors d‟apparition de changements soudains

La priorité aux personnes et non aux outils.

Dans notre stage, on adoptera la méthode agile [voir Annexe B p 65] SCRUM pour sa

conformité avec la nature de notre projet et l‟environnement du travail. Dans la suite nous

allons détailler en quoi consiste cette méthode ainsi que son origine et ses grands principes.

Page 19: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 1 : CONTEXTE GENERAL ET OBJECTIF DU PROJET

8

Tout d‟abord, la méthode Scrum a été conçue pour optimiser le rendement des équipes

qui se voient obstrués auparavant par les méthodes lourdes. Les racines de Scrum montent à la

publication de Takeuchi et Nonaka dans "The New Product Development Game"[3] pour

l'aspect métaphore du Rugby.

Scrum signifie littéralement mêlée. C‟est un terme emprunté du vocabulaire du rugby.

Comme son nom l‟indique, elle consiste en une équipe soudée dont les éléments collaborent

pour atteindre les buts initialement convenus, et c‟est la même ressemblance en rugby pour

avancer avec le ballon pendant une mêlée.

Du fait, le principe de base de Scrum est de focaliser l'équipe de façon itérative sur un

ensemble de fonctionnalités à réaliser, dans des itérations de durées fixes d‟une à quatre

semaines, appelées Sprints. Chaque Sprint possède un but à atteindre, défini par le Directeur

du produit qui valide les objectifs à atteindre pendant cette période. Un sprint aboutit toujours

sur la livraison d'un produit partiel fonctionnel. Pendant ce temps, le ScrumMaster a pour

mission de minimiser les perturbations extérieures et de résoudre les problèmes fonctionnels

de l'équipe.

Le principe le plus avantageux de Scrum est la participation active du client pour définir

les priorités dans les fonctionnalités du logiciel qui seront implémentés dans chaque sprint

avec l‟équipe de travail. Il peut à tout instant compléter ou modifier la liste des fonctionnalités

à réaliser, mais jamais celles qui sont déjà en cours de réalisation pendant un sprint.

1.5.2 Principes de SCRUM[4]

La méthode Scrum se base sur les principes clefs suivants :

Interaction du client : la méthode Scrum privilégie les individus et donne

l‟importance aux valeurs du travail accompli, ceci améliore la productivité et l‟efficacité

de ce qui est fourni.

Priorité au produit : dans les méthodes agiles, le seul critère qui influence

l‟avancement du projet est la fiabilité du produit fourni, contrairement aux méthodes

lourdes qui prônent la documentation exhaustive empêchant les interactions des clients

pendant le processus de développement.

Collaboration du client : elle est indispensable pour l‟avancement du projet et

l‟implémentation de toutes les fonctionnalités préétablies.

Flexibilité aux fluctuations : Scrum est conçue pour s‟adapter aux

changements en assurant un plan macroscopique précis et adaptatif, elle est réactive aux

fluctuations des marchés et s'assure en plus que le logiciel développé répond

parfaitement à ses véritables besoins.

Page 20: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 1 : CONTEXTE GENERAL ET OBJECTIF DU PROJET

9

1.5.3 Rôles de SCRUM

Scrum s‟articule autour de trois rôles principaux :

Directeur de produit (product owner) : Personne responsable de produire et

maintenir à jour le backlog du produit qui représente la liste des fonctionnalités qui

devront être réalisées par le logiciel. C'est lui qui en détermine les priorités et qui

prend les décisions concernant l'orientation du projet.

ScrumMaster : Membre de l'équipe dont l'objectif principal est de la protéger des

perturbations extérieures. Il est complètement transparent pour la communication

entre l'équipe et les clients, et n'a aucun pouvoir hiérarchique sur l'équipe. C'est en

revanche un facilitateur pour les problèmes non techniques de l'équipe.

Équipe : Elle ne comporte pas de rôles prédéfinis, elle est autogérée. Il n'y a pas de

hiérarchie interne : toutes les décisions sont prises ensemble. Cette autogestion de

l‟équipe produit le meilleur niveau de qualité de façon spontanée. L'équipe s'adresse

directement au Directeur de produit. Il est préférable qu'elle lui montre le plus

souvent possible le logiciel développé pour qu'il puisse ajuster les détails

d'ergonomie et d'interface.

Intervenants : Les Intervenants sont les personnes qui souhaitent avoir une vue sur

le projet sans réellement s'investir dedans. Il peut s'agir par exemple d'experts

techniques ou d'agents de direction qui souhaitent avoir une vue très éloignée de

l'avancement du projet.

1.5.4 Synthèse

Pour conclure, Scrum est une méthode de développement de logiciels qui s'intéresse

plutôt à l'organisation du projet qu'aux aspects techniques. Son cadre de travail est sa force.

Son approche itérative est basée sur les besoins priorisés du client ce qui met en

évidence une flexibilité extrême. Elle emprunte le principe de l'état d'esprit de la mêlée de

rugby : avancer tous ensemble vers un but commun ce qui est équivalent à la réussite du

projet.

1.6 Conclusion

Dans ce chapitre nous avons présenté l‟organisme d‟accueil NEXTMA et ses

domaines d‟activités. Nous avons aussi détaillé le contexte général, les objectifs à atteindre

par notre Projet de Fin d‟ Études et la démarche de conduite du projet. Dans la conduite du

projet nous avons présenté la méthode de travail agile SCRUM que nous avons utilisé. Le

chapitre suivant s‟intéresse à l‟étude de l‟existant et la spécification des besoins du projet.

Page 21: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

10

2 Chapitre 2 :

Étude de l’existant et spécification

des besoins

Dans ce chapitre, nous présentons la phase de l’étude de l’existant qui

consiste à effectuer une étude applicative du système existant pour en

détecter les défaillances. Nous finirons par les spécifications des

besoins recueillis auprès des utilisateurs concernés.

Page 22: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 2 : ETUDE DE L’EXISTANT ET SPECIFICATION DES BESOINS

11

2.1 Préambule

L‟étude de l‟existant est une étape clé dans la réalisation de n‟importe quelle

application informatique, quelque soit le domaine concerné. Il s‟agit d‟une étude permettant

de comprendre la problématique du projet.

2.2 Étude de l’existant

La gestion de la paie a été informatisée dans la majorité des institutions marocaines. A

ce propos nous comptons au Maroc deux genres d‟entreprises :

o Les grands comptes.

o Les PME.

En ce qui concerne la paie le premier type d‟entreprises utilise des ERP propriétaires

tels que SAP, SAGE... Quant au deuxième type d‟entreprises, il se contente de logiciels

propriétaires spécialisés dans la paie pour des raisons de coûts d‟acquisition qui sont encore

trop élevés.

Puisque notre projet est destiné aux PME nous nous intéressons à ces dernières.

D‟ailleurs les PME marocaines utilisent deux sortes de logiciels propriétaires. Ceux étrangers

(EBP, CIEL..) et ceux marocains (OJRA, WPAIE).

Malheureusement à part quelques essais qui n‟ont pas pu s‟imposer sur le marché, le

développement de logiciels libres qui traitent la gestion de la paie est en manque, non

seulement au Maroc mais aussi ailleurs. C‟est pourquoi notre projet constitue un défit que

nous avons relevé, et qui, en cas de réussite, marquera son empreinte sur le marché national et

international, car il y a une large communauté mondiale qui adopte tous les modules réalisés

par open ERP s‟ils sont opérationnels.

2.2.1 Avantages de l’existant

Il est vrai que les systèmes existants présentent plusieurs avantages qui se résument à :

Les ERP sont plus adaptés aux entreprises, car ils intègrent la gestion de la paie

dans les autres activités de l‟entreprise.

Les logiciels propriétaires étrangers présentent une ergonomie et une simplicité

d‟utilisation remarquables.

Les logiciels propriétaires marocains respectent la législation marocaine.

Page 23: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 2 : ETUDE DE L’EXISTANT ET SPECIFICATION DES BESOINS

12

2.2.2 Inconvénients de l’existant

Si les systèmes de la gestion de la paie existants fournissent certains avantages. Ils

renferment néanmoins plusieurs inconvénients dont la critique ne peut qu‟être bénéfique pour

notre projet.

o Les ERP propriétaires ont un coût d‟acquisition qui empêche les PME de les

utiliser.

o Le prix des logiciels propriétaires étrangers de la paie est moins élevé que celui

des ERP. Cependant ils ne sont pas entièrement conformes à la législation

marocaine. Ce qui implique que les utilisateurs seront amenés à faire des

interventions manuelles, lors du calcul de la paie.

o Si les logiciels propriétaires étrangers sont simples à utilisés. Leurs équivalents

marocains sont tellement durs à appréhender qu‟il faudra former les utilisateurs à

en prendre usage.

2.2.3 Spécification des besoins

Le besoin majeur est de réaliser une application totalement paramétrable pour

assurer l‟évolution et l‟adaptation aux nouvelles lois ;

Nous nous sommes mis d‟accord sur le besoin d‟avoir des interfaces de saisie

simples pour que l‟application soit exploitée dans de bonnes conditions ;

Le contrôle des données doit se faire automatiquement au moment de la saisie,

Tous les états de sortie doivent être paramétrés par date ainsi que par plusieurs

paramètres ;

Établir une étude fonctionnelle détaillée pour comprendre la logique métier de la

paie ;

La conception d‟une base de données générale qui intègre toutes les composantes

de la paie ;

Intégrer la connexion avec le site DAMANCOM de la CNSS pour pouvoir

effectuer des télédéclarations ;

Prévoir une extension de l‟application pour la gestion des carrières et

l‟établissement d‟une pointeuse ;

Rédiger un manuel d‟utilisation simple pour permettre l‟usage de l‟application.

2.3 Conclusion

La description détaillée du système existant qui ouvre ce chapitre a permis de délimiter

les problèmes à résoudre dans le contexte actuel. Quant à la partie critique de l‟existant, elle a

permis de dégager et de formaliser les besoins des futurs utilisateurs de l‟application.

Le chapitre suivant est consacré à l‟établissement d‟une étude fonctionnelle qui est une

étape indispensable afin d‟élaborer une bonne conception.

Page 24: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

13

3 Chapitre 3 :

Étude Fonctionnelle

Dans ce chapitre, nous présentons une étude fonctionnelle susceptible

de nous fournir une connaissance du métier.

La connaissance du métier est indispensable pour mener une bonne

conception, et par la suite aborder la réalisation de l’application

Page 25: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

14

3.1 Préambule

L'entreprise englobe une panoplie de moyens matériels, financiers et humains. Donc le

personnel qui constitue la ressource humaine s'engage avec l'entreprise avec un contrat de

travail ce qui le positionne sous la subordination de son employeur. Cette relation étroite de

sujétions stipule que l'employé reçoit un salaire de l'employeur en contrepartie d'une

prestation de travail. Ce processus de versement de salaire engendre le paiement des charges

sociales dont une partie incombe aux employeurs, et une autre aux salariés.

C'est ainsi que le terme "Gestion de la paie " s'avère hautement important pour bien

appréhender l'administration des salariés, et pouvoir gérer le paiement des charges sociales,

taxes et cotisations aux organismes se rapportant à la législation du travail (CNSS, CIMR,

MUTUELLE...).

Vu que notre objectif est d'intercepter tous les termes en relation avec le salaire en vue

d'apprendre d'une façon adéquate et pédagogique comment calculer le salaire net à payer,

les charges patronales, l‟IGR et les cotisations salariales (CNSS, CIMR, mutuelle...): On

entame ce contexte fonctionnel du projet par l'identification des éléments constitutifs de la

rémunération, ensuite on attaque le traitement fiscal des salaires qui comprend entre autres

l'impôt général sur le revenu (IGR), les cotisations sociales salariales et les charges

patronales. Ensuite on présente dans ce chapitre quelques documents importants dans le cadre

de la gestion de paie à savoir le bulletin de paie et livre de paie.

Dans un second lieu nous exposons le processus de la télédéclaration, qui est une étape

importante exigée de plus en plus par les entreprises marocaines.

3.2 Le salaire

3.2.1 Définition

Le salaire est le nom par lequel le droit désigne la rémunération versée au personnel,

autrement il s'agit de la contrepartie des prestations de travail fournies par le personnel à

l'entreprise. La fixation du salaire prend en compte la complexité des tâches à effectuer, mais

également les conditions de travail, le cadre contractuel et légal, les performances de

l‟entreprise et du salarié et la situation personnelle du salarié...

Le salaire brut comprend à la fois, le salaire de base et diverses majorations à savoir

les heures supplémentaires, les primes, les gratifications, les indemnités, les avantages et les

allocations familiales.

Page 26: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

15

3.2.2 Les éléments constitutifs du salaire

3.2.2.1 Salaire de base

Il correspond au salaire contractuel, c‟est-à-dire la rémunération convenue entre

l‟employeur et le salarié au moment de la signature du contrat de travail. Ce salaire se calcule

selon la durée légitime du travail qui ne peut pas enfreindre les stipulations générales de la

législation du travail suivantes [5]:

SMIG horaire: (Salaire Minimum Interprofessionnel Garanti)

8 heures pour chaque jour ouvrable de la semaine

44heures de travail effectif par semaine (réparties sur 6 jours avec un maximum de

9 heures par jour ou sur 5 jours avec un maximum de 10 heures par jour).

Salaire de base=Nombre d'heures normales * Taux horaire normal

3.2.2.2 Les heures supplémentaires

Les heures supplémentaires sont les heures effectuées au-delà de la durée légale

hebdomadaire du travail applicable dans l'établissement et elles sont évaluées sur une période

de référence qui est la semaine en appliquant les règles du tableau suivant[5]:

Jours de travail

habituels

Repos hebdomadaires

et jours fériés

De 6h00 à 21h00 25% 50%

De 21h00 à 6h00 50% 100%

Tableau1 : Barème des heures supplémentaires

Taux horaire supplémentaire = Taux horaire normal * (1+Taux de majoration)

Page 27: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

16

3.2.2.3 Les éléments accessoires

Pour les éléments accessoires, on énumère :

a. Les primes et gratifications

Une prime est une somme d'argent octroyée à un salarié à titre d'encouragement, de

motivation ou de récompense (la prime d‟ancienneté, prime d‟assiduité, prime de

rendement...etc.). La prime d‟ancienneté est obligatoire et est attribuée en fonction de la

durée passée en activité dans la société en appliquant le barème suivant[6]:

Taux d’ancienneté

(% du salaire)

2 ans de travail 5%

De 2 ans à 5 ans 10%

De 5 ans à 12 ans 15%

De 12 ans à 20 ans 20%

Après 25 ans de travail 25%

Tableau2 Barème du taux de la prime d’ancienneté

Quant aux gratifications, elles constituent une libéralité en plus du salaire de base

(gratification d'inventaire, treizième mois....).

b. Les indemnités

Les indemnités sont des sommes attribuées à un salarié en vue de réparer un dommage

ou un préjudice que ce dernier a subit durant son travail (indemnité de résidence, indemnité de

licenciement...etc.)

c. Les avantages

Les avantages sont des rémunérations accessoires, ils peuvent être en argent ou en

nature. Ils sont attribués généralement par l'employeur à une partie ou à l'ensemble de son

personnel en plus des rémunérations précitées.

Les avantages en argent: Ce sont des allégements des dépenses personnelles pour le

salarié prises en charge en totalité ou en partie par l'employeur (loyer du logement personnel,

frais médicaux, frais des séjours ...etc.)

Les avantages en nature: Ils se constituent de diverses prestations et fournitures

accordées par l'employeur (dépenses de domesticité, logement, dotations en produits fabriqués

par l'employeur...etc.)

Page 28: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

17

d. Les allocations familiales

Les allocations familiales sont des prestations servies par la Caisse Nationale de

Sécurité Sociale (CNSS) aux salariés ayant des enfants à charge. Le montant des allocations

familiales est de 200 DH par mois pour chacun des trois premiers enfants et 36 DH par mois

pour chacun des trois suivants.

3.2.3 Les retenues du salaire

La rémunération n'est pas intégralement versée au salarié, elle fait l'objet de certaines

retenues, qu'on va expliquer comment les calculer minutieusement, à savoir les cotisations

salariales sociales et l‟IGR. Ces montants retenus ne sont pas une charge pour l'entreprise,

puisqu'elle se contente de les calculer, les retenir à la source, puis les verser aux tiers

concernés: que ce soit la perception, la CNSS, la CIMR ou les créanciers du salarié...etc.

3.3 Traitement fiscal des salaires:

Cette partie a pour vocation d'apprendre à calculer les retenues et les cotisations de

salaire brut pour déterminer le salaire net à payer. En premier lieu, on va préciser les formules

de calcul des cotisations salariales sociales et les charges patronales, ensuite on va citer les

autres retenues de salaire. Et on passe finalement à la synthèse qui récapitulera le calcul du

salaire net à payer après avoir éclaircit les étapes permettant le calcul de l'IGR.

3.3.1 Les cotisations sociales salariales

On distingue les cotisations suivantes :

3.3.1.1 Les cotisations salariales de la CNSS

La CNSS est un établissement public placé sous la tutelle du Ministère de l‟Emploi et

de la Formation Professionnelle, elle a été créée par le Dahir n° 1-72-184 du 27 juillet 1972.

Les cotisations salariales à la CNSS se font à un taux de 4,29% sur la base de la rémunération

brute avec un plafond de 6000 DH/mois

Cotisation salariale à la CNSS = 4,29 % x salaire brut <= 6000DH

3.3.1.2 Assurance maladie obligatoire (AMO)

Le système d‟assurance Maladie Obligatoire (AMO) est institué par La loi 65.00

pour la couverture médicale obligatoire de base garantissant l‟accès universel aux soins

de santé :

Cotisation salariale d'AMO : 2 % * salaire brut

Page 29: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

18

3.3.1.3 Les cotisations salariales à la CIMR (Caisse

Interprofessionnelle Marocaine de Retraite)

Le régime de retraite de la CIMR est alimenté par des cotisations supportées à la fois par

le salarié et l'employeur. Le taux de cotisation pour le salarié peut varier de 3 à 6 % sur la

base du salaire brut imposable, en tenant compte que ce taux est choisi par l'employeur et

uniformément appliqué à tous les salariés d'une même catégorie.

Cotisation salariale de CIMR= taux (entre 3 et 6 %) * salaire brut imposable

3.3.1.4 Les cotisations salariales aux organismes de prévoyance

sociale (Mutuelle)

Les taux et les bases de calcul sont dépendamment variables d'un organisme à l'autre.

3.3.2 Les charges supportées par l’employeur (Les charges

patronales)

3.3.2.1 Les cotisations patronales à la CNSS

Cotisations pour la couverture des allocations familiales = 7,5% * Salaire brut

(non plafonnée)

Cotisations pour la couverture des prestations sociales = 8,6 % * Salaire brut <= 6000 DH

(par mois)

Participation au financement de la formation professionnelle= 1,6 % * Masse salariale brut

(non plafonnée)

3.3.2.2 Les cotisations patronales de l’AMO

Assurance Maladie Obligatoire (AMO) =2% * Salaire brut

Cotisation de solidarité (AMO) : 1.5% * Salaire brut

Page 30: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

19

3.3.2.3 Les cotisations patronales à la CIMR

Cotisation patronale de CIMR= 1,3 * taux de cotisation salariale de CIMR * salaire brut imposable

3.3.2.4 Les cotisations patronales à d’autres organismes

Il reste à signaler qu'il y'a d'autres cotisations patronales dont le taux et la base de calcul

varient selon l'organisme et les conventions du contrat à savoir les cotisations patronales aux

organismes de prévoyance sociale(Mutuelle) et les cotisations patronales aux assurances

accident de travail...etc.

3.3.3 Les autres retenues

Ces retenues ont un caractère exceptionnel, on peut distinguer:

Les avances et acomptes

Ce sont des versements effectués au salarié au cours d'une période donnée pour être

récupérés sur son salaire à la fin de cette période.

Les cessions de salaire

Le salarié peut de son plein gré, accepter qu'une partie de son salaire lui soit retenue par

l'employeur pour être payée directement à ses créanciers: il s'agit alors d'une cession de

salaire.

Opposition

C'est la part du salaire retenue par l‟employeur pour la verser à un créancier du salarié.

Elle est pratiquée en vertu d'un jugement (l‟opposition par le tribunal).

3.3.4 L’impôt général sur le revenu

L'impôt général sur le revenu est un impôt qui touche toute personne physique au titre des

revenus dont elle dispose. Les salariés des entreprises n'en sont pas exclus puisqu‟ils paient

l'impôt avant même de percevoir leurs salaires. L'employeur se charge de calculer pour

chaque salarié l'impôt qu'il doit déclarer et payer à la perception, et de retenir ce montant à la

source.

Le calcul de l‟IR sur salaire nécessite le passage par les étapes suivantes :

Étape 1 : Détermination du salaire brut (SB)

Il est déjà cité que c‟est la somme des rémunérations : salaire de base, primes, indemnités

et avantages...etc.

Page 31: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

20

Étape 2 : Détermination du salaire brut imposable (SBI)

Il est obtenu en éliminant du salaire brut les éléments exonérés, qui sont exemptés de

l‟impôt expressément par la loi (énumérés par l‟article 66 de la loi susvisée), à savoir :

o Les indemnités qui sont destinées à couvrir les frais engagés dans l‟emploi; à

condition que ces remboursements de frais soient justifiés par la nature de

l‟emploi exercé ou les missions ponctuelles effectuées par le personnel concerné.

o Les indemnités de licenciement.

o les allocations familiales et d‟assistance à la famille (prime de naissance,

allocations de décès ....).

o Les indemnités pour frais de bureau.

o Les indemnités pour travaux pénibles ou dangereux, de panier, de caisse et de

déménagement

SBI=SB-EXONERATIONS

Étape 3 : Détermination du salaire net imposable (SNI)

Il s‟obtient en déduisant du SBI, certaines déductions de charges engagées par le salarié.

Parmi ces déductions on peut citer :

o Les frais professionnels évalués forfaitairement à 17% du SBI non compris les

avantages avec un plafond de 24.000,00 DH par an (2.000 ,00 DH par mois).

o Les cotisations salariales à la CNSS pour la couverture des prestations sociales.

o Les cotisations salariales pour la constitution des pensions ou de retraite(CIMR).

o Les cotisations salariales aux organismes de prévoyance sociale(Mutuelle).

o Le remboursement des emprunts (capital et intérêts) contractés en vue de

l‟acquisition ou la construction de logements économiques.

SNI=SBI-DEDUCTIONS

Page 32: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

21

Étape 4 : Calcul de l’IR brut

On détermine dans quelle tranche se trouve le SNI, on le multiplie par le taux

correspondant à la tranche et on déduit la somme figurant dans la dernière colonne afin

d‟obtenir IR (brut).

Tranche de revenu mensuel (DHS) Taux Somme à déduire

0-2000,00 0 0,00

2001,00-2.500,00 15 300,00

2.501,00-3.750,00 25 550,00

3.751,00-5.000,00 35 925,00

5.001,00-10.000,00 40 1.175,00

Au-delà de 10.000,00 42 1.375,00

Tableau 3 : Barème pour le calcul de l’impôt sur le revenu

IR (brut)= (SNI*TAUX)-(SOMME A DEDUIRE)

Étape 5 : Calcul de l’IR net:

Pour obtenir IR net, on retranche de l‟IR brut les déductions des charges familiales.

Cette déduction est de 30 DH par mois par personne à charge avec limite de 6 personnes,

c'est-à-dire dans la limite de 90DH par mois (épouse et enfants).

IR (net)=IR (brut)-DEDUCTIONS POUR CHARGES DE FAMILLE

Page 33: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

22

3.3.5 Synthèse : Calcul du salaire net à payer

Figure 1 : Formule pour le calcul du salaire net à payer

3.4 Enregistrement et preuves de la paie

Dans le cadre de la gestion de la paie, il revient à l'entreprise d'apporter la preuve du

paiement du salaire. Les moyens utilisés sont le bulletin de paie et le livre de paie.

3.4.1 Le bulletin de paie

Tout employeur doit délivrer au moment du règlement du salaire une pièce justificative

dite bulletin de paie. Cette pièce a pour but de renseigner le salarié sur la manière dont a été

calculée sa rémunération. Il n‟est soumis à aucune condition de forme dès lors qu‟il comporte

les mentions exigées par le Code du travail à savoir l'identité de l'employeur et son numéro de

CNSS, l'identité du salarié, le nombre d'heures normales et supplémentaires, la période et le

nombre du jours de travail, les diverses primes, le salaire brut, les déductions , le salaire net à

payer pour le salarié et finalement la date de remise du bulletin .

Total des gains (salaire brut

global

Salaire de base

Heures supplémentaires

Primes et gratifications

Indémnités

Avantgaes (natures+argent)

Allocations famililes

Total des retenues

Cotisations salariales

Impôt général sur le

revenu

Avances et acomptes

Cessions de salaire

Oppositions

Autres retenues

Salaire net à payer

Page 34: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

23

3.4.2 Le livre de paie

Si le bulletin de paie est remis aux employés, le livre de paie est par contre un document

comptable de l'entreprise. L'employeur doit tenir dans chaque établissement le livre de paie.

Ce dernier doit reproduire toutes les mentions portées sur le bulletin de paie.

Puisque les inspecteurs pourront exiger à tout moment la communication de ce livre, il est

hautement recommandable qu'il soit conservé par l'employeur pendant au moins 3 ans à

compter de sa clôture.

Le livre de paie ressemble à la forme suivante :

Nom Sal

brute

Sal

plafonné

Retenues Sal

net

Acompte Opposition Net à

payer CNSS IR Autre Total

Total

Tableau 4 : Tableau représentatif des informations contenues dans le livre de paie

Page 35: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

24

3.5 Télédéclaration

3.5.1 Présentation

Le système de télédéclaration est un système conçu par la CNSS pour le traitement de

bordereaux des déclarations de salaires de ses affiliés. Ce système est de plus en plus convoité

puisqu‟il substitue le dépôt manuel des déclarations de salaires auprès de la CNSS par un

envoie de ces déclarations au portail DAMANCOM.

L'objectif du système repose sur la mise à disposition des entreprises et à leurs

prestataires éventuels (cabinets d'expertise comptable…etc.) d'une plate-forme

d'intermédiation complète et sécurisée garantissant la prise en charge, le traitement et

l'acheminement des bordereaux de déclarations de salaires (télédéclarations) soumises par les

utilisateurs du portail à destination de la CNSS, ainsi que la prise en charge de la validation

des avis de télépaiements par les utilisateurs du portail, leur acheminement aux organismes

bancaires et le traitement de leurs retours.

3.5.2 Processus de télédéclaration.

Le système de Télédéclaration concerne les déclarations de salaires en suivant le principe

de fonctionnement décrit ci-dessous :

Les utilisateurs du portail (affiliés ou mandataires), une fois qu'ils ont adhéré la

télédéclaration, adressent par liaison Internet sécurisée au portail e-BDS, leurs

télédéclarations soit par échange de fichiers, soit par échange de formulaires informatisés

(EFI). Ces fichiers / formulaires sont alors collectés, horodatés dès leur dépôt ou validation, et

traités. Chaque déclaration fait l‟objet d‟un traçage précis et constant qui permet à l‟utilisateur

en se connectant sur le portail WEB de suivre l‟évolution du traitement de ses

télédéclarations.

3.5.3 Principe de fonctionnement.

Le principe de fonctionnement de la télédéclaration en mode Echange de Fichier est le

suivant :

Le 15 de chaque mois au maximum, la CNSS met à la disposition des affiliés

utilisant le système de télédéclarations, les fichiers préétablis correspondant à la

période de télédéclaration prochaine, à fin des les aider à préparer leurs

télédéclarations de salaires. Ces derniers sont des fichiers au format normalisé.

Les affiliés peuvent se connecter au système e-BDS, en mode sécurisé et

télécharger le fichier préétabli. Dés réception du préétabli, l‟affilié peut récupérer

automatiquement les allocations familiales émises pour alimenter son système de

paie. Il doit ensuite préparer son fichier de déclaration de salaire (Fichier BDS). Ce

dernier contient les éléments de la déclaration sous un format normalisé. Il doit être

cohérent avec le préétabli émis par la CNSS : l‟ensemble des salariés figurant sur le

préétabli doit figurer sur la déclaration (les salariés ne faisant plus partie de

l‟entreprise doivent alors être déclarés comme sortants) et les salariés entrants

doivent être déclarés sur un fichier complémentaire en tant qu‟entrants.

Page 36: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 3 : ETUDE FONCTIONNELLE

25

Le fichier BDS résultat de ce traitement est ensuite déposé, par l‟affilié, sur le

portail e-BDS en mode sécurisé.

L‟affilié reçoit par courrier électronique un avis de réception de sa télédéclaration

par la CNSS. Cet avis présente un simple constat de dépôt du fichier BDS.

Dés réception du fichier BDS, le système e-BDS procède au contrôle de la structure

et du contenu de ce dernier.

L‟affilié reçoit par courrier électronique un avis de contrôle de sa télédéclaration.

Cet avis présente le résultat du contrôle. Dans le cas d‟un résultat négatif, l‟affilié

est appelé à corriger les anomalies détectées par le système et refaire sa

télédéclaration.

A la date limite de déclaration fixée par la CNSS, les fichiers BDS déposés et

validés seront pris en compte par la CNSS et feront l‟objet d‟un ensemble de

traitement de prise en charge.

En cas d‟oubli d‟un assuré entrant, l‟affilié peut produire un fichier BDS

complémentaire et le déposer sur le portail e-BDS en mode sécurisé.

Le processus de réception, de contrôle et de prise en compte d‟un fichier BDS

complémentaire sont similaires aux processus des fichiers BDS décrits ci-dessus.

Le fichier de BDS complémentaire est pris en compte par la CNSS à la date

d‟exigibilité de la période de déclaration en cours.

Page 37: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

26

INTERNET

La figure suivante décrit le processus de fonctionnement des télédéclarations :

Fichi

Figure 2 : processus de fonctionnement des télédéclarations

3-6 Conclusion

Certes, l‟étude fonctionnelle est une étape incontournable pour entamer la phase de

conception. Elle nous a permis de comprendre les démarches à suivre pour mener d‟une façon

adéquate les traitements qu‟exige la gestion de la paie. Le chapitre suivant est consacré à

l‟élaboration du dossier de conception.

1- Mise en ligne du fichier émission de la période de déclaration (préétabli)

2- Intégration du préétabli dans le système de la gestion de la paie de l’entreprise et BDS (préétabli enrichi par les éléments de la paie) et récupération des allocations familiales émises.

7- Traitement de prise en charge

5-Contrôle du fichier BDS : Contrôle de la déclaration par rapport

au préétabli. Contrôle des entrants. Contrôle de format et de cohérences

Fichier préétabli

3-Fichier BDS

4-Accusé de réception

6-Accusé de contrôle

Mise en forme (9pt)

3-Fichier BDS complémentaire

Page 38: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

27

0 Chapitre 4 :

1 Conception du projet

Ce chapitre est consacré à la partie conception de l’application. Après

une brève présentation du langage de conception UML, le chapitre

présente les diagrammes de conception adoptés lors de la phase

d’élaboration.

Le chapitre suivant est consacré à la description de l’architecture

adoptée et des différents outils de développement utilisés.

Page 39: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

28

4.1 Préambule Le présent chapitre constitue la conception du projet. Nous commençons par une brève

présentation du langage de modélisation utilisé (UML). Ensuite nous détaillons la conception

avec certains diagrammes tout en expliquant les raisons des choix adoptés.

4.2 Le langage de modélisation UML

4.2.1 Présentation

Pour faire face à la complexité croissante des systèmes d‟information, de nouvelles

méthodes et outils ont été créés. La principale avancée de ces dernières années fut l‟apparition

de la Programmation Orientée Objet (POO). Face à ce nouveau mode de programmation, les

méthodes de modélisation classique (telle que MERISE) ont rapidement montré certaines

limites et ont dû s‟adapter (MERISE/2).

Dans ce contexte, l‟Object Management Group (OMG) a eu comme objectif de définir

une notation standard utilisable dans les développements informatiques basés sur l‟objet.

C‟est ainsi qu‟est apparu UML (Unified Modified Language « langage de modélisation

objet unifié »), qui est issu de la fusion des méthodes Booch, OMT (Object Modelling

Technique) et OOSE (Object Oriented Software Engineering)[7].

4.2.2 Les diagrammes

UML est un langage de modélisation objet (pas une méthode) permettant de représenter

de communiquer les divers aspects d‟un système d‟information. Il définit plusieurs

diagrammes qui tournent autour de trois axes de modélisation.

Figure 3 : Axes de modélisation des diagrammes de UML

Fonctionnel (Modélisation des interactions et

fonctionnement des composants SI) Diagramme de Cas d’utilisation.

Diagramme de Séquence

Diagramme d’activités

Dynamique (Modélisation de l’évolution des SI)

Diagramme des États de

transitions.

Diagramme d’activités.

Diagramme de Séquence.

Diagramme de communication

Diagramme d’interactions.

Diagramme de temps.

Statique (Modélisation des composants du SI)

Diagramme de Classes.

Diagramme de Packages.

Diagramme d’Objets.

Diagramme de Structure

Composite.

Diagramme de Déploiement.

Diagramme de Composants

Page 40: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

29

4.2.3 Vues statiques du système.

Diagramme de cas de classes

Considéré comme le plus important de la modélisation orientée objet. Il montre

l‟ensemble des informations regroupées sous forme d‟entité appelée classe, ainsi que

les relations entre ces classes.

Diagramme de packages C‟est une forme dérivée du diagramme de classes, la différence est que ce diagramme

affiche les relations entre les différents paquets.

Diagramme d’objets

Le diagramme d‟objets permet de représenter les objets ( instances de classes) et

leurs interactions. Ils décrivent des instantanés de l‟état du système, en montrant dans

une situation particulière (cas d‟utilisation, souvent) les instances impliquées, ainsi

que leurs attributs significatifs.

Diagramme de structure composite Expose la structure interne d‟une classe ainsi que les collaborations que cette dernière

rend possible.

Diagramme de composants

Il décrit les éléments physiques du système et leurs relations dans l‟environnement

de réalisation.

Diagramme de déploiement

C‟est un diagramme complémentaire au diagramme de composant. Il décrit la

répartition physique des instances de composant, de processus et d‟objets d‟une

application distribuée.

5 4.3.3 Vues dynamiques du système.

Diagramme des cas d’utilisation (use cases) Le diagramme des cas d‟utilisation est souvent la représentation directrice du

système, celle qui permet de valider la modélisation. Il décrit le système sous forme

d‟une suite d‟actions et de réactions du système à des stimuli, vu du point de vue de

l‟utilisateur.

Diagrammes de collaboration Ce diagramme exprime les interactions entre les objets (quel objet a besoin de quel

autre pour remplir son rôle).

Diagramme de séquence Les diagrammes de séquence montrent des interactions entre objets selon un point de

vue temporel.

Diagramme des états de transition Ces diagrammes visualisent des automates d‟états finis, du point de vue des états et

des transitions.

Page 41: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

30

Diagramme d’activités Il s‟agit d‟une variante du diagramme d‟états-transition, organisé par rapport aux

actions, et destiné à représenter le comportement interne d‟une méthode ou d‟un cas

d‟utilisation.

Diagramme de communication C‟est une représentation simplifiée du diagramme de séquence se concentrant sur les

échanges des messages entre objets.

Diagramme d’interaction Décrivent la façon dont les groupes d‟objets collaborent à la réalisation d‟un

comportement donné.

Diagramme de temps Permet de décrire les variations d‟une donnée au cours du temps.

4.3 Conception du projet.

4.3.1 Présentation

Bien que le formalisme UML fournit jusqu‟à présent 13 diagrammes, seulement 2 sont

obligatoires : Le diagramme des use cases et le diagramme de classe, car il y a des

diagrammes qui dépendent de l‟évolution du système d‟information et d‟autres qui s‟occupent

de sa maintenance. Dans ce qui suit nous présentons le diagramme des uses cases, le

diagramme de séquences, celui de classes ainsi que le diagramme d‟activités.

Page 42: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

31

«include»

«extend»

«extend»

«extend»

«include»

«include»

«include»

«include»

«include»

«include»

4.3.2 Diagramme des use cases

Figure 4 : Diagramme des use-cases

Module de la gestion de la paie

Responsable

Ressources

Humaines

Agent du Service

de la paie

Créer employé

Créer contrat

Attribuer

Banque

Attribuer

Numéro CNSS

Attribuer

Numéro CIMR

Imprimer

Contrat

Saisir les détails

mensuels de la paie

Gérer les

paramètres de la

configuration

Imprimer

Bulletin de paie

Imprimer état

9421

Imprimer état

IGR

Traiter archivage du

bulletin de paie

Enregistrement dans

le livre de paie

Imprimer états des

organismes sociaux

(CNSS CIMR ...)

Traiter

télédéclaratio

n

Consulter les

charges patronales

Page 43: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

32

Description du cas d’utilisation ‘’Saisir les détails mensuels de la paie ’’

Sommaire d’identification :

Titre : Saisir les détails mensuels de la paie.

Résumé : Ce cas permet au responsable de la paie de saisir les détails mensuels de

la paie.

Acteurs : Agent du service de la paie.

Date de création : 13/05/2009

Date de mise à jour: 07/06/2009

Version : 2.0

Description des enchainements :

Pré conditions : Le système est lancé, l‟agent est identifié

Scénario principal :

1. Choisir l‟employé dont on veut insérer ses détails mensuels de la paie.

2. Vérifier la date de sortie de l‟employé

3. Employé intégré dans la société.

4. Saisir manuellement les détails concernant le nombre d‟heures

travaillées.

5. Indiquer le nombre de jours fériés et le nombre de congés travaillés.

6. Les données sont cohérentes et assujetties aux contraintes du code de

travail.

7. Valider les données

Scénarios alternatifs :

o Scénario alternatif 1

Ce scénario démarre au point 3 du scénario principal.

3-a Employé ne fait plus partie de la saisie.

3-a-1 Annuler la saisie des données.

o Scénario alternatif 2

Ce scénario commence au point 7 du scénario principal.

7-a Les données sont illégales.

7-a-1 Adapter les données à la législation marocaine.

7-b Les données sont incohérentes.

7-b-1 Corriger les données erronées.

Page 44: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

33

Description du cas d’utilisation ‘’Traiter télédéclaration’’

Sommaire d’identification :

Titre : Traitement de la télédéclaration des employés auprès de la caisse nationale

de la sécurité sociale.

Résumé : Ce cas permet au responsable de la paie d‟effectuer une télédéclaration

auprès de la CNSS moyennant Internet.

Acteurs : Agent du service de la paie.

Date de création : 13/05/2009

Date de mise à jour : 07/06/2009

Version : 2.0

Description des enchainements :

Préconditions : Le système est lancé, l‟agent est identifié et le préétabli est

envoyé par la CNSS.

Scénario principal :

1. Récupérer les allocations familiales émises pour alimenter la paie.

2. Traiter le use case ’’Saisir détails mensuels’’.

3. Préparer le fichier de déclaration des salaires(BDS).

4. Comparer la liste des salariés figurant dans le (BDS) avec ceux qui

existent dans le préétabli.

5. Le préétabli et le fichier (BDS) sont cohérents.

6. Remplir le fichier (BDS) en tenant compte des contrôles.

7. Envoi du fichier (BDS) en mode sécurisé.

8. Recevoir un accusé de réception.

9. Recevoir un accusé de contrôle.

10. Accusé de contrôle valide.

11. Télédéclaration traitée.

Scénarios alternatifs :

o Scénario alternatif 1

Ce scénario démarre au point 5 du scénario principal.

5-a Le fichier (BDS) et le préétabli ne sont pas cohérents.

5-a-1 Nouveaux salariés recrutés mais ne figurent pas dans le préétabli.

5-a-1-a Déclarer ces nouveaux salariés dans le fichier (BDS) comme

entrants.

5-a-1-b Revenir au point 4 du scénario principal.

5-b Préétablit contient liste de salariés qui ne figurent pas dans le

fichier (BDS)

5-b-1 Déclarer ces salariés comme sortants.

5-b-2 Revenir au point 4 du scénario principal.

Page 45: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

34

o Scénario alternatif 2

Ce scénario commence au point 10 du scénario principal.

10-a Accusé de contrôle contient des erreurs.

10-a-1 Oubli de la déclaration d‟un salarié.

10-a-1-a Envoi d‟un fichier (BDS) complémentaire.

10-a-2 Autres anomalies et erreur.

10-a-2-a Corriger les erreurs.

10-a-2-b Revenir au cas d‟utilisation 7.

Page 46: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

35

4.3.3 Le diagramme de classes

Figure 5 : Diagramme de classes

Page 47: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

36

Le diagramme ci-dessus est constitué de plusieurs classes dont chacune représente un

objet dans le système de gestion de paie et répond à une spécification bien précise. Nous

allons expliquer quelques unes.

Employé : Contient les informations personnelles sur les salariés de la société.

Contrat : Regroupe les données spécifiques au contrat convenu entre l‟employé et

l‟employeur, et quelques informations contribuant dans le calcul des salaires.

Profession : Comprend les noms des professions qui existent dans l‟entreprise. Cette

classe sert à déterminer le taux de CIMR qui dépend de la profession de l‟employé.

CIMR : Chaque profession précise un taux de CIMR bien connu qui est le même pour

tous les employés exerçant cette profession.

PrimesFixes : Ce sont les primes communément attribuées chaque mois à tous les

employés d‟une entreprise.

PrimesVariables : Ce sont les primes octroyées aux employés de façon non régulière.

BulletinDePaie : C‟est la classe qui contient les champs permettant les saisies

mensuelles de la paie d‟un salarié.

LivreDePaie : C‟est une vue qui permet l‟archivage de tous les bulletins de paie des

employés pendant un mois.

ChargesPatronales : Il s‟agit d‟une vue qui illustre ce que doit payer l‟employeur pour

ses salariés en fin de chaque mois.

Configuration : C‟est un paquet qui englobe tous les entités jugées nécessaires pour

établir le calcul de la paie. Il contient entre autres les entités suivantes :

o AMO

o CNSS

o Mutuelle

o CIMR

o IGR

o ParametreSociete

o AutresParametre

Page 48: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

37

4.3.4 Diagrammes de séquences :

4.3.4.1 Ajout d’un employé.

Ce diagramme décrit l‟opération d‟ajout d‟un nouvel employé.

Figure 6 : Diagramme de séquence d’ajout d’un employé

Page 49: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

38

4.3.4.2 Archivage dans le livre de paie

Ce diagramme décrit la procédure d‟archivage du livre de paie.

Figure 7: Diagramme de séquence de l’archivage du livre de paie

4.3.5 Diagramme d’activités

Figure 8 : Diagramme d’activités

Page 50: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 4 : CONCEPTION DU PROJET

39

La figure précédente représente le diagramme d‟activités qui décrit l‟ensemble des

activités effectuées par les acteurs du système en les décomposant en sous-activités et en

spécifiant les contraintes relatives à l‟enchaînement de ces sous-activités.

4.4 Conclusion

Ce chapitre décrit et regroupe les résultats de la phase de conception, notamment le

diagramme des uses cases, le diagramme de classes, quelques diagrammes de séquences et un

diagramme d‟activités .Le chapitre suivant va spécifier l‟architecture de l‟application ainsi

que les outils techniques qui y sont utilisés.

Page 51: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

40

6

7

8 Chapitre 5 :

Dossier technique

Ce chapitre présente deux objectifs : D’une part, il fait le point sur

l’architecture d’open ERP, qui est nécessaire pour la mise en place de notre

application.

D’autre part, il présente des outils techniques que nous avons adoptés

pour la réalisation de l’application notamment le langage Python, le langage

XML et la base de données PostgreSQL.

Page 52: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 5 : DOSSIER TECHNIQUE

41

5.1 Préambule

Il est vrai que notre stage avait comme objectif principal la réalisation d‟une

application de la gestion de la paie pour satisfaire certains besoins déjà cités. Cependant ce

qui est intéressant c‟est que la mise en œuvre de cette application s‟effectuait sous une

certaine philosophie qui est celle de l‟open-source. D‟ailleurs l‟organisme d‟accueil,

NEXTMA est une SSLL (Société de Services de Logiciels Libres).

De ce fait, il a été judicieux d‟utiliser des logiciels libres pour la réalisation de

l‟application. Dans ce qui suit, nous verrons les différents outils utilisés et les architectures

adoptées pour leurs mises en œuvre.

5.2 LINUX

5.2.1 Présentation.

Linux ou GNU/Linux qui est un système d'exploitation, est logiciel libre créé en 1991

par Linus Torvalds[8]. Aujourd'hui, grâce à un effort considérable de développement fourni

par des personnes du monde entier, Linux fonctionne sur quasiment toute architecture

moderne.

Le noyau Linux a pris une importance aussi bien idéologique que technique. Il existe

une communauté entière de personnes qui croient aux idéaux du logiciel libre et donnent de

leur temps pour aider à rendre la technologie libre aussi performante que possible.

L'esprit du libre, souvent attribué à Linux, influence les développeurs et les utilisateurs

de logiciels partout dans le monde et entraîne des communautés partageant des objectifs

communs.

5.2.2 Le projet GNU.

Le projet GNU a été lancé en janvier 1984 par Richard Stallman, pour développer un

système d'exploitation complet de type UNIX, composé de logiciels libres : le système GNU.

Les variantes du système d'exploitation GNU, construites autour du noyau Linux, sont

aujourd'hui largement utilisées. Le projet GNU est étroitement lié à la philosophie du logiciel

libre qui est omniprésente dans les projets qui en découlent tels qu‟Ubuntu.

5.2.3 Ubuntu.

Ubuntu est un système d'exploitation entièrement libre construit autour du noyau Linux.

La communauté Ubuntu s'est formée autour des idéaux constitutifs de la philosophie

d'Ubuntu[9]:

Le logiciel doit être disponible gratuitement.

Les logiciels doivent être utilisables dans la langue de l'utilisateur et en dépit de

tout handicap.

L'utilisateur doit avoir la liberté de personnaliser et de modifier le logiciel à sa

guise.

Page 53: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 5 : DOSSIER TECHNIQUE

42

Ubuntu est le système d‟exploitation avec lequel nous avons développé notre

application pour que le stage soit conforme aux idéaux de l‟organisme d‟accueil.

5.3 Les ERP

5.3.1 Présentation générale

L‟acronyme ERP signifie « Enterprise Ressource Planning » traduit en français par

Progiciel de Gestion Intégré ou PGI. C‟est un progiciel qui permet de gérer l‟ensemble des

processus d‟une entreprise intégrant l‟ensemble de ses fonctions comme la gestion des

ressources humaines, la gestion financière et comptable, l‟aide à la décision, la vente, la

distribution, l‟approvisionnement, la production ou encore le e-Commerce.

On distingue deux types d‟ERP : les ERP propriétaires, édités par des sociétés, ce qui

implique l‟achat d‟une licence, et les ERP open source qui sont « gratuits ». Nous nous

intéressons à la catégorie des ERP open-source et plus particulièrement à OPENERP.

5.3.2 open ERP

Open ERP est un progiciel de gestion intégré dont la grande souplesse est idéale aussi

bien pour les indépendants que pour les PME. Il couvre pratiquement tous les secteurs

d‟activité : industrie, commerce, prestations de services, e-Commerce, négoce, etc. Comme la

plupart des logiciels libres, l'accessibilité, la flexibilité et la simplicité sont les maîtres mots du

développement.

Open ERP est caractérisé par son architecture modulaire et technique.

Page 54: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 5 : DOSSIER TECHNIQUE

43

5.3.3 Architecture modulaire

Cette architecture n‟est pas propre à open ERP. Elle est en fait partagée par tous les

ERP. Il s‟agit de la faculté de construire des applications informatique de manière modulaire

(modules indépendants entre eux) tout en partageant une base de données unique. Ceci

apporte une importance significative puisque les données sont maintenant standardisées et

partagées. Ce qui élimine les saisies multiples et évite l'ambiguïté des données de même

nature. L‟architecture modulaire d‟open ERP lui permet de couvrir plusieurs domaines

illustrés dans la figure ci-dessous :

Figure 9 : Architecture modulaire d’open ERP

CRMLogistique

Finance

Comptabilité

Analytique.

Comptabilité

Générale.

Gestion des

Ressources

humaines

Gestion

commerciale.

Marketing.

Suivi des

contrats.

Suivi des

affaires.

Gestion de

production.

Gestion de stock

Gestion

maintenance du

parc

Page 55: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 5 : DOSSIER TECHNIQUE

44

5.3.4 Architecture technique.

5.3.4.1 Architecture Client/Serveur :

Open ERP est basé sur une architecture client/serveur. Le serveur et le client

communiquent via le protocole XML-RPC. C‟est un simple protocole qui permet au client de

faire des appels aux procédures. Une fois la fonction est appelée, ses arguments et ses

résultats sont envoyés par le protocole http, eux-mêmes sont encodés par le langage XML.

Open ERP est couplé à une base de données 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 d‟open ERP est entièrement du côté serveur. La tâche du client se résume à

demander les données (formulaire ou listes) au serveur et de les renvoyer. Avec cette

approche, presque tout le développement est fait du côté serveur. Ce qui rend OPENERP plus

simple au développement et à la maintenance.

L'opération client est très simple. Quand un utilisateur exécute une action (sauvegarder

un formulaire, ouvrir un menu, imprimer, ...) il envoie cette action au serveur. Le serveur

envoie alors la nouvelle action pour s'exécuter côté client.

Il y a trois types d'actions :

• Ouvrir une fenêtre (formulaire, listes)

• Imprimer un document.

• Exécuter un wizard[11].

5.3.4.2 MVC Modèle dans la théorie classique de la POO (Programmation

Orientée Objet) :

Un (MVC) est une architecture de modèles utilisée en génie logiciel. Dans des

applications complexes qui présentent des lots de données aux utilisateurs, on souhaite

souvent séparer les données (modèle) et l'interface utilisateur (vue), de sorte que les

changements à l'interface utilisateur n'affectent pas le traitement des données, et que les

données peuvent être réorganisées sans changer l'interface utilisateur.

Le MVC résout ce genre de problème en découplant l'accès des données et la

logique des applications de la présentation des données et de l'interaction utilisateur, en

introduisant un composant intermédiaire : « le contrôleur ».

Page 56: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 5 : DOSSIER TECHNIQUE

45

Dans open ERP, on peut appliquer cette sémantique de ModelViewController avec :

Model : les modèles sont les objets déclarés dans OPENERP. Ils sont également des

tables PostgreSQL.

View : les vues sont définies en fichiers XML dans OPENERP.

Controller : le contrôleur est Python qui contrôle OPENERP.

Figure 10: Modèle vue contrôleur

5.4 Langage Python

Python est un langage portable, dynamique, extensible, gratuit, qui permet (sans

l'imposer) une approche modulaire et orientée objet de la programmation. Python est

développé depuis 1989 par Guido van Rossum et de nombreux contributeurs bénévoles [10].

5.4.1 Caractéristiques du langage Python :

Détaillons un peu les principales caractéristiques du langage Python:

Portable : Il est supporté par les différents systèmes d‟exploitation.

Gratuit

Simple : Il possède une syntaxe très simple tout en combinant des types de données

évolués (listes, dictionnaires…)

Absence des pointeurs.

Il est orienté objet et supporte l‟héritage multiple et la surcharge des opérateurs

Dynamique : cette fonctionnalité est probablement la plus intéressante de Python.

Extensible. On peut facilement l‟interfacer avec des bibliothèques C existantes.

Python gère ses ressources (mémoire, descripteurs de fichiers...) sans intervention

du programmeur, par un mécanisme de comptage de références.

Python possède actuellement deux implémentations. L'une, interprétée, dans laquelle

les programmes Python sont compilés en instructions portables, puis exécutés par une

machine virtuelle (comme pour Java, avec une différence importante: Java étant

statiquement typé, il est beaucoup plus facile d'accélérer l'exécution d'un programme

Java que d'un programme Python).L'autre génère directement du bytecode Java.

Dynamiquement typé.

Soutenu par la communauté d‟utilisateurs qui tentent à l‟évoluer.

Modèle Vue

Contrôleur

Page 57: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 5 : DOSSIER TECHNIQUE

46

5.5 Langage XML

5.5.1 Présentation du langage XML

XML (eXtensible Markup Language et en Français Langage à balises étendu, ou

Langage à balises extensible) était lancé en 1997 par la communauté SGML (Standard

Generalized Markup Language). XML est un langage simple et puissant de description et

d‟échange de documents structurés de n‟importe quel domaine de données grâce à son

extensibilité, il décrit cette structure à l‟aide d‟un système de balises.

Quelques points remarquables d‟XML :

Il apparaît comme un format d‟échange de données universel.

Il a la possibilité de créer des nouvelles balises contrairement à HTML qui définit un

nombre limité.

Il garantit à ses utilisateurs l‟indépendance de leurs documents de toute technologie

propriétaire.

Il unifie le monde du traitement de document et celui du Web.

Tout document XML se compose :

d‟un prologue qui peut contenir une déclaration XML, des instructions de traitement et

une déclaration de type de document, dont la présence est facultative mais conseillée.

Il contiendra un certain nombre de déclarations.

d‟un arbre d‟éléments, on parle d‟élément père et d‟élément fils. En fait la partie

essentielle d‟un document XML sera toujours formée d‟une hiérarchie d‟éléments qui

dénote la sémantique de son contenu.

de commentaires et d‟instructions de traitement, dont la présence est facultative. Ils

pourront, moyennant certaines restrictions, apparaître aussi bien dans le prologue que

dans l‟arbre d‟éléments.

Un document XML valide est forcément un document bien formé mais il obéit en plus à

une structure type définie dans une DTD (Document Type Definition)

Une DTD peut contenir :

des déclarations d'entités générales

des déclarations d'entités paramètres

des déclarations de notations

des déclarations d'éléments

des déclarations de listes d'attributs

des commentaires

Page 58: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CHAPITRE 5 : DOSSIER TECHNIQUE

47

5.5 PostgreSQL

5.5.1 Présentation de PostgreSQL :

PostgreSQL remonte à la base de données Ingres, développée à Berkeley par Michel

STONEBRAKER. Lorsque ce dernier décida en 1985 de recommencer le développement de

zéro, il nomma le logiciel Postgres, comme raccourci de post-Ingres. Lors de l‟ajout des

fonctionnalités SQL en 1995, Postgres fut renommé Postgres95.Ce nom fut changé à la fin de

1996 en PostgreSQL[11]. PostgreSQL est un système de gestion de base de données

relationnelle et objet (SGBDRO). C‟est un outil libre disponible selon les termes d‟une

licence de type BSD[13]. Ce système est concurrent à d‟autres systèmes de gestion de base de

données, qu‟ils soient libres (comme MySQL et Firebird), ou propriétaire (comme Oracle,

Sybase, DB2).

Comme les projets libres Apache et Linux, PosgreSQL n‟est pas contrôlé par une

seule entreprise, mais est fondé sur une communauté mondiale de développeurs et

d‟entreprises.

5.5.2 Outils connexes de PostgreSQL :

DB Link est un module permettant de travailler sur deux bases différentes.

ECPG est un outil de SQL embarqué.

Le logiciel pgAdmin est une application web écrite en PHP, et qui permet de gérer

les bases de données PostgreSQL via une interface graphique.

5.6 Conclusion Ce chapitre, décrit l‟architecture de l‟application en se référant aux modèles typiques de

l‟architecture Client/Serveur. Il présente également l‟ensemble des outils que le système

requiert, avec une introduction aux langages de programmation étudiés dans le cadre du stage.

Le chapitre suivant expose les phases de la mise en œuvre de l‟application.

Page 59: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

48

0

1

2 Chapitre 6 :

Réalisation

Après avoir cité les outils de développement et élucidé l'architecture

d’open ERP. On va expliquer en premier lieu la démarche adoptée pour

pouvoir travailler dans l'environnement open ERP. Ensuite on va détailler

les fonctionnalités des vues qui composent notre application avec des

captures d'écran des différents menus et formulaires.

En fin de compte on va exhiber les rapports nécessaires qu'on a

élaborés dans la gestion de paie.

Page 60: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

49

6-1 Configuration d’open ERP

Après avoir installé les composants essentiels d'open ERP à savoir :

openerp-server,

openerp-client gtk

PostgreSQL

On lance le client gtk, et l'interface suivante s'affiche:

Figure 11: Interface de configuration d’open ERP

Pour créer une nouvelle base, on va dans « Fichier », « Base de données » et «

nouvelle base de données ».

Figure 12 : Interface de création d’une nouvelle base de données

Page 61: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

50

Le mot de passe administrateur correspond au mot de passe indiqué dans le fichier de

configuration du serveur. Il est par défaut « admin ».

Figure 13: Interface de configuration de la base de données

La base de données est créée, mais sans aucun module installé. Il est important de s'y

connecter avec le compte administrateur afin de configurer les fonctionnalités dont on a

besoin.

Figure 14: Interface de la connexion avec la base de données

Page 62: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

51

Suite à la création de la base, open ERP se connecte avec le compte administrateur en

proposant une aide à la configuration par un système d'étapes.

Pour notre exemple, nous avons choisi le profil « service » car la plupart des entreprises

en ont besoin pour paramétrer les modules de comptabilité et de finance. (voir figure 15)

Figure 15 : Interface de configuration du profil de l’entreprise

Une fois toutes les étapes effectuées pour paramétrer le profile des entreprises, il ne

reste qu'à se connecter via l‟interface d‟authentification suivante :

Figure 16: Interface d’authentification des utilisateurs

Page 63: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

52

6-2 Les interfaces de l’application Après avoir installé l‟application dans open ERP, une rubrique intitulée ‟‟ Gestion de la

paie‟‟ apparaît dans le menu principal. Lorsqu‟on clique dessus, des sous-rubriques

s‟affichent dans l‟écran principal. Ces dernières constituent les différents choix possibles

pour la gestion de la paie de notre application ; on les énumère dans l‟ordre suivant :

o Manuel d’utilisation : Contient toutes les informations nécessaires pour utiliser

notre application.

o Configuration : Cette partie est réservée aux opérations d‟insertion, de

consultation et de la mise à jour des informations concernant les employés et le

traitement de leur paie. Elle est subdivisée en :

Employé : On y insère toutes les informations se rapportant aux

employés de l‟entreprise.

Rubriques de la paie : Formés des éléments essentiels pour calculer le

salaire des employés.

Organismes : Contient les informations sur les organismes liés à la paie.

Paramétrages : Permet la configuration des paramètres du calcul de la

paie.

o Traitement de paie : Cette rubrique autorise la saisie des données mensuelles

de la paie et le calcul des salaires.

o Télédéclaration : Fournit un outil permettant la déclaration des salariés auprès

de la CNSS via Internet.

o Etats : Rassemble tous les états qu‟exige la gestion de la paie, tels que :

état IGR, état 9421, états des organismes sociaux (CNSS, CIMR, AMO…etc.).

Figure 17 : Interface principale de l’application

Page 64: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

53

Concernant les différentes sous-rubriques de chacune des options illustrées dans la

figure précédente nous allons montrer quelques exemples:

Figure 18 : Interface illustrant les différentes rubriques de la paie.

Figure 19: Interface illustrant les rubriques de paramétrage de l’application

Page 65: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

54

Figure 20 : Interface illustrant les rubriques de consultations et d’impression

L‟ajout des employés s‟effectue à travers l‟interface suivante :

Figure 21: Interface de l’ajout d’un nouvel employé

Page 66: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

55

Cette interface contient les onglets suivants :

Informations générales: Représente la fiche technique de l‟employé et quelques

données nécessaires pour le calcul de la paie.

Primes fixes: Regroupe les primes communes que tous les employés de la société les

perçoivent.

Autres majorations: Englobe les gratifications, les primes temporaires, les

indemnités et les avantages que l‟employé reçoit.

Avances et prêts: Contient les retenues lesquelles la société enlève de l‟employé.

Parmi les onglets de l‟interface employé, on illustre celui des „‟Autres majorations‟‟ par la

capture d‟écran suivante :

Figure 22: Interface principale de l’application

Page 67: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

56

Pour saisir les détails mensuels de la paie, on doit passer par la vue ci- dessous. En

plus des champs à remplir, cette interface est doté d‟un boutton permettant le calcul de la paie

après des contrôles effectués sur les champs saisis. Ces vérifications garantissent que notre

système soit conforme à la législation.

Figure 23: Interface de la saisie des détails mensuels de la paie

L‟interface suivante concerne le bulletin de paie qui clarifie les différents calculs établis

pour obtenir finalement le salaire net à payer pour l‟employé ainsi que certaines grandeurs

utilisées dans les rapports et états de paie générés automatiquement. [14]

Figure 24 : Interface la consultation des résultats de la paie

Page 68: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

57

6.3 Conclusion

Cette phase de réalisation constitue l‟aboutissement du projet et la concrétisation des

phases d‟analyse et de conception. Dans le présent chapitre, nous avons présenté quelques

interfaces qui ont été développées dans l‟intérêt de mettre en œuvre le fonctionnement global

de l‟application en question.

Page 69: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

58

3 Conclusion et perspectives

Page 70: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

CONCLUSION ET PERSPECTIVE

59

Persuadés et convaincus de l‟importance de l‟open source dans le monde de

l‟informatique, nous avons opté dans notre stage de fin d‟études pour la réalisation d‟une

application de la gestion de la paie à l‟aide de l‟ERP open source open ERP.

Or, nous jugeons très utile cette expérience de 4 mois que nous avons passé dans ce

stage de fin d‟études. En effet, le fait de plonger dans les méandres d‟open ERP et lui-même

une motivante aventure où on est amené à intercepter tous les côtés d‟un projet, parmi

lesquels on cite :

Le côté fonctionnel: Les rencontres continues avec le client pour spécifier les

besoins de métier permettent l‟apprentissage de nouveaux concepts

économiques.

Le côté technique : Il consiste à adapter les besoins fonctionnels du client en une

application hautement conviviale et facilement paramétrable.

Le côté commercial : Il faut introduire convenablement le produit qui doit être

modulable et adaptable au besoin du client et lui accompagner d‟un commode

marketing pour le commercialiser.

Ce stage a été pour nous un grand pas vers le milieu professionnel, où on a bénéficié

d‟une excellente expérience qui nous a permis de concrétiser nos connaissances informatiques

voire économiques acquises au cours des années d‟études lors de la période de notre

formation à l‟INSEA.

Aussi, ce projet nous a permis d‟acquérir des valeurs indispensables pour le métier

d‟ingénieur telles que la responsabilité, le travail d‟équipe, l‟adaptabilité à l‟environnement de

l‟entreprise et le sens d‟analyse. Ces valeurs sont sans aucun doute les bases de réussite dans

le milieu professionnel.

A propos de notre application, on a établi la base d‟un module complètement

paramétrable et évolutif, pour la tenue de la paie et le suivi du personnel de l‟entreprise en

alliant souplesse d‟utilisation, convivialité et conformité à la législation marocaine.

Parmi les perspectives futures, signalons l‟intérêt d‟étendre notre application par

l‟intégration des fonctionnalités suivantes :

La gestion des congés avec connexion d‟une pointeuse.

Le paramétrage des comptes comptables pour le transfert direct vers la

comptabilité.

Finalement, nous souhaitons que notre projet soit la base d‟une implémentation du

module d‟open ERP qui traite la gestion de la paie sachant qu‟aucune expérience n‟a été

établie jusqu‟à présent.

Page 71: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

60

Annexes

Annexe A : Les rapports générés par l’application.

Annexe B : Agilité.

Annexe C : Extraits de code.

Page 72: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE A:LES RAPPORTS GENERES PAR L’APPLICATION

61

Les rapports

L‟application génère en format PDF les différents rapports qui traitent la gestion de la paie.

Figure 25 : Rapport généré pour le bulletin de paie

Page 73: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE A:LES RAPPORTS GENERES PAR L’APPLICATION

62

Figure 26 : Rapport illustrant le livre de paie

Figure 27: Rapport illustrant l’état IGR

Page 74: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE A:LES RAPPORTS GENERES PAR L’APPLICATION

63

Figure 28 : Rapport généré pour l’état CIMR

Figure 29 : Rapport généré pour l’état de Mutuelle.

Page 75: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE A:LES RAPPORTS GENERES PAR L’APPLICATION

64

Figure 30 : Exemplaire du bordereau de paiement

Page 76: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE B:AGILITE

65

Agilité, principes et concepts

Parmi les différentes définitions du mot agilité dans le dictionnaire on trouve l‟aptitude

et la capacité de s‟adapter aux changements. C‟est dans cette perspective que ce mot à été

associé à la programmation. C‟était en 2001 suite à un consortium qui regroupa des

spécialistes de méthodes. Ce groupement de scientifiques a donné naissance à ce qu‟on

appelle l’agile manifesto[2], un ensemble de principes appliqués au développement

informatique. Ces principes s‟articulent autour des points suivants :

La satisfaction des clients est la plus grande priorité avec des livraisons à temps et de

façon régulière.

Les changements ne sont plus craints au contraire ils sont les bienvenus même

tardivement dans le processus de développement.

La livraison doit être régulière et fréquente toutes les deux semaines ou deux mois.

Toutes les parties doivent collaborer pour mettre au point le projet pas seulement les

programmeurs.

L‟utilisation du logiciel fonctionnel permet de mesurer l‟avancement du projet.

Une attention continue à l'excellence technique et à la qualité de la conception

améliore l'agilité.

La simplicité est essentielle.

Les meilleures architectures, spécifications et conceptions sont issues d'équipes qui

s'auto-organisent.

L‟équipe doit réfléchir de temps à autre des façons pour améliorer son rendement.

Ce que nous pouvons constater à partir de ces principes c‟est que l‟objectif principal est

de créer des programmes qui sont basés essentiellement sur les besoins réels des utilisateurs.

Il existe plusieurs méthodes qui tentent d‟aboutir à l‟agilité telles que : SCRUM et eXtreme

Programming. Or l‟agilité réside principalement dans la capacité du programmeur à créer un

programme qui ne satisfait pas seulement les besoins qui lui ont donné naissances mais d‟être

simplement modifiable et extensible tout en permettant la maintenance facile.

Architecture logicielle

L‟architecture logicielle décrit la structure d‟un programme informatique. Contrairement

à l‟analyse fonctionnelle, qui produit les spécifications, l‟analyse fonctionnelle ne décrit pas

ce que doit réaliser un programme mais plutôt comment il doit être conçu de manière à

répondre aux spécifications.

Selon Mr Tarek Ziadé dans livre intitulé Python, il existe 5 lois qui régissent l‟architecture

logicielle ces lois sont les suivantes :

La modularité.

L‟extensibilité.

La simplicité.

La paramétrabilité.

La standardisation.

Page 77: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE B:AGILITE

66

i-La modularité La modularité réside dans la construction d‟un programme où les lignes de code sont

regroupées en un ensemble de plus grosse taille. Cette organisation rend le code plus

cohérent et les parties plus indépendantes. Surtout si on décompose le code selon les champs

fonctionnels. Ainsi chaque partie du programme sera considérée comme une application à part

entière ce qui facilitera la réutilisation de ces parties.

Ces briques logicielles peuvent être organisées par couches :

o Les composants périphériques : fournissent un accès aux éléments extérieurs tels que

les données et les utilisateurs.

o Les composants fonctionnels : fournissent les fonctionnalités concrètes

o Les composants médiateurs : outils permettant la communication entre les différents

composants pour livrer les fonctionnalités à l‟application.

ii- L’extensibilité L‟extensibilité est la capacité d‟un composant à fonctionner quelques soient les changements

qui peuvent subvenir dans le futur. Certes, cette fonctionnalité est difficile à atteindre

cependant cela n‟empêche pas de réfléchir à une méthode spécifique. Il s‟agit lors de la

conception de penser à quoi va ressembler notre système avec 10000 utilisateurs par exemple

ou bien si notre affichage est apte à afficher 100000 articles. C‟est ce genre de raisonnement

qui rend notre travail plus extensible.

iii- La simplicité : Elle facilite la maintenance et l‟adoption. C‟est une tâche difficile qui permet le contrôle de

l‟évolution du code.

vi-La paramétrabilité : C‟est la faculté d‟un composant à s‟adapter à plusieurs contextes d‟exécution.

L‟idée est de créer des composants qui ne sont pas liés à un genre de besoins spécifique. Mais

qui peuvent être utilisés dans plusieurs perspectives. Pour cela notre programme doit être le

plus abstrait possible.

v- La standardisation : Elle consiste à choisir des formats d‟échange de données et des protocoles de communication.

La standardisation représente un intérêt considérable puisqu‟elle permet de :

Faciliter l‟interportabilité des composants.

Le partage des standards.

Page 78: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE C:EXTRAITS DE CODE

67

Quelques exemples des codes des fonctions utilisés dans l’application

Méthode qui permet le calcul de l’IGR: C‟est une méthode calcule le montant de la cotisation de l‟impôt sur le revenu salarial

Figure 31: Extrait de code illustrant la méthode du calcul de l’IGR

Méthode qui permet le calcul des allocations familiales C‟est une méthode calcule le montant de allocations familiales

Figure 32 : Extrait de code illustrant la méthode du calcul de l’IGR

Page 79: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE C:EXTRAITS DE CODE

68

Figure 33 : Extrait de code illustrant la méthode du calcul de la prime d’ancienneté

Méthode qui permet le calcul du salaire de base C‟est une méthode calcule le montant du salaire de base

Figure 34 : Extrait de code illustrant la méthode du calcul du salaire de base.

Page 80: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

ANNEXE C:EXTRAITS DE CODE

69

Interface création d’un nouvel employé Cet extrait de code est tiré d‟un ficher xml chargé de la création des interfaces dans open ERP

Figure 35 : Extrait de code illustrant la création de l’interface Employé.

Page 81: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

BIBIOGRAPHIE, URLOGRAPHIE ET REFERENCES

70

5 Bibliographie, URLographie et

6 Références

Page 82: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

BIBIOGRAPHIE, URLOGRAPHIE ET REFERENCES

71

Les ouvrages

Titre : «Code du travail »

Description : Dahir n° 1-03-194 du 14 rejeb (11 septembre 2003) portant promulgation

de la loi n° 65-99

Fait à Tétouan

Pour contreseing : Le Premier ministre, Driss GETTOU

Titre : «Fiscalité des salaires »

Description

Auteur : M. Youssef ALAMI

Édition : DIORH d3-2004-

Titre : « Python : petit guide pour le développeur agile »

Auteur : M. Tarek Ziadé

Edition : Dunod (16 août 2007)

Les ouvrages électroniques

Titre : « Apprendre à programmer avec Python»

Auteur : Gérard SWINNEN

Description d’auteur: Professeur et conseiller pédagogique à Institut St Jean Berchmans.

Titre : « open ERP book»

Auteur : Fabien Pinckaers

Description d’auteur: Fondateur de l‟ERP open source open ERP.

Les sites-web

www.aubryconseil.com

www.damancom.ma

www.blog.ojraweb.com

www.cnss.org

www.cimr.ma

www.nextma.com

www.openerp.com

www.python.org

www.openobject.tv

www.linux-center.org/articles/9812/python.html

madsemusdipc1.insa-rouen.fr/tutoriaux/xml

Page 83: Conception d'un module de gestion de la paie adapté au contexte marocain pour openerp

BIBIOGRAPHIE, URLOGRAPHIE ET REFERENCES

72

Les références

[1] : nextma.blogspot.com

[2] : agilemanifesto.org/

[3] : www.qwan.it/en/newproductdevelopment

[4] : controlchaos.com/about/

[5] : http://blog.ojraweb.com/?p=34

[6] : www.chbani.com/sociales.htm

[7] : uml.free.fr/

[8] : www.linux.org/info/index.html

[9] : www.ubuntu-fr.org/

[10] :D’après une présentation donnée par Stéphane Fermigier à

l’occasion de l’exposition Linux Expo 99. www.linux-

center.org/articles/9906/python/

[11] : www.postgresql.org/about/

[12] : http://doc.openerp.com/developer/3_10_wizard/index.html

[13] : http://fr.wikipedia.org/wiki/Licence_BSD

[14] : http://doc.openerp.com/developer /11_1_openoffice_report.html