Vous êtes sur la page 1sur 46

Université Hassan II Mohammedia Casablanca

Ecole Normale Supérieure de l’Enseignement Technique


ENSET – Mohammedia
Département Mathématiques et Informatique

Mémoire de stage d’ingénieur

«Génie du Logiciel et Système Informatique Distribué»


GLSID

Lieu du stage : Maroc Ingenov


Soutenue le 29 Octobre 2014

Réalisé par
: : Encadré par :
Hajar GAOUCHE M. Lahsen BOUDLA
Abdellah SABIR

ANNEE UNIVERSITAIRE : 2014-2015

ENSET Av. Hassan II - B.P. 159 - Mohammedia


Système - Maroc
de gestion de production | 2014-2015 11
 0523322220/0523323530 Fax: 0523322546 Site Web: www.enset-media.ac.ma E-mail:enset-media@enset-media.ac.ma
]
Remerciement

A terme de ce projet on tient à remercier non seulement comme devoir


mais par grand respect et gratitude profonde monsieur Lahsen BOUDLAL, Le
Directeur de la société Maroc INGENOV, pour avoir encadré ce stage et nous
avoir permis de le réaliser dans les meilleures conditions le long de ces deux
mois de stage et nous avoir confié un projet d’une grande valeur.

Nous voudrons également, remercier chaleureusement le corps


pédagogique de l’école normale supérieure de l’enseignement technique de
Mohammedia, pour leur dévouement à nous transmettre les connaissances
théoriques qui nous permettent d’avancer dans notre formation.

Enfin, nous remercions tout particulièrement et à témoigner toute nos


reconnaissances et toute personne ayant participé à la réussite de ce travail et
ayant aidé notre groupe à atteindre son objectif ainsi que tous ceux qui ont
contribué de près ou de loin à l’élaboration de ce travail.

Système de gestion de production | 2014-2015 2 2


]
Glossaire
ACRONYME DESIGNATION
SIG Système d’Information Géographique
SI Système d'Information
AEP Alimentation en Eau Potable
EL Langage d’Expression
ERP Enterprise Resource Planning
DAO Data Access Object
UML Unified Modeling Language
SGBD Système de Gestion de Base de Données
Java EE Java Enterprise Edition
MVC Model-View-Controller
IOC Inversion Of Control
JDBC Java DataBase Connectivity
HTTP HyperText Transfer Protocol
jsp Java Server Pages
IDE Integrated Development Environment
POM Project Object Model
XML Extensible Markup Language
CSS Cascading Style Sheets
HTML Hypertext Markup Language
SQL Structured Query Language
AJAX Asynchronous JavaScript and XML
AOP Programmation Orienté Aspect
JSTL JavaServer Pages Standard Tag Library

Système de gestion de production | 2014-2015 3 3


]
Sommaire
Remerciement ............................................................................................................................................. 2
Glossaire ........................................................................................................................................................ 3
Liste des figures ......................................................................................................................................... 6
Introduction ................................................................................................................................................. 7
Contexte du projet .................................................................................................................................... 8
I. Présentation de l’organisme d’accueil ................................................................... 8
1. Maroc IngEnov......................................................................................................................... 8
2. Organigramme ........................................................................................................................ 9
3. Infrastructure technique ...................................................................................................... 9
II. Contexte du projet ................................................................................................. 11
1. Etude de l’existence et présentation du projet ........................................................ 11
2. Objectifs du projet ............................................................................................................... 13
3. Conduite du projet ............................................................................................................... 14
4. Planification du projet ....................................................................................................... 15
5. Facteurs de risque ................................................................................................................ 15
Analyse et conception............................................................................................................................ 16
I. Analyse et spécification des besoins fonctionnels ............................................. 16
1. Acteurs ...................................................................................................................................... 16
2. Diagramme de cas d’utilisation ...................................................................................... 18
3. Diagramme de séquence ................................................................................................... 19
III. Conception ............................................................................................................ 20
1. Diagramme de classes des entités ................................................................................ 20
Environnement technique .................................................................................................................... 21
I. Outils de modélisation .......................................................................................... 21
II. Outils de développement ...................................................................................... 21
1. Présentation du serveur d’application (Tomcat) ...................................................... 21
2. Environnement d’intégration de développement (Eclipse) ................................. 22
III. Framework Spring .................................................................................................. 22
IV. Outils de construction ........................................................................................... 22
V. Outils de test .......................................................................................................... 23
VI. Technique de développement .............................................................................. 23
1. Architecture de l’application ........................................................................................... 23
2. Mise en forme ........................................................................................................................ 26
3. Coté langage .......................................................................................................................... 27
4. Système de gestion de base données .......................................................................... 28

Système de gestion de production | 2014-2015 4 4


]
Réalisation.................................................................................................................................................. 29
I. Présentation ........................................................................................................... 29
II. Interface de l’Agent de saisie................................................................................ 30
III. Gestion de pointage et activités ........................................................................... 34
IV. Interface du chef de groupe .................................................................................. 38
V. Interface du chef de projet.................................................................................... 39
VI. Direction ................................................................................................................. 41
Conclusion .................................................................................................................................................. 45
Bibliographie ............................................................................................................................................. 46
Webographie ............................................................................................................................................. 46

