Vous êtes sur la page 1sur 54

UNIVERSIT MOHAMMED V de Rabat

Facult des Sciences

Dpartement dInformatique
Filire Licence fondamentale
en Sciences Mathmatiques et Informatique

PROJET DE FIN DTUDES


intitul :

Conception et ralisation dun


Systme dinformation des tudiants
du dpartement informatique
Gestion des inscriptions aux projets tutors
Prsent par : Ilyas Chaoua , Mohammed Amine Achalhi
soutenu le 4 Juin 2015 devant le Jury
M. El Mamoun SOUIDI
M. Oussama Mohamed REDA
M. El Amrani Youns

Professeur la Facult des Sciences - Rabat Prsident


Professeur la Facult des Sciences - Rabat Encadrant
Professeur la Facult des Sciences - Rabat Examinateur

Anne universitaire 2014-2015

Mesurer la progression du dveloppement dun logiciel laune de ses lignes de code


revient mesurer la progression de la construction dun avion laune de son poids.
Bill Gates.

Remerciements
la remise du prsent rapport, nous tenons non seulement par ncessit, mais par respect
A
et gratitude dexprimer nos vifs et sincres remerciements Mr OUSSAMA REDA
notre encadrant de nous avoir encadr tout au long de ce projet
Nous adressons nos fidles remerciements nos honorables membres du jury davoir
accept de consacrer leur prcieux temps lvaluation de ce travail. Ainsi que tout le corps
professoral de la facult de sciences pour leurs qualits denseignement.
En fin on remercie tous ceux qui ont particip de prs ou de loin llaboration de ce
projet.

ii

Rsum :
Ce projet vise dvelopper un systme dinformation des tudiants du dpartement
informatique. Mais, pour aboutir cette fin, nous allons tout dabord effectu une tude
conceptuelle de lapplication. Cette dernire nous permettra, en effet, daccder facilement
la ralisation de lapplication en organisant les ides et en structurant le processus de
codage suivant des diagrammes. Lapplication a t implment par diverses technologies
en se basant sur ltude conceptuelle. Le systme de gestion de base de donnes choisi
fut MySQL. Lapplication a t implment avec Laravel5 et Boostrap3, qui sont des
frameworks permettant de crer rapidement et efficacement un site web complexe et flexible.
Mots cls : Systme dinformation des tudiants, Laravel5, UML, Boostrap3, MySQL,
Ajax
Abstract :
Today, the major concern of universities is the difficulty of communication between administration, student and teacher which affects the quality of education.This graduation project
aims to design and implement an information system for the student of mathematics and
computer science department of the faculty of sciences Rabat.We tried all along our work
to build our increment by increment application using the Scrum methodology and based
on the Gantt chart that form good software engineering practices.
The conceptual study was made by Unified Modeling Language to provide a standard way
to visualize the design of a system.The use case diagram that describes the functionality of
the system, the class diagram that describes the types of objects that make up a system, the
sequence diagrams to represent the interactions between objects identifying the exchanges
chronology.
A detailed study of technologies, frameworks and applications architectures was done to
achieve a better solution.The database management system chosen was MySQL. And then
we implemented the application using Laravel5, which is a PHP framework that allows to
quickly and efficiently create a complex website based in web server, then Boostrap3 to
build web pages on the client side.
Keywords : Students information system, Laravel5, UML, Boostrap3, MySQL, Ajax

iii

iv

Table des matires


1 Introduction gnrale

2 Cahier de charge et spcifications des besoins


2.1 Prsentation du projet : . . . . . . . . . . . . . . . . . . . . .
2.1.1 Objectif : . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.2 Cible et caractristique : . . . . . . . . . . . . . . . . .
2.1.3 Description du contenu : . . . . . . . . . . . . . . . . .
2.1.4 tudes de lexistant : . . . . . . . . . . . . . . . . . . .
2.1.5 Spcification des besoins fonctionnels : . . . . . . . . .
2.1.6 Spcification des besoins non fonctionnels : . . . . . . .
2.1.7 Mthodes de gestion de projet : SCRUM et Diagramme
2.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
de Gannt
. . . . . .

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

5
6
6
6
6
6
6
8
8
12

3 Conception fonctionnelle
3.1 Introduction . . . . . . . . . . . . . . . . . . . .
3.2 Vue fonctionnelle du systme . . . . . . . . . . .
3.2.1 Acteurs . . . . . . . . . . . . . . . . . .
3.2.2 Diagramme de cas dutilisation . . . . .
3.2.3 Description textuelle des cas dutilisation
3.3 Vue statique du systme : Diagramme de classe
3.4 Vue dynamique du systme . . . . . . . . . . .
3.4.1 Diagrammes de squences . . . . . . . .
3.5 Modlisation conceptuelle et logique des donnes
3.5.1 Dfinition . . . . . . . . . . . . . . . . .
3.5.2 Modle Conceptuel des donnes : . . . .
3.5.3 Modle logique des donnes . . . . . . .
3.6 Conclusion . . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

13
14
14
14
14
16
19
20
20
24
24
24
24
27

4 Conception technique
4.1 Introduction . . . . . . . . . .
4.2 Environnement et technologies
4.2.1 Technologies utilises .
4.3 Framework . . . . . . . . . .
4.3.1 Dfinition . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

29
29
29
29
30
30

. . . . . .
logicielles
. . . . . .
. . . . . .
. . . . . .
v

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

31
31
32
34
35

5 Ralisation
5.1 Inroduction . . . . . . . . . . . . . . . . . .
5.2 Cas : Sinscrire au systme. . . . . . . . . .
5.3 Cas : Suivre des cours. . . . . . . . . . . . .
5.4 Cas : Visualiser le Graphe de notes. . . . .
5.5 Cas : Visualiser les Statistiques des absences
5.6 Cas : Tlcharger des fichiers . . . . . . . . .
5.7 Cas : Demander des services . . . . . . . . .
5.8 Cas : Sinscrire au module de PFE . . . . .
5.9 Cas : Visualiser les emplois du temps. . . .
5.10 Cas : Affecter des PFE. . . . . . . . . . . .
5.11 Cas : Ajouter des fichiers. . . . . . . . . . .
5.12 Conclusion . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

37
38
38
38
39
39
40
40
41
41
42
42
42

4.4
4.5
4.6

4.3.2 Exemple de Framework


4.3.3 Architecture logicielle
Choix technologiques . . . . .
Solution Retenue . . . . . . .
Conclusion . . . . . . . . . . .

web :
. . . .
. . . .
. . . .
. . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

6 Conclusion et perspectives

43

Bibliographie

45

vi

Table des figures


