Vous êtes sur la page 1sur 87

Dédicace

A mes parents,
Vous m’avez donné la vie, la tendresse et le courage pour réussir. Tout ce que je peux vous
offrir ne pourra exprimer l’amour et la reconnaissance que je porte.
En témoigne, je vous offre ce modeste travail pour vous remercier pour vos sacrifices et pour
l’affectation dont vous m’avez toujours entourés.
A mes chères sœurs et mon frère,
En témoignage de mes sincères reconnaissances pour les efforts qu’ils me consenti pour
l’accomplissement de mes études. Je leurs dédie ce modeste travail en témoignage de mon
grand amour et mon gratitude infinie.
A mes très chers ami(e)s,
En témoignage de l’amitié sincère qui nous a liées et des bons moments passés ensemble. Je
vous dédie ce travail en vous souhaitant un avenir radieux et plein de promesses.
A mes chers professeurs,
Ceux qui se dévouent sans cesse pour m’éclaircir la voie et les immenses horizons du savoir
et dont leurs efforts méritent largement mon respect, je vous remercie énormément.

Page | 2
Remerciements

C’est avec un réel plaisir que j’exprime ici mes reconnaissances à tous ceux qui ont contribué
de près ou de loin à l’élaboration de ce travail.

Je remercie Allah le tout puissant de m’avoir donné le courage et la volonté de mener à


terme ce présent travail.

J’adresse les sincères remerciements à mon cher encadrant de projet de fin d’étude Mr.
MARZOUK Abderrahim, pour leurs conseils précieux, leur soutien et leur disponibilité
tout au courant de mon stage.

Je remercie vivement Mr. LCHHAB Azeddine mon parrain de stage pour sa disponibilité
sans condition, pour ses directives, qui m’a aidé tout au long de l’élaboration de ce projet et
qui a tout fait pour me mettre dans les bonnes conditions de travail.

Je tiens à remercier également tous mes collègues dans Pluralis Consulting et Mr. GASSMI
Karim Le directeur pour leurs accueils, leurs conseils et leur écoute.

A notre Doyen, Mr. BOUAYAD qu’il trouve ici l’expression de mon profonde gratitude,
pour sa veille sur le bon déroulement de mon formation.

Mes remerciements vont aussi à l’encontre de mes chers parents qui n’ont ménagés aucun
effort et qui ne cesseront de le faire, pour me soutenir à tout moment de ma vie.

Enfin j'adresse mes plus sincères remerciements à tous les membres du jury qui m’ont honoré
par leur présence et en acceptant de juger mon travail.

Page | 3
Sommaire
Dédicace .............................................................................................................................................................. 2
Remerciements .................................................................................................................................................... 3
Sommaire............................................................................................................................................................. 4
Liste des figures................................................................................................................................................... 6
Liste des tableaux ................................................................................................................................................ 8
Introduction générale ........................................................................................................................................... 9
Chapitre 1 : Contexte générale du projet. ..................................................................................................... 10
Introduction : ................................................................................................................................................. 10
I. Présentation de la société : ................................................................................................................... 10
1. Fiche technique : ................................................................................................................................ 10
2. Historique : ........................................................................................................................................ 10
3. La structure organisationnelle : ......................................................................................................... 11
II. Cahier des charges : ............................................................................................................................... 14
1. Présentation du projet : ..................................................................................................................... 14
2. Problématique : ................................................................................................................................. 14
3. Expression du besoin :........................................................................................................................ 14
4. Fonctionnalités attendus : ................................................................................................................. 15
III. Planning et conduite du projet : ........................................................................................................ 17
1. Gestion de projet ............................................................................................................................... 17
2. Diagramme de GANTT ....................................................................................................................... 17
IV. Langage et méthodologie de conception : ........................................................................................ 19
Introduction : ............................................................................................................................................. 19
1. La démarche UP-XP : ......................................................................................................................... 19
2. Phases de modélisation. .................................................................................................................... 20
3. Le formalisme UML : .......................................................................................................................... 21
4. L’outil PowerAmc : ............................................................................................................................. 21
Chapitre 2 : Phase d’inception. ...................................................................................................................... 22
Introduction : ................................................................................................................................................. 22
I. Capture des besoins : ............................................................................................................................ 22
1. Définition des besoins fonctionnels : ................................................................................................. 22
2. Les besoins non fonctionnels : ........................................................................................................... 23
3. Les principaux acteurs du système : .................................................................................................. 24
4. Regroupement des exigences par intentions d’acteurs : ................................................................... 25

Page | 4
II. Diagramme de cas d’utilisation : ........................................................................................................... 25
Chapitre 3 : Phase d’analyse et de conception. ............................................................................................. 27
Introduction : ................................................................................................................................................. 27
I. Description textuelle des cas d’utilisation :........................................................................................... 27
II. Diagramme de séquence « Boite noire » : ............................................................................................ 48
III. Diagramme d’activité : ...................................................................................................................... 60
IV. Diagramme de classe d’analyse :....................................................................................................... 65
V. Base de données :.................................................................................................................................. 66
VI. Prototype des interfaces : ................................................................................................................. 68
Chapitre 4 : Phase de réalisation. .................................................................................................................. 74
Introduction : ................................................................................................................................................. 74
I. Environnement logiciel : ........................................................................................................................ 74
II. Technologies et langages utilisés : ........................................................................................................ 75
III. Développement : ............................................................................................................................... 77
IV. Les interfaces de l’application : ......................................................................................................... 79
Conclusion générale......................................................................................................................................... 86
Bibliographie et Webographie: ...................................................................................................................... 87

Page | 5
Liste des figures
Figure Commentaire Page
Figure 1 L’organigramme de Pluralis Consulting 11
Figure 2 Les accompagnements des directeurs et des managers 12
Figure 3 Les tâches du projet 18
Figure 4 Diagramme de GANTT 18
Figure 5 Les diagrammes disponibles 21
Figure 6 Diagramme des acteurs 24
Figure 7 Diagramme de contexte statique 24
Figure 8 Diagramme de cas d’utilisation 26
Figure 9 Diagramme de séquence « Inscrire » 48
Figure 10 Diagramme de séquence « Authentifier » 49
Figure 11 Diagramme de séquence « Envoyer e-mail » 49
Figure 12 Diagramme de séquence « Gérer les certifications » 50
Figure 13 Diagramme de séquence « Gérer les formations » 51
Figure 14 Diagramme de séquence « Gérer les formateurs » 52
Figure 15 Diagramme de séquence « Gérer les gérants » 53
Figure 16 Diagramme de séquence « Gérer les compétences » 54
Figure 17 Diagramme de séquence « Gérer les inscriptions » 55
Figure 18 Diagramme de séquence « Rechercher certification» 55
Figure 19 Diagramme de séquence « Consulter certification » 56
Figure 20 Diagramme de séquence « Consulter formation » 56
Figure 21 Diagramme de séquence « Donner avis » 57
Figure 22 Diagramme de séquence « Proposer formation » 57
Figure 23 Diagramme de séquence « Recevoir les notifications » 58
Figure 24 Diagramme de séquence « Consulter les propositions » 58
Figure 25 Diagramme de séquence « Consulter les avis » 59
Figure 26 Diagramme d’activité « Authentifier » 60
Figure 27 Diagramme d’activité « Consulter certification » 60
Figure 28 Diagramme d’activité « Consulter formation » 61
Figure 29 Diagramme d’activité « Gérer certifications » 61
Figure 30 Diagramme d’activité « Gérer formations » 62
Figure 31 Diagramme d’activité « Gérer compétences » 62
Figure 32 Diagramme d’activité « Gérer gérants » 63
Figure 33 Diagramme d’activité « Gérer formateurs » 63
Figure 34 Diagramme d’activité « Gérer les inscriptions » 64
Figure 35 Diagramme d’activité « Consulter les avis/propositions » 64
Figure 36 Diagramme d’activité «Recevoir les notifications/Proposer 64
formation/Donner avis »
Figure 37 Diagramme de classe d’analyse 66
Figure 38 Modèle logique de données(MLD) 67
Figure 39 Modèle physique de données(MPD) 68
Figure 40 Interface authentifié 69
Figure 41 Interface rechercher certification 69
Figure 42 Interface consulter certification 70
Figure 43 Interfaces gérer les certifications, formations, formateurs 70
Figure 44 Interface consulter les formations 71
Figure 45 Interface gérer avis et propositions 71

Page | 6
Figure 46 Interface inscrire 72
Figure 47 Interface gérer gérants 72
Figure 48 Interface gérer inscriptions 73
Figure 49 Interface gérer les compétences 73
Figure 50 Modèle MVC (Modèle – Vue – Contrôleur) 78
Figure 51 Page d’authentification 79
Figure 52 Page de recherche 80
Figure 53 Page consulter les formations 80
Figure 54 Page consulter certification 81
Figure 55 Page consulter les avis 81
Figure 56 Page gérer les certifications 82
Figure 57 Page gérer les formations 82
Figure 58 Page d’inscription 83
Figure 59 Page gérer les formateurs 83
Figure 60 Page gérer les compétences 84
Figure 61 Page gérer les gérants 84
Figure 62 Page gérer les inscriptions 85
Figure 63 Page Consulter les propositions 85