Système de gestion de production | 2014-2015 5 5


]
Liste des figures
Figure 1 : Organigramme de l’entreprise ................................................................................. 9
Figure 2 : Organisation physique de la production ............................................................... 12
Figure 3 : Mode de gestion des temps passés ....................................................................... 13
Figure 4 : Cycle en Y ................................................................................................................ 14
Figure 5 : Diagramme de Gantt ............................................................................................... 15
Figure 6 : Diagramme de cas d’utilisation.............................................................................. 18
Figure 7 : Diagramme de séquence ........................................................................................ 19
Figure 8 : Diagramme de classes ............................................................................................ 20
Figure 9 : L’architecture de l’application sous Eclipse .......................................................... 23
Figure 10 : L’architecture globale de l’application................................................................ 24
Figure 11 : L’architecture du projet sous Eclipse .................................................................. 26
Figure 12 : Traitement d’image sous Photoshop ................................................................... 27
Figure 13 : Accueil .................................................................................................................... 29
Figure 14 : Authentification .................................................................................................... 29
Figure 15 : Accueil de l’agent de saisie .................................................................................. 30
Figure 16 : L’ajout d’un nouvel employé ................................................................................ 31
Figure 17 : Liste des employés................................................................................................ 31
Figure 18 : Ajout d’une nouvelle affaire ................................................................................. 32
Figure 19 : Liste des affaires ................................................................................................... 32
Figure 20 : Gestion des catégories.......................................................................................... 33
Figure 21 : Gestion des clients ................................................................................................ 33
Figure 22 : Gestion des fournisseurs ...................................................................................... 34
Figure 23 : Interface de pointage ........................................................................................... 34
Figure 24 : L’accueil de l’employé .......................................................................................... 35
Figure 25 : Etats de pointage .................................................................................................. 35
Figure 26 : Liste des pointages d’un employé ....................................................................... 36
Figure 27 : notification taches et imputation ........................................................................ 36
Figure 28 : imputations d’un employé.................................................................................... 37
Figure 29 : Liste des imputations par tâche........................................................................... 37
Figure 30 : Heures supplémentaires ....................................................................................... 38
Figure 31 : L’accueil du chef de groupe ................................................................................. 38
Figure 32 : Liste des employés et leurs imputations ............................................................ 39
Figure 33 : L’accueil du chef de projet ................................................................................... 39
Figure 34 : Liste des employés et leurs imputations et leurs tâches .................................. 40
Figure 35 : Liste des affaires ................................................................................................... 40
Figure 36 : Validation des pièces débours ............................................................................. 41
Figure 37 : L’accueil de la Direction ....................................................................................... 41
Figure 38 : Liste des affaires ................................................................................................... 42
Figure 39 : Liste des employés................................................................................................ 42
Figure 40 : Imputations des employés ................................................................................... 43
Figure 41 : Pièces débours à valider ....................................................................................... 43
Figure 42 : Pièce débours à valider ........................................................................................ 44

Système de gestion de production | 2014-2015 6 6


]
Introduction

Ce rapport expose le travail effectué dans le cadre d’un Stage d’ingénieur


du premier Juillet au 31 Août réalisé au sein de l’entreprise Maroc Ingenov dans
le cadre de notre formation en deuxième année du cycle d’ingénieur Génie du
Logiciel et des Systèmes Informatiques Distribués à l’Ecole Normale Supérieur
de l’Enseignement Technique Mohammedia. L’objectif confié à ce stage, est
d’étudier, concevoir et mettre en place un système de gestion de production
basé sur la technologie Java EE notamment le Framework Spring et PostgreSQL
comme système de gestion de base de données.

Le présent document envisage dans sa première partie le contexte du


projet qui comporte deux axes : la présentation de l’organisme d’accueil, et
celle de notre projet. La deuxième partie est consacrée à l’étude des besoins
fonctionnels, l’analyse et la conception du projet. La troisième présente
l’environnement technique du travail, et finalement la phase de la réalisation
décrivant les interfaces type de notre application.

Système de gestion de production | 2014-2015 7 7


]
Contexte du projet

I. Présentation de l’organisme d’accueil

MAROC INGENOV est un bureau d’étude, créée en 2009 par le directeur M. Lahsen
BOUDLAL. Elle a pour vocation, la réalisation des systèmes d’information, des systèmes
d’information géographique et des études techniques.

Parmi les domaines d’expertise de la société : l’informatique et le Système


d’Information Géographique (SIG), les études hydrologiques, hydrogéologiques, géologiques,
sismiques, l’aménagement urbain et rural, l’aménagement des cours d’eau, la gestion des
ressources en eau, les études d’impact sur l’environnement et les études de qualité.

Le bureau d’étude est constituée d’une équipe cohérente et solidaire d’experts et de


consultants dans les domaines près cités, et qui ont pour principal objectif la réalisation des
études de haute qualité, d’offrir des services divers adaptés aux besoins des clients, et
d’assister le client ou le maître d’œuvre depuis la conception du projet jusqu'à la réalisation
dans les règles de l’art.

Les projets sont étudiés au sein du département informatique constitué de plusieurs


équipes, que dans chacune on trouve un chef de projet, des ingénieurs et des techniciens.