2.1.1 Mthode de dveloppement Agile : Scrum . . . . . . . . . . . . . . . . . . .
2.1.2 La listes des taches raliser . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.3 Diagramme de Gantt correspond notre projet . . . . . . . . . . . . . . . .

9
10
11

3.2.1 Diagramme de cas dutilisation . . . . . . . . . . . . . . . .


3.3.1 Diagramme de classe . . . . . . . . . . . . . . . . . . . . . .
3.4.1 Diagramme de squence du cas "Sinscrire" . . . . . .
3.4.2 Diagramme de squence du cas "Demander service".
3.4.3 Diagramme de squence du cas "Ajouter Cour". . . .
3.4.4 Diagramme de squence du cas "Sinscrire en module
3.5.1 Modle conceptuelle de la base de donnes . . . . . .

.
.
.
.
.
.
.

15
19
20
21
22
23
25

4.4.1 Statistiques de popularit Framework PHP fin 2013 . . . . . . . . . . . . . .


4.4.2 Template AdminLTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.1 Figure Fonctionnement de lapplication. . . . . . . . . . . . . . . . . . . . .

33
34
35

5.2.1 Page
5.3.1 Page
5.4.1 Page
5.5.1 Page
5.6.1 Page
5.7.1 Page
5.8.1 Page
5.9.1 Page
5.10.1Page
5.11.1Page

38
38
39
39
40
40
41
41
42
42

dinscription dans le systme. . . . . . . . . . .


daccueil. . . . . . . . . . . . . . . . . . . . . .
des notes par semestre de ltudiant. . . . . . .
dabsences par module de ltudiant. . . . . . .
des fichiers. . . . . . . . . . . . . . . . . . . . .
des services. . . . . . . . . . . . . . . . . . . . .
dinscription au module de PFE. . . . . . . . .
des emplois du temps. . . . . . . . . . . . . . .
daffectation par ladministrateur. . . . . . . . .
dimpression des demandes par ladministrateur.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
PFE".
. . . . .

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

Chapitre 1

Introduction gnrale
Dans le cadre de notre formation en licences fondamentales au sein de la facult de
sciences de Rabat, ltablissement cherche faire voluer les comptences de ses tudiants
par divers moyens tels que les travaux pratiques , les projets et particulirement les projets
tutors, pour cela, nous avons t amen raliser un projet de fin dtudes qui a pour thme
" Conception et ralisation dun Systme dinformations pour les tudiants du dpartement
informatique " afin de concrtiser nos acquis durant notre formation.
Le dpartement cherche amliorer la gestion et la communication avec ses tudiants ,en
mettant en place un nouveau systme dinformation pour les tudiants. Ce dernier permettra
de collecter, stocker, traiter et diffuser de linformation concernant des tudiants. Il a pour
but dchanger des informations entre les tudiants et le corps professoral.
Une prsence dun tels systme est indispensable pour le dpartement afin de faciliter la
communication avec les tudiants, optimiser le processus de gestion, la rduction de certains
couts et lamlioration de certains services

Chapitre 2

Cahier de charge et spcifications des


besoins

2.1
2.1.1

Prsentation du projet :
Objectif :

Lobjectif principal de ce projet est de dvelopper une application web qui permet de
grer le systme dinformation des tudiants du dpartement informatique. Pour aboutir
cette fin, nous allons tout dabord effectu une tude conceptuelle de lapplication. Cette
dernire nous permettra, en effet, daccder facilement la ralisation de lapplication en
organisant les ides et en structurant le processus de codage suivant des diagrammes.
2.1.2

Cible et caractristique :

Description de la cible : tudiants (SMI), administrateurs, enseignants.


Le projet vise principalement les tudiants du dpartement informatique.
Cible principale et description : les tudiants du dpartement.
Cible secondaire et description : les enseignants et les administrateurs.
2.1.3

Description du contenu :

La premire page cest une page dauthentification qui contiendra un formulaire dauthentification pour les tudiants dj inscris et un onglet registre qui redirige linternaute vers
un formulaire pour linscription, la vrification sera faite par la suite, aprs lauthentification
ltudiant et redirig vers la page principale, elle contiendra par ailleurs un sidebar travers
lequel on peut effectuer les fonctionnalits que propose le systme.
2.1.4

tudes de lexistant :

Le systme existant, sappuie sur la vrification manuelle des donnes, ce qui ventuellement entraine plusieurs anomalies :
Difficult daccs aux donnes ;
Difficult de la communication entre administration et tudiant ;
Gaspillage de temps ;
Limitation des services estudiantins ;
Absence dergonomie.
2.1.5

Spcification des besoins fonctionnels :

Lapplication que nous allons dvelopper devra regrouper toutes les fonctionnalits ncessaires pour :
Sauthentifier.
Sinscrire.
Visualiser des cours.
Rechercher des cours.
Visualiser les statistiques des notes.
Visualiser les statistiques des absences.
Ajouter des cours.
6

Visualiser les emplois du temps.


Demander un service.
Sinscrire dans un pfe.
Sauthentifier :

Lutilisateur devra pouvoir sauthentifier travers un email et un mot de passe. Le systme vrifie lauthentification et le type dinternaute (tudiant, enseignant, administrateur
ou un simple internaute).
Sinscrire :

Chaque utilisateur pourra effectuer une inscription en saisissant ses informations personnelles et en choisissant son type (tudiant / Enseignant), afin de permettre au systme de
vrifier son existences au sein du dpartement.
Visualiser des cours :

Chaque tudiant pourra consulter la liste des cours tout moment et les tlcharger.
Rechercher cours par mot-cl :

Ltudiant devra pouvoir trouver le plus rapidement possible un cours recherch par un
mot cl qui lui est associ.
Visualiser les statistiques des notes :

Ltudiant devra pouvoir visualiser les notes de chaque module selon les semestres.
Visualiser les statistiques des absences :

Ltudiant devra pouvoir visualiser le pourcentage de ses absences dans chaque module.
Ajouter des cours :

Ladministrateur devra ajouter un cours et lui associer un mot cl. Ce dernier sera automatiquement affich chez ltudiant.
Visualiser les emplois du temps :

Chaque internaute pourra visualiser et tlcharger lensemble des emplois du temps du


dpartement informatique.
7

Demander un service :

Chaque tudiant devra pouvoir effectuer une demande dun service auprs de ladministration, cette demande sera traite par ladministrateur qui recevra la liste des tudiants
ayant demand un service.
Sinscrire dans un pfe :

Chaque tudiant devra remplir une fiche contenant les informations sur les deux binmes
dun pfe. Un administrateur sera charg daffecter un encadrant de pfe chaque binme.
2.1.6

Spcification des besoins non fonctionnels :

Ce sont des exigences qui ne concernent pas spcifiquement le comportement du systme


