Vous êtes sur la page 1sur 58

Mmoire de Projet de Fin dAnne

Pour lObtention du Diplme BAC+4 en


Ingnierie des Systmes dInformatiques

Sujet
Gestion dun Centre de Formation


Soutenu par : Sous la direction de :
Mr. Ech-Charafi Yassine Mr. Zellou Ahmed
Mr. Hammani Mourad





Anne Universitaire 2012-2013

2

Ddicace




Nous ddions ce travail :



A Nos chers parents que nous remercions de tous nos curs pour
leurs conseils qui nous ont guids tout au long de notre chemin
dtude;

A Notre encadrant qui nous as normment aid et soutenu tout au
long de la ralisation de travail.

A Nos enseignants pour leurs formations, leurs conseils et leurs aides.

A Nos amis pour leurs encouragements et soutien.

A ceux qui nous ont indiqus la bonne voie en nous rappelant que la
volont fait toujours les grandes personnes.




3

Remerciements



Si jai vu plus loin, cest en me tenant sur les paules des gants qui mont prcd
Isaac Newton


Nous tiendrons remercier dans un premier temps, Monsieur Ahmed ZELLOU pour laide
et les conseils fournis lors des diffrents suivis se rapportant aux missions voques dans ce
rapport.


Nous remercions galement toute lquipe pdagogique de SUPMIT et tous les intervenants
professionnels pour avoir assur la partie thorique de notre formation.


Nous remercions dans un dernier temps nos ami(e)s et toutes les personnes qui ont contribu
de prs ou de loin la conception et au bon droulement de ce travail.

4
Rsum


Ce document prsente notre Projet de Fin dAnne dans le cadre du diplme BAC+4 en
Ingnierie des Systmes dInformatiques de SUPMTI. Il a pour objectif dappliquer nos
acquis et connaissances.

Il nous a t confi la ralisation dune application Web offrant des services de Gestion dun
centre de formation.

Ce projet est destin aux bnficiaires dsirant faire linscription en ligne dans des diffrentes
formations, il propose une solution complte :
Une application volue base sur un modle mtier pour la prsentation des
formations.
La gestion et mise en relation entre les formateurs, bnficiaires et les formations.
Lajout et la gestion des thmes, catalogues et les formations.

Pour la ralisation de ce projet, nous avons adopt le processus de dveloppement 2TUP qui
fait une large place la technologie et la gestion du risque, nous avons aussi utilis le
langage UML pour la modlisation.
En ce qui concerne le dveloppement, nous avons utilis le langage Php5, JavaScript et Ajax
et MySQL pour la base de donnes.

Dans le prsent document nous allons dcrire plus en dtail les tapes que nous
avons ralises dans le cadre de notre projet.


Mots-cls : Centre de formation, 2TUP


5



Abstract



This document presents our Final Project Year in the degree BAC +4 Engineering of
Information Systems SUPMTI. It aims to apply our learning and knowledge.

We have been entrusted the creation of a website offering services management training
center.

This project was designed for beneficiaries who wishing to register online in different
formations, it offers them a complete solution:
An evolved web site based on a business model for the presentation of formations.
The management and interaction between trainers, beneficiaries and formations.
The insertion and management themes, catalogs and formations.

For this project we adopted the process 2TUP development has a strong focus on technology
and risk management, we also used the UML for modeling.
Concerning the development, we used Php5, JavaScript and Ajax and MySQL for the
database.

In this paper we will describe in more detail the steps we have made in our project.






6


Liste des abrviations

Abrviation Dsignation
2TUP 2 Track Unified Process
AJAX Asynchronous JavaScript and XML
BPMN Business Process Model and Notation
CSS Cascading Style Sheets
DOM Document Object Model
FTP File Transfer Protocol
HTML HyperText Markup Language
HTTP HyperText Transfer Protocol
IHM Interface Homme Machine
LDAP Lightweight Directory Access Protocol
MSP Microsoft Project
MVC Model View Controller
OMG Object Management Group
PBS Product Breakdown Structure
PHP Hypertext Preprocessor
RUP Rational Unified Process
SQL Structured Query Language
UML Unified Modelling Language
XML Extensible Markup Language
XP Extreme Programming
XSL Extensible Stylesheet Language

7
Table des figures