Système de gestion de production | 2014-2015 8 8


]
Figure 1 : Organigramme de l’entreprise

3.1. Système Informatique

Dans le développement des systèmes informatiques Le bureau d’étude MAROC


INGENOV utilise comme système de gestion de base de données : Oracle et Microsoft
SQL Server et comme langage de programmation : PHP, .Net et Java.

Les prestations :

 Etude de l’existant et des besoins.


 Elaboration des manuels de procédures.
 Conception des systèmes d’informations.
 Développement (Windows, Intranet, Internet) et mise en place.
 Accompagnement pendant la mise en œuvre & Maintenance.
3.2. Système d’Information Géographique (SIG)

Dans le développement des Systèmes d’Information Géographique Le bureau


d’étude MAROC INGENOV utilise comme logiciel : ArcGis, Autodesk Map et Autodesk
MapGuide Enterprise Open Source.

Système de gestion de production | 2014-2015 9 9


]
Les prestations :

 Etude de l’existant et des besoins - Architecture et mise en place


 Intégration au Système d’information de l’entreprise
 Adaptation & Personnalisation
 Développement et déploiement en architecture Client/Serveur et SIG
Intranet/Internet
 Support et formation
3.3. Les domaines d’application des SI et les SIG

Chaque système développé à MAROC INGENOV a son domaine d’application.

Parmi ces derniers on trouve :

 Développement des systèmes d’information à caractère technique et/ou


scientifique dans les domaines suivants : Eau, Environnement, Agriculture,
Energie, Géotechnique, Topographie, Génie civil (simulation, modélisation,
etc.).
 Systèmes d’information de gestion du patrimoine et des infrastructures:
 Gestion du patrimoine mobilier et immobilier.
 Gestion des réseaux : AEP, assainissement, électricité, télécom et
transport.
 Gestion du foncier et du cadastre.
 Application de gestion urbaine et communautaire.
 Géolocalisation et gestion de flottes.
 Promotion et gestion immobilière.
 Développement des systèmes d’information de support qui préoccupent les
domaines suivant :
 Intégration de progiciels et ERP : Comptabilité, trésorerie, RH,
achats, logistique, recouvrement, contentieux.
 Développement produits spécifiques de support pour
administrations et entreprises.
 Réalisation des sites web et portails à caractère général.
 Systèmes de gestion documentaire qui consiste dans :
 L’étude et la conception de solutions de gestion documentaires,
courrier et Workflow.
 La numérisation et l’intégration de fonds documentaires.
 L’acquisition, le traitement et l’intégration des données.

Système de gestion de production | 2014-2015 10 1


0]
II. Contexte du projet

Maroc Ingenov est une entreprise qui a pour mission l’étude et la réalisation des projets de
diffèrent domaines, la procédure de travail dessus est actuellement traditionnelle ce qui a
causé les problèmes suivants :
 L’employé doit se déplacer afin de chercher une information à propos d’un projet. Ses
déplacements peuvent être inutiles et même peuvent provoquer un gaspillage de
temps.
 Absence de structuration (catégories et groupe …) ce qui va entrainer une mal gestion
du projet
 Mal gestion des imputations sur les affaires
 Mal gestion des heures supplémentaires
 Mal gestion des pièces débours
Maroc Ingenov dispose également d’un système de pointage manuel à savoir le pointage via
des feuilles de pointage.

Solutions :
La solution consiste à mettre en place un système de gestion de production. Ce système
est une image conforme à la réalité des concepts et de l'organisation physique de la
production Cette organisation est représentée shématiquement sur le diagramme ci-
contre. Les deux principaux concepts sont : L’employé et l'affaire.
 Les employés sont répartis en catégories en fonction de leur expérience et des tâches
qu'ils assurent. Ce qui se traduit par un coût horaire moyen de chaque catégorie.
 L'affaire est le noyau de la production. Elle peut correspondre à un ou plusieurs
contrats avec un client, traité par un ensemble de personnes (membres) dont les
spécialités et l'expérience sont conditionnées par la nature et l'importance de
l'affaire. Sa gestion est confiée à un ingénieur (chef de projet) qui peut à son tour
désigner l'un des membres en tant qu'adjoint au chef de projet.

Système de gestion de production | 2014-2015 11 1


1]
Personnel et Catégorie Chef de Groupe
Groupe

Adjoint au
Chef de Projet

Figure 2 : Organisation physique de la production

La responsabilité du chef de projet vis à vis aussi bien de la Direction que du Client
se traduit par un pouvoir de prise de décision sanctionné à la fois par un bon aboutissement
de l'affaire et par la meilleure rentabilité possible.

Les conditions et les délais de cette prise de décision sont nettement améliorés par ce
système d'information qui est fondé sur les mêmes concepts utilisés avant combinés aux
dernières technologies de l'information de l'époque.

Ci-contre un diagramme qui résume le mode de gestion des temps passés dans le cadre
d'une affaire.

Système de gestion de production | 2014-2015 12 1


2]
Figure 3 : Mode de gestion des temps passés

Les principaux objectifs du système sont :

 d’une part de pouvoir évaluer la rentabilité des affaires à tout moment et


 d’autre part de matérialiser dans les faits les attributions et devoirs des responsables
à tout niveau.