Page | 7
Liste des tableaux
Tableau Commentaire Page
Tableau 1 Tableau des exigences 22
Tableau 2 Tableau des exigences par intention d’acteur 25
Tableau 3 Description textuelle de cas d’utilisation « Authentifier » 27
Tableau 4 Description textuelle de cas d’utilisation « Ajouter certification » 28
Tableau 5 Description textuelle de cas d’utilisation « Modifier certification » 29
Tableau 6 Description textuelle de cas d’utilisation « Supprimer certification » 30
Tableau 7 Description textuelle de cas d’utilisation « Ajouter formation » 31
Tableau 8 Description textuelle de cas d’utilisation « Modifier formation » 31
Tableau 9 Description textuelle de cas d’utilisation « Supprimer formation » 32
Tableau 10 Description textuelle de cas d’utilisation « Ajouter formateur » 33
Tableau 11 Description textuelle de cas d’utilisation « Modifier formateur » 34
Tableau 12 Description textuelle de cas d’utilisation « Supprimer formateur » 35
Tableau 13 Description textuelle de cas d’utilisation « Ajouter gérant » 36
Tableau 14 Description textuelle de cas d’utilisation « Modifier gérant » 36
Tableau 15 Description textuelle de cas d’utilisation « Supprimer gérant » 37
Tableau 16 Description textuelle de cas d’utilisation « Ajouter compétence » 38
Tableau 17 Description textuelle de cas d’utilisation « Modifier compétence » 39
Tableau 18 Description textuelle de cas d’utilisation « Supprimer compétence » 40
Tableau 19 Description textuelle de cas d’utilisation « Gérer inscriptions » 41
Tableau 20 Description textuelle de cas d’utilisation « Rechercher certification » 41
Tableau 21 Description textuelle de cas d’utilisation « Consulter certification » 42
Tableau 22 Description textuelle de cas d’utilisation « Consulter les formations » 42
Tableau 23 Description textuelle de cas d’utilisation « Donner avis » 43
Tableau 24 Description textuelle de cas d’utilisation « Proposer formation » 44
Tableau 25 Description textuelle de cas d’utilisation « Recevoir les notifications » 44
Tableau 26 Description textuelle de cas d’utilisation « Inscrire » 45
Tableau 27 Description textuelle de cas d’utilisation « Consulter les avis » 46
Tableau 28 Description textuelle de cas d’utilisation « Télécharger PDF » 46
Tableau 29 Description textuelle de cas d’utilisation « Consulter les propositions » 47
Tableau 30 Description textuelle de cas d’utilisation « Envoyer e-mail » 47

Page | 8
Introduction générale
Cette introduction fera l’objet d’une brève présentation de l’application que je vais concevoir
et réaliser, des outils et des méthodes choisis, suivi du plan général du processus de
développement.
C’est déjà quelques années que les technologies d’informations et les activités des
organisations et plus particulièrement le web ont évolué d’une façon croissante et
remarquable. Aujourd’hui, le web est un secteur en perpétuelle expansion face à l’apparition
du web 2.0 et les nouvelles technologies notamment le HTML5, JavaScript, etc.
C’est dans ce contexte que plusieurs Sociétés essayent de profiter au maximum possible de
ces technologies afin d’améliorer leurs productivité et de faire face à quelques problèmes
pénibles qui peuvent constituer un obstacle de progression.
Dans ce cadre, Pluralis Consulting souhaite développer une application web permettant de
gérer les certifications et les formations fournis par la société. La naissance de cette idée est
due à plusieurs problèmes notamment :
 La perte de temps liée à l’explication des certifications et de formations disponibles
pour chaque client.
 Déplacement des clients à la société à chaque fois pour des informations…
Mon objectif consiste à développer une application Web qui va aider les clients à consulter
les certifications et les formations d’une façon facile et rapide à partir de leurs navigateurs, en
tenant compte des compétences requis données par chaque certification et aussi l’inscription
en ligne. D’autre part les administrateurs peuvent gérer les certifications et les formations et
les inscriptions.
Outre l’originalité de l’application à développer, j’essayerai en plus d’utiliser une
méthodologie de développement assez originale, à savoir la démarche UP-XP.
J’essayerai à travers ce rapport de mettre en évidence les étapes effectuées, en analysons
chaque étape.

Page | 9
Chapitre 1 : Contexte générale du projet.

Introduction :
« Le projet est un effort complexe pour atteindre un objectif bien spécifique, devant respecter
un échéancier et un budget … »
L’étude du projet est une démarche stratégique visant à organiser le bon déroulement d’un
projet et d’assurer la conduite de toutes les phases qui le constituent.
Une étude complète et efficace conduit généralement à la réussite d’un projet. Cette étude
fera donc l’objet de notre premier chapitre qui sera consacré à la présentation du projet ainsi
que la définition de notre langage et méthodologie de développement.

I. Présentation de la société :
1. Fiche technique :
 Raison sociale : PLURALIS CONSILTING
 Date de création : 07/09/2006
 Forme juridique : SARL
 Capital Social : 200000 DH
 Adresse : 30 RUE AZIZ BELLAL QUARTIER MAARIF CASABLANCA

 Patente : 357711969
 Registre commercial : 154901
 C.N.S.S : 7330450
 Identifiant fiscal : 1104463

2. Historique :
La société PLURALIS CONSULTING a été créée en 2006, dirigée par Mr GASSEMI
KARIM. Cette société offre un portefeuille complet de services, y compris des services-
conseils stratégiques en informatique et en management, des services d'intégration de
systèmes, de formation et certification de compétences technologiques.
PLURALIS CONSULTING accompagne les entreprises (Publiques & Privées) pour la
création de la performance :
 En mettant en place les bonnes pratiques de Gouvernance Organisationnelle ;

Page | 10
 En offrant des services, solutions et outils de gestion à forte valeur ajoutée ;
 En offrant des actions de formation pour la maîtrise des Technologies de
l’Information et de la Communication (TIC) ;
 En offrant des actions de formation et d’accompagnement au niveau managérial ;
 En proposant des solutions de Coaching pour les Managers & Directeurs.

3. La structure organisationnelle :
a. L’organisme :

Directeur général
(Conseils, services, et solutions)

Responsable formations Assistante


Responsable commercial
et certifications Administrative

Figure 1 : L’organigramme de Pluralis Consulting.


b. Les services :
- Services : conseils, services et solutions :
Pôle 1 : Conseils et services :

Pluralis Consulting met à la disposition de ses clients son savoir-faire pour leur assister à
mieux détecter les risques potentiellement liés à leurs activités, et identifier les moyens à
mettre en œuvre afin d’améliorer l’efficacité et la performance de leurs entreprises.
Ce pôle consiste à donner des conseils et services, en gestion et gouvernance d’Entreprise :
 Elaboration et formalisation de la stratégie
 Alignement du SI sur les besoins de l’entreprise
 Elaboration des Processus Organisationnels
 Management et pilotage des projets
 Gestion des risques

Page | 11
 Etude d’opportunité des projets et Retour sur Investissement
 Pilotage des projets par rapport aux objectifs
 Elaboration des termes de références
 Contrôle et suivi des travaux
 Benchmarking de solutions
 Veille technologique
 Réalisation des schémas Directeurs des SI (système d’information)
 Audit Sécuritaire des SI
 Mise en Place des Bonnes Pratiques de Gouvernance
 Gestion des Infrastructures SI
 Tierce Maintenance Applicative

Pôle 2 : Solutions :

Il s’agit de proposer des solutions et des outils de gestion à forte valeur ajoutée.
Solutions ayant une relation avec Le SI et l’organisation :
Solutions de gestion : Accompagnement au choix et mise en place de l’ERP.
Solutions de gestion de projet et programmes (MGP+) : Accompagnement à la mise en place
d’une structure de gestion de projet.
Solution de centre de support : Mise en place d’une solution de support et d’un SPOC.
Solutions qui reposent sur le coaching des Directeurs et Managers :

Figure 2 : Les accompagnements des directeurs et des managers.

Page | 12
- Service : Formations et certifications :
Pole 1 : Formations :

Pluralis est le fruit de plusieurs expériences dans le domaine de la formation et le


développement des compétences technologiques. L'informatique évolue en permanence pour
offrir aux entreprises des gains de productivité et outiller leur performance.
Pluralis Consulting propose une offre de formation variée comprenant :
 Le management des Systèmes d’information
 Gestion de projet
 Développement logiciel
 Réseaux et sécurité
 Système d’exploitation
 Serveurs et Applications
Pole 2 : Certifications :

Le centre de certification des compétences est un centre de certification informatique. A ce


titre, Pluralis Consulting abrite plusieurs plate formes de certifications reconnues au niveau
international (Prometric - Pearson Vue - Exin - Certiport).
- Service : Assistant Administratif :
L’assistant administratif joue un rôle important puisque c’est lui qui s’occupe de toute
l’organisation interne et des relations externes de Pluralis Consulting. L'assistant
administratif accomplit toutes les tâches administratives nécessaires au bon fonctionnement
de l’entreprise. C’est un service rattaché aux responsables et au directeur.
- Service : Commercial :
Le Responsable Commercial élabore et propose à la direction générale la politique
commerciale de l'entreprise. Il détermine les orientations stratégiques, les objectifs à atteindre
et les moyens à mettre en place, après analyse et évaluation des différentes composantes du
marché.

Page | 13
II. Cahier des charges :
1. Présentation du projet :
Mon projet est né afin de simplifier non seulement la gestion des certifications ou bien des
formations, mais aussi la possibilité d’inscription en ligne, suivre les dernières offres et
proposer d’autres formations, ce qui permet d’avoir une bonne communication avec le client.
2. Problématique :
Il est à noter que l’inscription de chaque nouveau client est toujours manuelle, ce qui
nécessite des efforts considérables de la part de responsable en vue d’aider le client.
Pour combler cette lacune, le directeur recommande la remise en place d’urgence d’une
application informatique pour améliorer la méthode de la consultation des clients et par la
même occasion la gestion des certifications et formations.

3. Expression du besoin :
La société veut offrir un meilleur service à leurs clients et leurs employées à l'aide d'une
application web qui donne à un client la possibilité de :
 Consulter les certifications et les formations.
 Inscrire pour passer une certification ou à une formation.
 Propose une formation.
 Donner avis.
 Inscrire pour recevoir les dernières offres.

Et aux gérant la possibilité de :

 Gérer les certifications (ajouter, modifier, supprimer).


 Gérer les formations (ajouter, modifier, supprimer).
 Gérer les formateurs (ajouter, modifier, supprimer).
 Gérer les compétences (ajouter, modifier, supprimer).
 Gérer les inscriptions (consulter, valider).
 Consulter les avis et les propositions.

Et au administrateur la possibilité de :

 Gérer les gérants (ajouter, modifier, supprimer).