mais plutt ils identifient des contraintes internes et externes du systme. Les principaux
besoins non fonctionnels de notre application sont les suivants :
Scurit : Les comptes des utilisateurs sont scuriss par mot de passe (longueur, code
systme, expiration de sessions, etc )
Fiabilit : Bon fonctionnement de lapplication sans dtection de dfaillance.
Performance : Lapplication rpond toutes les exigences des internautes dune manire
optimale.
Convivialit : Un design graphique clair et simple pour faciliter lutilisation lutilisateur.
Portabilit : Lapplication est multiplateforme. Elle fonctionne sur tout les systmes
dexploitation et tout type de terminal.
2.1.7

Mthodes de gestion de projet : SCRUM et Diagramme de Gannt

Scrum

Scrum est un cadre de travail pour le dveloppement et la maintenance de produits


complexes et changeants, tout en livrant de manire productive et crative des produits de
la plus grande valeur possible. Cette dfinition se compose des rles, des vnements et des
artfacts de Scrum, ainsi que des rgles qui les lient. La version originale du Guide Scrum
(Scrum Guide) est l ?uvre de Ken Schwaber et Jeff Sutherland, les crateurs de Scrum. Le
principe de base de Scrum est le suivant :
Premirement, spcifier le maximum des fonctionnalits raliser pour former le Backlog du produit.
En second lieu dfinir les priorits des fonctionnalits et choisir lesquelles seront ralises
dans chaque itration.
Par la suite focaliser lquipe de faon itrative sur lensemble de fonctionnalits
raliser, dans des itrations appeles Sprints
Un Sprint aboutit toujours sur la livraison dun produit partiel fonctionnel appel
incrment.
Sil est difficile de dfinir la nature de Scrum, sa mise en place est beaucoup plus simple et
peut tre rsume par la figure suivante : Le choix de Scrum comme une mthodologie de
8

Mthode de dveloppement Agile : Scrum

pilotage et de dveloppement logiciel agile itratif qui sest bas sur les avantages suivants :
Plus de crativit et de souplesse.
Capacit dadaptation au changement grce des itrations courtes,
Flexible dans la mesure o une quipe de dveloppement fonctionne comme une unit,
pour atteindre un objectif commun".
Vu que Scrum ne couvrant que les aspects de gestion de projet, et pour complter le
vide laiss en matire de pratiques de dveloppement, nous avons pris la dcision de coupler
Scrum avec une autre mthodologie de gestion est celle du Diagramme de Gantt et qui couvre
les bonnes pratiques dingnierie logicielle notamment le dveloppement dirig par le test et
la programmation en binme. voir la rfrence[12]
Diagramme de Gantt

Un diagramme de Gantt est un type de graphique barres qui illustre un calendrier


de projet, cest dire le dbut et de fin dates des lments terminaux et des lments de
synthse dun projet. Les lments terminaux sont des lments de synthse qui constituent
la structure de la rpartition du travail dans le projet. Les diagrammes de Gantt modernes
montrent galement la dpendance des relations entre les activits. Bien que maintenant
considr comme une technique de gestion, diagrammes de Gantt ont t considrs comme
rvolutionnaire lors de son lancement. Il est galement utilis dans la technologie de linformation pour reprsenter les donnes qui ont t recueillies. Le diagramme de Gantt nous
permettra de mieux visualiser les tapes de notre travail ainsi que didentifier les tapes
conditionnelles aux suivantes et celles dmarrer en priorit et diffrencier les taches.
La mise en place peut tre rsume par ces deux figures raliser par lapplication en ligne
"Smart Sheet" :
Lors du pilotage dun projet, lidentification des risques critiques prsente une tape
indispensable pour la russite de ce dernier. Pour notre cas, le seul risque qui peut nous
ralentir est li la complexit de lapplication et aux diffrentes contraintes respecter. [13]

La listes des taches raliser

10

Diagramme de Gantt correspond notre projet

11

2.2

Conclusion

Dans ce chapitre nous avons prsents le cadre gnral de notre projet en dterminant
la problmatique et les primtres tout en proposant une solution envisage pour faire face
la situation courante. Nous avons dvoil les exigences des besoins fonctionnels et non
fonctionnels. Comme nous avons choisi dadopter la mthodologie Scrum pour la conception
de notre futur systme accompagn dun diagramme de Gantt. Dans le chapitre suivant nous
allons reproduire les diffrents besoins cits prcdemment sous forme de diagrammes UML.

12

Chapitre 3

Conception fonctionnelle

13

3.1

Introduction

Dans cette section, nous allons reproduire les diffrents besoins cits prcdemment sous
la forme de diagrammes UML.
UML est un langage de modlisation graphique base de pictogrammes. Il est apparu
dans le monde du gnie logiciel, dans le cadre de la conception oriente objet [3].
Au final, le langage UML est une synthse de tous les concepts et formalismes mthodologiques les plus utiliss, pouvant tre utiliss, grce sa simplicit et son universalit,
comme langage de modlisation pour la plupart des systmes devant tre dvelopps.

3.2
3.2.1

Vue fonctionnelle du systme


Acteurs

Un acteur est un rle jou par une personne externe, un processus ou une chose qui
interagit avec un systme. Les acteurs qui peuvent interagir avec notre application sont :
1. tudiant du dpartement informatique,cest lacteur le plus important, celui pour lequel
le systme existe.
2. Administrateur des projets de fin des tudes il a pour rle daffecter des encadrant aux
binmes.
3. Administrateur des services il a pour rle de suivre le processus des demandes administratives et ajouter des cours.
3.2.2

Diagramme de cas dutilisation

Ce diagramme permet didentifier les possibilits dinteraction entre le systme et les


acteurs (intervenants extrieurs au systme)[3]. Il reprsente toutes les fonctionnalits que le
systme doit fournir.

14

Diagramme de cas dutilisation

15

3.2.3

Description textuelle des cas dutilisation

Cas "Sinscrire"

1. Acteurs principaux : tudiant


2. Objectifs : Ce cas dutilisation vise dcrire toutes les tapes relatives linscription
dun internaute afin deffectuer les diffrentes oprations correspondantes un tudiant.
3. Pr-conditions :
Disponibilit daccs au rseau Internet.
Serveur accessible 24 h/24 h et 7j/7j .
Navigateur en bon tat de fonctionnement.
4. Postconditions : Utilisateur inscrit et authentifi par une adresse lectronique et un
mot de passe.
5. Scnario nominal :
Linternaute demande sinscrire.
Le systme demande linternaute de choisir le type du compte crer.
Linternaute choisit le type du compte.
Le systme affiche le formulaire dinscription.
Linternaute remplit les champs du formulaire puis il valide.
Le systme vrifie si un utilisateur nest pas dj inscrit avec la mme adresse email et
quil fait bien partie du dpartement informatique puis, enregistre le nouveau compte
et envoie un email de confirmation linternaute.
6. Alternatifs :
Lors de la vrification, si le systme trouve que linternaute est dj inscrit,il sera
redirig,alors, vers la page dauthentification .
Cas "Conculter les statistiques des notes par semestre "