Ces objectifs ont été atteints par le biais d'une répartition efficace des rôles et la collecte
de l'information aussitôt qu'elle est disponible

L'évaluation de la rentabilité des affaires est effectuée par le biais de ratios mis au point par
l'entreprise et utilisant les informations générées par le système pour chaque affaire à
savoir : le montant facturé, le montant des débours, le coût direct productif, le coût direct
prévisionnel et les débours prévisionnels

Système de gestion de production | 2014-2015 13 1


3]
Dans le cadre d’un projet de développement informatique, il apparaît aujourd’hui une
nouvelle dimension qui est celle de la « réutilisation » ; réutilisation des spécifications, des
services, des composants et du code. Cette démarche permettra un gain considérable de
temps et donc d’argent, l’amélioration de la qualité des développements et donc satisfaction
des utilisateurs.

Pour cela il faut alors modifier les méthodes de travail classiques et passer à des méthodes
dites agiles notamment 2TUP. Parce que la méthodologie Agile permet de travailler en
binôme, aucune personne travaillant sur le projet n’est seule dans son coin, contrairement à
ceux travaillant dans un cadre de gestion de projet traditionnelle.

Processus de développement :

Le modèle 2TUP -appelé aussi cycle en « Y » - repose sur cinq principes fondamentaux :

 Séparer les aspects fonctionnels et les aspects techniques


 Travailler selon deux points de vue qui se complètent et s’enrichissent
mutuellement ; celui de l’entreprise, celui des applications.
 Modéliser l’activité de l’entreprise et des applications aux moyens d’objets en
utilisant UML.
 Effectuer la réingénierie des applications dans le sens de la réutilisation.
La figure 4 montre bien le cycle en « Y » caractéristique de 2TUP.

Figure 4 : Cycle en Y

Système de gestion de production | 2014-2015 14 1


4]
Le diagramme ci-dessous (figure 5) illustre les différentes phases du projet avec une
estimation approximative de chaque tache et la succession des taches dans le temps

Rapport du projet 50
Test final 7
Test unitaire 33
Développement 33
Conception 10
Etude et analyse 12

0 10 20 30 40 50 60 70

Durée

Figure 5 : Diagramme de Gantt

Cette phase consiste à présenter les risques qui peuvent survenir lors de ce projet (tableau 1).

Risque Impact Probabilité Solutions

Modification Important de Faible 1. Tentative d'adaptation aux


des besoins
quelques jours nouveaux besoins

2. Retour à la phase d'analyse

des besoins

Indisponibilité Faible à important Faible 1. Correction du planning


d’un membre
de quelques jours à prévisionnel
quelques semaines 2. Continuité du travail (taches
en parallèle).

Tableau 1 : Facteurs de risque

Système de gestion de production | 2014-2015 15 1


5]
Analyse et conception
I. Analyse et spécification des besoins fonctionnels
La spécification des besoins fonctionnels va nous permettre d’avoir une meilleure approche
des utilisateurs, des fonctionnalités et de la relation entre les deux. Elle sera sous forme de
cas d’utilisation. Pour cela nous allons procéder ainsi :

 Identification des messages et des acteurs du système.


 Diagramme de cas d’utilisation
 Diagramme de séquence

Dans cette phase on va identifier les différents acteurs interagissant avec le


système et qui sont les suivants :
Chef de projet :
 Décomposition des affaires en missions
 Prévision des temps restant à passer par chaque employé sur l’affaire
 Autorisation des HS
 Définition des quotas sur les temps à passer
 Contrôle et validation des temps passés
 Validation des factures
 Validation des saisis débours
Chef de groupe :
 Contrôle et validation des temps passés par les personnes du groupe
Employé :
 Pointage
 imputation
 Consultation des heures supplémentaire autorisé à effectuer
 Consultation de la liste des pointages
 Consultation de la liste des imputations
 Consulter de la fiche de solde mensuel

Système de gestion de production | 2014-2015 16 1


6]
Agent de saisie :
 Ajouter client
 Ajouter employé
 Ajouter fournisseur
 Création des affaires
 Création des contrats
 Saisi des pièces débours
 Ajouter groupe
 Ajouter qualification
 Ajouter catégorie
Comptable :
 Validation des pièces débours
 Emission des factures -> Suivi de l’encaissement
 Suivi des règlements
 Calcul des débours
 Génération des écritures comptables
Responsable de facturation :
 Préparation des factures
 Encaissement des factures
 génération des écritures relatives aux factures
Direction :
 Validation des prévisions
 Suivi et Contrôle des affaires
 Suivi des débours de toutes les affaires
 Suivi détaillé de la facturation des affaires

Système de gestion de production | 2014-2015 17 1


7]
V alidation facture
A jouter qualification

Décompos er l'affaire
A jouter catégorie
A jouter C lient

A ffectation des employés


A jouter fournis s eur

autoris er les HS
S ais ir les données
A jouter E mployé
C he f de proje t
V alider P D
A jouter affaire
Définir temps /coùt
Age nt de sa isi A jouter groupe
ajouter pièce débours

ajouter contrat
C ontroler les temps pas s és
P ointage
lis te imputation

V alider les imputation


C ons ulter C he f de groupe
fiche de s olde mens uel
Em ployé
Imputation V alidation P D
lis te pointage