Figure 1: Le processus de dveloppement en Y ....................................................................... 17
Figure 2: Lorganigramme PBS ............................................................................................... 19
Figure 3: Planning prvisionnel du projet ................................................................................ 20
Figure 4: Branche fonctionnelle du processus Y ..................................................................... 28
Figure 5: Diagramme de cas d'utilisation ................................................................................. 30
Figure 6: Diagramme de squence (Authentification) ............................................................. 31
Figure 7: Diagramme de squence (Ajouter Formation) ......................................................... 32
Figure 8: Diagramme de squence (S'inscrire) ........................................................................ 33
Figure 9: Diagramme de squence (S'inscrire dans formation) ............................................... 34
Figure 10: Diagramme de squence (S'inscrire comme Formateur) ........................................ 35
Figure 11: Branche technique du processus Y ......................................................................... 37
Figure 12: Architecture 3 tiers ................................................................................................. 39
Figure 13: Architecture du dsigne pattern MVC ................................................................... 44
Figure 14: Phase de mise en uvre dans le processus Y ......................................................... 47
Figure 15: Architecture logicielle du projet ............................................................................. 48
Figure 16: Diagramme de classes ............................................................................................. 52
Figure 17: L'interface d'accueil de l'application ....................................................................... 53
Figure 18: L'interface d'authentification .................................................................................. 54
Figure 19: L'interface de cration d'un profil formateur .......................................................... 54
Figure 20: L'interface d'ajout d'une formation ......................................................................... 55
Figure 21: L'interface de lister et grer des bnficiaires ......................................................... 55










8
Liste des tableaux

Tableau 1: Tableau comparatif entre les processus de dveloppement ................................... 16
Tableau 2: Liste des acteurs ..................................................................................................... 26
Tableau 3: Les vues de l'application ........................................................................................ 49
Tableau 4: Description de la classe formateur ......................................................................... 51
Tableau 5: Description de la classe formation ......................................................................... 51


Table des matires
9
Table des matires

Introduction gnrale ................................................................................................................ 11
Prsentation de la structure daccueil ....................................................................................... 14
1.1 Mission ........................................................................................................................ 14
1.2 Description .................................................................................................................. 14
Contexte du projet .................................................................................................................... 15
Conduite du projet .................................................................................................................... 15
1.3 Processus de dveloppement ....................................................................................... 15
1.4 Langage de modlisation ............................................................................................. 18
1.5 Planification du projet ................................................................................................. 18
1.5.1 Structure de rpartition du produit (PBS) ............................................................ 19
1.5.2 Diagramme de Gantt ............................................................................................ 19
Conclusion ................................................................................................................................ 20
1 Cahier des charges .............................................................................................................. 22
1.1 Introduction ................................................................................................................. 22
1.2 Prsentation gnrale du projet ................................................................................... 22
1.3 Recueil des besoins fonctionnels ................................................................................. 23
1.4 Recueil des besoins oprationnels ............................................................................... 25
2 Identification des acteurs .................................................................................................... 26
3 Conclusion .......................................................................................................................... 26
1 Ltude fonctionnelle dans le processus Y ......................................................................... 28
2 Capture des besoins fonctionnels ....................................................................................... 28
3 Diagrammes de cas dutilisation ........................................................................................ 29
Diagramme de squence ........................................................................................................... 31
Conclusion ................................................................................................................................ 35
1 Ltude technique dans le processus Y .............................................................................. 37
2 Capture de besoin technique .............................................................................................. 37
2.1 Spcification technique ............................................................................................... 38
2.1.1 Spcification darchitecture .................................................................................. 38
2.1.2 Architecture 3-tiers ............................................................................................... 39
Conception gnrique ............................................................................................................... 40
2.2 Technologies et outils utilises ................................................................................... 40
2.2.1 PHP ....................................................................................................................... 40
Table des matires
10
2.2.2 JavaScript ............................................................................................................. 41
2.2.3 AJAX .................................................................................................................... 41
2.2.4 Microsoft Project .................................................................................................. 42
2.2.5 Dreamweaver ....................................................................................................... 42
2.2.6 Enterprise Architect .............................................................................................. 43
2.2.7 XAMPP ................................................................................................................ 43
2.3 Design patterns ............................................................................................................ 44
2.3.1 MVC ..................................................................................................................... 44
Conclusion ................................................................................................................................ 45
1 La mise en uvre dans le processus Y .............................................................................. 47
2 La Conception prliminaire ............................................................................................... 47
2.1 Architecture logicielle implmente ........................................................................... 48
2.2 numrations des vues de lapplication ...................................................................... 48
3 La Conception dtaille ..................................................................................................... 49
3.1 Classes mtiers dtailles ............................................................................................ 50
3.1.1 Conception des classes ......................................................................................... 50
3.1.2 Conception des attributs ....................................................................................... 50
3.1.3 Description des classes ......................................................................................... 50
3.1.4 Diagramme de classes .......................................................................................... 52
4 Ralisation .......................................................................................................................... 53
4.1 Implmentation des IHM ............................................................................................ 53
4.1.1 Linterface daccueil de lapplication .................................................................. 53
4.1.2 Linterface dauthentification ............................................................................... 54
4.1.3 Linterface de cration dun profil formateur ..................................................... 54
4.1.4 Linterface dajout dune formation ..................................................................... 55
4.1.5 Linterface de lister et grer des bnficiaires ..................................................... 55
Conclusion gnrale et perspective .......................................................................................... 57
Bibliographie et Webographie ................................................................................................. 58

Introduction gnrale
11


Introduction gnrale

Aujourd'hui, vu l'intrt croissant de vouloir gagner en temps, de conserver les donnes en
toute scurit, de limiter le nombre d'employs et bien d'autres raisons, ont pouss petites,
moyennes et grandes entreprises chercher des solutions informatiques capables de rpondre
leurs besoins.

Dans ce cadre s'inscrit notre projet de fin danne qui consiste de raliser une solution web
destine la gestion des formations des diffrents thmes.

La solution mettre en place sera compose dun modle mtier pour la prsentation du
catalogue des formations, la gestion des bnficiaires, des formateurs, et les relations entre les
diffrents intervenants.

Afin dadopter des lments de rponse cette demande, le prsent mmoire dtaille travers
ses diffrents chapitres la dmarche adopte et les rsultats atteints. Le prsent rapport
comporte quatre chapitres :

Le premier chapitre sera consacr au contexte gnral du projet, nous prsentons lcole
SupMTI ainsi nous dfinissons la conduite suivre, en choisissant une mthode pour le
processus de dveloppement (la mthode en Y), toute en respectant une planification bas sur
deux mois.

Dans le deuxime chapitre on va faire une tude prliminaire, on posant le cahier des charges
tout en spcifiant les acteurs (Administrateur, Formateur, Bnficiaire). Enfin, nous
dterminons les jalons de la capture des besoins du systme.

Introduction gnrale
12
Dans le troisime chapitre qui est consacr ltude fonctionnelle, nous nous intressons la
capture des besoins fonctionnels, ensuite nous ralisons la description des cas dutilisation et
la description de squence des scnarios les plus importants (ajouter formateur par exemple).

Au niveau du quatrime chapitre, nous allons aborder dune part la description de la
spcification technique par le choix dun style darchitecture en 3-tiers, et dautre part, les
technologie et les outils utilises comme PHP, JavaScript, Ajax, Dreamweaver, Xamppen
utilisant la mthode darchitecture MVC.

Le cinquime chapitre concrtisera le modle de conception entam lors des prcdents
chapitres, surtout en des couches applicatives et des interfaces homme/machine (interface
dajout dune formation par exemple).

Dans la conclusion, nous synthtisons le travail ralis et numrons les perspectives
envisages (dveloppement dune solution de E-Learning par exemple).



13







Chapitre 1


Contexte gnral du projet



Ce chapitre prsente le sujet du projet. Et prcise lobjectif et la conduite du projet
ainsi que le planning gnral de la ralisation.




Chapitre 1 Contexte gnral du projet
14


Prsentation de la structure daccueil
Ecole suprieure de Management, dInformatique et de Tlcommunication
1.1 Mission
Lcole suprieure de Management, dInformatique et de Tlcommunication, SupMIT, a
pour mission dassurer une formation dexcellence aussi bien thorique et pratique dans les
domaines lis au management et des systmes dinformation et de tlcommunication.
Lcole SupMIT est convaincue qu'une formation de qualit passe par une comprhension et
une proximit du monde conomique. Cette proximit favorise linnovation scientifique et la
qualit pour une insertion russie dans le monde du travail. de part lexprience de son quipe
pdagogique, SupMIT reprsente un pont entre les savoirs de luniversit et les attentes
oprationnelles des entreprises.
Tout au long du cursus, sont offerts aux futurs laurats :
Des enseignements d'ouverture sur le monde conomique, depuis les jeux de
simulation et de gestion d'entreprise jusqu'aux cours de sensibilisation l'thique
industrielle.
Des stages obligatoires dans le monde professionnel.

1.2 Description
Pour rpondre aux exigences d'un enseignement de haut niveau la quasi-totalit des
professeurs SupMIT sont titulaires d'un Doctorat ou d'un PhD et issus des grandes coles :
ENSIAS, INPT, EMI, ISCAE, ENSG.)
Dots d'expriences professionnelles en entreprise ou en socits de conseil, remarques pour
leurs travaux de recherche et leurs publications au niveau national et international, ils
apportent une relle valeur ajoute aux enseignements qu'ils dispensent.

Plusieurs enseignants sont certifis sur plusieurs nouvelles technologies. Ils prparent ces
tudiants la certification sur des produits en forte demande sur le march :
CISCO
Microsoft
HP

Chapitre 1 Contexte gnral du projet
15
Contexte du projet
Notre projet a t ralis au sein de lcole SupMIT, il a pour but de dvelopper une
application dinscription en ligne des formations varies au domaine informatique.

Cette application contient des diffrents modules :

Module Administrateur : cest lui qui fait la totalit de la gestion dapplication,
parmi ces missions gestion des formations, gestion des bnficiaires, gestion des
formateurs.

Module Bnficiaire : cest un acteur majeur pour lapplication, il peut sinscrire
sans rserver une formation ou bien il peut sinscrire au moment de la
rservation. Aprs la rservation, il a le droit de modifier ou supprimer une
rservation.

Module Formateur : sa principale mission est dassist une formation aprs
linscription, ou bien linscription sans engager une formation.

Tous ces acteurs ont besoin dauthentifier avant chaque opration.

Conduite du projet
Afin de mieux organiser le droulement des activits du projet, nous avons suivi une
dmarche de gestion de projet pour aboutir aux objectifs en organisant le droulement
temporel des taches, partir de llaboration du cahier des charges la ralisation du produit
souhait.

1.3 Processus de dveloppement

En gnral, la gestion dun projet informatique consiste choisir un processus de
dveloppement adquat. Ce dernier constitue un facteur dterminant dans la russite dun
projet, du fait quil cadre ses diffrentes phases et caractrise les principaux traits de sa
conduite.

Pour cela le choix dune mthode de dveloppement adquate aux exigences fonctionnelles,
techniques et qualitatives dun projet doit tre labor au pralable afin dobtenir un produit
Chapitre 1 Contexte gnral du projet
16
qui rpond aux besoins et attentes des utilisateurs.

Devant une multitude de mthodologies disponibles, le choix devient difficile, Pour cela,
nous tions amenes effectuer un benchmarking entre les principaux processus.

Le tableau 1 suivant prsente une tude comparative entre diffrents processus :

Description Points Forts Points Faibles
RUP
RUP est la fois une
mthodologie de conduite et de
dveloppement de projets et un
outil prt l'emploi
Propose des modles de
documents, et des canevas
pour des projets types
Coteux personnaliser.
Trs ax processus, au dtriment
du dveloppement : peu de place
pour le code et la technologie
XP
XP est une mthode agile plus
particulirement oriente sur
l'aspect ralisation d'une
application, sans pour autant
ngliger l'aspect gestion de
projet
Prparation des phases de
vrification au moment de
lAnalyse et de la Conception
Obligation de la prsence du
client Dveloppement en
binme.
2TUP
2TUP propose un cycle de
dveloppement en Y, qui
dissocie les aspects techniques
des aspects fonctionnels
Fait une large place la
technologie et la gestion
du risque
Ne propose pas de documents
types
Tableau 1: Tableau comparatif entre les processus de dveloppement

Nous constatons que toutes ces mthodologies proposent de travailler de faon itrative, que
ce soit au niveau des plannings, des spcifications ou du dveloppement. Si l'itratif s'est
impos, c'est parce qu'il rduit la complexit de ralisation des phases en travaillant par
approches successives et incrmentales.

Il est alors possible de prsenter rapidement aux utilisateurs des lments de validation. De
plus, l'itratif permet une gestion efficace des risques en abordant, ds les premires itrations,
les points difficiles. Le choix de la technologie et de larchitecture logicielle et applicative de
notre futur systme est lune des phases les plus importantes de notre projet vu le degr lev
de sa complexit technique. Ainsi 2TUP semble tre le mieux adapt pour mener bien notre
projet, puisquil rserve une branche entire aux aspects techniques dans le processus de
dveloppement.
Le processus 2TUP propose un cycle de dveloppement en Y, qui dissocie les aspects
techniques des aspects fonctionnels. Illustr en figure 1, le processus en Y s'articule autour de
3 branches [Roques & Valle, 2007] :
Chapitre 1 Contexte gnral du projet
17
Une branche fonctionnelle
Une branche technique
Une phase de ralisation







Figure 1: Le processus de dveloppement en Y

La branche fonctionnelle capture des besoins fonctionnels pour laborer un modle des
besoins focaliss sur le mtier des utilisateurs. Elle qualifie au plus tt le risque de produire un
systme inadapt aux utilisateurs. De son ct, la matrise duvre consolide les
spcifications et en vrifie la cohrence et lexhaustivit de lanalyse, qui consiste tudier
prcisment la spcification fonctionnelle de manire obtenir une ide de ce que va raliser
le systme en termes de mtier. Les rsultats de lanalyse ne dpendent daucune technologie
particulire.
Quant la branche technique, elle permet de rassembler les besoins techniques (scurit,
monte en charge, intgration l'existant..).Elle propose galement une architecture logicielle
et applicative qui rpond aux contraintes prsentes dans le dossier technique. Et enfin elle
permet de proposer des rgles de dveloppement afin d'industrialiser l'implmentation
(gestion des exceptions, rgles de nommage, rgles de codage, ...).
Chapitre 1 Contexte gnral du projet
18
La troisime branche comporte la conception qui intgre le modle danalyse et de
larchitecture technique puis tudie comment raliser chaque composant. Elle comporte aussi
ltape de codage qui produit ces composants et teste les units de codes ralises et ltape de
validation qui consiste enfin valider les fonctions du systme dvelopp.



1.4 Langage de modlisation
UML (langage de modlisation unifi) est un concept permettant de modliser un problme de
faon standard. Ce langage est n de la fusion de plusieurs mthodes existant auparavant, et
est devenu dsormais la rfrence en terme de modlisation objet, un tel point que sa
connaissance est souvent ncessaire pour obtenir un poste de dveloppeur objet.

UML se dcompose en plusieurs sous-ensembles :
Les vues : Les vues sont les lments observables du systme. Elles dcrivent le
systme d'un point de vue donn, qui peut tre organisationnel, dynamique,
temporel, architectural, gographique, logique, etc. En combinant toutes ces vues il
est possible de dfinir (ou retrouver) le systme complet.
Les diagrammes : Les diagrammes sont des graphiques. Ceux-ci dcrivent le
contenu des vues, qui sont des notions abstraites. Les diagrammes peuvent faire
partie de plusieurs vues.
Les modles d'lment : Les modles d'lment sont les briques des diagrammes
UML, ces modles sont utiliss dans plusieurs types.

1.5 Planification du projet
Conduire un projet, cest assur le pilotage dun processus de changement avec des ressources
ddies en optimisant les comptences, lorganisation, les systmes et les outils de conduite.
Une approche managriale ractive, souple et systmatique pour mener bien des
changements importants, complexes, cibls sur le but atteindre, il y a trois niveaux de
gestion de projet : la gestion de la production, des ressources et du temps. A fin de satisfaire
ce dernier critre quest la gestion du temps, il est ncessaire dtablir un planning
prvisionnel. Sachant que la ressource affecte ce projet est llve ingnieur et que le
prsent planning est rajust au fur et mesure de lavancement du projet.
La premire tape de notre projet a t danalyser des besoins fonctionnels du systme en
tudiant les spcifications de notre projet. Cette tape nous a permis de dgager les besoins
fonctionnels du projet. Ensuite, nous avons effectu des recherches sur larchitecture
Chapitre 1 Contexte gnral du projet
19
logicielle afin de choisir lenvironnement de dveloppement le plus adquat aux exigences
techniques de notre application.
La seconde tape a t de proposer la modlisation du systme, puis la dernire tape a t de
mettre en uvre lenvironnement et implmenter notre application.

1.5.1 Structure de rpartition du produit (PBS)
Conformment aux exigences fonctionnelles spcifies dans le cahier des charges, le projet
peut tre dcompos en cinq grandes phases savoir : le dmarrage et linitialisation,
Lanalyse et la conception, le dveloppement, les tests, le dploiement et clture du projet.
Chaque phase est dcompose en un ensemble dactivits, et donne en rsultat un ou plusieurs
livrables comme montre la figure 2 :


Figure 2: Lorganigramme PBS


1.5.2 Diagramme de Gantt
La Figure suivant prsente sommairement le planning des tapes du droulement de notre
projet Figure 3 :

Chapitre 1 Contexte gnral du projet
20


Figure 3: Planning prvisionnel du projet


Conclusion
Apres avoir survol le contexte gnral dans lequel sinscrit notre projet dans cette premire
partie de ce mmoire, la dmarche prconise pour les raliser, la description des besoins du
projet, ltude fonctionnelle sera dtaille dans le chapitre suivant.

21







Chapitre 2


Etude Prliminaire



Ce chapitre a pour objectif de dterminer les jalons de la capture des besoins du
systme mettre en place. Nous commencerons par donner une version textuelle du cahier
des charges et ensuite enchainerons avec un premier modle contextuel afin dtablir
avec prcision les limites fonctionnelles du systme. Ceci naturellement aprs
identification des acteurs qui interagiront avec le systme.


Chapitre 2 Etude Prliminaire

22

1 Cahier des charges
1.1 Introduction
LEcole SupMIT qui dispose parmi les missions quelle sest astreinte la formation, dsire
amliorer la qualit des services quelle offre. Cette cole dans le cadre de ltude quelle a
men, a considr quil y avait un besoin de cration et de mise au point une application web
dinscription en ligne aux formations proposes. Notamment, pour offrir un service de qualit
et augmenter le rendement de son Dpartement de formation et le fortifier. Par ailleurs, une
application dinscription en ligne permettra SupMIT de complter les prestations quelle
offre aux entreprises et aux clients particuliers.

1.2 Prsentation gnrale du projet
L'application devra tout d'abord tre extrmement fiable. En effet, son domaine d'application
concerne le cur de l'activit des tablissements des formations professionnelles, et son
utilisation quotidienne ne devra pas laisser place l'ventuel point faible.

L'objectif principal est la gestion des bnficiaires, des formateurs, des thmes, des catalogues
et des formations.

L'application devra notamment :
Permettre d'inscrire des nouveaux bnficiaires et formateurs.
Permettre de faire la gestion des bnficiaires et des formateurs.
Permettre lajout et la gestion des thmes, des catalogues et des formations.
Permettre d'tablir des statistiques relatives aux informations enregistres.
Permettre d'impression de certaines pages (attestation, fiche bnficiaire.....).

Nous devons alors atteindre les rsultats suivants :
Disposer de la base de donnes reprsentant la partie stockage des informations
concernant les bnficiaires, les formateurs, et le catalogue des formations.
Assurer la scurit de l'application par l'authentification au premier cran, l'enregistrement
des informations sur les vnements qui ont lieu.
Disposer d'un module d'administration de l'application permettant la gestion, la mise
jour et la maintenance de l'application.

Ceci est fait en suivant les tapes suivantes :
Chapitre 2 Etude Prliminaire

23
Cration de planning.
Elaboration d'un scnario maquette et des esquisses des crans d'application.
Conception de la base de donnes en laborant les cas dutilisations, Diagramme de
squence, diagramme de classe.
Implmentation de la base de donnes.
Dveloppement de notre application (codage ou programmation).
Validation de l'application par des scnarios de tests d'excution.




1.3 Recueil des besoins fonctionnels

Un premier tour dhorizon des besoins exprims par la direction de SupMIT a permis
dtablir le cahier de charges prliminaire suivant :

! La cration du compte formateur


Cette phase est obligatoire pour tous les formateurs qui veulent donner des formations.
Lorsquun formateur veut participer a une formation, il doit commencer par crer un compte
suite cette opration un profil sera cr en remplissant le formulaire de cration de compte
qui contient les champs suivantes : CIN, Civilit, Nom, Prnom, Mot de passe, Date de
Naissance, Lieu de Naissance, Email, Niveau dEtude, Exprience, Tlphone, Adresse, CV,
Photo.

Apres la cration, ce compte sera vrifi selon les critres suivants :
Validation de ladresse mail : pour bloquer les robots de messagerie.
Vrifier que la cration dun compte avec un mot de passe vide est rejete
Vrifier quon ne peut crer quun seul compte unique.

Aprs lattachement une formation, le formateur a le droit de consulter la liste des
bnficiaires qui les forment.



! La cration du compte bnficiaire

Chapitre 2 Etude Prliminaire

24

Cette phase est trs importante pour les bnficiaires qui veulent sinscrire lapplication
pour avoir le droit de participer une ou plusieurs formations.

Lorsquun bnficiaire veut utiliser lapplication comme moyen de recherche de
format i ons dsi res, il doit commencer par la cration dun compte. Lors de cette
tape, il saisit des informations suivantes :
CIN, Nom, Prnom, Mot de passe, Sexe, Date de Naissance, Lieu de Naissance, Email,
Niveau dEtude, Tlphone, Adresse, CV, Photo.

Les bnficiaires peuvent faire des recherches pour dcouvrir les formations disponibles.

! Grer les comptes formateurs et bnficiaires

Ladministrateur a le droit de grer les comptes formateurs et bnficiaires comme suit :
" Permettre de modifier le profile formateur et bnficiaire.
" De lister les comptes des formateurs et des bnficiaires inscrits.
" Dsactiver ou supprimer un compte.
" Inscrire un bnficiaire dans une formation.
" Affecter un formateur une formation cre.

! Gestion des profils

Cette opration est consacre aux formateurs et aux bnficiaires pour avoir la capacit de
grer leurs propres profils (consultation, modification et la suppression dun profil).

! Gestion des thmes, catalogues et formations par ladministrateur

Ladministrateur a la possibilit de grer des thmes, catalogues et formations, cest--dire
lajout, la mise jour et la suppression.






Chapitre 2 Etude Prliminaire

25
1.4 Recueil des besoins oprationnels

Scurit

Pour se connecter au systme, chaque utilisateur doit fournir son login et son mot de
passe. En cas de succs de connexion, le systme devra restituer le rle de lutilisateur
afin de dterminer les fonctionnalits auxquelles il a droit.


Disponibilit

Le systme doit tre en permanence la disposition de ses utilisateurs.

Fiabilit

Le systme doit excuter les fonctions attendues avec la prcision requise.

Performance

Le systme devra tre capable de rpondre aux requtes des diffrents utilisateurs en un
temps raisonnable.



Intgrit des donnes


Le systme mettre en place devra garantir lintgrit des donnes en toute circonstance.


Le recueil des besoins tant ralis, nous pouvons passer maintenant la description du
Contexte du systme. Cette description stale sur trois activits qui sont :

Lidentification des acteurs,
Le recensement des messages,
La production des diagrammes de contexte


Chapitre 2 Etude Prliminaire

26
2 Identification des acteurs
Un acteur reprsente labstraction dun rle jou par des entits externes (utilisateur,
dispositif matriel ou autre systme) qui interagissent directement avec le systme tudi. Il
peut consulter et/ou modifier directement ltat du systme, en mettant et/ou en recevant
des messages ventuellement porteurs des donnes.
Aprs la phase danalyse, nous avons identifi trois catgories dutilisateurs :
Les bnficiaires, les formateurs et les administrateurs.

Le tableau suivant prsente les trois acteurs identifies et le rle de chacun deux Tableau 2:

Acteur Type Description du Rle

Administrateur
Humain
Prpare les sessions et mettre en place les formations
selon un calendrier. Gere les bnficiaires, et les
formateurs.

Formateur
Humain
Utilise le systme pour dposer son CV et voir la liste
des bnficiaires.

Bnficiaire
Humain
Consulte les formations, rserve les cours selon les
priodes disponibles via une interface conviviale. Il
peut aussi voir ses notes.
Tableau 2: Liste des acteurs


3 Conclusion
Dans ce chapitre, nous avons fait le recueil initial des besoins fonctionnels et
oprationnels. Nous avons ensuite identifi les acteurs et ses rles dans le systme.
Le chapitre suivant sera consacr ltude fonctionnelle de notre projet.

27








Chapitre 3


Etude Fonctionnelle



Nous prsentons dans ce chapitre la mthodologie utilise pour lanalyse et la
conception de la base de donnes et les diagrammes quon a pu tablir.




Chapitre 3 Etude Fonctionnelle

28

1 Ltude fonctionnelle dans le processus Y

La branche fonctionnelle Figure 4 du processus Y a pour objectif la capture des
spcifications et des contraintes fonctionnelles. Durant lanalyse, nous nous concentrons
sur le mtier indpendamment de toute technologie, et nous essayons dadapter le plus
possible notre systme aux besoins des utilisateurs.



Figure 4: Branche fonctionnelle du processus Y


2 Capture des besoins fonctionnels

La capture des besoins fonctionnels est la premire tape de la branche gauche du cycle en
Y. Dans cette section, nous allons formaliser et dtailler ce qui a t bauch au cours de
ltude prliminaire.


Chapitre 3 Etude Fonctionnelle

29


La capture des besoins fonctionnels a pour objectif :

" Lidentification des cas dutilisation du systme par ses acteurs"
" La description des cas dutilisation.
" Lidentification des classes des modles danalyse.



3 Diagrammes de cas dutilisation

Les diagrammes de cas d'utilisation sont des diagrammes UML utiliss pour donner Une
vision globale du comportement fonctionnel d'un systme logiciel. Un cas Dutilisation
reprsente une unit discrte d'interaction entre un utilisateur (humain ou Machine) et un
systme. Il est une unit significative de travail. Dans un diagramme de cas d'utilisation, les
utilisateurs sont appels acteurs (actors), ils interagissent avec les cas dutilisation (use cases).

UML dfinit une notation graphique pour reprsenter les cas d'utilisation. Cette notation est
appele diagramme de cas d'utilisation. UML ne dfinit pas de standard pour la forme crite
de ces cas d'utilisation. En consquence, il est ais de croire que cette notation Graphique
suffit elle seule pour dcrire la nature d'un cas d'utilisation. Dans les faits, une notation
graphique ne peut donner qu'une vue gnrale simplifie d'un cas ou d'un ensemble de cas
d'utilisation. Les diagrammes de cas d'utilisation sont souvent confondus avec les cas
d'utilisation. Bien que ces deux concepts soient relis, les cas dutilisation sont bien plus
dtaills que les diagrammes de cas d'utilisation.









Chapitre 3 Etude Fonctionnelle

30
La figure 5 dcrit les diffrents cas d'utilisations de chaque acteur. Elle permet de distinguer les
rles et les acteurs du projet.


Figure 5: Diagramme de cas d'utilisation


Chapitre 3 Etude Fonctionnelle

31
Diagramme de squence

Les diagrammes de squence sont couramment utiliss par un bon nombre d'acteurs d'un
projet. En effet, le diagramme de squence est une reprsentation intuitive lorsque l'on
souhaite concrtiser des interactions entre deux entits (deux sous-systmes ou deux classes
d'un futur logiciel).
Ils permettent l'architecte/designer de crer au fur et mesure sa solution. Cette
reprsentation intuitive est galement un excellent vecteur de communication dans une
quipe d'ingnierie pour discuter cette solution.
Les diagrammes de squence peuvent galement servir la problmatique de test. Les traces
d'excution d'un test peuvent en effet tre reprsentes sous cette forme et servir de
comparaison avec les diagrammes de squence raliss lors des phases d'ingnierie.
Les diagrammes de squence tels que dfinis en UML souffraient cependant d'un gros
inconvnient. La quantit de diagrammes raliser pouvait atteindre un nombre lev ds
lors que l'on souhaitait dcrire avec un peu de dtail les diffrentes branches
comportementales d'une fonctionnalit.

La figure 6 montre la squence d'authentification. C'est la premire squence dclenche
dans ce projet. Ladministrateur entrain de se connecter attend la rponse pour tre redirig
vers la page d'accueil correspondante son profil.


Figure 6: Diagramme de squence (Authentification)

La figure 7 dcrit la faon avec laquelle un administrateur cre une formation. Il doit spcifier
Chapitre 3 Etude Fonctionnelle

32
le catalogue et vrifier la disponibilit de formateur spcialiste.



Figure 7: Diagramme de squence (Ajouter Formation)


La Figure 8 dmontre le processus suivi par le bnficiaire pour sinscrire dans lapplication.
Chapitre 3 Etude Fonctionnelle

33



Figure 8: Diagramme de squence (S'inscrire)














La Figure 9 dmontre le processus suivi par le bnficiaire pour sinscrire dans une
formation.
Chapitre 3 Etude Fonctionnelle

34



Figure 9: Diagramme de squence (S'inscrire dans formation)








La Figure 10 dmontre le processus suivi par le Formateur pour sinscrire dans lapplication
en choisissant les formations encadrer.
Chapitre 3 Etude Fonctionnelle

35



Figure 10: Diagramme de squence (S'inscrire comme Formateur)



Conclusion
Dans ce chapitre, nous avons abord la description des cas dutilisation et la description des
diagrammes de squence des scnarios les plus importants. Le chapitre suivant sera consacr
ltude technique de du projet.


36









Chapitre 4


Etude Technique



Ce chapitre est consacr conformment au cycle de dveloppement en Y, la branche
technique. Dans cette partie, nous allons aborder la capture des besoins techniques,
Larchitecture 3-tiers, les designs patterns, les systmes et les outils de travail utiliss.

Chapitre 4 Etude Technique

37

1 Ltude technique dans le processus Y

Lobjectif de la branche technique du processus Y Figure 11 est de recenser les contraintes
et les choix techniques et matriels dimensionnant la conception du systme. Le but est
dviter les risques techniques et les problmes que lapplication pourrait rencontrer tels que
les problmes dintgration, de maintenance, d'volution



Figure 11: Branche technique du processus Y


2 Capture de besoin technique

La capture des besoins techniques couvre, par complmentarit avec celle des besoins
fonctionnels, toutes les contraintes qui ne traitent ni de la description du mtier des
utilisateurs, ni de la description applicative. La spcification technique est une activit
primordiale pour la conception darchitecture.

Chapitre 4 Etude Technique

38

2.1 Spcification technique

Les prrequis techniques ont t exprims dans ltude prliminaire, lors de lexpression des
besoins oprationnels. Elles concernent la performance daccs aux donnes, la scurit du
systme, linteroprabilit, lintgrit des donnes, la disponibilit, et la fiabilit.

2.1.1 Spcification darchitecture

Lexpression des prs requis techniques implique galement le choix dun style
darchitecture client/serveur. Ce choix conditionne la faon dont seront organiss et dploys
les composants dexploitation du systme.

Composant dexploitation et composant mtier

" Un composant dexploitation est une partie du systme logiciel qui doit tre connue,
installe, dclare et manipule par les exploitants du systme. Un composant
dexploitation doit tre interchangeable entre diffrentes versions et peut tre arrt
ou dmarr sparment. Il assume des fonctions bien identifies dans le systme, de
sorte quen cas de dysfonctionnement, le composant incrimin est facilement
reprable.
" Un composant mtier est un composant dexploitation dont la fonction est de
distribuer les services dun ou de plusieurs objets mtier de lentreprise.

Lintgration de composants mtier implique le recours un style darchitecture 3-tiers.


Style darchitecture en tiers
Le style darchitecture en tiers (tier signifie partie en anglais) spcifie lorganisation des
composants dexploitation mis en uvre pour raliser le systme. Chaque partie indique une
responsabilit technique laquelle souscrivent les diffrents composants dexploitation dun
systme. [Roques & Valle, 2007]
On distingue donc plusieurs types de composants en fonction de la responsabilit technique
quils jouent dans le systme. Un systme client/serveur fait rfrence au moins deux types
de composants, qui sont les systmes de base de donnes en serveur, et les applications qui en
exploitent les donnes en client.
Le style darchitecture 2-tiers correspond la configuration la plus simple dun systme
client/serveur. Dans ce cas, il incombe aux clients de grer linterface utilisateur et les
processus dexploitation. Les serveurs ont pour responsabilit de traiter le stockage des
donnes.
Chapitre 4 Etude Technique

39

Lintgration des objets mtier sous la forme de composants mtiers fait passer larchitecture
client/serveur du 2-tiers au 3-tiers, car elle implique un nouveau type de composants
dexploitation qui sinsre entre les clients et les serveurs de donnes.


Larchitecture 3-tiers Figure 12 a t davantage choisie parce quelle permet de satisfaire les
exigences techniques que nous avons repris au niveau de la spcification des besoins
techniques savoir essentiellement :

# La scurit : elle permet de la dfinir indpendamment de service et de chaque
niveau.
# La performance : elle est assure du fait du partage des tches entre les diffrents
serveurs.
# La disponibilit : elle est assure pour les mmes raisons que la performance




Figure 12: Architecture 3 tiers


2.1.2 Architecture 3-tiers

Larchitecture adopte pour notre application est celle la plus utilise dans le dveloppement
des grandes applications, cest larchitecture 3-tiers. Elle permet de rendre les trois couches
(prsentation, mtier et accs aux donnes) indpendantes les unes des autres grce aux
interfaces.

La couche Prsentation
Elle reprsente le premier niveau de larchitecture et est la partie visible de lapplication et
interactive avec lutilisateur. Dans notre cas, elle est reprsente en HTML et est exploite
par des navigateurs Web.
Chapitre 4 Etude Technique

40

La couche Mtier
Cest la couche du second niveau de larchitecture. Elle reprsente la partie fonctionnelle de
lapplication. Cette couche opre sur les donnes en fonction des requtes des utilisateurs
effectues au travers de la couche prsentation (Couche intermdiaire).

La couche accs aux donnes
La fonction principale de cette couche est de grer les donnes. La faon dont elle organise,
manipule et stocke les donnes est transparente vis--vis des applications externes et des
utilisateurs.


Conception gnrique
Elle consiste dvelopper la solution qui rpond aux spcifications techniques que nous
avons prsentes ltape capture des besoins techniques. Cette conception est qualifie de
gnrique car elle est entirement indpendante des aspects fonctionnels spcifis au niveau
de la branche de gauche. La conception gnrique reste donc une activit de la branche de
droite.
La standardisation des techniques de dveloppement, laquelle nous avons assist ces
dernires annes, rend cette tape moins consquente quavant. En effet, la diffusion de
composants gratuits, tels que Dreamweaver, XAMPP, propose en quelque sorte des
architectures logicielles cls en main, et gnralement de qualit, quil suffit de rutiliser.
Cest pour cette raison que nous allons focaliser sur lexigence technique principale de notre
projet, nous avons cit les technologies, Framework et composants utiliss.

2.2 Technologies et outils utilises
Pour satisfaire les besoins fonctionnels et techniques numrs dans ltude prliminaire, nous
avons opts pour les technologies suivantes :

2.2.1 PHP
PHP est un langage de programmation. Sa principale application se situe au niveau de la
gestion des sites web dynamiques.

Les capacits de PHP ne sarrtent pas la cration de pages web. Il est aussi possible de
manipuler des images, de crer des fichiers PDF, de se connecter des bases de donnes ou
Chapitre 4 Etude Technique

41
des serveurs LDAP, et mme dinstancier des objets Java. Un module annexe lui permet
galement de fournir des interfaces graphiques classiques (client lourd, sans navigateur ou
serveur web), via GTK.
PHP est lorigine un langage de script conu spcifiquement pour agir sur les serveurs web.
En ajoutant quelques lignes de PHP une page HTML, le serveur excute les instructions
correspondantes pour crire du code HTML la place. Le rsultat (le code HTML initial ajout
celui produit par PHP) est envoy au navigateur. Cela permet par exemple dafficher la date
du jour un endroit bien prcis du visuel. On parle alors de page dynamique.
PHP dispose de prs de 3 000 fonctions utilisables dans des applications trs varies et couvre
pratiquement tous les domaines en rapport avec les applications web. PHP 5 et ses nouveauts
propulsent PHP dans le monde des plates-formes dentreprises comme .Net ou J2EE.

2.2.2 JavaScript
Cest un langage de script incorpor dans un document HTML. Historiquement il s'agit du
premier langage de script pour le Web. Ce langage est un langage de programmation qui
permet d'apporter des amliorations au langage HTM pour excuter des commandes du ct
client, c'est--dire au niveau du navigateur et non du serveur web. JavaScript a t mis au
point par Netscape en 1995. A l'origine, il se nommait LiveScript et tait destin fournir un
langage de script simple au navigateur Netscape Navigator 2. Il a, l'poque, longtemps t
critiqu pour son manque de scurit, son dveloppement peu pouss et l'absence de messages
d'erreur explicites rendant difficile son utilisation. Le 4 dcembre 1995, suite une association
avec le constructeur Sun, Netscape rebaptise son langage JavaScript (un clin d'il au langage
Java dvelopp par Sun). A la mme poque, Microsoft mit au point le langage Jscript, un
langage de script trs similaire.
Ainsi, pour viter des drives de part et d'autre, un standard a t dfini pour normaliser les
langages de script, il s'agit de l'ECMA 262, cr par l'organisation du mme nom (ECMA,
European Computer Manufactures Association).

2.2.3 AJAX
Ajax dsigne une approche innovante dans la conception de pages web dont l'objectif est
d'optimiser leur interactivit et leur confort d'utilisation conjointe dans les pages web de
diffrentes technologies. Ainsi AJAX incorpore :
le XHTML et les feuilles de style CSS
le JavaScript
le DOM
lObject XMLHttpRequest
le XML et le XSL

Chapitre 4 Etude Technique

42
2.2.4 Microsoft Project
Microsoft Project (ou MS Project ou MSP) est un logiciel de gestion de projets dit par
Microsoft. Il permet aux chefs de projet et aux planificateurs de planifier et piloter les projets,
de grer les ressources et le budget, ainsi que d'analyser et communiquer les donnes des
projets.

Microsoft Project permet la planification des projets, cest--dire la cration dun plan. Il
permet la cration de tches et de jalons, leur hirarchisation, et de dfinir des liens entre les
tches. Une estimation de la dure et de la charge (ou travail) ncessaire la ralisation de
chaque tche peut ensuite tre ralise.


Microsoft Project permet la gestion des ressources de chaque projet, cest--dire la cration de
lquipe projet puis laffectation des ressources dfinies.

Microsoft Project offre une palette de possibilits danalyse des donnes du projet et propose
de nombreux rapports. Il est mme possible dexporter les informations du projet dans
Microsoft Excel ou Microsoft Visio pour analyser le travail et les cots du projet en fonction
de diffrents axes danalyse (tches, ressources, affectation, temps), via des tableaux,
graphiques et diagrammes croiss dynamiques.

Microsoft Project permet de communiquer les informations des projets : copie du diagramme
de Gantt, impression et surtout, depuis la version 2010, possibilit de crer une frise
chronologique exportable vers Microsoft PowerPoint ou dans un message lectronique.

2.2.5 Dreamweaver
Dreamweaver est un diteur de site web WYSIWYG pour Microsoft Windows, et Mac OS X
cr en 1997, commercialis par Macromedia puis Adobe Systems sous licence utilisateur
final.

Dreamweaver fut l'un des premiers diteurs HTML de type tel affichage, tel rsultat , mais
galement l'un des premiers intgrer un gestionnaire de site (CyberStudio GoLive tant le
premier). Ces innovations l'imposrent rapidement comme l'un des principaux diteurs de site
web, aussi bien utilisable par le nophyte que par le professionnel.

Dreamweaver offre deux modes de conception par son menu affichage. L'utilisateur peut
choisir entre un mode cration permettant d'effectuer la mise en page directement l'aide
d'outils simples, comparables un logiciel de traitement de texte (insertion de tableau, d'image,
etc.). Il est galement possible d'afficher et de modifier directement le code (HTML ou autre)
qui compose la page. On peut passer trs facilement d'un mode d'affichage l'autre, ou opter

Chapitre 4 Etude Technique

43
pour un affichage mixte. Cette dernire option est particulirement intressante pour les
dbutants qui, terme, souhaitent se familiariser avec le langage HTML.

Dreamweaver a volu avec les technologies de l'internet. Il offre aujourd'hui la possibilit de
concevoir des feuilles de style. Les liaisons avec des bases de donnes ont galement t
amliores ainsi que le chargement des fichiers sur les serveurs d'hbergement. Il propose en
outre l'utilisation de modles imbriqus de pages web, selon un format propritaire.



2.2.6 Enterprise Architect
Outil de Modlisation UML / BPMN / SysML et dingnierie dirige par les modles
(Model-Driven) Enterprise Architect est lun des outils de modlisation UML les plus
utiliss dans le monde. Ce succs est d plusieurs facteurs : un support complet dUML
2.4.1, une excellente ergonomie, un niveau de performance lev, des versions frquentes et
enfin un cot dacquisition et de maintenance ultra comptitifs.
Enterprise Architect bnficie dune communaut trs active et de lapprobation des
organismes de standardisation tels que lOMG. Il a fait ses preuves par des rsultats
exceptionnels sur de nombreux projets.
Fort de 12 ans de dveloppement par Sparx Systems, Enterprise Architect est employ par de
nombreuses entreprises dans tous les domaines dactivit ainsi que par diffrents organismes
de normalisation.


2.2.7 XAMPP
Xampp est une application libre regroupant en son sein un serveur web apache, un serveur de
base de donnes (MySQL), un serveur FTP mais galement PHP qui communique avec le
serveur web apache et traite les pages PHP. Vous disposez aussi d'une interface agrable
(PHPMyAdmin) pour grer aisment les bases de donnes.
2.2.7.1 MySQL
MySQL est un systme de gestion de bases de donnes relationnelles SQL dvelopp dans
un souci de performances leves en lecture, ce qui signifie qu'il est davantage orient vers
le service de donnes dj en place que vers celui de mises jour frquentes et fortement
scurises. Il est multi-thread et multi-utilisateur. C'est un logiciel dvelopp sous double
licence en fonction de l'utilisation qui en est faite: dans un produit libre ou dans un produit
propritaire.
2.2.7.2 Apache
Apache est un serveur HTTP cr et maintenu au sein de la fondation Apache. C'est le
Chapitre 4 Etude Technique

44
serveur HTTP le plus populaire du World Wide Web. Il est distribu selon les termes de la
licence Apache.
Apache est conu pour prendre en charge de nombreux modules lui donnant des
fonctionnalits supplmentaires : interprtation du langage Perl, PHP, Python et Ruby, serveur
proxy, Common Gateway Interface, Server Side Includes, rcriture d'URL, ngociation de
contenu, protocoles de communication additionnels, etc. Nanmoins, il est noter que
l'existence de nombreux modules Apache complexifie la configuration du serveur web.



2.3 Design patterns
2.3.1 MVC
Pour raliser notre projet nous avons utilis les Pattern MVC Figure 13 :


Figure 13: Architecture du dsigne pattern MVC

L'architecture (Modle Vue Contrleur) est une mthode de conception pour le dveloppement
d'applications logicielles qui spare le modle de donnes, l'interface utilisateur et la logique de
contrle. Ce modle d'architecture impose la sparation entre les donnes, les traitements et la
prsentation, ce qui donne trois parties fondamentales dans l'application finale le modle, la
vue et le contrleur :
Le Modle : reprsente le comportement de l'application : traitements des donnes, interactions
avec la base de donnes, etc. Il dcrit les donnes manipules par l'application et dfinit les
mthodes d'accs.
Chapitre 4 Etude Technique

45
La Vue : correspond l'interface avec laquelle l'utilisateur interagit. Les rsultats renvoys par
le modle sont dnus de toute prsentation mais sont prsents par les vues. Plusieurs vues
peuvent afficher les informations d'un mme modle. Elle peut tre conue en html, ou tout
autre langage de prsentation. La vue n'effectue aucun traitement, elle se contente
d'afficher les rsultats des traitements effectus par le modle, et de permettre l'utilisateur
d'interagir avec elles.
le Contrleur : prend en charge la gestion des vnements de synchronisation pour mettre
jour la vue ou le modle. Il n'effectue aucun traitement, ne modifie aucune donne, il analyse la
requte du client et se contente d'appeler le modle adquat et de renvoyer la vue
correspondant la demande



En rsum, lorsqu'un client envoie une requte l'application, celle-ci est analyse par le
contrleur, qui demande au modle appropri d'effectuer les traitements, puis renvoie la vue
adapte au navigateur, si le modle ne l'a pas dj fait. Un avantage apport par ce modle est
la clart de l'architecture qu'il impose. Cela simplifie la tche du dveloppeur qui tenterait
d'effectuer une maintenance ou une amlioration sur le projet. En effet, la modification des
traitements ne change en rien la vue. Par exemple on peut passer d'une base de donnes de type
SQL XML en changeant simplement les traitements d'interaction avec la base, et les vues ne
s'en trouvent pas affectes. Comme exemple, Swing la bibliothque graphique de Java pour
la cration dinterfaces graphiques, est base sur le modle MVC.



Conclusion

Dans ce chapitre, nous avons abord la description des spcifications techniques, larchitecture
logicielle et applicative.
Le chapitre suivant sera consacr la phase de Mise en uvre de la solution.



46









Chapitre 5


Mise en uvre de la solution



Lobjectif de ce chapitre qui constitue la dernire branche du processus de
dveloppement 2TUP est de concrtiser le modle de conception prsent lors des
prcdents chapitres en des couches applicatives et des interfaces
homme/machine et le tester pour valuer les objectifs. Dans cette partie, nous
allons successivement nous appesantir sur les phases suivantes :
Conception prliminaire,
Conception dtaille,
Codage,
Tests,
Dploiement

Chapitre 4 Mise en uvre de la solution

47
1 La mise en uvre dans le processus Y
Aprs les tudes fonctionnelles et techniques, on aborde la phase de codage et tests pour
chaque module. Ensuite, ces modules sont tests unitairement en vue dtre intgres dans
le systme tout entier. Une fois cette tape est termine, le systme sera prt pour
lactivit de test. Cette activit a pour but de tester le systme fabriqu en implmentation.


Figure 14: Phase de mise en uvre dans le processus Y


2 La Conception prliminaire
La conception prliminaire est certainement ltape la plus dlicate du processus 2TUP car
elle en reprsente le cur. Cest en effet cette occasion que seffectue la fusion des tudes
fonctionnelles et techniques. En consquence, plusieurs activits doivent coexister. Il
convient de :
# Passer de lanalyse objet la conception.
# Intgrer les fonctions mtier et applicatives du systme dans larchitecture technique.
# Adapter la conception gnrique aux spcifications fournies par lanalyse. La
conception prliminaire sappuie sur les points de vue de spcification fonctionnelle
et structurelle de lanalyse.


Chapitre 4 Mise en uvre de la solution

48
2.1 Architecture logicielle implmente

Larchitecture logicielle vient pour dmontrer comment le systme informatique doit tre
conu de manire rpondre aux spcifications de la matrise douvrage. Larchitecture
logicielle implmente se prsente comme suit Figure 15 :



Figure 15: Architecture logicielle du projet



2.2 numrations des vues de lapplication

Cette section consiste lister les IHM qui dfinissent les interfaces travers lesquelles les
utilisateurs interagissent avec les diffrents composants du systme.

Nous prsentons dans le tableau ci-aprs, les plus importantes dentre elles Tableau 3 :





Chapitre 4 Mise en uvre de la solution

49
IHM Description
Linterface de prise en compte
dun formateur
Linterface dajout dun formateur qui permet ce dernier de remplir les
champs suivants : CIN, Civilit, Nom, Prnom, Mot de passe, Date de
Naissance, Lieu de Naissance, Email, Niveau dEtude, Exprience etc..
Linterface de prise en compte
dun bnficiaire
Linterface dajout dun bnficiaire qui permet ce dernier de remplir les
champs suivants : CIN, Nom, Prnom, Mot de passe, Sexe, Date de
Naissance, Lieu de Naissance, Email etc..
Linterface dajout dun thme
Linterface dajout dun thme. Dans laquelle ladministrateur saisit le champ
suivant : Nom Thme
Linterface dajout dun
catalogue
Linterface dajout dun catalogue. Dans laquelle ladministrateur saisit les
champs suivant : Dsignation, Dure, Description, Coeff_Cours, Coeff_TP
parmi les thmes disponibles
Linterface dajout dune
formation
Linterface dajout dune formation. Dans laquelle ladministrateur saisit les
champs suivant : Prix, dateDebut, dateFin, Horaire parmi les catalogues
disponibles
Linterface de lister et grer
tous les formateurs et
bnficiaires
Cette interface permet de lister et grer tous les formateurs et bnficiaires
inscrits dans lapplication.
Linterface de grer tous les
thmes, catalogues et
formations
Cette interface permet de grer tous les thmes, catalogues et formations
disponible dans lapplication (afficher, modifier ou supprimer)
Linterface dauthentification
Cette interface permet de connecter chaque utilisateur (administrateur,
formateur, bnficiaire) et le redirige vers son propre vue selon son privilge.
Tableau 3: Les vues de l'application



3 La Conception dtaille
La conception dtaille qui vient juste aprs est une activit qui sinscrit dans lorganisation
dfinie par la conception prliminaire. Le modle logique y est particulirement important
dans la mesure o cest dans cette tape quon gnre le plus grand nombre dinformations. Il
est ainsi possible de confier les catgories des personnes diffrentes, qui pourront travailler
indpendamment les unes des autres. Les concepteurs dans cette phase construisent les
classes, les vues dIHM, les interfaces, les tables et les mthodes qui vont donner une image
prte coder de la solution.



Chapitre 4 Mise en uvre de la solution

50
3.1 Classes mtiers dtailles

A partir du modle logique de conception et des interfaces, le microprocessus de conception
de la mthode 2TUP permet de dfinir les classes implmenter. Cette activit consiste :

Concevoir les classes : transformer les classes et mta classes provenant de l'analyse
en codage dans un langage de dveloppement.

Concevoir les associations : dfinir la faon d'exploiter chaque association et les
techniques qui seront employes dans le codage.


Concevoir les attributs : identifier les structures de donnes, les itrations et d'autres
types complexes permettant de reprsenter les attributs d'analyse dans le langage
utilis.

3.1.1 Conception des classes
Les classes issues de lanalyse sont conformes aux possibilits offertes par PHP le langage
dimplmentation choisi. Nous navons donc pas dautres classes en dehors de celles
provenant de lanalyse.

3.1.2 Conception des attributs
Dans cette section, nous allons dfinir le type dattributs identifis en analyse. Nous pouvons
dores et dj constater que tous les attributs des diffrentes classes se satisfasse des types de
base de PHP. Concevoir les attributs, cest galement prciser leur visibilit et leur mode
daccs. Pour notre part, les attributs sont privs. Enfin concevoir les attributs cest aussi
spcifier les mthodes qui servent la mise jour des attributs.

3.1.3 Description des classes
Dans cette section nous allons dcrire quelques classes tableau 4 et 5:





Chapitre 4 Mise en uvre de la solution

51

Classe : Formateur

Attributs
Visibilit Nom Description Type
Private idFormateur Identifiant de formateur Entier
Private Nom Nom de formateur Texte
Private Niveau dEtude Niveau dtude de formateur Texte
Private CV
Informations personnels et
professionnels de formateur
Texte

Mthodes
Visibilit Nom Description
Public displayFormateur() Permet dafficher les informations dun formateur
Public addFormateur() Permet dajouter un formateur
Public updateFormateur()
Permet de modifier les informations dun
formateur
Public deleteFormateur() Permet de supprimer un formateur existant
Tableau 4: Description de la classe formateur


Classe : Formation

Attributs
Visibilit Nom Description Type
Private Prix Prix de la formation Dcimal
Private dateDebut Date de dbut de la formation Date
Private dateFin Date de fin de la formation Date
Private Horaire Horaire dtude de la formation Texte

Mthodes
Visibilit Nom Description
Public displayFormation() Permet dafficher les informations dune formation
Public addFormation() Permet dajouter une formation
Public updateFormation()
Permet de modifier les informations dune
formation
Public deleteFormation() Permet de supprimer une formation existante
Tableau 5: Description de la classe formation


Chapitre 4 Mise en uvre de la solution

52
3.1.4 Diagramme de classes
Le diagramme de classes est un schma utilis en gnie logiciel pour prsenter les classes et
les interfaces d'un systme ainsi que les diffrentes relations entre celles-ci. Ce diagramme
appartient la partie statique d'UML car il fait abstraction des aspects temporels et
dynamiques.
Une classe dcrit les responsabilits, le comportement et le type d'un ensemble d'objets. Les
lments de cet ensemble sont les instances de la classe.
Une classe est un ensemble de fonctions et de donnes (attributs) qui sont lies ensembles par
un champ smantique. Les classes sont utilises dans la programmation oriente objet. Elles
permettent de modliser un programme et ainsi de dcouper une tche complexe en plusieurs
petits travaux simples.
Les classes peuvent tre lies entre elles grce au mcanisme d'hritage qui permet de mettre
en vidence des relations de parent. D'autres relations sont possibles entre des classes,
chacune de ces relations est reprsente par un arc spcifique dans le diagramme de classes.
Elles sont finalement instancies pour crer des objets (une classe est un moule objet : elle
dcrit les caractristiques des objets, les objets contiennent leurs valeurs propres pour chacune
de ces caractristiques lorsqu'ils sont instancis).
Le diagramme de classe obtenu aprs fusion des diagrammes de classes des diffrentes
catgories se prsente comme suit Figure 16 :


Figure 16: Diagramme de classes
Chapitre 4 Mise en uvre de la solution

53


4 Ralisation
Dans cette section, nous allons essentiellement nous taler sur les tches suivantes :
# Implmentation des IHM.
# Codage et tests.
# Dploiement.

4.1 Implmentation des IHM

Nous prsentons dans cette section un aperu de quelques interfaces homme-machines de
lapplication, rsultat de la ralisation des diffrents modules fonctionnels conus.

4.1.1 Linterface daccueil de lapplication
Cest la page daccs par dfaut lapplication. Parmi les composants principaux de la page
daccueil:
Zone pour dfinir lobjectif de lapplication.
Zone dauthentification et dinscription des utilisateurs.
Zone de diffrentes formations disponibles.

Figure 17: L'interface d'accueil de l'application
Chapitre 4 Mise en uvre de la solution

54
4.1.2 Linterface dauthentification
A partir de cette interface lutilisateur peut accder son profil.

Figure 18: L'interface d'authentification

4.1.3 Linterface de cration dun profil formateur

Cette vue reprsente le formulaire qui permet aux formateurs de crer un profil formateur sur
la plateforme de lapplication.

Figure 19: L'interface de cration d'un profil formateur

Chapitre 4 Mise en uvre de la solution

55
4.1.4 Linterface dajout dune formation
Un formulaire saffiche lorsque ladministrateur veut ajouter une formation dans la
plateforme de lapplication.

Figure 20: L'interface d'ajout d'une formation

4.1.5 Linterface de lister et grer des bnficiaires
Cette vue permet de lister et grer tous les bnficiaires inscrits dans lapplication.

Figure 21: L'interface de lister et grer des bnficiaires

Chapitre 4 Mise en uvre de la solution

56


Conclusion

Dans ce chapitre nous avons abord la conception prliminaire travers la conception
dtaille par le biais du diagramme de classes documenter.

Ce chapitre boucle galement le processus 2TUP qui nous avons commenc par ltude
Pralable.
Conclusion gnrale et perspective


Conclusion gnrale et perspective

Jusqu' prsent, lcole SupMIT ne disposait pas de plateforme informatique pour
linscription en ligne des bnficiaires et formateurs qui veulent participer a des formations
dtermines et utilise principalement des moyens non informatiss pour mdiatiser et grer
son travail. Cest dans ce cadre que tait sinscrit notre projet de fin danne dans lequel, il
nous a t demand de concevoir et raliser une plateforme scurise dinscription en ligne.

Le systme doit permettre aux formateurs de sinscrire pour tre engag dans des futures
formations, et aux bnficiaires de sinscrire pour rserver une ou plusieurs formations
dsires.

Nous avons pu effectuer, dans les dlais, lanalyse et la conception ainsi que la ralisation du
Systme tout en respectant le cahier des charges initialement dtermin et dlimit.

Au cours de ce projet, nous avons eu lopportunit de mettre en application les diffrentes
connaissances acquises durant nos tudes. Nous avons galement pu approfondir notre savoir
en informatique par la dcouverte de nouvelles technologies.

En perspectives, il y a faire tous ce qui est valuation de formateurs de la part des
bnficiaires, incluant les commentaires.

Et aussi il reste la deuxime partie de la solution qui est le dveloppement dune solution de
E-Learning dans le quelle les formateurs aurons tous ce qui ncessaire de la technologie pour
faciliter les formateurs en ligne et en particulier travers la prsente solution web, en
facilitant les procdures de paiement lectronique pour les bnficiaires.

A la fin, nous prcisons que la solution conceptuelle et architecturale que nous avons pu
mettre en uvre permettra, sans aucun doute, ladhsion de nouveaux modules et
composants sans pour autant nuire au bon fonctionnement du systme.




Annexe B Modle Bibliographie
58

Bibliographie et Webographie


[Roques & Valle, 2007]
4me dition EYROLLES
UML2 en action De lanalyse des besoins la
conception
[Eric Daspet & Cyril Pierre de
Geyer]
4me dition EYROLLES
PHP 5 avanc
[Vincent Capitaine, 2010]
Dunod, Collection InfoPro
Project 2010 : guide pratique pour les chefs de projet
[Luc Van Lancker]
ENI dition
Ajax : Dvelopper pour le Web 2.0



[Wikipdia] http://fr.wikipedia.org/wiki/Adobe_Dreamweaver
[Sparxsystems] http://www.sparxsystems.fr/
[Site du Zro] http://www.siteduzero.com/informatique/tutoriels/votre-
serveur-local/mamp