1. Acteurs principaux : tudiant


2. Objectifs : Ce cas dutilisation vise afficher un graphe de moyennes des notes par
semestre dcrivant ainsi la progression de ltudiant au fil du temps.
3. Pr-conditions :
tre authentifi par le systme.
La table des notes et leurs coefficients est remplie.
4. Postconditions : nant
5. Scnario nominal :
Ltudiant demande la page des notes.
Le systme rcupre les diffrentes notes relis ltudiant et calcule les moyennes
de chaque semestre.
Le systme de vue trace le graphe en se basant sur ces moyennes.
Le systme affiche le rsultat.
6. Alternatifs : si Ltudiant na aucune note dans la table des valuations,le graphe sera
vide.
16

Cas "Consulter les statistiques des absences par module "

1. Acteurs principaux : tudiant


2. Objectifs : Ce cas dutilisation a pour but dafficher des graphes dcrivant ainsi le
pourcentage dabsence pour chaque module.
3. Pr-conditions :
tre authentifi par le systme.
tre inscrit au moins dans un module.
4. Postconditions : nant
5. Scnario nominal :
Ltudiant demande la page des absences.
Le systme rcupre les diffrentes absences relie ltudiant et calcule le pourcentage pour chaque module.
Le systme de vue trace les graphes.
Le systme affiche les rsultats.
6. Alternatifs : Si ltudiant nas aucune absence,la page de statistique sera vide.
Cas "Sinscrire dans le module du Projets tutors "

1. Acteurs principaux : tudiant


2. Objectifs : Ce cas dutilisation vise dcrire toutes les tapes relatives linscription
des tudiants au module projet de fin dtudes.
3. Pr-conditions :
tre authentifi par le systme.
tre inscrit dans le dernier semestre.
Avoir choisi son binme.
4. Postconditions : ltudiant imprime le formulaire dinscription et le dpose chez le
secrtariat
5. Scnario nominal :
Ltudiant demande sinscrire au module du PFE.
Le systme affiche le formulaire dinscription.
Ltudiant remplit les champs du formulaire puis il valide.
Le systme vrifie si le binme fait bien partie du dpartement informatique puis
enregistre la nouvelle demande et renvoie un fichier imprimer.
6. Alternatifs :
si le binme est dj inscrit dans ce module, une page derreurs saffichera.
Cas "Demander un relev ou attestation universitaire"

1. Acteurs principaux : tudiant


2. Objectifs : Ce cas dutilisation dcrit les tapes de la demande dun relev de notes ou
attestation universitaire.
17

3. Pr-conditions :
tre authentifi par le systme
4. Postconditions : ltudiant doit de se prsenter chez ladministration pour rcuprer sa
demande.
5. Scnario nominal :
Ltudiant demande un service.
Le systme affiche le formulaire des services.
Ltudiant remplit les champs du formulaire puis il valide.
Le systme enregistre la nouvelle demande.
6. Alternatifs : nant
Cas "Imprimer les demandes dattestation ou relev de notes"

1. Acteurs principaux : Administrateur des services


2. Objectifs : Ce cas dutilisation dcrit les tapes dimpression des relevs de notes ou
des attestations universitaires.
3. Pr-conditions :
tre authentifi par le systme .
4. Postconditions : ladministrateur doit prsenter le fichier des demandes ladministration.
5. Scnario nominal :
Ladministrateur des services reoit les demandes de la semaine courantes.
Le systme affiche un tableau des demandes.
Ladministrateur valide la demande.
Le systme gnre un fichier dimpression.
6. Alternatifs : Si aucune demande nest enregistre dans la semaine courante, rien ne sera
imprim.
Cas "Imprimer les demandes dinscription au module du projet de fin dtudes"

1. Acteurs principaux : Administrateur des PFE


2. Objectifs : Permettre ladministrateur des PFE daffecter un enseignant pour chaque
binme.
3. Pr-conditions :
tre authentifi par le systme.
Tous les tudiants doivent confirmer linscription.
4. Postconditions : nant
Ladministrateur des services demande les binmes inscrits.
Le systme affiche un tableau des binmes.
Ladministrateur affecte des enseignants aux binmes.
Le systme gnre un fichier dimpression.
5. Alternatifs : nant
18

3.3

Vue statique du systme : Diagramme de classe

Le diagramme de classes exprime la structure statique du systme en terme de classes et


de relations entre ces classes. Lintrt du diagramme de classes est de modliser les entits
du systme dinformation[3]. Ces informations sont regroupes ensuite dans des classes 3.3.1.

Diagramme de classe

Le diagramme de Classe reprsente dune manire abstraite des objets du systme qui vont
interagir ensemble pour la ralisation des cas dutilisation, sans prendre en compte le facteur
du temps.
19

3.4
3.4.1

Vue dynamique du systme


Diagrammes de squences

Pour schmatiser la vue comportementale de notre systme informatique, nous faisons


recours au diagramme de squence dUML. Ce diagramme permet de prsenter les interactions entre lacteur et le systme avec des messages prsents dans un ordre chronologique.
Le digramme de squence systme traite le systme informatique comme tant une boite
noire. Le comportement du systme est dcrit de lextrieur sans avoir dide la ralisation.
Nous pouvons, alors, constater que certains cas dutilisations sont similaires, cest pour cette
raison que nous avons choisi de traiter quelques exemples.
Cas "Sinscrire "

Diagramme de squence du cas "Sinscrire"

Lacteur principal, tudiant, est reprsent gauche du diagramme et le systme droite.


Ltudiant demande au systme le formulaire de cration de compte.
Le systme lui affiche le formulaire.
Ltudiant remplit et valide le formulaire.
Si les informations que ltudiant a saisit sont invalides : le systme gnre une page
derreur et le cas dutilisation se termine en chec. Sinon : le systme enregistre les
informations dans la base de donnes et lui envoi un email de vrification.
Ltudiant pourra se connecter
20

Cas "Demander un relev ou attestation universitaire"

Diagramme de squence du cas "Demander service".

Lacteur principal, tudiant, est reprsent gauche du diagramme et le systme droite.


Lutilisateur commence dabord par sauthentifier
Si lauthentification est valid et lutilisateur est un tudiant il pourra demander des
services
Sinon Si lauthentification est valid et lutilisateur est un administrateur il recevra
une liste des tudiants qui ont demand un service particulier, la liste sera affich et
tlcharge par la suite.
21