G énérer les écritures comptable pou P D C om pta ble

V alider encais s ements


C alculer débours

Re sponsa ble fa c tura tion G énérer les écritures comptable


S uivi des imputaions
A jouter factures
S uivi des affaires

G énérer factures Dire c tion


V alidation P iece debours

S uivi des pointages


S uivi Facturation

V alidation prévos ions

Figure 6 : Diagramme de cas d’utilisation

Système de gestion de production | 2014-2015 18 1


8]
DiagrammeSequence_1

Systéme

Agent de saisie Employé Chef de groupe Chef de projet Comptable Responsable facturation Directeur

authentification
Emloyé connecté
Pointage

alt absent Employé présent

présent Employé absent

Ajouter Affaire
Affaire enregistrée

Ajouter contrart
contrat enregistré

Decomposition de l'affaire
Prévision temps/coût
Affectation des employés au tâches

tâche enregistrée

par
Imputation

Imputation enregistrée

Validation de l'inputation
Imputation validée par le chéf de groupe
Validation de l'inputation
Imputation validée

controle de temps

controle de temps

opt [] Autorisation HS
Heures supplémentaire autorisées

opt []
Ajouter PD

PD enregistrée

Validation pd

PD validé par le chef de projet

Validation pd
PD validé par le comptable

Validation pd

PD validée
validation des encaissements
Encaissements validé
Génération des ecritures comptable

Ecritures comptable générées

Calcule des débours

Calcule des débours effectués

opt [] Consultation de la fiches du solde mensuel


Affichage de la liste du solde

opt [] Ajouter facture

Facture ajoutée

Génération des ecritures comptable

Ecritures comptable générées

Génération de facture

Facture générée

Validation de la factire

Facture validée

Figure 7 : Diagramme de séquence

Système de gestion de production | 2014-2015 19 1


9]
III. Conception

Figure 8 : Diagramme de classes

Système de gestion de production | 2014-2015 20 2


0]
Environnement technique
I. Outils de modélisation

Dans notre projet, nous avons adapté UML (Unified Modeling language) comme
langage de modélisation.

En informatique UML (de l'anglais Unified Modeling Language), ou Langage


de modélisation unifié, est un langage de modélisation graphique à base de pictogrammes.
Il est utilisé en développement logiciel, et en conception orientée objet. UML est
couramment utilisé dans les projets logiciels.

PowerAMC permet de réaliser tous les types de modèles informatiques. Il


reste un des seuls qui permet de travailler avec la méthode Merise. Selon Riff News, cela
permet d'améliorer la modélisation, les processus, le coût et la production d'applications.

II. Outils de développement

Le serveur d'applications est l'environnement d'exécution des applications côté


serveur. Il offre un certain nombre de services tels que : l'accès aux composants, la
répartition de charge, la persistance, la gestion transactionnelle et la sécurité.

Le serveur d’application mise en place dans notre système de gestion de production


est Tomcat.

Apache Tomcat est un conteneur web libre de servlets et JSP Java EE. Issu
du projet Jakarta, c'est un des nombreux projets de l’Apache Software Foundation. Il
implémente les spécifications des servlets et des JSP du Java Community Process, est

Système de gestion de production | 2014-2015 21 2


1]
paramétrable par des fichiers XML et de propriétés, et inclut des outils pour la configuration
et la gestion. Il comporte également un serveur HTTP.

Eclipse est un EDI (Environnement de Développement Intégré) ou en


anglais un IDE. Il vise à développer un environnement de production de logiciels libres qui
soit extensible, universel et polyvalent, en s'appuyant principalement sur Java. Son objectif
est de produire et fournir des outils pour la réalisation de logiciels, englobant les activités
de programmation (notamment environnement de développement intégré et Framework)
recouvrant modélisation, conception, gestion de configuration, reporting…etc. Bien
qu'Eclipse ait d'abord été conçu uniquement pour produire des environnements de
développement, les utilisateurs et contributeurs se sont rapidement mis à réutiliser ses
briques logicielles pour des applications clientes classiques.

III. Framework Spring


Spring est un Framework open source J2EE base sur la manipulation de composants logiciels
(beans) qui fournit un conteneur capable de stocker ces beans. La configuration de
l'application peut se faire grâce à un fichier XML.

Pendant le stage, on a pu utiliser la puissance IOC concepts clés de Spring : L'Inversion of


Control (Ioc-inversion de contrôle ou injection de dépendances). L'Ioc est un patron de
conception permettant, en programmation orientée objet, de découpler les dépendances
entre objets. On sait juste que l'objet A dépend de B et c'est Spring qui va gérer les
dépendances entre les instances. Leur création est faite au moment du lancement de
l'application. L'idée du pattern IOC est très simple, elle consiste, lorsqu'un objet A a besoin
d'un objet B, à déléguer à un objet C la mise en relation de A avec B.

IV. Outils de construction


Pour la construction de notre projet, nous avons adapté l’outil
Maven qui est un outil pour la gestion et l'automatisation de production des projets logiciels
Java en général et Java EE en particulier. L'objectif recherché est comparable au système

Système de gestion de production | 2014-2015 22 2


