Académique Documents
Professionnel Documents
Culture Documents
Sommaire
Introduction ................................................................................
1. Identification des acteurs ..........................................................
2. Identification des besoins .........................................................
3. Diagramme de cas d'utilisation générale… ..............................
4. Diagrammes de cas d'utilisation et descriptions textuelles.
5. Diagrammes de séquence système ...........................................
Conclusion… ................................................................................
1
Introduction :
Après la présentation du cadre général de notre projet, ce chapitre sera consacré à la
spécification et d’analyse des besoins. Nous allons énumérer les besoins à satisfaire et qui
représentent les fonctionnalités à réaliser dans notre application.
La phase initiale du développement constitue l’identification des acteurs et des besoins de notre
application. Nous distinguerons les besoins fonctionnels qui représentent les fonctionnalités attendues
de notre application et les besoins non fonctionnels pour éviter le développement d’une application
non satisfaisante, de même trouver un accord commun entre les spécialistes et les utilisateurs pour
réussir le projet.
Les acteurs sont des entités externes qui interagissent avec le système, comme une
personne humaine ou un robot. Une même personne (ou robot, ...) peut jouer le rôle de plusieurs
acteurs pour un système, c'est pourquoi les acteurs devraient être décrits par leur rôle, ce rôle
décrit les besoins et les capacités de l'acteur. Un acteur agit sur le système (accès de
lecture/écriture). L'activité du système a pour objectif de satisfaire les besoins de l'acteur. Les
acteurs sont représentés par un pictogramme humanoïde sous-titré par le nom de l'acteur. Les
acteurs sont classifiés en 3 catégories : les acteurs principaux (ex: visiteur, candidat, etc), les
acteurs secondaires (ex: administrateur, opérateur de maintenance, etc), les autres systèmes
(serveur, etc).
Client : Toute personne qui a accès à l'application dont il a la possibilité de s'inscrire,
recevoir les notifications des nouvelles offres, consulter les actualités, tester ses
compétences et postuler pour les offres qui l’intéresse.
Administrateur : Cet acteur a l'accès à toutes les fonctionnalités de l'application tel
que la gestion des responsables, la gestion des départements, la gestion des offres, la
gestion des actualités et la Consultation des candidatures.
2
2. Identification des besoins :
2.1. Besoins Fonctionnels
On consacrera cette partie à la description des exigences fonctionnelles des différents acteurs
de l’application.
Candidat :
- Postuler aux offres proposées : le candidat peut postuler pour l’offre qui lui convient de
mieux après lecture des informations associées au poste.
- Tests de compétences : pour valider sa candidature à l’offre le client doit passer un test
sous forme de quiz relatif à la nature de chaque offre.
- Accès aux News : le candidat peut lire les dernières actualités relatives à ETC.
Administrateur :
- Gestion des actualités : ajouter des nouvelles actualités avec le titre, la description et
l'image correspondante à chaque nouveauté. Il a le droit également à modifier ou
supprimer une actualité.
3
- Consultation des candidats : l'administrateur peut consulter la liste des clients déjà
inscris tout en pouvant mettre à jour, modifier et supprimer les profils.
- Gestion des candidatures : l’administrateur peut consulter les candidatures, voir les
résultats des tests de compétences et ainsi approuver ou refuser la demande ; en cas
d’acceptation de candidature planifier une date d’entretien.
- Gestion des tests de compétences : l'administrateur peut créer, modifier et
supprimer les tests (créer des questions et des réponses dont une question peut avoir un
nombre infini de réponses).
4
3. Diagramme de cas d'utilisation générale :
Chaque usage effectué par les acteurs est représenté par un cas d’utilisation. Chacun de
ces cas représente une fonctionnalité qui a pour objectif produire le résultat attendu. Ainsi, le
diagramme de cas d’utilisation décrit l’interaction entre le système et l’acteur en subvenant aux
besoins de l’utilisateur et tout ce que doit faire le système pour l’acteur. Ci-dessous, nous allons
présenter le diagramme de cas d’utilisation générale.
5
4. Diagrammes de cas d'utilisation et descriptions textuelles :
4.1 : Diagrammes de cas d'utilisation détaillés de l'acteur Client :
Diagramme de cas d'utilisation « Postuler Offres » :
- Description textuelle :
6
4.2 : Diagrammes de cas d'utilisations détaillés de l’administrateur :
Diagramme de cas d'utilisation « Gérer Candidats » :
- Description textuelle :
Tableau : Diagramme de cas d'utilisation "Gérer Candidats"
7
Diagramme de cas d'utilisation « Gérer Candidatures » :
- Description textuelle :
Tableau : Diagramme de cas d'utilisation "Gérer Candidatures"
8
Diagramme de cas d'utilisation « Gérer Actualités » :
- Description textuelle :
9
5. Diagrammes de séquence système :
Lors de cette étape, nous décrivons le comportement dynamique du système ainsi que les
différentes interactions entre les acteurs et le système de notre projet. En effet, nous allons
illustrer les principaux scénarios possibles du système au moyen de diagrammes de séquence qui
mettent en évidence l’ensemble ordonné de messages échangés par les objets. Les diagrammes
de séquences sont la représentation graphique des interactions entre les acteurs et le système selon
un ordre chronologique relatif à la formulation UML.
10
Diagramme de séquence « Postuler à une offre »
11
Diagramme de séquence « Consulter actualités »
Le diagramme de séquence ci-dessous modélise le processus consultation des actualités. Il
représente les interactions entre le prospect et le système. Depuis la page d'accueil le prospect
aura la possibilité de choisir la rubrique actualités.
12
5.2 : Diagrammes de séquence système pour l'acteur Administrateur :
Diagramme de séquence « Ajouter une offre »
Une page d'ajout s'affiche, l’administrateur ajoute une nouvelle offre en remplissant les
données de cette dernière avec une description textuelle, la lier à un département spécifique, la lier à
une série de tests de compétences et à une date d’expiration.
13
Diagramme de séquence « Modifier un département »
14
Diagramme de séquence « Refuser une candidature »
15
Conclusion :
Dans ce chapitre, nous avons approfondi le niveau de vision du projet et nous a permis de bien
comprendre les tâches à réaliser. Entre autre, on a pu prévoir les problèmes à rencontrer et essayer
de chercher des solutions pour les surmonter.
Nous avons essayé de mettre en valeur les besoins fonctionnels et techniques du projet et les
différents scénarios d'utilisation de l’application.
16
Chapitre 3 : Conception
Sommaire
Introduction ...................................................................... 29
I. Etude technique… .......................................................... 29
II. Architecture mise en place ........................................... 30
III. Diagramme de déploiement ........................................ 32
IV. Diagramme de classe… .............................................. 33
V . Diagramme de séquence objet..................................... 34
VI. Diagramme d’activité… .............................................. 37
Conclusion… ..................................................................... 38
17
Introduction :
Dans ce chapitre, nous allons présenter la phase de conception de notre projet. Cette partie
a pour rôle de réaliser ce qui a été analysé en le concevant dans un premier lieu, le mettant en
œuvre par la suite et le déployant vers la fin.
Tout d'abord, pour rapprochent encore plus de la réalité physique, nous commençons par
la présentation de diagramme de déploiement. Ensuite, on s'intéresse à la modélisation
dynamique qui traite l'interaction entre les différents objets à travers les diagrammes de séquences
objet. Puis nous présenterons le diagramme de classe objet. Enfin, nous exposons le diagramme
d'activité afin d'identifier le comportement de notre système.
I. Etude technique :
L’architecture de notre application est de type client-serveur où un ordinateur interagit
avec d’autres sur internet ; alors l’architecture la plus adaptée et adoptée pour notre projet est
celle composée de 3 parties :
Une interface web : c'est l'application à travers laquelle l'administrateur ou/et les
candidats pourrons accéder à leurs fonctionnalités.
Un serveur web : C'est le serveur HTTP qui englobe toutes les fichier php, HTML et
Type script . Il assure la communication entre les différents composants de notre
projet tel que l'interface web et la base de donnée Mysql.
Un serveur base de donnée SGBD : On utilise le logiciel MySql, qui contient toutes nos
tables de notre projet, il permet de lire, écrire, modifier, trier, transformer ou même
imprimer les données stockées.
Architecture du projet
18
II. Architecture mise en place :
1. Architecture de la solution :
Notre application est composée de trois couches « 3 tiers ». Il s'agit d'une structure logique
d'architecture applicative qui vise à modéliser une application comme un empilage de trois
couches logicielles (étages, niveaux, tiers…).
L'accès aux données persistantes : correspondant aux données qui sont destinées à être
conservées momentanément ou définitivement.
Architecture de l’application
19
1.1 : Couche présentation des données :
Elle correspond à la partie visuelle de l’application qui est en interaction directe avec les
utilisateurs. On parle d'interface homme machine. Elle peut être réalisée par une application
graphique ou textuelle. Elle est composée est du code HTML5, TypeScript et CSS3.
Appelée aussi la couche logique, elle correspond à la partie fonctionnelle de l'application, celle
qui implémente la « logique », et qui décrit les manipulations que l'application traite sur les
données en fonction des requêtes des utilisateurs, réalisées à partir de la couche présentation.
C’est la partie gérant l'accès aux données du système et leurs persistances. Ces données peuvent
être propres au système, ou gérées par un autre système.
2. Architecture MVC :
Le patron de conception Modèle-Vue-Contrôleur est un patron de conception architectural , qui
organise l'interface utilisateur d'une application en trois composants :
Un contrôleur, dont le rôle est de gérer les évènements et la synchronisation entre la Vue
et le Modèle
20
III. Diagramme de déploiement :
Le diagramme de déploiement permet d'illustrer l'architecture physique du système et de
montrer la relation entre ses différentes composantes. Voici le diagramme de déploiement de
notre projet.
Diagramme de déploiement
21
IV. Diagramme de classe :
Le diagramme de classes est le plus important de la modélisation orientée objet, il est le
seul obligatoire lors d'une telle modélisation et permet de monter la structure interne. Il fournit
une représentation abstraite des objets et aspects temporels et dynamiques du système qui vont
interagir pour réaliser les cas d'utilisation.
Une classe est un ensemble de fonctions et de données (attributs) qui sont interreliées par un
champ sémantique. Les classes sont utilisées dans la programmation orientée objet. Elles
permettent de modéliser un programme et ainsi de découper une tâche complexe en plusieurs
petits travaux simples.
Diagramme de classe
22
Ce diagramme présente les différentes classes de notre projet qu'on va utiliser. Chaque
classe est composée d'un ensemble de fonctions et de données (attributs) qui sont liées ensemble
par un champ sémantique.
Les classes peuvent être liées entre elles grâce au mécanisme d'héritage qui permet de mettre en
évidence des relations de parenté. D'autres relations sont possibles entre des classes, chacune de
ces relations est représentée par un arc spécifique dans le diagramme de classes.
23
Le candidat accède à l’application. Pour accéder à toutes les fonctionnalités offertes, il
doit s'enregistrer. Il demande le formulaire d'enregistrement et saisie ses données personnelles
pour pouvoir les utiliser par la suite dans la phase d'authentification.
Une fois le formulaire est rempli, le système vérifie ses données. Si elles sont valides,
automatiquement une requête d'ajout d'un nouveau client s'exécute, et ce dernier sera sauvegardé
dans la base de données et la page d'authentification s'affiche.
Diagramme de séquence d’objet « Postuler »
24
Après authentification et affichage des détails de l’offre choisie, le candidat commence
par cliquer sur « postuler » puis on lui demande à vérifier son profil pour effectuer des mises à
jour s’il a obtenu des nouvelles compétences ou que son profil est incomplet ; puis confirme pour
passer à l’étape suivante de passer le test de compétence relative à l’offre qui correspond à des
questions avec des choix aléatoires et termine par valider.
Diagramme de séquence d'objet pour l'acteur Administrateur :
Diagramme de séquence d’objet « Valider Candidature »
Toute candidature à une offre fait l’objet d’une étude du recruteur/administrateur pour
qualifier le candidat et ainsi procéder à l’étape d’entretien physique par rendez-vous selon
planning.
25
VI. Diagramme d'activité :
Les diagrammes d'activité permettent de mettre l'emphase sur les traitements. Ils sont donc
adéquats à la représentation du cheminement de flots de contrôle et de flots de données. Ils
permettent ainsi de modéliser le procédé d'une méthode ou l’enchainement d'un cas d'utilisation.
Diagramme d'activité Statistiques :
Pour accéder au différents statistiques, l’administrateur est appelé à saisir son login et son
mot de passe. Si les identifiants ne sont pas validés, l’administrateur est appelé à saisir des
identifiants valides. Sinon, il accède à l’interface d’accueil de l’application. Par la suite, il doit
choisir le menu « statistiques ». Le système vérifie la disponibilité de données. Si les données ne
sont pas disponibles, un message d’erreur s’affiche pour indiquer la non disponibilité des
données. Sinon, le rapport s’affiche. L’administrateur peut, de ce fait, le consulter et il a même
la possibilité de l’exporter sous différents formats.
26
Diagramme d'activité Supprimer une offre :
Conclusion :
Dans ce chapitre, nous avons approfondi le niveau de vision du projet. Nous avons terminé
la phase de conception. Dans le chapitre suivant, nous allons passer à la phase réalisation nous
présenterons les différentes technologies que nous avons utilisé. Aussi nous mettrons quelques
captures écrans des interfaces graphiques.
27
Chapitre 4 : Réalisation
Sommaire
Introduction .........................................................................
I. Environnement de travail ...................................................
II. Processus de développement ...........................................
III. Scénarios et tests ............................................................
28
58