Cas "Ajouter cour"

Diagramme de squence du cas "Ajouter Cour".

Lacteur principal, Administrateur des services, est reprsent gauche du diagramme et


le systme droite.
Lutilisateur commence dabord par sauthentifier
Si lauthentification est valid et lutilisateur est un administrateur il pourra ajouter
un cours et lafficher
Sinon si lauthentification est valid et lutilisateur est un tudiant il pourra voir la
liste des cours et les tlcharger.
22

Cas "Sinscrire en module PFE"

Diagramme de squence du cas "Sinscrire en module PFE".

Lacteur principal, tudiant, est reprsent gauche du diagramme et le systme est au


milieu et lobjet PFE droite.
Lutilisateur commence dabord par sauthentifier
Si lauthentification est valide et lutilisateur est un tudiant il devra insrer des donnes (codes, email, binme), le nom de son binme et tlcharger ces donnes
Sinon, si lauthentification est valide et lutilisateur est un administrateur il recevra
une liste des tudiants inscrits dans le PFE et il va leurs affecter des enseignants
Ladministrateur rcuprera la liste des informations concernant le PFE et la tlchargera

23

3.5
3.5.1

Modlisation conceptuelle et logique des donnes


Dfinition

Une base de donnes est un ensemble organis de donnes. Il est la collection de tables,
requtes, procdures et autres objets. Les donnes sont gnralement organises pour tre
utilises par des processus. Les bases de donnes sont souvent mises disposition des utilisateurs des serveurs locaux pour une scurit optimale[3].
3.5.2

Modle Conceptuel des donnes :

Le modle conceptuel de donnes est un modle de donnes pour dcrire les aspects de
donnes ou dinformation dans le domaine des entreprise, de faon abstraite qui sera mis
en ?uvre dans une base de donnes comme une base de donnes relationnelle. Les principales
composantes de ce modle sont des entits et des relations qui peuvent exister entre eux. Il
repose sur une reprsentation graphique qui facilite considrablement sa comprhension. La
figure 3.5.1 illustre ce type de modle
3.5.3

Modle logique des donnes

Le modle relationnel reprsente la base de donnes comme un ensemble de tables, sans


prjuger de la faon dont les informations sont stockes dans la machine. Les tables constituent donc la structure logique du modle relationnel o il est possible de relier ces structures
des tables au niveau logique. Les tables ne reprsentent donc quune abstraction de lenregistrement physique des donnes en mmoire. De faon informelle, les donnes sont organises
sous forme de relations.
Le modle logique correspond au diagramme de classe UML

24

Modle conceptuelle de la base de donnes


25

Le schma relationnel correspondant au modle conceptuel prcdent

Absences(users->users_id, interventions_id, created_at, updated_at) ;


Enseignants(id, email, password, remember_token, name, tel, cin, ddn, grade, matiere_de_specialite, is_verified, created_at, updated_at) ;
Etudiants(id, code, nom, prenom, groupe, cin, tel, created_at, updated_at) ;
Evaluations(users ->users_id, modules -> modules_id, note, semestre, type, coeff,
created_at, updated_at) ;
Fichiers(id, created_at, updated_at, path, type, name, visible, users->user_id,
enseignants->ens_id) ;
Fichier_Tag (id, fichiers->fichier_id, tags -> tag_id ) ;
Inscriptions(users -> users_id, modules -> modules_id , groupe, validation, semestre, created_at, updated_at ) ;
Interventions(id, enseignants ->ens_id, modules->modules_id, nombreHeure, type,
created_at, updated_at ) ;
Membres(id, password, nom, prenom, email, remember_token, tel, cin,
date_naissance, rank, is_verified, created_at,updated_at ) ;
Modules(id, name, option, semestre, created_at, updated_at ) ;
Module_Module(modules ->moduleBase_id, modules ->modulePrer_id ,
created_at, updated_at ) ;
Password_resets(email, token, created_at) ;
Services(id, users->user_id, date_limite, filiere, type_demande, created_at, updated_at ) ;
Tags(id, tag, created_at, updated_at ) ;
Users(id, name, email, password, remember_token, verification_code, tel, cin, sifa,
groupe, ddn, is_verified, created_at, updated_at) ;
Pfe(id, nom1, code1, email1, nom2, code2, email2, enseignant, created_at) ;

26

3.6

Conclusion

Dans ce chapitre, nous avons prsent notre tude conceptuelle du systme. La vue fonctionnelle a t illustre par les diagrammes de cas dutilisation. Ensuite, la vue statique,
ralise par le diagrammes de classes qui nous a permis de dfinir la structure du systme et
de dgager les diffrentes entits du composant, nous avons aussi propos une solution dune
vue visuelle statique du systme. Enfin, la vue dynamique nous a permis davoir une vue
globale sur le droulement des cas dutilisation et leurs excutions, cette vue a t modlis
par des diagrammes de squence systme afin de modliser linteraction du systme avec
les acteurs et dcrivant ainsi son comportement. Dans le chapitre suivant, nous dtaillons
quelques aspects de la conception technique.

27

28

Chapitre 4

Conception technique
4.1

Introduction

Ce chapitre est dcompos en trois sections importantes. Tout dabord, une tude prliminaire sur les technologies, Framework, architectures ddis pour le dveloppement web,
ensuite le choix de la solution technique adopter. Et enfin, une vue globale sur la plateforme
du projet.

4.2

Environnement et technologies logicielles

4.2.1

Technologies utilises

HTML

LHTML est un langage informatique utilis sur Internet. Ce langage est utilis pour crer
des pages web. Lacronyme signifie Hypertext Markup Language, ce langage permet de raliser de lhypertexte base dune structure de balisage. LHTML5 est le successeur de lHTML
4.01, a veut dire quil sagit toujours du HTML la diffrence de quelques nouvelles balises.
De plus, la version 5 est aujourdhui compatible avec la majorit des navigateurs et rpond
aux normes W3C ( Cest une communaut internationale o les membres, une quipe plein
temps, et le public travaillent ensemble pour dvelopper les standards du web) .Fondamentalement HTML5 a ses nombreuses nouvelles fonctionnalits syntaxiques, qui comprennent le
<video>, <audio>, et des lments de <canvas> [14]. En raison de ces nouveaux lments,
il sera trs facile dintgrer du contenu multimdia et graphique pour le Web sans utiliser
le flash et plugins tiers. Il ya aussi des nouveaux lments comme <section>, <article>,
<header> et <nav> qui enrichissent la valeur smantique du document[14].
CSS