2]
Make sous Unix : produire un logiciel à partir de ses sources, en optimisant les tâches
réalisées à cette fin et en garantissant le bon ordre de fabrication.

Maven et Eclipse : Un plugin Maven pour Eclipse est disponible, permettant à Eclipse
d’utiliser Maven en arrière-plan et donc d'utiliser Eclipse et Maven conjointement.

Ceci permet d’avoir des projets Maven


générés et stockés dans le référentiel. Il
permet notamment de dépendre de projets qui
sont dans le référentiel, et donc on n’a pas
besoin de les importer sous Eclipse comme
c’est le cas dans les outils existant. Le
classpath est généré par Maven.

Maven généré un répertoire « target » qui


permet de visualiser de nombreuses pages
contenant des rapports et des informations sur
le projet (nom du projet, les dépendances,…).

Figure 9 : L’architecture de l’application sous Eclipse

V. Outils de test
JUnit est un framework de test unitaire pour le langage de programmation Java. Créé par
Kent Beck et Erich Gamma, JUnit est certainement le projet de la série des xUnit connaissant
le plus de succès.

VI. Technique de développement

L’architecture adoptée pour ce projet est celle la plus utilisée dans le développement des
grandes applications, c’est l’architecture 3-tiers.

L’architecture à trois niveaux ou architecture à trois couches est l'application du modèle


plus général qu'est le multi-tiers. L'architecture logique du système est divisée en trois
niveaux ou couches : Couche présentation ; couche métier ; couche accès aux données.

Système de gestion de production | 2014-2015 23 2


3]
Figure 10 : L’architecture globale de l’application

A Un client web est un logiciel conçu pour se connecter à un serveur HTTP.

B C’est le serveur d’application utilisé pour son déploiement.

La présentation des données : cette couche est l’apparence visuelle de


C
l’application, telle qu’elle sera perçue par l’utilisateur finale. Pour cette couche on
adopte le Framework Spring Web Model-View-Controller (MVC). La logique de
présentation est basée sur le pattern Model-View-Controller. En effet, L'organisation
globale d’un programme est souvent délicate. Plusieurs solutions sont proposées pour
arranger la façon d'organiser une interface graphique d'un programme. Le modèle MVC
offre aussi un cadre pour structurer une application, en proposant trois entités distinctes :
le modèle, la vue et le contrôleur ayant chacun un rôle précis dans l'interface.

L’aspect de sécurité est traité au niveau de cette couche, on utilisant le Framework Spring
security. En effet, les requêtes http sont interceptées par un filtre de servlet qui délègue
à un bean Spring les traitements de vérification d’accès aux pages web.

Système de gestion de production | 2014-2015 24 2


4]
Le traitement métier des données : correspondant à la mise en œuvre de
D
l'ensemble des règles de gestion et de la logique applicative. Nous avons adopté
pour cette couche le Framework Spring IOC. C’est un Framework open source qui prend
en charge la création d’objets et la mise en relation d’objet par l’intermédiaire d’un fichier
de configuration qui décrit les objets à fabriquer et les relations de dépendance entre ces
objets.

E L'accès aux données persistantes : correspondant aux données qui sont destinées
à être conservées sur la durée, voire de manière définitive. Pour cette couche nous
avons utilisé le Framework Hibernate, qui est un Framework open source. Il apporte une
solution aux problèmes d’adaptation entre le paradigme objet et les SGBD en remplaçant
les accès à la base de données par des appels à des méthodes objet.

L’architecture du projet sous Eclipse IDE :

Globalement, l'architecture d'un projet web Java EE notament Spring dans eclipse est la
suivante :

Système de gestion de production | 2014-2015 25 2


5]
Figure 11 : L’architecture du projet sous Eclipse

La mise en forme de notre projet a été réalisée par le Framework Bootstrap2 coté
présentation des pages web et Photoshop coté conception du logo et traitement d’images

Bootstrap2 est une collection d'outils utile à la création de sites web et applications

web. C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons,

outils de navigation et autres éléments interactifs, ainsi que des extensions JavaScript en
option. C'est l'un des projets les plus populaires sur la plate-forme de gestion de
développement GitHub, Bootstrap est un projet open source de Twitter.

Système de gestion de production | 2014-2015 26 2


6]
: C’est une bibliothèque JavaScript libre et multi-plateforme créée pour faciliter
l'écriture de scripts côté client dans le code HTML des pages web.

Photoshop CS6 : est un logiciel de retouche, de traitement et de dessin assisté par


ordinateur édité par Adobe. Il est principalement utilisé pour le traitement de photographies
numériques.

Figure 12 : Traitement d’image sous Photoshop

SQL : est un langage informatique normalisé servant à exploiter des bases de données
relationnelles. La partie langage de manipulation des données de SQL permet de rechercher,
d'ajouter, de modifier ou de supprimer des données dans les bases de données
relationnelles.

Java : Le langage Java est un langage de programmation informatique orienté objet


créé par James Gosling et Patrick Naughton, employés de Sun Microsystems. Il permet de
créer des logiciels compatibles avec de nombreux systèmes d’exploitation (Windows, Linux,
Macintosh, Solaris). Java donne aussi la possibilité de développer des programmes pour
téléphones portables et assistants personnels. Enfin, ce langage peut être utilisé sur internet
pour des applications intégrées à la page web (applet) ou encore comme langage serveur
(JSP).