Page | 14
4. Fonctionnalités attendus :
Consulter les certifications :
Avant la consultation une recherche faite par le client. Par un mot clé signifie le nom de la
certification, par le domaine, par la technologie, ou bien par le code.
Après qu’un utilisateur rempli un des champs, deux, trois ou bien quatre un recherche dans la
base de données renvoie une liste contient les noms des certifications. Le client peut choisir
la certification qui l’intéresse et la consulter, si le client intéresse par la certification peut
inscrire pour passer l’examen chez la société, télécharger un PDF contient les mêmes
informations et aussi consulter la certification prérequis et les certifications qui peut les
passer après.
Consulter les formations :
Une liste contient les formations disponible chez la société affichent avec les dates de départ
et de fin, le client peut s’inscrire à une formation, télécharger un PDF ou bien proposer
d’autre formations.
Inscrire :
Après qu’un client choisie l’inscription à une formation ou bien certification, il doit remplir
un formulaire, avant que les informations envoyées une vérification des champs fait, si le
client entre des informations déjà existe ou bien des champs vide un message d’erreur
renvoie sinon l’inscription va enregistrée et un message de succès affiche.
Donner un avis:
Pour qu’un client donner leurs avis sur n’importe quoi, il doit introduire son email et leur
avis au premier temps une vérification des champs faite avant d’envoyer l’avis.
Recevoir les dernières offres :

Un client peut inscrire pour recevoir les dernières offres, pour cela il doit introduire son
email, au premier temps une vérification des champs faite avant d’envoyer l’avis.
Gérer les certifications, les formations et les formateurs:
La gestion de certifications, formations et les formateurs effectuées par les gérants qui sont
chargés de faire un suivi en temps réel de tout changement d’informations des certifications
ou bien des formations.

Page | 15
 Pour l’ajout d’une nouvelle certification, formation ou formateur fait de la même
manière, le gérant doit remplir un formulaire, avant que les informations envoyées
une vérification des champs fait, si le gérant entrer un code déjà existe pour la
certification ou bien un email déjà existe pour le formateur un message d’erreur
renvoie sinon on l’ajoute, on envoie un e-mail au client et on renvoie un message
de succès.
 S’il veut modifie, il va choisie le nom, et va modifier les autres informations une
vérification des champs faite avant l’envoie du formulaire.
 Pour la suppression le gérant choisir le nom, un message de validation doit être
affiché pour valider la suppression, après la validation une requête envoie à la base
de données
- Pour les certifications et les formations une vérification des inscriptions faite
avant la suppression.
- Pour les certifications une suppression des compétences faite.
- Pour le formateur un message de d’erreur affiché si le formateur est lié avec
une ou plusieurs formations, sinon la suppression est validé.
Gérer les inscriptions :
La gestion des inscriptions effectuées par les gérants, Après la consultation des inscriptions
le gérant vérifie les informations et valide l’inscription d’un client qui va recevoir un
message de confirmation dans leur courrier.
Gérer les compétences:
La gestion de compétences aussi effectuées par les gérants, au premier temps une liste de
certifications affiche au gérant qui va choisie une certification, après la sélection un table
contiennent les compétences de la certification affiche avec la possibilité de modifier ou
supprimer une compétence et aussi ajouter une nouvelle compétence.
Gérer les gérants:
La gestion de gérants effectuées par l’admin qui peut ajouter, modifier ou bien supprimer les
gérants, au premier temps un table contiennent tous les gérants affiche avec la possibilité de
modifier ou supprimer un gérant et aussi ajouter une nouveau gérant.

Page | 16
 L’ajout d’un nouveau gérant demande de remplir deux champs (login, password)
une vérification des champs faite si le login est déjà existé un message d’erreur
affiche sinon l’ajout va être enregistré et un message de succès affiche.
 La modification demande d’entrée l’ancien mot de passe et le nouveau mot de
passe, si l’ancien mot de passe est incorrect un message d’erreur affiche sinon la
modification va être enregistrée et un message de succès affiche.
 La suppression demande une confirmation de la part de l’admin.
Gérer les inscriptions :
La gestion des inscriptions effectuées par les gérants, Après la consultation des inscriptions
un gérant vérifie les informations entrées par le client et valide l’inscription ce qui signifié
l’envoie un email de confirmation au client.
Consulter les avis et les propositions :
La consultation des avis et des propositions faite à la même manière, Au premier une liste
des avis ou des propositions affichent au gérant avec la possibilité de supprimer l’avis ou la
proposition.

III. Planning et conduite du projet :


1. Gestion de projet
La gestion de projet est une démarche visant à organiser de bout en bout le bon déroulement
d’un projet. Lorsque la gestion de projet porte sur un ensemble de projets concourant à un
même objectif, on parle de gestion de programme.
Le management de projet est un management qui se caractérise par :
 L'irréversibilité des opérations des participants.
 Un fort degré de liberté des actions des participants.
 Une organisation vouée à être évolutive et temporaire.
 Des flux de trésorerie d'investissement pouvant être négatifs.
 Une forte influence de variables exogènes sur le projet.