Les feuilles de styles (en anglais "Cascading Style Sheets", abrg CSS) sont un langage qui
permet de grer la prsentation dune page Web. Les styles permettent de dfinir des rgles
appliques un ou plusieurs documents HTML. Ces rgles portent sur le positionnement des
29

lments, lalignement, les polices de caractres, les couleurs, les marges et espacements, les
bordures, les images de fond, etc.[14]
PHP

PHP est un langage de script cot serveur qui t conu spcifiquement pour le Web.
Le code PHP est inclus dans une page HTML et sera excut chaque fois quun visiteur
affichera la page. Le code PHP est interprt au niveau du serveur web et gnre du code
HTML ou toute autre donne affichable dans le navigateur de lutilisateur. PHP a t conu
en 1994 par Rasmus Lerdorf. Il a ensuite t adopt par dautres personnes talentueuses
et rcrit quatre fois avant de devenir le produit abouti que nous connaissons aujourdhui.
En novembre 2007, il tait install sur plus de 21 millions de domaines et sa croissance est
rapide. PHP est un projet open-source, ce qui signifie que vous pouvez vous procurer son
code, lutiliser, le modifier et le redistribuer gratuitement. La dernire version principale de
PHP est la version 5. Elle bnficie dune rcriture complte du moteur Zend et de quelques
amliorations importantes au niveau du langage[14].
JavaScript

Le JavaScript est un langage de script incorpor dans un document HTML. Historiquement il sagit mme du premier langage de script pour le Web. Ce langage est un langage de
programmation qui permet dapporter des amliorations au langage HTML en permettant
dexcuter des commandes du ct client, cest--dire au niveau du navigateur et non du
serveur web[14].
JQuery

jQuery est une bibliothque JavaScript libre qui porte sur linteraction entre JavaScript
(comprenant Ajax) et HTML, et a pour but de simplifier des commandes communes de
JavaScript[14].
MySQL

MySQL est un systme de gestion de base de donnes relationnelle (SGBDR). Il est


distribu sous une double licence GPL et propritaire. Il fait partie des logiciels de gestion
de base de donnes les plus utiliss au monde[14].

4.3
4.3.1

Framework
Dfinition

Un Framework est un outil qui regroupe tout un ensemble de fonctionnalits prexistantes[8]. Il vous permet de bnficier dune architecture dapplication de base et offre
ainsi aux dveloppeurs un confort de conception grce notamment une facilit et une rapidit de dveloppement, des conventions prcises et une dcomposition de lapplication
mthodique et logique.
30

4.3.2

Exemple de Framework web :

Python : Django - Flask - Tornado - Scrapy - Karrigell - Twisted - Web2py - CherryPy


- Pyramid - TurboGears
PHP : Symfony Zend Framework - CodeIgniter - FuelPHP - Yii - CakePHP - QCodo Laravel - Jelix - Agavi - Atomik - Copix - Kumbia PHP - PRADO - WebSite-PHP - Phalcon
Ruby : Ruby on Rails - Sinatra - Merb
Perl : Catalyst - Dancer - Mojolicious
JavaScript : jQuery - AngularJS - MooTools - Dojo - Meteor - Backbone.js - Ember.js
- ExtJS - React - qooxdoo - YUI - Cappuccino - script.aculo.us - Prototype
.NET : Java EE - Spring MVC - Struts - Tapestry - Play - Stripes - ZK - Cocoon GWT - Echo - AppFuse - Grails - RAP - Wicket - WebObjects - Vert.x
4.3.3

Architecture logicielle

Larchitecture MVC (modle, vue et contrleur) est un concept trs puissant qui intervient dans la ralisation dune application. Son principal intrt est la sparation des donnes
(modle), de laffichage (vue) et des actions (contrleur) Le principe dune telle structure est
de diviser lapplication en 3 parties distinctes :
Les modles : ils reprsentent les donnes de lapplication et permettent linteraction
avec la base de donnes (ou les web services, etc).
Les vues : ce sont les reprsentations (les templates) des rsultats de la requte que
lutilisateur a effectue.
Les contrleurs : ils interceptent toutes les requtes faites par les utilisateurs.
Architecture 3-tiers : Il sagit dun modle logique darchitecture applicative qui vise
modliser une application comme un empilement de trois couches logicielles (tages, niveaux,
tiers ou strates) dont le rle est clairement dfini :
la Prsentation des donnes : correspondant laffichage, la restitution sur le poste
de travail, le dialogue avec lutilisateur.
le Traitement mtier des donnes : correspondant la mise en ?uvre de lensemble
des rgles de gestion et de la logique applicative.
Laccs aux donnes persistantes : correspondant aux donnes qui sont destines
tre conserves sur la dure, voire de manire dfinitive.

31

4.4

Choix technologiques

Choix de la technologie

Le langage le plus appropri pour la programmation du site, en plus de HTML qui nous
servira de base, sera le PHP, lui-mme combin un systme de gestion de base de donnes,
MySQL. Ce sont les langages que lon utilise le plus souvent pour la programmation des sites
web, car ils permettent de rendre les pages Web plus dynamiques. Tout dabord, le PHP est
un langage de programmation qui sintgre dans les pages HTML. Il permet, entre autres,
de rendre automatiques des tches rptitives, notamment grce lutilisation de fonctions
qui sont en quelques sortes des petits programmes permettant daccomplir ces tches, et
grce la communication avec une base de donnes (qui contient les informations). De plus,
il fallait choisir un langage permettant de manipuler les sessions. Une session correspond
lintervalle de temps compris entre le premier accs par un utilisateur au site web et la clture
de toutes les fentres de son navigateur. Les sessions permettront de stocker les informations
concernant le membre connect, PHP gre trs bien les sessions et elles sont plus simples
utiliser et mettre en ?uvre.
Choix du framework :

La solution retenue a t de dvelopper lapplication laide dun framework, et ceci pour


la raison quun CMS nest pas adapt pour le genre de base de donnes interactive. En effet,
lapplication a raliser nest pas un site public ouvert tout le monde, cest dire que la
plupart des fonctionnalits dun CMS ne seraient pas davantages. Et dans lhypothse o
lon utiliserait un CMS, il faudrait dsactiver ces fonctionnalits, et donc modifier directement le code source.
Il existe de nombreux Framework PHP open-source, cest dire gratuits, librement modifiables et distribuables. Voici les plus connus :
1. Zend Framework est un cadre de dveloppement pour PHP, orient objet. Zend tant
le crateur du langage PHP, cela lui confre une grande crdibilit. Ses principales
fonctionnalits sont :
Scurit : systme de protection contre les attaques par injections SQL et des attaques
de types cross-site-scripting (XSS).
Sparation du code en trois couches MVC.
Architecture totalement modulaire, cest dire que lon peut inclure uniquement les
fonctionnalits dont on a besoin.
Ce framework est surtout destin aux sites forte charge et aux dveloppeurs web de
mtier qui peuvent se permettre de passer des semaines le prendre en main.
2. Symfony est un Framework MVC open-source crit en PHP 5, donc orient objet. Ses
principales fonctionnalits sont :
Une sparation du code en trois couches, selon le modle MVC.
Un systme de template volu.
Des performances optimises et un systme de cache pour garantir des temps de
rponse optimums.
32