Système de gestion de production | 2014-2015 27 2


7]
EL : JSTL propose un langage particulier constitué d'expressions qui permettent
d'utiliser et de faire référence à des objets Java accessibles dans les différents contextes de
la page JSP. Le but est de fournir un moyen simple d'accéder aux données nécessaires à une
JSP.

JavaScript : est un langage de programmation qui permet d'apporter des améliorations


au langage HTM pour exécuter des commandes du côté client, c'est-à-dire au niveau du
navigateur et non du serveur web. AJAX est une méthode de développement web basée sur
l'utilisation d'un script JavaScript pour effectuer des requêtes web à l'intérieur d'une page
web sans recharger la page.

Est un système de gestion de bases de données relationnelles


objet (ORDBMS), développé à l'université de Californie au département des sciences
informatiques de Berkeley. Il supporte de nombreuses fonctionnalités modernes : requêtes
complexes, clés étrangères, déclencheurs, intégrité des transactions… De plus, il est étendu
de plusieurs façons par l'utilisateur, par exemple en ajoutant de nouveaux types de données,
fonctions, opérateurs, fonctions d'agrégat, méthodes d'indexage et langages de procédure.

Système de gestion de production | 2014-2015 28 2


8]
Réalisation
I. Présentation
Le système de gestion de production développé durant notre stage comprend sept
applications qui interagissent entre elles. La page d’accueil du Project Management se
compose de son tour de septe icones où chacune amène à une de ces applications

Figure 13 : Accueil

Pour accéder au système sous n’importe quel profil une authentification est requise.

Figure 14 : Authentification

Système de gestion de production | 2014-2015 29 2


9]
II. Interface de l’Agent de saisie
En cliquant sur l’icône de l’agent de saisie la page représenté par la figure ci-contre
s’affiche (figure 15). A travers cet interface l’agent de saisie pourra ajouter des entrées les
modifiées ou/et les supprimées en cas de besoin.

Figure 15 : Accueil de l’agent de saisie

Afin d’ajouter un nouveau employé, l’agent de saisie doit entrer toutes les informations
personnel ainsi que professionnel propre à ce dernier, de plus il doit préciser les rôles dans
cet employé disposera, un message informatif est affiché pour signalé que le rôle Employé
est attribuer implicitement. Un email est envoyé à l’employé ajouté contenant le login o le
mot de passe pour accéder au système (figure 16).

Système de gestion de production | 2014-2015 30 3


0]
Figure 16 : L’ajout d’un nouvel employé

Une fois un employé s’est ajouté il sera inséré dans la liste des personnels de Maroc-
Ingenov, cette liste est représentée dans un tableau avec la possibilité de rechercher,
modifier ou bien supprimer.

Figure 17 : Liste des employés

Chaque affaire prise par MarocIngenov doit être ajouté depuis l’interface représentée
par la figure ci-dessous, lors de l’ajout d’une nouvelle affaire l’agent de saisie doit préciser
l’employé dite chef de projet qui sera responsable de cette dernière ainsi que son adjoint.

Système de gestion de production | 2014-2015 31 3


1]
Une fois l’affaire s’est ajoutée avec succès une notification sera instantanément
envoyée au chef de projet concerné à l’aide de la méthode AJAX

Figure 18 : Ajout d’une nouvelle affaire

Chaque affaire peut avoir une ou plusieurs contrats, du même pour les pièces débours.
Pour les ajouter l’agent de saisie se serve de l’interface ci-dessous. Dans cette interface on
dispose de toutes les informations correspondantes aux affaires notamment l’état, la date
de service, la date d’achèvement … . Si une pièce débours s’est ajoutée pour une affaire une
notification sera instantanément envoyée au chef du projet dans le but est soit la valider ou
la refuser

Figure 19 : Liste des affaires

Système de gestion de production | 2014-2015 32 3


2]
Les employés dans MarocIngenov sont groupé par catégorie, chaque catégorie a sa
propre coût horaire. L’interface suivant permet à l’agent de saisie d’ajouter des nouvelles
catégories.

Figure 20 : Gestion des catégories

L’interface suivant permet d’ajouter des nouveaux clients et d’avoir une vision sur les
affaires réalisées pour chaque client.

Figure 21 : Gestion des clients

Système de gestion de production | 2014-2015 33 3


3]
L’ajout des fournisseurs se fait depuis l’interface si dessous.

Figure 22 : Gestion des fournisseurs

III. Gestion de pointage et activités


En cliquant sur l’icône de l’employé une liste des photos des personnels de l’entreprise
s’affiche. L’employé en question doit cliquer sur sa propre photo pour qu’il ait la possibilité
de s’authentifier (figure 23) et par la suite de pointer, imputer sur les tâches ou bien
consulter son profile.

Figure 23 : Interface de pointage

Système de gestion de production | 2014-2015 34 3


4]
Une fois connecté la page d’accueil si dessous s’affiche

Figure 24 : L’accueil de l’employé

La première action qu’un employé doit effectuer est le pointage, dans cette interface
le salarié pourra changer son état de absent vers présent et inversement (figure 25).