2. Diagramme de GANTT
Le diagramme de Gantt (Harmonogram Adamieckiego) est un outil utilisé (souvent en
complément d'un réseau PERT) en ordonnancement et gestion de projet et permettant de
visualiser dans le temps les diverses tâches liées composant un projet (il s'agit d'une

Page | 17
représentation d'un graphe connexe, value et orienté). Il permet de représenter graphiquement
l'avancement du projet.
Le premier diagramme de ce type (appelé Harmonogram Adamieckiego) fut réalisé par
ingénieur polonais Karol Adamiecki en 1896. Il l'a décrit en 1931, mais la langue de
publication n'a pas permis la reconnaissance internationale de son idée. Pour cette raison le
concept a été nommé après Henry L. Gantt, ingénieur américain, qui a publié la description
du diagramme en 1910.
Dans mon projet j’ai utilisé l’outil Gantt Project [1].
Les tâches :

Figure 3 : Les tâches du projet.


Diagramme de GANTT :

Figure 4 : Diagramme de GANTT.

Page | 18
IV. Langage et méthodologie de conception :
Introduction :
Pour bien conduire mon projet et m’assurer du bon déroulement des différentes phases, j’ai
opté la démarche UP-XP [2] comme une méthodologie de conception et de développement.
Après le choix de la méthodologie, j’ai besoin d’un langage de modélisation UML comme un
langage de modélisation.
Mon choix s’est basé sur les points forts de ce langage notamment sa standardisation et les
divers diagrammes qu’il propose. Aussi UML présente le meilleur outil pour schématiser des
systèmes complexes sous un format graphique et textuel simplifié et normalisé.
En effet UML n’est ni un processus ni une démarche, d’où il fallait choisir une méthodologie
de conception et de développement que nous devons l’adopter.

1. La démarche UP-XP :
L’objectif de la démarche UP-XP est de pouvoir analyser est concevoir un logiciel orienté
objet évolutif et ayant l’aptitude à s’adapter aux éventuels changements que peut connaitre
le métier de l’entreprise à l’avenir en plusieurs niveaux : Fiscale, productif, organisationnel,
juridique, etc.
UP- Unified Process :
La méthode du Processus Unifié (UP pour Unified Process) est un processus de
développement itératif et incrémental, ce qui signifie que le projet est découpé en phases très
courtes à l’issue de chacune desquelles une nouvelle version incrémentée est livrée.
Il s’agit d’une démarche s’appuyant sur la modélisation UML pour la description de
l’architecture du logiciel (fonctionnelle, logicielle et physique) et la mise au point de cas
d’utilisation permettant de décrire les besoins et exigences des utilisateurs.
XP-eXtreme Programming :
La méthode XP (pour eXtreme Programming) définit un certain nombre de bonnes pratiques
permettant de développer un logiciel dans des conditions optimales en plaçant le client du
cœur du processus de développement, en relation étroite avec le client.
L’eXtreme Programming est notamment basé sur les concepts suivants :
 Les équipes de développement travaille directement avec le client sur des cycles très
courts d’une à deux semaines maximum.

Page | 19
 L’équipe livraison de versions du logiciel interviennent très tôt et à une fréquence élevée
pour maximiser l’impact des retours utilisateurs.
 L’équipe de développement travaille en collaboration totale sur la base de binôme …
 Le code est tester et nettoyé tout au long du processus de développement.
 Des indicateurs permettent de mesure l’avancement du projet afin de permettre de mettre
à jour.

2. Phases de modélisation.
Phase d’inception : Recensement et définition des besoins.
C’est la phase ayant comme principal objectif l’identification des principaux acteurs
interagissent avec le système et les fonctionnalités attendues de celui-ci.
Dans un premier temps, nous allons lister l’ensemble des exigences issues du cahier des
charges. Chaque exigence sera recensée et elle pourra être étudiée ultérieurement.
Ces exigences seront regroupées par intentions d’acteur, puis un diagramme de contexte
statique sera établi.
A ce stade, nous pouvons déjà construire un diagramme de cas d’utilisation de notre projet.
Phase d’analyse et de conception :
Il s’agit d’une phase itérative qui vise à analyser et comprendre chaque fonctionnalité
attendue du système en examinant toutes les scénarios compte des scénarios exceptionnels et
des erreurs.
Une description détaillée est faites pour chaque use case, qui peut être complétée par un
diagramme d’activité qui consolide les différents scénarios possibles.
Nous allons réaliser un diagramme de séquence boîte noir correspond au système (Ici c’est
un diagramme de séquence par scénario, ou la boite noir correspond au système informatique
à développer).
A partir des diagrammes de séquences et des descriptions textuelles, nous réaliserons les
diagrammes d’activités et le diagramme de classe d’analyse.
Phase de réalisation :
Dans cette phase nous déduirons à partir du diagramme de classe d’analyse le modèle
logique de donnée pour la création de la base de données et ceci en appliquant les règles de
passages.

Page | 20
3. Le formalisme UML :
UML est considéré comme le langage standard de conception orienté objet, il est un
formalisme et pas une méthode. Il s’en duit qu’il définit un ensemble d’éléments de
modélisation et une notation graphique pour modéliser les systèmes et ne décrit pas les
étapes à suivre pour le faire.
Les raisons qui nous ont poussés à adopter UML dans notre projet se résume en :
UML offre un outil prêt à l’emploi basé sue une modélisation visuelle qui permet d’échanger
des modèles compréhensibles.
Si on développe aves des langages orienté objet, il est plus approprié de concevoir avec des
formalismes Orienté Objet.

Figure 5:Les diagrammes disponibles.

4. L’outil PowerAmc :
PowerAmc [3] est un logiciel de modélisation. Il permet de
modéliser les traitements informatiques et leurs bases de
données associées en n’importe quelles modèles
informatiques. Il reste un des seuls qui permet de travailler
avec la méthode Merise, cela permet d’améliorer la
modélisation, les processus, le coût et la production d’application.
PowerAmc offre des méthodes efficaces d’analyse d’impact, de gestion des changements et
des techniques avancées de gestion des métadonnées.

Page | 21
La combinaison des techniques de modélisation et de la gestion des données confère à
PowerAmc des fonctions uniques lui permettant de prendre en charge tous les
environnements architecturaux. Le référentiel de métadonnées de PowerAmc permet
également à toutes les parties prenantes de l’entreprise de collaborer et de communiquer
efficacement. Ces dernières peuvent ainsi réagir plus rapidement face aux changements et
garantir une meilleure capacité d’adaptation de l’entreprise.

Chapitre 2 : Phase d’inception.

Introduction :
Cette phase consiste à comprendre le contexte du système. Il s’agit de déterminer les
fonctionnalités et les acteurs les plus pertinents, de préciser les risques les plus critiques et
d’identifier les cas d’utilisation initiaux. Ceci dit, notre description va sembler trop détaillée
pour une première phase de processus.

I. Capture des besoins :


1. Définition des besoins fonctionnels :
Il s'agit des fonctionnalités du système. Ce sont les besoins spécifiant un comportement
d'entrée / sortie du Système.
Le système à concevoir doit permettre à l’utilisateur d’effectuer les opérations suivantes:
Référence Fonction
R1 Rechercher certification par mot
R2 Rechercher certification par domaine
R3 Rechercher certification par technologie
R4 Rechercher certification par code
R5 Consulter certification
R6 Consulter la certification prérequis
R7 Consulter les certifications après
R8 Télécharger un PDF de certification
R9 Inscrire pour passer une certification
R10 Consulter les formations
R11 Télécharger un PDF de formation
R12 Inscrire à une formation
R13 Donner l’avis sur formation
R14 Proposer formation
R15 Recevoir les notifications
R16 Authentifier
R17 Ajouter certification

Page | 22
R18 Modifier certification
R19 Supprimer certification
R20 Ajouter compétence
R21 Modifier compétence
R22 Supprimer compétence
R23 Ajouter formation
R24 Modifier formation
R25 Supprimer formation
R26 Ajouter gérant
R27 Modifier gérant
R28 Supprimer gérant
R29 Ajouter formateur
R30 Modifier formateur
R31 Supprimer formateur
R32 Consulter les inscrits aux certifications
R33 Valider l’inscription d’un client à une certification
R34 Consulter les avis
R35 Consulter les propositions
R36 Consulter les inscrits aux formations
R37 Valider l’inscription d’un client à une formation
R38 Envoyer un e-mail
Tableau 1 : Tableau des exigences.
2. Les besoins non fonctionnels :
Les besoins non fonctionnels concernent les contraintes à prendre en considération pour
mettre en place une solution adéquate aux attentes des concepteurs des architectures
dynamiques.
Mon application doit nécessairement assurer ces besoins :
 L’extensibilité : dans le cadre de ce travail, l'application devra être extensible, c'est-à-
dire qu'il pourra y avoir une possibilité d'ajouter ou de modifier de nouvelles
fonctionnalités.
 La sécurité : l’application devra être hautement sécurisée, les informations ne devront
pas être accessibles à tout le monde, c'est-à-dire qu’il existe des fonctionnalités
accessibles par un identifiant et un mot de passe attribué à une personne physique.
 L’interface : avoir une application qui respecte les principes des Interfaces
Homme/Machine (IHM) tels que l'ergonomie et la fiabilité.
 La performance : l’application devra être performante c'est-à-dire que le système
doit réagir dans un délai précis, quel que soit l’action de l’utilisateur.
 La convivialité : l’application doit être simple et facile à manipuler même par des non
experts.

Page | 23
3. Les principaux acteurs du système :

Figure 6 : Diagramme des acteurs.


Client : celui qui n’a pas besoin de s’authentifier pour utiliser leurs fonctionnalités, il peut
rechercher, consulter, télécharger des PDF et proposer des formations ainsi donner des avis et
recevoir des notifications.
Gérant : celui qui est chargé de gérer les certifications, les formations les formateurs et les
inscriptions des clients, aussi consulter les avis et les propositions des clients.
Administrateur : C’est le seul qui peut ajouter, modifier ou supprimer des gérants.

Figure 7 : Diagramme de contexte statique.


Ce diagramme nous permet de préciser au départ la nature du système (Mono
utilisateur/Multi utilisateur) par rapport aux interactions des acteurs à un instant t.

Page | 24
4. Regroupement des exigences par intentions d’acteurs :
Référence Fonction Intention d’acteur Acteur
R1 Rechercher certification par mot Rechercher certification Client
R2 Rechercher certification par domaine Rechercher Certification Client
R3 Rechercher certification par technologie Rechercher certification Client
R4 Rechercher certification par code Rechercher certification Client
R5 Consulter certification Consulter certification Client
R6 Consulter la certification prérequis Consulter certification Client
R7 Consulter les certifications après Consulter certification Client
R8 Télécharger un PDF de certification Télécharger PDF Client
R9 Inscrire pour passer une certification Inscrire Client
R10 Consulter les formations Consulter les formations Client
R11 Télécharger un PDF de formation Télécharger PDF Client
R12 Inscrire à une formation Inscrire Client
R13 Donner l’avis Donner l’avis Client
R14 Proposer formation Proposer formation Client
R15 Recevoir les notifications Recevoir les notifications Client
R16 Authentifier Authentifier Gérant
R17 Ajouter certification Gérer certification Gérant
R18 Modifier certification Gérer certification Gérant
R19 Supprimer certification Gérer certification Gérant
R20 Ajouter compétence Gérer compétence Gérant
R21 Modifier compétence Gérer compétence Gérant
R22 Supprimer compétence Gérer compétence Gérant
R23 Ajouter formation Gérer formation Gérant
R24 Modifier formation Gérer formation Gérant
R25 Supprimer formation Gérer formation Gérant
R26 Ajouter gérant Gérer gérant Admin
R27 Modifier gérant Gérer gérant Admin
R28 Supprimer gérant Gérer gérant Admin
R29 Ajouter formateur Gérer formateur Gérant
R30 Modifier formateur Gérer formateur Gérant
R31 Supprimer formateur Gérer formateur Gérant
R32 Consulter les inscrits aux certifications Gérer les inscriptions Gérant
R33 Valider l’inscription d’un client à une certification Gérer les inscriptions Gérant
R34 Consulter les avis Consulter les avis Gérant
R35 Consulter les propositions Consulter les propositions Gérant
R36 Consulter les inscrits aux formations Gérer les inscriptions Gérant
R37 Valider l’inscription d’un client à une formation Gérer les inscriptions Gérant
R38 Envoyer un e-mail Envoyer un e-mail Gérant
Tableau 2 : Tableau des exigences par intention d’acteur.

II. Diagramme de cas d’utilisation :


Le diagramme de cas d'utilisation décrit les utilisations requises d'un système, ou ce qu'un
système est supposé faire. Les principaux concepts de ce diagramme sont les acteurs, cas

Page | 25
d'utilisation et sujets. Un sujet représente un système avec lequel les acteurs et autres sujets
interagissent.

Figure 8 : Diagramme de cas d’utilisation.

Page | 26
Chapitre 3 : Phase d’analyse et de conception.

Introduction :
Cette phase poursuit la tache entamée dans la phase d’inception, cette phase vise à identifier
et décrire la majorité des besoins utilisateurs, construire l’architecture de base du système et
lever les risques majeurs du projet.
Au niveau de cette phase, j’analyse les différents cas d’utilisation puis j’essaye de les
détaillées pour comprendre chaque fonctionnalité attendue du système en examinant toutes
les scénarios compte des scénarios exceptionnels et des erreurs.

I. Description textuelle des cas d’utilisation :


Pour rendre notre diagramme des cas d’utilisation plus lisible et afin de décrire le
comportement d’un système, les concepteurs d’UML proposent l’utilisation d’une technique
nommé la description textuelle des cas d’utilisation.

1. Authentifier :
Nom de cas Authentifier.
d’utilisation :
Objectif : Accès aux fonctionnalités attribuées.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de s’identifier auprès du
d’utilisation système et d’accéder aux fonctionnalités qui lui sont
attribuées.
Pré-condition : Existence des données dans la base de données.
Post- Affichage de la page d’accueil.
condition :
Scénario Action des Action du système
nominal : acteurs
1. consulter page 2. Afficher page
d’authentification d’authentification.
.

3. Introduire Login 4. Vérifier Login et mot de


et Mot de passe. passe.
5. Valider et afficher la page
d’accueil.
Tableau 3 : Description textuelle de cas d’utilisation « Authentifier ».
Les enchainements alternatifs :
A1 : Login ou Mot de passe erroné

Page | 27
L’enchainement A1 démarre au point 4 du scénario nominal.
5-le système indique à l’utilisateur que le login ou le mot de passe est erroné.
Le scénario nominal reprend au point 3.

A2 : Les champs de saisie sont vides


L’enchainement A2 démarre au point 4 du scénario nominal.
5-le système demande aux utilisateurs de remplir les champs.
Le scénario nominal reprend au point 3.

Les enchainements d’exception :


E1 : Le système ne répond pas
L’enchainement E1 démarre au point 1 du scénario nominal.
2- le système ne répond pas.
Le cas d’utilisation se termine en échec.

2. Gérer les certifications :


Ajouter certification :
Nom de cas Ajouter certification.
d’utilisation :
Objectif : Effectuer une gestion des certifications.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant d’ajouter une nouvelle
d’utilisation certification.
Pré- Authentification préalable.
condition :
Post- Une nouvelle certification ajoutée.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher le
2. Demander le formulaire.
formulaire d’ajout.

4. Remplir les champs. 5. Vérifier les


données saisies.
6. Enregistrer la
certification.
7. Envoyer une
notification aux
clients.
8. Afficher un
message de succès.
Tableau 4 : Description textuelle de cas d’utilisation « Ajouter certification ».

Page | 28
Les enchainements alternatifs :
A1 : Données manquants
L’enchainement A1 démarre au point 5 du scénario nominal.
6- le système affiche un message d’erreur.
Le scénario nominal reprend au point 4.
Modifier certification :
Nom de cas Modifier certification.
d’utilisation :
Objectif : Effectuer une gestion des certifications.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de modifier une certification.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Une certification bien modifiée.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher le
2. Sélectionner une formulaire avec les
certification. informations de la
certification.

4. Modifier les champs. 5. Vérifier les


données saisies.
6. Mise à jour de la
certification.
7. Notifier les clients.
8. Afficher un
message de
succès.
Tableau 5 : Description textuelle de cas d’utilisation « Modifier certification ».
Les enchainements alternatifs :
A1 : Aucune certification trouvée
L’enchainement A1 démarre au point 3 du scénario nominal.
4- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : Données manquants
L’enchainement A2 démarre au point 5 du scénario nominal.

Page | 29
6- le système affiche un message d’erreur.
Le scénario nominal reprend au point 4.
Supprimer certification :
Nom de cas Supprimer certification.
d’utilisation :
Objectif : Effectuer une gestion des certifications.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de supprimer une
d’utilisation certification.
Pré- Authentification préalable.
condition :
Post- Une certification bien supprimée.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher un
2. Sélectionner une message de
certification. confirmation.

4. Valider son choix. 5. Supprimer les


inscriptions de la
certification.
6. Supprimer la
certification.
7. Afficher un
message de succès.
Tableau 6 : Description textuelle de cas d’utilisation « Supprimer certification ».
Les enchainements alternatifs :
A1 : Aucune certification trouvée
L’enchainement A1 démarre au point 3 du scénario nominal.
4- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : L’utilisateur annule la suppression
L’enchainement A2 démarre au point 3 du scénario nominal.
4- le système affiche arrête le scénario nominal.
Le scénario nominal s’arrête.

Page | 30
3. Gérer les formations :
Ajouter Formation :
Nom de cas Ajouter formation.
d’utilisation :
Objectif : Effectuer une gestion des formations.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant d’ajouter une formation.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Une nouvelle formation ajoutée.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher le
2. Demander le formulaire.
formulaire d’ajout.

4. Remplir les champs. 5. Vérifier les


données saisies.
6. Enregistrer la
formation.
7. Notifier les clients.
8. Afficher un
message de succès.
Tableau 7 : Description textuelle de cas d’utilisation « Ajouter formation ».
Les enchainements alternatifs :
A1 : Données manquants
L’enchainement A1 démarre au point 5 du scénario nominal.
6- le système affiche un message d’erreur.
Le scénario nominal reprend au point 4.
Modifier formation :
Nom de cas Modifier formation.
d’utilisation :
Objectif : Effectuer une gestion des formations.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de modifier une formation.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Une formation bien modifiée.
condition :
Scénario Action des acteurs Action du système

Page | 31
nominal : 1. Authentification. 3. Afficher le
2. Sélectionner une formulaire avec les
formation. informations de la
formation.

4. Modifier les champs. 5. Vérifier les


données saisies.
6. Mise à jour de la
formation.
7. Afficher un
message de
succès.
Tableau 8 : Description textuelle de cas d’utilisation « Modifier formation ».
Les enchainements alternatifs :
A1 : Aucune formation trouvée
L’enchainement A1 démarre au point 3 du scénario nominal.
4- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : Données manquants
L’enchainement A2 démarre au point 5 du scénario nominal.
6- le système affiche un message d’erreur.
Le scénario nominal reprend au point 4.
Supprimer formation :
Nom de cas Supprimer formation.
d’utilisation :
Objectif : Effectuer une gestion des formations.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de supprimer une formation.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Une formation bien supprimer et archivée.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher un
2. Sélectionner une message de
formation. confirmation.

Page | 32
4. Valider son choix. 5. Supprimer les
inscriptions à la
formation.
6. Supprimer la
formation.
7. Afficher un
message de succès.
Tableau 9 : Description textuelle de cas d’utilisation « Supprimer formation ».
Les enchainements alternatifs :
A1 : Aucune formation trouvée
L’enchainement A1 démarre au point 3 du scénario nominal.
4- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : L’utilisateur annule la suppression
L’enchainement A2 démarre au point 3 du scénario nominal.
4- le système affiche arrête le scénario nominal.
Le scénario s’arrête.
4. Gérer les formateurs :
Ajouter formateur :
Nom de cas Ajouter formateur.
d’utilisation :
Objectif : Effectuer une gestion des enseignants.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant d’ajouter un formateur.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Un nouvel formateur ajouté.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher le
2. Demander le formulaire.
formulaire d’ajout.

4. Remplir les champs. 5. Vérifier les


données saisies.
6. Enregistrer le
formateur.
7. Afficher un
message de succès.

Page | 33
Tableau 10 : Description textuelle de cas d’utilisation « Ajouter formateur ».
Les enchainements alternatifs :
A1 : Données manquants
L’enchainement A1 démarre au point 5 du scénario nominal.
6- le système affiche un message d’erreur.
Le scénario nominal reprend au point 4.
Modifier formateur :
Nom de cas Modifier formateur.
d’utilisation :
Objectif : Effectuer une gestion des formateurs.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de modifier un formateur.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Un formateur bien modifié.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher le
2. Sélectionner un formulaire avec les
enseignant. informations de
l’enseignant.

4. Modifier les champs. 5. Vérifier les


données saisies.
6. Mise à jour du
formateur.
7. Afficher un
message de
succès.
Tableau 11 : Description textuelle de cas d’utilisation « Modifier formateur ».
Les enchainements alternatifs :
A1 : Aucun enseignant trouvé
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : Données manquants
L’enchainement A2 démarre au point 5 du scénario nominal.

Page | 34
6- le système affiche un message d’erreur.
Le scénario nominal reprend au point 4.
Supprimer formateur :
Nom de cas Supprimer formateur.
d’utilisation :
Objectif : Effectuer une gestion des formateurs.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de supprimer un formateur.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Un formateur bien supprimé.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher un
2. Sélectionner un message de
enseignant. confirmation.

4. Valider son choix. 5. Vérifier la


dépendance avec
des formations.
6. Supprimer le
formateur.
7. Afficher un
message de succès.

Tableau : Description textuelle de cas d’utilisation « Supprimer formateur».


Les enchainements alternatifs :
A1 : Aucun enseignant trouvé
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : L’utilisateur annulé la suppression
L’enchainement A2 démarre au point 3 du scénario nominal.
4- le système affiche arrête le scénario nominal.
Le scénario s’arrête.
A3 : Le formateur est déjà lié avec des formations
L’enchainement A3 démarre au point 5 du scénario nominal.

Page | 35
7- le système passe au point 2 du scénario nominal.
Le scénario s’arrête.
5. Gérer les gérants :
Ajouter gérant :
Nom de cas Ajouter gérant.
d’utilisation :
Objectif : Effectuer une gestion des gérants.
Acteurs Admin.
principaux :
Rôle de cas Ce scénario permet à l’admin d’ajouter un gérant.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Un nouveau gérant ajouté.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 2. Afficher la liste des
gérants.

3. Cliquer sur le 5. Vérifier les


bouton ajouter données saisies.
gérant. 6. Enregistrer le
4. Remplir les gérant.
informations. 7. Afficher un
message de succès.
Tableau 13 : Description textuelle de cas d’utilisation « Ajouter gérant ».
Les enchainements alternatifs :
A1 : Données manquants
L’enchainement A1 démarre au point 5 du scénario nominal.
6- le système affiche un message d’erreur.
Le scénario nominal reprend au point 4.
Modifier gérant :
Nom de cas Modifier gérant.
d’utilisation :
Objectif : Effectuer une gestion des gérants.
Acteurs Admin.
principaux :
Rôle de cas Ce scénario permet à l’admin de modifier un gérant.
d’utilisation
Pré- Authentification préalable.
condition :

Page | 36
Post- Un gérant bien modifié.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 2. Afficher la liste des
gérants.

3. Cliquer sur le 5. Vérifier le mot de


bouton modifier passe.
gérant. 6. Enregistrer les
4. Entrer le nouveau modifications.
mot de passe. 7. Afficher un
message de succès.
Tableau 14 : Description textuelle de cas d’utilisation « Modifier gérant ».
Les enchainements alternatifs :
A1 : Aucun gérant trouvé
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : Données manquants
L’enchainement A2 démarre au point 5 du scénario nominal.
6- le système affiche un message d’erreur.
Le scénario nominal reprend au point 4.
Supprimer gérant :
Nom de cas Supprimer gérant.
d’utilisation :
Objectif : Effectuer une gestion des enseignants.
Acteurs Admin.
principaux :
Rôle de cas Ce scénario permet à l’admin de supprimer un gérant.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Un gérant bien supprimé.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 2. Afficher la liste des
gérants.

3. Cliquer sur le 4. Afficher un


bouton supprimer message de

Page | 37
gérant. confirmation.

5. Valider son choix. 6. Vérifier les


données saisies.
7. Supprimer le
gérant.
8. Afficher un
message de succès.
Tableau 15: Description textuelle de cas d’utilisation « Supprimer gérant ».
Les enchainements alternatifs :
A1 : Aucun gérant trouvé
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : L’utilisateur annule la suppression
L’enchainement A2 démarre au point 4 du scénario nominal.
5- le système affiche arrête le scénario nominal.
Le scénario s’arrête.
6. Gérer les compétences :
Ajouter compétence :
Nom de cas Ajouter compétence.
d’utilisation :
Objectif : Effectuer une gestion des compétences.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant d’ajouter une compétence.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Une nouvelle compétence ajoutée.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher la liste des
2. Sélectionner une compétences.
certification.

Page | 38
4. Cliquer sur le 6. Vérifier les
bouton ajouter données saisies.
compétence. 7. Enregistrer la
5. Remplir les compétence.
informations. 8. Afficher un
message de succès.
Tableau 16 : Description textuelle de cas d’utilisation « Ajouter compétence ».
Les enchainements alternatifs :
A1 : Données manquants
L’enchainement A1 démarre au point 6 du scénario nominal.
7- le système affiche un message d’erreur.
Le scénario nominal reprend au point 5.
Modifier compétence :
Nom de cas Modifier compétence.
d’utilisation :
Objectif : Effectuer une gestion des compétences.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de modifier un gérant.
d’utilisation
Pré- Authentification préalable.
condition :
Post- Une compétence bien modifiée.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher la liste des
2. Sélectionner une compétences.
certification.

4. Cliquer sur le 6. Vérifier le champ.


bouton modifier 7. Enregistrer les
compétences. modifications.
5. Entrer la nouvelle 8. Afficher un
valeur. message de succès.
Tableau 17 : Description textuelle de cas d’utilisation « Modifier compétence ».
Les enchainements alternatifs :
A1 : Aucune compétence trouvée
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système arrête le scénario nominal.
Le scénario s’arrête.

Page | 39
A2 : Données manquants
L’enchainement A2 démarre au point 6 du scénario nominal.
6-le système affiche un message d’erreur.
Le scénario nominal reprend au point 5.
Supprimer compétence :
Nom de cas Supprimer compétence.
d’utilisation :
Objectif : Effectuer une gestion des compétences.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de supprimer une
d’utilisation compétence.
Pré- Authentification préalable.
condition :
Post- Une compétence bien supprimée.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher la liste des
2. Sélectionner une compétences.
certification.

4. Cliquer sur le 5. Afficher un


bouton supprimer message de
compétence. confirmation.

6. Valider son choix. 7. Supprimer la


compétence.
8. Afficher un
message de succès.
Tableau 18 : Description textuelle de cas d’utilisation « Supprimer compétence ».
Les enchainements alternatifs :
A1 : Aucune compétence trouvée
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système arrête le scénario nominal.
Le scénario s’arrête.
A2 : L’utilisateur annule la suppression
L’enchainement A2 démarre au point 5 du scénario nominal.
6- le système affiche arrête le scénario nominal.
Le scénario s’arrête.

Page | 40
7. Gérer les inscriptions :
Nom de cas Gérer les inscriptions.
d’utilisation :
Objectif : Effectuer une consultation des inscriptions aux certifications
ou formations et les validées.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de consulter la liste des
d’utilisation inscrits aux certifications ou aux formations et validée une
ou plusieurs.
Pré- Authentification préalable.
condition :
Post- Message de confirmation envoyé au client.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Authentification. 3. Afficher la liste
2. Sélectionner des inscrits.
formation/Certification.

4. Valider une inscription. 5. Valider


l’inscription.
6. Envoyer un e-
mail de
confirmation au
client.
7. Message de
succès.
Tableau 19 : Description textuelle de cas d’utilisation « Gérer inscriptions ».
Les enchainements alternatifs :
A1 : Aucune inscription trouvée
L’enchainement A1 démarre au point 3 du scénario nominal.
4- le système arrête le scénario nominal.
Le scénario s’arrête.
8. Rechercher certification :
Nom de cas Rechercher certification.
d’utilisation :
Objectif : Effectuer une recherche de certifications.
Acteurs Client.
principaux :
Rôle de cas Ce scénario permet au client de rechercher une
d’utilisation certification.
Pré-condition : Liste des certifications existes.

Page | 41
Post- Les certifications sont bien affichées.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Demande la 2. Afficher la page.
page de
recherche.

3. Remplir les 4. Vérification des


informations. champs.
5. Liste des certifications.

Tableau 20 : Description textuelle de cas d’utilisation « Rechercher certification ».


Les enchainements alternatifs :
A1 : Données manquants
L’enchainement A1 démarre au point 4 du scénario nominal.
5- le système affiche un message d’erreur.
Le scénario nominal reprend au point 3.
9. Consulter certification :
Nom de cas Consulter certification.
d’utilisation :
Objectif : Consulter une certification.
Acteurs Client.
principaux :
Rôle de cas Ce scénario permet au client de consulter une certification.
d’utilisation
Pré-condition : Le client vient de faire une recherche.
Post- Les informations de la certification sont bien affichées.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Demande la 2. Afficher la page.
page de
certification.

Tableau 21 : Description textuelle de cas d’utilisation « Consulter certification ».


10.Consulter les formations :
Nom de cas Consulter les formations.
d’utilisation :
Objectif : Consulter les formations.
Acteurs Client.
principaux :
Rôle de cas Ce scénario permet au client de consulter une formation.

Page | 42
d’utilisation
Pré-condition : Existence des formations.
Post- Les formations ont bien affichées.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Demande la 2. Afficher la liste.
liste des
formations.

3. Cliquer pour 4. Consultation de la


consulter une formation.
formation.

Tableau 22 : Description textuelle de cas d’utilisation « Consulter les formations ».


Les enchainements alternatifs :
A1 : Aucune formation trouvée
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système affiche un message d’erreur.
Le scénario nominal arrête.
11.Donner avis :
Nom de cas Donner avis.
d’utilisation :
Objectif : Donner un avis.
Acteurs Client.
principaux :
Rôle de cas Ce scénario permet au client la possibilité de donné son
d’utilisation avis.
Pré-condition :
Post- L’avis est bien enregistré.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Cliquer sur 2. Afficher le formulaire.
donné un avis.

3. Remplir les 4. Vérifier les champs.


champs. 5. Enregistrer l’avis.
6. Afficher un message de
succès.
Tableau 23 : Description textuelle de cas d’utilisation « Donner avis ».
Les enchainements alternatifs :

Page | 43
A1 : Données manquants.
L’enchainement A1 démarre au point 3 du scénario nominal.
4- le système affiche un message d’erreur.
Le scénario nominal reprend le point 2.
12.Proposer formation :
Nom de cas Proposer formation.
d’utilisation :
Objectif : Proposer une formation n’existe pas.
Acteurs Client.
principaux :
Rôle de cas Ce scénario permet au client la possibilité de proposer une
d’utilisation formation qui n’existe pas.
Pré-condition : Consulter une formation.
Post- La proposition est bien enregistrée.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Cliquer sur 2. Afficher le formulaire.
proposer
formation.

3. Remplir les 4. Vérifier les champs.


champs. 5. Enregistrer la
proposition.
6. Afficher un message de
succès.
Tableau 24 : Description textuelle de cas d’utilisation « Proposer formation ».
Les enchainements alternatifs :
A1 : Données manquants.
L’enchainement A1 démarre au point 4 du scénario nominal.
5- le système affiche un message d’erreur.
Le scénario nominal reprend le point 3.
13.Recevoir les notifications :
Nom de cas Recevoir les notifications.
d’utilisation :
Objectif : Recevoir les derniers certifications et formations.
Acteurs Client.
principaux :
Rôle de cas Ce scénario permet au client d’inscrire pour recevoir les
d’utilisation derniers certifications et formations et offres.

Page | 44
Pré-condition :
Post- L’inscription est bien faite.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Remplir les 2. Vérifier les champs.
champs. 3. Enregistrer l’inscription.
4. Afficher un message de
succès.
Tableau 25 : Description textuelle de cas d’utilisation « Recevoir les notifications ».
Les enchainements alternatifs :
A1 : Données manquants.
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système affiche un message d’erreur.
Le scénario nominal reprend le point 1.
14.Inscrire :
Nom de cas Inscrire.
d’utilisation :
Objectif : L’inscription à une formation, pour passer une certification
ou bien pour proposer formation.
Acteurs Client.
principaux :
Rôle de cas Ce scénario permet au client d’inscrire à une formation,
d’utilisation pour passer une certification ou bien pour proposer
formation.
Pré-condition : ----
Post- L’inscription est bien faite.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Demande la 2. Afficher le formulaire.
page
d’inscription.

3. Remplir les 4. Vérifier les champs.


champs. 5. Enregistrer l’inscription.
6. Afficher un message de
succès.
Tableau 26 : Description textuelle de cas d’utilisation « Inscrire ».
Les enchainements alternatifs :
A1 : Données manquants.
L’enchainement A1 démarre au point 4 du scénario nominal.

Page | 45
5- le système affiche un message d’erreur.
Le scénario nominal reprend le point 3.
15.Consulter les avis :
Nom de cas Consulter les avis.
d’utilisation :
Objectif : Consultation des avis de clients.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de consulter les avis des
d’utilisation clients.
Pré-condition : Authentification préalable.
Post- Les avis sont bien affichés.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Demande la 2. Afficher les avis.
liste des avis.

3. Demande le 4. Afficher le formulaire.


répond à un
avis.

5. Remplir les 6. Vérifier les champs.


informations. 7. Envoyer e-mail au
client.
8. Supprimer l’avis.
9. Afficher un message de
succès.
Tableau 27 : Description textuelle de cas d’utilisation « Consulter les avis ».
Les enchainements alternatifs :
A1 : Données manquants.
L’enchainement A1 démarre au point 6 du scénario nominal.
7- le système affiche un message d’erreur.
Le scénario nominal reprend le point 5.
16.Télécharger PDF :
Nom de cas Télécharger un PDF.
d’utilisation :
Objectif : Consulter les formations et les certifications en format
PDF.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au client Consulter et télécharger les

Page | 46
d’utilisation formations et les certifications en format PDF.
Pré-condition : Consulter une formation/certification.
Post- Le PDF bien affiché pour le télécharger.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Demande la 2. Afficher le PDF.
page de PDF.

Tableau 28 : Description textuelle de cas d’utilisation « Télécharger PDF ».


17.Consulter les propositions :
Nom de cas Consulter les propositions.
d’utilisation :
Objectif : Afficher les propositions au gérant.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant de consulter les propositions
d’utilisation des formations des clients.
Pré-condition : Authentification préalable.
Post- La liste des propositions est bien affichée.
condition :
Scénario Action des Action du système
nominal : acteurs
1. Demande la 2. Afficher la liste.
liste des
propositions.

Tableau 29 : Description textuelle de cas d’utilisation « Consulter les propositions ».


Les enchainements alternatifs :
A1 : Le gérant supprimer une proposition.
L’enchainement A1 démarre au point 2 du scénario nominal.
3- le système affiche un message de confirmation.
4- Le gérant valide son choix.
Le scénario nominal arrête.
18.Envoyer e-mail :
Nom de cas Envoyer e-mail.
d’utilisation :
Objectif : L’envoie d’un e-mail.
Acteurs Gérant.
principaux :
Rôle de cas Ce scénario permet au gérant d’envoyer un email au client.

Page | 47
d’utilisation
Pré- Demande de l’envoie.
condition :
Post- L’e-mail est bien envoyé.
condition :
Scénario Action des acteurs Action du système
nominal : 1. Envoyer les 2. Envoyer l’e-mail.
informations 3. Afficher un
nécessaires. message de
succès.
Tableau 30 : Description textuelle de cas d’utilisation « Envoyer e-mail ».

II. Diagramme de séquence « Boite noire » :


Pour schématiser la vue comportementale de notre système informatique, nous faisons
recours au diagramme de séquence d’UML. Ce diagramme permet de préciser les
interactions entre l’acteur et le système avec des messages présentés dans un ordre
chronologique. Le diagramme de séquence système traite le système informatique comme
étant une boite noir. Le comportement du système est décrit vu de l’extérieur sans avoir
d’idée sur comment il le réalisera.

1. Inscrire:

Figure 9 : Diagramme de séquence « Inscrire ».

Page | 48
2. Authentifier :

Figure 10 : Diagramme de séquence « Authentifier ».


1. Envoyer e-mail :

Figure 11 : Diagramme de séquence « Envoyer e-mail ».

Page | 49
2. Gérer les certifications :

Figure 12 : Diagramme de séquence « Gérer les certifications ».

Page | 50
3. Gérer les formations :

Figure 13 : Diagramme de séquence « Gérer formations ».

Page | 51
4. Gérer les formateurs :

Figure 14 : Diagramme de séquence « Gérer les formateurs ».

Page | 52
5. Gérer les gérants :

Figure 15: Diagramme de séquence « Gérer les gérants ».

Page | 53
6. Gérer les compétences :

Figure 16 : Diagramme de séquence « Gérer les compétences ».

Page | 54
7. Gérer les inscriptions :

Figure 17 : Diagramme de séquence « Gérer les inscriptions ».

8. Rechercher certification :

Figure 18 : Diagramme de séquence « Rechercher certification».

Page | 55
9. Consulter certification :

Figure 19 : Diagramme de séquence « Consulter certification ».

Page | 56
10.Consulter formation :

Figure 20 : Diagramme de séquence « Consulter formation ».

11.Donner avis :

Figure 21: Diagramme de séquence « Donner avis ».

Page | 57
12.Proposer formation :

Figure 22 : Diagramme de séquence « Proposer formation ».

13.Recevoir les notifications :

Figure 23 : Diagramme de séquence « Recevoir les notifications ».

Page | 58
14.Consulter les propositions :

Figure 24 : Diagramme de séquence « Consulter les propositions ».

15.Consulter les avis :

Figure 25 : Diagramme de séquence « Consulter les avis ».

Page | 59
III. Diagramme d’activité :
Le diagramme d'activité est un diagramme comportemental d'UML, permettant de
représenter le déclenchement d'événements en fonction des états du système et de modéliser
des comportements pouvant être parallèles. Le diagramme d'activité est également utilisé
pour décrire un flux de travail.

1. Authentifier :

Figure 26 : Diagramme d’activité « Authentifier ».

Page | 60
2. Consulter certification :

Figure 27 : Diagramme d’activité « Consulter certification ».

3. Consulter formation :

Page | 61
Figure 28 : Diagramme d’activité « Consulter formation ».

4. Gérer les certifications :

Figure 29 : Diagramme d’activité « Gérer certifications ».

5. Gérer les formations :

Page | 62
Figure 30 : Diagramme d’activité « Gérer formations ».
6. Gérer les compétences :

Figure 31 : Diagramme d’activité « Gérer compétences ».


7. Gérer les gérants :

Figure 32 : Diagramme d’activité « Gérer gérants ».

Page | 63
8. Gérer les formateurs :

Figure 33 : Diagramme d’activité « Gérer formateurs ».


9. Gérer les inscriptions :

Figure 34 : Diagramme d’activité « Gérer les inscriptions ».


10. Consulter les avis/propositions :

Page | 64
Figure 35 : Diagramme d’activité « Consulter les avis/propositions ».
11. Recevoir les notifications/Proposer formation/Donner avis :

Figure 36 : Diagramme d’activité «Recevoir les notifications/Proposer


formation/Donner avis ».

IV. Diagramme de classe d’analyse :


Le diagramme de classes est considéré comme le plus important de la modélisation orientée
objet, il est le seul obligatoire lors d’une telle modélisation. Le diagramme de classes montre
la structure interne du système. Il permet de fournir une représentation abstraite des objets du
système qui vont interagir ensemble pour réaliser les cas d’utilisation. Il s’agit d’une vue
statique car on ne tient pas compte du facteur temporel dans le comportement du système.
Les principaux éléments de cette vue statique sont les classes et leurs relations : association,
généralisation et plusieurs types de dépendances, telles que la réalisation et l’utilisation. Une
classe-association possède les caractéristiques des associations et des classes : elle se
connecte à deux ou plusieurs classes et possède également des attributs et des opérations.
Une classe-association est caractérisée par un trait discontinu entre la classe et l’association.
Une classe est une description d'un groupe d'objets partageant un ensemble commun de
propriétés (les attributs), de comportements (les opérations ou méthodes) et de relations avec
d'autres objets (les associations et les agrégations).
Une classe de conception est composée par :
 Attribut chaque attribut d’une classe est le même pour chaque instance de cette
classe.
 Méthodes elle définit le comportement d’une classe elle-même, et non le
comportement de ses instances qui peut être différent.

Page | 65
Le schéma ci-dessous représente le diagramme de classe qu’on a établi pour la
conception du système.

Figure 37 : Diagramme de classe d’analyse.

V. Base de données :
1. Modèle logique de données :
Le modèle logique des données (MLD) précise le modèle conceptuel par des choix
organisationnels. Il s’agit d’une transcription (également appelée dérivation) du MCD dans
un formalisme adapté à une implémentation ultérieure, au niveau physique, sous forme de
base de données relationnelle ou réseau, ou autres. Les choix techniques d’implémentation
(choix d’un SGBD) ne seront effectués qu’au niveau suivant.

Page | 66
Figure 38 : Modèle logique de données(MLD).
2. Modèle physique de données :
Le modèle physique des données consiste à implémenter le modèle dans le SGBD, c'est-à-
dire le traduire dans un langage de définition de données. Le langage généralement utilisé
pour ce type d'opération est le SQL, et plus spécialement le langage de définition de données
du SQL.

Page | 67
Figure 39 : Modèle physique de données(MPD).

VI. Prototype des interfaces :


Dans le domaine du web, une technique est apparue et prend une place très importante dans
le développement des applications Web, il s’agit de prototypage. Cette technique consiste
préparer quelques interfaces graphiques de l’application en utilisant un outil de conception de
prototypage afin de mesurer le degré de satisfaction du client par rapport à la compréhension
du projet par le développeur. L’interaction qui se produit entre l’utilisateur final et le
développeur, à la suite de la discussion sur ces interfaces, permet d’ajuster les besoins et de
les concevoir de manière précise et exacte. En effet les interfaces graphique font que
l’utilisateur final soit plus interactif, précis et le poussent à mieux s’exprimer quant à ses
attentes. Ci-dessus quelques interfaces réalisées avec l’outil Balsamiq Mockups [4].

Page | 68
1. Authentifier :

Figure 40 : Interface authentifié.


2. Rechercher certification :

Figure 41 : Interface rechercher certification.

Page | 69
3. Consulter certification :

Figure 42 : Interface consulter certification.


4. Gérer certification, formation et formateur :

Figure 43 : Interfaces gérer les certifications, formations, formateurs.

Page | 70
5. Consulter les formations :

Figure 44 : Interface consulter les formations.


6. Gérer avis et propositions :

Figure 45 : Interface gérer avis et propositions.

Page | 71
7. Inscrire :

Figure 46 : Interface inscrire.


8. Gérer gérant :

Figure 47 : Interface gérer gérants.

Page | 72
9. Gérer inscriptions :

Figure 48 : Interface gérer inscriptions.


10. Gérer compétences :

Figure 49 : Interface gérer les compétences.

Page | 73
Chapitre 4 : Phase de réalisation.

Introduction :
Cette phase est la dernière phase dans le cycle de développement d’un logiciel avec la
démarche UP-XP. Cette phase est souvent appelée phase d’implémentation. Les
tâches effectuées pendant cette phase ne sont pas claires, et ils dépendent fortement du
type de déploiement du logiciel.

Pour mon projet, ce chapitre sera consacré pour la présentation des langages et outils
de programmation utilisés pour la réalisation de mon application, puis je finirai par
quelques interfaces graphiques du logiciel fourni.

I. Environnement logiciel :
Nous avons énuméré au cours de cette partie les différents outils utilisés tout au long
de ce projet pour l’étude et la mise en place de notre application.

1. Eclipse :

Eclipse IDE est un environnement de développement intégré libre (le


terme Eclipse désigne également le projet correspondant, lancé par IBM)
extensible, universel et polyvalent, permettant potentiellement de créer des
projets de développement mettant en œuvre n'importe quel langage de
programmation. Eclipse IDE est principalement écrit en Java (à l'aide de la bibliothèque
graphique SWT, d'IBM), et ce langage, grâce à des bibliothèques spécifiques, est également
utilisé pour écrire des extensions.

2. MySQL :

MySQL est un système de gestion de base de données relationnelle. Une


base de données relationnelle augmente la vitesse et la flexibilité, en
stockant des données dans des tables séparées plutôt que de mettre toutes
les données dans un secteur. Ces tables sont liées par des relations définies permettant de
combiner des données de plusieurs tables sur demande. Employer une SGBDR signifie qu'il

Page | 74
est possible d'ajouter, d'accéder, et de traiter les données stockées dans votre base de
données. SQL est ‘Structured Query Language ‘ le language normalisé le plus commun pour
accéder à des bases de données.

3. Apache 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 Process1, est 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.

II. Technologies et langages utilisés :


1. Java EE (Java Enterprise Edition) [5]
Java Enterprise Edition, ou Java EE (anciennement J2EE), est
une spécification pour la technique Java de Oracle plus particulièrement
destinée aux applications d’entreprise. Ces applications sont
considérées dans une approche multi-niveaux1. Dans ce but, toute
implémentation de cette spécification contient un ensemble d’extensions au Framework Java
standard (JSE, Java Standard Edition) afin de faciliter notamment la création d’applications
réparties.

2. HTML
HTML (Hyper Text Markup Language / langage hypertexte) est le
langage dans lequel sont écrites les pages du web. Un site web est
constitué d’un ou plusieurs documents HTML, appelées aussi pages. Pour
se déplacer d’une page à l’autre dans nos modules on passe par
l’intermédiaire d'hyperliens. Pour ajouter des objets graphiques on utilise
le HTML d’autre part pour tester des pages web html en local, il suffit d'ouvrir le fichier dans

un navigateur. Le HTML n’est pas un langage de programmation comme le C++. Les

langages dynamiques comme PHP et JavaScript vont d' ailleurs générer des pages HTML
statiques.

Page | 75
3. JavaScript [6]

JavaScript est un langage de programmation de scripts principalement


utilisé dans les pages web interactives. C'est un langage orienté objets à
prototype, c'est-à-dire que les bases du langage et ses principales interfaces
sont fournies par des objets qui ne sont pas des instances de classes, mais
qui sont chacun équipés de constructeurs permettant de générer leurs propriétés, et
notamment une propriété de prototypage qui permet d'en générer des objets héritiers
personnalisés.

Le langage a été créé en 1995 par Brendan Eich pour le compte de Netscape
Communications Corporation. Le langage actuellement à la version 1.7 est une
implémentation du standard ECMA-262. La version 1.8 est en développement et intégrera
des éléments du langage Python. La version 2.0 du langage est prévue pour intégrer la 4e
version du standard ECMA.

4. JQuery [7]
C'est une bibliothèque (sous licence GPL) de fonctions JavaScript
permettant au programmeur de s'affranchir des tâches "bas niveau"
répétitives et qui fonctionnent sur les navigateurs les plus courants. Son
installation dans chaque page web doit être effectuée en premier par la
directive : <script type="text/javascript" src="jQuery-1.4.1.js"></script>.

5. CSS

CSS (Cascading Style Sheets) comme par exemple la couleur du fond de


la page ou le type de police même document des caractéristiques de mise
forme associées à des groupes d’éléments. Il suffit de définir par un nom
un ensemble de définitions et de caractéristiques de mise en forme, et
elles permettent notamment:
 D’obtenir une présentation homogène sur tout un site en faisant appel sur toutes les pages
à une même définition de style.
 De permettre le changement de l’aspect d’un site complet entier par la seule modification
de quelques lignes

Page | 76
 Une plus grande lisibilité du HTML, car les styles sont définis à part. Des chargements de
pages plus rapides, pour les même raison que précédemment.

6. Ajax
Ajax (Asynchronous JavaScript and XML) permet de
construire des applications Web et des sites web dynamiques
interactifs sur le poste client en se servant de différentes
technologies ajoutées aux navigateurs web.
Ajax combine JavaScript, les CSS, JSON, XML, le DOM et
le XMLHttpRequest afin d'améliorer maniabilité et confort d'utilisation des applications
internet riches.

III. Développement :
1. Choix de la plateforme Java EE :
Pour le développement de l’application, nous avons utilisé la plateforme Java EE (Java
Edition Entreprise).
Parmi les avantages de la plateforme Java EE, on peut citer :
 Technologie sans frais : Java (sur le quel est basé Java EE) est une technologie Open
Source, les outils de développement JEE sont disponibles gratuitement.
 Maintenabilité : Les applications Java EE sont plus faciles à entretenir, dans la
plupart des cas, ils sont conçus en plusieurs couches. Il est facile d'ajouter de
nouvelles fonctionnalités tierces pour les applications Java EE en raison de sa fonction
d'évolutivité.
 Indépendance : Les applications développées avec Java EE peuvent être déployées
sur la plupart des matériels disponibles. Elles offrent une flexibilité de matériel à
l'utilisateur final. Ainsi, l’utilisateur peut déployer et exécuter des applications Java
EE sur le système d'exploitation et le matériel de son choix.

2. Choix de développement
Pour le développement, nous avons appliqué le modèle Model-View-Controller (MVC).
Ce paradigme divise l’IHM (Interface Homme Machine) en un modèle (M pour modèle de
données) une vue (V pour la présentation, l’interface utilisateur) et un contrôleur (C pour la
logique de contrôle, et la gestion des événements / synchronisation), chacun ayant un rôle
précis dans l'interface.

Page | 77
L'organisation globale d'une interface graphique est souvent délicate. L'architecture MVC ne
résout pas tous les problèmes. Elle fournit souvent une première approche qui peut ensuite
être adaptée. Elle offre aussi un cadre pour structurer une application.
Ce patron d'architecture impose la séparation entre les données, la présentation et les
traitements, ce qui donne trois parties fondamentales dans l'application finale : le modèle, la
vue et le contrôleur.

Figure 50 : Modèle MVC (Modèle – Vue – Contrôleur).


 Le modèle :

Le modèle représente le comportement de l'application : traitements des données, interactions


avec la base de données, etc. Il décrit ou contient les données manipulées par l'application. Il
assure la gestion de ces données et garantit leur intégrité. Dans le cas typique d'une base de
données, c'est le modèle qui la contient. Le modèle offre des méthodes pour mettre à jour ces
données (insertion, suppression, changement de valeur). Il offre aussi des méthodes pour
récupérer ces données. Les résultats renvoyés par le modèle sont dénués de toute
présentation.
 La vue

La vue correspond à l'interface avec laquelle l'utilisateur interagit. Sa première tâche est de
présenter les résultats renvoyés par le modèle. Sa seconde tâche est de recevoir toutes les
actions de l'utilisateur (clic de souris, sélection d'une entrée, boutons, etc.). Ces différents

Page | 78
événements sont envoyés au contrôleur. La vue n'effectue aucun traitement, elle se contente
d'afficher les résultats des traitements effectués par le modèle et d'interagir avec l'utilisateur.
 Le contrôleur

Le contrôleur prend en charge la gestion des événements de synchronisation pour mettre à


jour la vue ou le modèle et les synchroniser. Il reçoit tous les événements de l'utilisateur et
enclenche les actions à effectuer. Si une action nécessite un changement des données, le
contrôleur demande la modification des données au modèle, et ce dernier notifie la vue que
les données ont changée pour qu'elle les mette à jour.

IV. Les interfaces de l’application :


1. Authentifier :
Cette interface permet au gérant d’accéder au leurs profil pour la gestion.

Figure 51 : Page d’authentification.


2. Rechercher certification :
Cette interface permet au client de rechercher une certification soit par son code, son
domaine, sa technologie ou bien un mot qui signifie la certification.

Page | 79
Figure 52 : Page de recherche.
3. Consulter formations :
Cette interface permet au client de consulter les formations.

Figure 53 : Page consulter les formations.

Page | 80
4. Consulter certification :
Après la recherche l’interface qui va afficher est la page de consultation de la certification.

Figure 54 : Page consulter certification.


5. Consulter les avis :
Cette page permet au gérant de consulter les avis et les supprimer (si aucun avis trouvés un
message va afficher).

Figure 55 : Page consulter les avis.

Page | 81
6. Gérer les certifications :
Cette page permet au gérant de gérer les certifications (ajouter, modifier, supprimer).

Figure 56 : Page gérer les certifications.


7. Gérer les formations :
Cette page permet au gérant de gérer les formations (ajouter, modifier, supprimer).

Figure 57 : Page gérer les formations.


8. Inscrire :
Cette page permet au client d’inscrire à une certification, formation ou bien pour proposer
une formation.

Page | 82
Figure 58 : Page d’inscription.
9. Gérer les formateurs :
Cette page permet au gérant de gérer les formateurs (ajouter, modifier, supprimer).

Figure 59 : Page gérer les formateurs.

Page | 83
10.Gérer les compétences :
Cette page permet au gérant de gérer les compétences (ajouter, modifier, supprimer), le
tableau montre après la sélection d’une certification.

Figure 60 : Page gérer les compétences.


11.Gérer les gérants :
Cette page permet à l’administrateur de gérer les gérants (ajouter, modifier, supprimer).

Figure 61 : Page gérer les gérants.

Page | 84
12.Gérer les inscriptions :
Cette page permet au gérant de valider les inscriptions des clients.

Figure 62 : Page gérer les inscriptions.


13.Consulter les propositions :
Cette page permet au gérant de consulter les propositions et les supprimer.

Figure 63 : Page Consulter les propositions.

Page | 85
Conclusion générale.
Dans le cadre de mon projet de fin d’étude, j’ai conçu de développer une application de
gestion des certifications et formations pour la société Pluralis Consulting. Le présent
manuscrit détaille toutes les étapes par lesquelles je suis passée pour arriver au résultat
attendu. J’ai essayé tout au long de mon travail de construire une application concrète en
utilisant la démarche UP-XP.
Ce projet m’a donné l’opportunité de s’initier à la vie professionnelle dans un milieu réel et
avoir un début d’expérience significatif, et il m’ a appris comment réussir de bonnes relations
pour assurer un travail de groupe, comment compter sur soi pour résoudre les problèmes au
cas où ils se présentent, comment être méticuleuses dans notre travail, comment être
attentives aux indications de mes supérieurs, comment être bien organisées pour accomplir
dans les meilleurs délais et meilleures conditions les tâches qui m’ont été confié.
Au cours de la réalisation de mon projet, j’ai été astreinte par quelques limites notamment, la
contrainte du temps qui était relativement un obstacle devant l’ajout de certaines autres
fonctionnalités. Cependant, il était une occasion pour mettre en évidence et déployer sur le
plan pratique mes connaissances en informatique.
Le projet peut être amélioré, en lui ajoutant quelques modules ou interfaces pour mieux
l’adopter aux besoins de l’utilisateur et pour qu’il soit toujours fiable et au niveau des progrès
atteint par la société.

Page | 86
Bibliographie et Webographie:
[1]  http://www.ganttproject.biz/download.php
[2]  « Guide de la Modélisation en UML » [Taoufiq GADI, Omar EL BEGGAR, Brahim
BOUSETTA, 2013].
[3]  http://www.clubic.com/lancer-le-telechargement-182596-0-poweramc.html
[4]  https://balsamiq.com/download/
[5]  « Les Cahiers du Programmeur JEE 5, 2éme édition » [Jérôme Molière ÉDITIONS
EYROLLES, 2007]
[6]  « JavaScript Des fondamentaux aux concepts avancés » [Emmanuel GUTIERREZ
EDITIONS ENI, 2008]
[7]  http://openclassrooms.com/courses/simplifiez-vos-developpements-javascript-avec-
jquery

Page | 87

Vous aimerez peut-être aussi