Statistiques de popularit Framework PHP fin 2013

Une couche de mapping objet-relationnel (ORM) et une couche dabstraction de


donnes.
Le support de lAjax.
Il semble une trs bonne alternative Zend, disposant des fonctions quivalentes
celui-ci mais plus simple matriser par sa conception. Cependant, il est assez lourd et
lent.
3. Laravel est un framework dapplication web PHP open-source, destin pour le dveloppement dapplications. Ses principales fonctionnalits sont :
Composer en tant que gestionnaire de dpendance pour ajouter des packages de structure diffrentes et spcifiques disponible partir du rfrentiel Packagist permettant
ainsi le support de la majorit des technologies actuelle.
Eloquent ORM (mapping objet-relationnel) est une implmentation de PHP avanc
du motif denregistrement actif, en fournissant en mme temps des mthodes internes
pour appliquer des contraintes sur les relations entre les objets de base de donnes.
Laravel dispose dun moteur de template "Blade" qui combine un ou plusieurs mo33

dles avec un modle de donnes pour produire des nouvelles vues, en traduisant les
modles dans le code PHP en cache pour amliorer les performances.
Migrations : fournissent un systme de contrle de version pour les schmas de base
de donnes, ce qui permet dassocier des changements dans le code source de lapplication et les modifications ncessaires la mise en page de base de donnes. En
consquence, le dploiement et la mise jour des applications est considrablement
simplifi.
Laravel ressemble Symfony, disposant des fonctions quivalentes. De plus, malgr son
jeune ge, il est fiable et prouv.
Choix du systme de template

Un systme de template web utilise un processeur de modles, ventuellement laide


dune source de donnes pour personnaliser les pages ou prsenter une grande quantit de
contenu sur les pages similaires prospectifs[11]. Pour notre besoin le modle web doit satisfaire
ces caractristique :
Une vue administrateur rsponsive (Adapt toute sorte dcran)
de source libre et gratuite
Construit avec Bootstrap 3 afin dtre compatible avec Laravel
Facile personnaliser
Communaut trs active
Nous avons adopt AdminLTE comme
systme de template puisquil est libre, gratuit, populaire et utilis pour les tableaux
de bord dadministration et de panneaux
de contrle. cest est un template HTML
sensible qui est bas sur le framework CSS
Bootstrap 3. Il utilise tous les composants
Bootstrap dans sa conception et modifier le
style de nombreux plugins couramment utiliss pour crer une conception cohrente qui
peut tre utilis comme une interface utilisateur pour les applications back-end. AdminLTE est base sur une conception moTemplate AdminLTE
dulaire, ce qui lui permet dtre facilement
personnalis et construit. Une autre documentation vous guidera travers linstallation du modle et explorer les diffrents composants qui sont regroups avec le modle dans
un deuxime rapport de guide dutilisation.

4.5

Solution Retenue

Tenant compte de cette tude, nous avons choisi de travailler avec PHP5, MySQL, Javascript, Ajax, Apache, Html5 et Css3 comme technologies puis Laravel5 et Boostrap3 comme
34

frameworks ce qui nous permet dorganiser lapplication avec larchitecture MVC et implmenter la solution avec larchitecture 3 tiers.

Figure Fonctionnement de lapplication.

4.6

Conclusion

Nous avons prsent dans ce chapitre une ide sur le framework et larchitecture adopter
dans notre projet. Cette tude nous a permis de distinguer les diffrents points sur lesquels
on va travailler et les technologies quon va utiliser pour raliser notre application. La partie
ralisation fera lobjet du chapitre suivant.

35

36

Chapitre 5

Ralisation

37

5.1

Inroduction

Les figures ci-dessous reprsentent quelques captures dcran de pages de notre site. Les
pages qui suivent lauthentification contiennent tous des lments communs dune part le
header qui contient le nom du membre sous forme dune liste, contenant deux boutons un
pour se dconnecter et fermer la session et lautre pour pouvoir modifier des donnes qui
lui sont personnel(nom, email, mot de passe, etc ), dautre part une sidebar, cest--dire un
menu latral, qui va nous permettre de naviguer dans les diffrentes pages du site.
Dans cette partie nous allons dcrire notre ralisation sous forme dun scnario de ltudiant
Ilyas Amine.

5.2

Cas : Sinscrire au systme.

Chaque internaute aura la possibilit de sinscrire


dans le systme, condition quil soit un tudiant au
sein du dpartement informatique, ou un enseignant
nous traiterons dans cette section le cas dune inscription dun tudiant. Dabord linternaute devra saisir
des informations personnelles, en les appuyant dun
document de type image qui identifiera ltudiant de
faon unique (exemple : acte de naissance).

5.3

Cas : Suivre des cours.


Page dinscription dans le systme.

En sauthentifiant, Ilyas amine est redirig vers la page daccueil qui contient des informations sur le nombre dtudiants, le nombre denseignants du dpartement et les cours
publis dans le systme ainsi que les cours dans lesquels ltudiant est inscrit durant lanne
universitaire courante.

Page daccueil.

38

5.4

Cas : Visualiser le Graphe de notes.

Ilyas amine peut visualiser les rsultats dun semestre en cliquant sur le liens du sidebar
" Mes statistiques : Notes ", il sera redirig, alors, vers la page des notes qui contient un
graphe de progressions de la moyenne de chaque semestre.

Page des notes par semestre de ltudiant.

5.5

Cas : Visualiser les Statistiques des absences

Ilyas amine pourra aussi voir le pourcentage dabsences dans chaque modules dans lequel
il est inscrit en cliquant sur " Mes statistiques : Absences ".

Page dabsences par module de ltudiant.

39

5.6

Cas : Tlcharger des fichiers

Page des fichiers.

Ilyas amine pourra aussi tlcharger la liste des cours soit en cliquant sur " Tlcharger
" et choisir le cours parmi la liste affiche soit en le recherchant par son Tag dans la barre
rechercher et ensuite le tlcharger.

5.7

Cas : Demander des services

Page des services.

Le systme offre aussi dautres fonctionnalits pour ltudiant notamment la demande


dun service tel quune attestation de scolarit, un relev de note, etc.
Pour la demandes dun service, Ilyas Amine devra remplir un formulaire qui contient
certaines donnes personnelles ainsi que le type de service. Cette demande sera traite par
la suite par un administrateur charg du traitement des services.
40