L’employé n’a pas le droit de pointé au-delà de 23h jusqu’à la prochaine ouverture du
système à 6h du matin, tous les pointages seront clôturé automatiquement à la fermeture
du système.

Figure 25 : Etats de pointage

L’employé a le droit de consulté à tout moment la liste des pointages où il trouve


comme informations le nombre des heures normale effectué, le nombre des heures a
effectué ainsi le nombre des heures supplémentaires.

Système de gestion de production | 2014-2015 35 3


5]
Figure 26 : Liste des pointages d’un employé

Chaque employé possède des tâches à effectuer dans un délai spécifique et chaque
tâche a une durée à ne pas dépasser (figure 27). Pour une meilleure coordination entre le
délai et la durée notre système mis à la disposition des employés l’action d’imputation
accompagné par un calendrier où on trouve les taches imputées et le temps restent pour
chaque tache (figure 28).

Pour chaque imputation effectuée une notification sera instantanément envoyée au


chef du groupe afin de la valider (figure 27).

Figure 27 : notification taches et imputation

Système de gestion de production | 2014-2015 36 3


6]
Figure 28 : imputations d’un employé

Vu l’importance des imputations en plus du calendrier on offre à l’employé un tableau


qui contiens toutes les imputations groupé pare tache.

Figure 29 : Liste des imputations par tâche

Système de gestion de production | 2014-2015 37 3


7]
Chaque employé peut vérifier s’il lui est autorisé des heures supplémentaires effectuer
(Figure 30).

Figure 30 : Heures supplémentaires

IV. Interface du chef de groupe

La page d’accueil du chef de groupe est la suivante :

Figure 31 : L’accueil du chef de groupe

Le chef de groupe a comme mission le contrôle du temps passé par les employés
appartenant à son groupe. Pour se faire il doit valider les imputations effectuées par ses

Système de gestion de production | 2014-2015 38 3


8]
derniers. Le tableau ci-contre liste les taches groupé par employé et donne la possibilité au
chef du groupe de valider ou d’annulé les imputations.

Figure 32 : Liste des employés et leurs imputations

V. Interface du chef de projet


La page d’accueil du chef du projet et la suivant :

Figure 33 : L’accueil du chef de projet

Système de gestion de production | 2014-2015 39 3


9]
De son tour le chef de projet doit contrôler le temps passé par les employés, de plus il
a le droit d’autorisé des heures supplémentaires pour une tâche en cas de besoin.

Figure 34 : Liste des employés et leurs imputations et leurs tâches

Le chef de projet est responsable de la décomposition de l’affaire en missions puis en


tâches, de donné des prévisions temporaire et budgétaire et d’affecter les tâches au
employés.

Figure 35 : Liste des affaires

Système de gestion de production | 2014-2015 40 4


0]
Cette interface permet au chef de projet de valider les pièces débours.

Figure 36 : Validation des pièces débours

VI. Direction
La direction doit être ajour de toutes les informations circulantes dans le système, elle
fait le suivie de toutes les actions effectué par : l’agent de saisie, l’employé, le chef du
groupe, le chef projet …

Figure 37 : L’accueil de la Direction

Système de gestion de production | 2014-2015 41 4


1]
La liste des affaires :

Figure 38 : Liste des affaires

La liste des employés :

Figure 39 : Liste des employés

Système de gestion de production | 2014-2015 42 4


2]
La liste des imputations groupées par employé :

Figure 40 : Imputations des employés

La liste des pièces débours groupés par affaire :

Figure 41 : Pièces débours à valider

Système de gestion de production | 2014-2015 43 4


3]
La validation finale des pièces débours se fait par le directeur.

Figure 42 : Pièce débours à valider

Système de gestion de production | 2014-2015 44 4


4]
Conclusion

Ce projet, malgré la courte duré dont nous avons disposé, nous a été d'un grand
bénéfice. En effet, lorsqu'on nous a proposé de choisir l’outil de développement
on n’a pas hésité de choisir la technologie Java EE, l'un des principaux objectifs
était de proposer un profil extrêmement attractif sur nos CV puisque le marché
de l'emploi dans le domaine de l'informatique est aujourd'hui dominé par le
développement Java/Java EE.

Le but de notre étude était de mettre en place une architecture 3-tiers avec
base de données centralisée sous PostgreSQL. Elle s'est portée sur la gestion
de production : affaire, activités et pointage ainsi les procédures de traitement
des projets (affaires) et système de pointage vont être automatisée pour une
gestion efficace et sans perte des données. Et mieux encore cette solution
laisse la possibilité de pouvoir intégrer d'autres applications sans modifier
l'architecture ce qui a était le cas de l’application de comptabilité et la gestion
de facturation, en effet la durée du stage nous n’a permis pas de compléter ces
applications.

La solution peut être adaptée à toute organisation utilisant les bases de


données et dont les buts sont la performance, l'évolutivité, la maintenabilité.

Système de gestion de production | 2014-2015 45 4


5]
Bibliographie

Livre : Spring par la pratique - Eyrolles – 2eme Edition

Webographie
http://fr.wikipedia.org

http://www.spring.io

http://www.developpez.com

http://www.stackoverflow.com

Système de gestion de production | 2014-2015 46 4


6]

Vous aimerez peut-être aussi