5.8

Cas : Sinscrire au module de PFE

Page dinscription au module de PFE.

Concernant linscription un PFE ilyas amine devra saisir son email, son code et ceux
de son binme ensuite les imprimer. Linscription sera traite par un autre administrateur
charg du PFE.

5.9

Cas : Visualiser les emplois du temps.

Page des emplois du temps.

Ilyas Amine pourra avoir une liste des emplois du temps des diffrentes sections et, par
consquent, les tlcharger.
41

5.10

Cas : Affecter des PFE.

Page daffectation par ladministrateur.

Aprs lauthentification de ladministrateur, charg de laffectation du pfe, une page contenant la liste des tudiants inscrits en PFE sera affiche. Ce dernier aura pour rle de choisir
un encadrant pour chaque binme et imprimer, par la suite, la liste finale.

5.11

Cas : Ajouter des fichiers.

Page dimpression des demandes par ladministrateur.

Ladministrateur des services aura pour rle de communiquer les services demands par
les tudiants ladministration sous format papier en imprimant la liste des demandes, il
devra aussi ajouter des cours fournis par des enseignants, il pourra aussi visualiser lidentit
dun tudiant donn.

5.12

Conclusion

Nous avons vu tout au long de ce chapitre, diffrents scnarios de notre application,


ltape suivante sera une conclusion et perspectives dans laquelle on va rsumer les diffrents
apports de notre application

42

Chapitre 6

Conclusion et perspectives
Aujourdhui, le souci majeur des facults et tablissements universitaires est la difficult
de communication entre administration, tudiant et enseignant ce qui affecte la qualit des
tudes suprieures. La ncessit damliorer le service rendu pour ltudiant sest largement
manifeste.
Lobjectif vis travers ce projet de fin dtudes est de prsenter un systme dinformation
pour les tudiants du dpartement informatique de la facult des sciences de Rabat. Le prsent manuscrit dtaille toutes les tapes par lesquelles nous sommes passes pour arriver
au rsultat attendu. Nous avons essay tout au long de notre travail de construire notre
application incrment par incrment en utilisant la mthodologie Scrum et en se basant sur
le diagramme de Gantt qui forment les bonnes pratiques dingnierie logicielle.
Dans un premier temps, Nous avons consacr nos rflexions ltude de lexistant et par
comprendre suffisamment la prsentation gnrale de notre application afin de dgager les
diffrentes besoins dont lapplication est charge dy rpondre. Ces besoins ont t bien traits et analyss dans la phase de conception fonctionnelle laide de langage de modlisation
UML.
Ltape suivante, tait la conception technique. Durant toute cette phase, une prsentation
globale des technologies, frameworks et architectures utiliss par le systme a t ralise
pour aboutir une meilleure solution qui vise aider le dpartement amliorer la qualit
de service offerte. Ensuite nous avons prsent dans la partie ralisation quelques interfaces
graphiques accompagnes de leurs descriptions.
Malgr toutes les difficults rencontres au niveau du processus de dveloppement et les
contraintes de temps, nous avons russi raliser la totalit de notre application tout en
respectant laspect scuritaire et en prparant la documentation ncessaire. Lun des attraits
du projet tait de pouvoir travailler sur des logiciels libres la pointe de la technologie et
dapprofondir nos connaissances dans les bonnes pratiques de programmation. Cela nous a
permis de nous rendre compte des diffrentes tches auxquelles nous serons confront et que
parfois la connaissance seule ne suffit pas pour rsoudre les problmes. Cela nous fait dire
que rien nest acquis et que le travail dingnieur est une formation et un apprentissage de
tous les jours.
Notre travail ne sarrte pas ce stade, en effet plusieurs fonctionnalits peuvent tre ajoutes notre application notamment un systme pour la gestion des conversations et des
43

commentaires qui permettrait une communication virtuelle et instantane, de mme nous


pourrions accompagner le service propos par une application mobile qui rduirait le temps
des demandes quelque soit le lieu o on se trouve.

44

Bibliographie
[1] W.JASON GILMORE, EASY LARAVEL 5 , Columbus,
[2] BASSAM ABDOUSALAM,ELHAJHOUJ SALOUA CONCEPTION ET RALISATION DUNE PLATE-FORME DE COMMERCE LECTRONIQUE , Facult des
sciences,Rabat
[3] Modlisation en UML
https://sites.google.com/site/moulinesalma/enseignement/cours-uml
https://en.wikipedia.org/wiki/Unified_Modeling_Language
[4] Application de cration des maquettes
https://moqups.com/
[5] Grafikart : Dcouverte du Framework
http://www.grafikart.fr/formations/laravel/
[6] Laracasts : Laravel 5 Fondamentaux
https://laracasts.com/series/laravel-5-fundamentals
[7] Documentation officielle du Framework Laravel 5
http://laravel.com/docs/5.1
[8] Statistiques et informations actuelle des frameworks PHP
http://www.sitepoint.com/best-php-frameworks-2014/
https://fr.wikipedia.org/wiki/Framework
[9] Documentation officielle du modle AdminLTE
https://almsaeedstudio.com/themes/AdminLTE/documentation/index.html
[10] Intgration du modle AdminLTE
https://almsaeedstudio.com/blog/integrate-adminlte-with-laravel
[11] Boostrap documentation et exemples
http://getbootstrap.com/getting-started/#examples
https://en.wikipedia.org/wiki/Bootstrap_(front-end_framework)
[12] Mthode de dveloppement agile Scrum
https://en.wikipedia.org/wiki/Scrum
[13] Diagramme de Gantt.
https://en.wikipedia.org/wiki/Gantt_chart/
https://www.smartsheet.com/gantt-chart-software
[14] Technologies Web
https://en.wikipedia.org/wiki/PHP
45

https://en.wikipedia.org/wiki/JQuery
https://en.wikipedia.org/wiki/JavaScript
https://en.wikipedia.org/wiki/MySQL
https://en.wikipedia.org/wiki/HTML5
https://en.wikipedia.org/wiki/Cascading_Style_Sheets
[15] Documentation et Package des graphes dessines
http://www.chartjs.org/docs/
[16] Package de gnraion en format PDF
https://github.com/barryvdh/laravel-dompdf
[17] Solution Mailing
http://bensmith.io/email-verification-with-laravel
[18] Latex exemples
https://en.wikibooks.org/wiki/LaTeX/Document_Structure
[19] Citation et proverbe sur logiciel
http://www.dicocitations.com/citations-mot-logiciel.php#fw3GYLLitAVhMAfJ.99
Document crer par LATEX

46

Vous aimerez peut-être aussi