Rapport_pfe_yassine (3)

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 64

RÉSUMÉ

Résumé :
Ce travail s’inscrit dans le cadre du projet de fin d’études en vue de l’obtention du diplôme
national de Licence Fondamentale en Sciences Informatique. Le projet intitulé « Mise en place
d’une plateforme éducative en ligne » est réalisé sur une période de quatre mois, consiste
à développer une plateforme qui facilite l’éducation de nos élèves de l’école primaire en
leurs offrants des cours en ligne, des exercices d’application, des quiz et des examens. Ce
projet est développé par symfony 4, framework PHP, et MySQL qui est une base de données
Relationelle.
Mots clés : Symfony4,PHP , twig, MySQL, Javascript, jQuery ,Bootstrap, HTML, CSS.

Abstract :
This work is part of the End of Study Project with a view to obtaining the national diploma
of Basic License in Computer Sciences. The project entitled « Establishment of an online
educational platform » and released in a period of four months, consists in developing a
platform that facilitates the education of our primary school students by offering them online
courses, application exercises, quizzes and exams. This project, is developed by symfony 4,
PHP framework, and MySQL which is a relational database
Key-words : Symfony4,PHP , twig, MySQL, Javascript, jQuery ,Bootstrap, HTML, CSS.

Page i
DÉDICACES
Dans ces instants de jovialité et de reconnaissance, je me permets d’offrir ce travail
À mon cher papa Afif .
Aucune dédicace ne saurait exprimer l’amour,l’estime, le dévouement et le respect que j’ai
toujours eu pour toi. Rien au monde ne vaut les efforts fournis jour et nuit pour mon
éducation et mon bien être. Ce travail est le fruit de tes sacrifices que tu as consentis pour
mon éducation et ma formation.

À ma chére maman Sonia .


Aucune dédicace ne saurait exprimer mon respect, mon amour éternel et ma considération
pour les sacrifices que tu as consenti pour moi.Je te remercie pour tout le soutien et l’amour
que tu me portes depuis mon enfance et j’espère que votre bénédiction m’accompagne
toujours.

À ma chére tante Mounira .


Qui m’a accompagné par ses prières, sa douceur, puisse Dieu lui prêter longue vie et
beaucoup de santé et de bonheur dans les deux vies.

À ma soeur Safa et mon frére Mohamed raouf .


Qui n’ont pas cessée de me conseiller, encourager et soutenir tout au long de mes études. Que
Dieu les protège et leurs offre la chance et le bonheur.

À mes amis proches.


Je ne peux trouver les mots justes et sincères pour vous exprimer mon affection et mes
pensées, vous êtes pour moi des fréres et des amies sur qui je peux compter.
En témoignage de l’amitié qui nous uni, je vous dédie ce travail et je vous souhaite une vie
pleine de santé et de bonheur.

Page ii
À tous les membres de ma famille, mes voisins et mes amies.
Merci pour vos amours et vos encouragements.

Landari Yassine

Page iii
REMERCIEMENT

Je tiens à remercier toutes les personnes qui ont contribué au succès de ce stage grâce à
leurs conseils et leurs orientations.

Tout d’abord, je cite la société Dot IT qui m’a ouvert sa porte et m’a donné de la confiance
et en particulier Monsieur Monastiri Karawat Abderahim, qui malgré leur engagement, a
accepté de m’encadrer et de me diriger.

Ensuite, j’adresse mes remerciements à ma professeure, Dr. Abbes Hanen, qui m’a minutieusement
orienté tout au long de ce travail . Vos conseils judicieux méritent toute attention et respect.

Je témoigne ici à tous les membres du jury, toutes mes reconnaissances et mes respects
que j’ai pour eux d’avoir accepté d’évaluer mon travail.

Enfin, je souhaite souligner tant de gratitude envers le corps enseignant à l’institut Supérieur
d’Informatique et de Mathématiques de Monastir, qui ont fait preuve d’excellence pédagogique
et professionnelle.

Page iv
TABLE DES MATIÈRES

INTRODUCTION GÉNÉRALE 2

1 Présentation du cadre du projet 3


1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Présentation de l’organisme d’accueil . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 Présentation de l’entreprise . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.2 Secteur d’activité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Présentation du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 Contexte général et problématique . . . . . . . . . . . . . . . . . . . 6
1.3.2 Travail demandé . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Analyse et critique de l’existant . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.1 Analyse de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.1.1 Topnet School . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4.1.2 Drousi.tn . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.1.3 Kademia.tn . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.1.4 Monprof.tn . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4.2 Critique de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.3 Solution proposée et objectifs . . . . . . . . . . . . . . . . . . . . . 13
1.5 Méthodologie adoptée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.1 Principes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.2 Vue d’ensemble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5.3 Synthèse des étapes . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2 Analyse et spécification des besoins 17

Page v
TABLE DES MATIÈRES

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2 Identification des acteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3 Spécification des besoins fonctionnels . . . . . . . . . . . . . . . . . . . . . 19
2.4 Diagramme de cas d’utilisation global . . . . . . . . . . . . . . . . . . . . . 20
2.5 Raffinement des cas d’utilisation . . . . . . . . . . . . . . . . . . . . . . . . 22
2.5.1 Espace Administrateur . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.5.1.1 Diagramme de cas d’utilisation "Gérer les maîtres(ses)" . . 23
2.5.1.2 Diagramme de cas d’utilisation "Gérer les matiéres" . . . . 25
2.5.2 Espace Maître(sse) . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5.2.1 Diagramme de cas d’utilisation "Gérer cours" . . . . . . . 28
2.5.2.2 Diagramme de cas d’utilisation "Gérer quiz" . . . . . . . . 29
2.5.3 Espace Eléve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.6 Spécification des besoins non fonctionnels . . . . . . . . . . . . . . . . . . . 33
2.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

3 Conception 35
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.2 Langage de modélisation utilisée . . . . . . . . . . . . . . . . . . . . . . . . 36
3.3 Diagramme de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.4 Diagramme de séquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.4.1 Cas d’utilisation "S’authentifier" . . . . . . . . . . . . . . . . . . . . 39
3.4.2 Cas d’utilisation "S’inscrire" . . . . . . . . . . . . . . . . . . . . . . 40
3.4.3 Cas d’utilisation "Modifier Eléve" . . . . . . . . . . . . . . . . . . . 40
3.4.4 Cas d’utilisation "Ajouter Quiz" . . . . . . . . . . . . . . . . . . . . 41
3.4.5 Cas d’utilisation "Supprimer Question" . . . . . . . . . . . . . . . . 42
3.4.6 Cas d’utilisation "Télécharger Examen" . . . . . . . . . . . . . . . . 43
3.5 Diagramme de déploiement . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4 Réalisation 47
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.2 Architecture de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.2.1 Architecture MVC . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Page vi
TABLE DES MATIÈRES

4.2.2 Architecture physique du projet . . . . . . . . . . . . . . . . . . . . 49


4.3 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3.2 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.4 Choix technologique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.5 Développement de la plateforme d’éducation en ligne . . . . . . . . . . . . 53
4.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

CONCLUSION GÉNÉRALE 54

WEBOGRAPHIE 54

Page vii
LISTE DES FIGURES

1.1 Topnet School . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8


1.2 kademia.tn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 kademia.tn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Monprof.tn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5 Cycle en V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.1 Diagramme des cas d’utilisation de la plateforme . . . . . . . . . . . . . . . 21


2.2 Diagramme des cas d’utilisation raffiné de l’administrateur . . . . . . . . . . 23
2.3 Diagramme de cas d’utilisation "Gérer les maîtres(ses)" . . . . . . . . . . . . 24
2.4 Diagramme de cas d’utilisation "Gérer les matiéres" . . . . . . . . . . . . . . 25
2.5 Diagramme des cas d’utilisation raffiné du maître(sse) . . . . . . . . . . . . . 27
2.6 Diagramme de cas d’utilisation "Gérer cours" . . . . . . . . . . . . . . . . . 28
2.7 Diagramme de cas d’utilisation "Gérer quiz" . . . . . . . . . . . . . . . . . . 30
2.8 Diagramme des cas d’utilisation raffiné du l’éléve . . . . . . . . . . . . . . . 32

3.1 Diagramme de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38


3.2 Diagramme de séquence du cas d’utilisation "S’authentifier" . . . . . . . . . 39
3.3 Diagramme de séquence du cas d’utilisation "S’inscrire" . . . . . . . . . . . 40
3.4 Diagramme de séquence du cas d’utilisation "Modifier Eléve" . . . . . . . . 41
3.5 Diagramme de séquence du cas d’utilisation "Ajouter Quiz" . . . . . . . . . 42
3.6 Diagramme de séquence du cas d’utilisation "Supprimer Question" . . . . . . 43
3.7 Diagramme de séquence du cas d’utilisation "Télécharger Examen" . . . . . 44
3.8 Diagramme de déploiement . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.1 Architecture MVC [10] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49


4.2 Architecture physique de l’application . . . . . . . . . . . . . . . . . . . . . 50

Page viii
Liste des tableaux

1.1 Critique des solutions existantes . . . . . . . . . . . . . . . . . . . . . . . . 12

2.1 Description des acteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18


2.2 Description textuelle du cas d’utilisation "Confirmer Profil" . . . . . . . . . . 25
2.3 Description textuelle du cas d’utilisation "Ajouter matiére" . . . . . . . . . . 26
2.4 Description textuelle du cas d’utilisation "Modifier un cour " . . . . . . . . . 29
2.5 Description textuelle du cas d’utilisation "Supprimer quiz" . . . . . . . . . . 31
2.6 Description textuelle du cas d’utilisation "Consulter cour" . . . . . . . . . . . 33

Page ix
LISTE DES ABRÉVIATIONS

CU Cas d’utilisation

HTTP Hyper Text Transfer Protocol

IDE Integrated Development Environment

UML Unified Modeling Language

PHP Hypertext Preprocessor

SGBD Système de Gestion de Base de Données

Page 1
INTRODUCTION GÉNÉRALE

La technologie a engendré le cyberespace et fait tomber les barrières locales et nationales.


Aujourd’hui chacune possède un ordinateur, un modem et un fournisseur d’accès peut se
connecter au nouveau monde sans frontières et jouir de de ses innombrables offres. N’importe
qui peut apprendre ce qu’il veut, quand et où il veut.

Être physiquement présent dans une salle de classe n’est plus la seule option d’apprentissage
c’est pourquoi, les élèves les collégiens, les lycéennes et les étudiants, tous ont poursuivi leurs
cours en ligne afin de rattraper le programme et réussir l’année. Vu la contrainte du temps,
on a remarqué que les cours seulement reste insuffisant surtout pour nos élèves de l’éducation
primaire, le pratique est toujours un enjeu nécessaire pour renforcer l’apprentissage.

C’est dans ce contexte que s’inscrit mon projet de fin d’études qui consiste à développer
une plateforme d’éducation en ligne pour le compte des élèves. Ainsi, pour bien mener mon
projet, il serait judicieux de suivre une démarche méthodique afin de répondre aux critères de
définition des besoins, de bonne planification et surtout de rigueur.

Ce rapport présente l’ensemble des étapes suivies pour développer l’application. Il contient
quatre chapitres.
Le premier chapitre, intitulé "Présentation du cadre du projet" sera consacré à la description
du l’organisme d’accueil et du projet. Le deuxième chapitre, intitulé " Analyse et spécification
des besoins " sera consacré à l’identification des acteurs, présentation des cas d’utilisation
généraux et raffinées, et description des besoins non fonctionnels. Le troisième chapitre intitulé
"Conception" sera consacré à la conception de mon application. Finalement, le quatrième
chapitre intitulé "Réalisation" couronnera le travail réalisé en exposant l’architecture, l’environnement
de travail, les techniques utilisées ainsi que les interfaces de mon application. Je clôturerai par
une conclusion générale qui résumera mon travail.

Page 2
Chapitre

1
Présentation du cadre du projet

Sommaire
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Présentation de l’organisme d’accueil . . . . . . . . . . . . . 4
1.2.1 Présentation de l’entreprise . . . . . . . . . . . . . . . . . . . . 4
1.2.2 Secteur d’activité . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Présentation du projet . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 Contexte général et problématique . . . . . . . . . . . . . . . . 6
1.3.2 Travail demandé . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Analyse et critique de l’existant . . . . . . . . . . . . . . . . . 7
1.4.1 Analyse de l’existant . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.2 Critique de l’existant . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.3 Solution proposée et objectifs . . . . . . . . . . . . . . . . . . . 13
1.5 Méthodologie adoptée . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.1 Principes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.2 Vue d’ensemble . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5.3 Synthèse des étapes . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Page 3
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

1.1 Introduction

Dans ce chapitre, je commence par présenter l’organisme d’accueil et ses secteurs d’activité,
puis je tâcherai d’expliquer les motivations et les objectifs du projet, ensuite je me concentrerai
à analyser et critiquer l’existant pour enfin finir avec la présentation de la méthodologie
adoptée.

1.2 Présentation de l’organisme d’accueil

1.2.1 Présentation de l’entreprise

DOT IT est une société tunisienne spécialisée dans l’ingénierie


logicielle et l’intégration de solutions de gestion pour les entreprises.
Elle réalise la mise en œuvre des méthodologies et des expertises de
gestion de projets issues des standards de l’industrie logicielle (ISO,
CMMI, UP, RUP, XP, Méthodologies Agiles, . . .).
Annoncé comme étant un membre dans le programme Microsoft
Certified Partner, DOT IT travaille en partenariat avec BPA SOLUTIONS, une société Suisse
développant des applications métiers. Elle a aidé à réaliser des projets majeurs et stratégiques
pour de nombreux clients tels qu’Astuces Maison, Royal KenzHotel, Itac Tunisie, Forestière
Tunisie, Comet, Carthage Land, Ooredoo... [1].

1.2.2 Secteur d’activité

Les secteurs d’activités de DOT IT s’étendent sur six domaines :

Page 4
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

1. Ingénierie logicielle : Solutions de Conseil Technologique, Développement Logiciel


et Recette Applicative/Testing qui s’étendent tout au long du cycle de vie d’un projet
pour optimiser les investissements informatiques et maximiser la valeur du patrimoine
applicatif.
2. Solutions commerciales : Pour la mise en place de solutions intégrées de gestion, DOT
IT développe des solutions de métiers aussi bien pour des PME qu’au sein de grandes
entreprises tous secteurs confondus. Elle propose des solutions comme les :

• CRM (Customer Relationship Management).

• Gestion de la qualité et la gestion des projets

• Gestion des bureaux d’ordre

• Solutions E-commerce [. . . ]
3. IT externalise : DOT IT offre une démarche d’outsourcing permettant de :

• Bénéficier des meilleures pratiques en matière de technologies, d’outils et de méthodologies.

• Industrialiser les processus avec des garanties de qualité et de niveau de service,


dans une démarche d’amélioration continue.

• Maîtriser et optimiser les coûts de maintien en condition opérationnelle des systèmes


informatiques.

• Disposer d’une flexibilité et d’une réactivité pour gérer les variations de charge et
mobiliser toutes les compétences nécessaires.

• Redéployer des ressources humaines et financières vers des activités cœur du métier
et des projets à plus forte valeur ajoutée.
4. Web : DOT IT s’est spécialisée dans la création et la refonte de sites Web institutionnels,
vitrines et catalogues de type dynamique à travers la conception graphique Web Design :
Des chartes graphiques, des logos, des cartes visites, des affiches publicitaires et les sites
web.
5. Solutions mobiles : DOT IT assure la création, la conception et l’hébergement de
services WAP :

Page 5
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

• En accompagnant ses clients dans l’accès à ce canal de distribution de services.

En étant au quotidien le responsable de bout en bout de la chaîne de création et d’animation


du service.

• En affranchissant ses clients de toutes les contraintes d’exploitation technique.

• En accompagnant ses clients dans l’animation de leur service WAP. En y intégrant les
solutions de paiements adéquates sur les terminaux Android et iPhone.

1.3 Présentation du projet

Ce projet s’inscrit dans le cadre de stage de fin d’études pour l’obtention du diplôme
de licence fondamentale en sciences informatique à l’institut supérieure de l’informatique et
mathématiques de Monastir, Ce stage s’est déroulé au sein de « Dot IT » pour une période de
4 mois du 15 février 2021 au 15 juin 2020.

1.3.1 Contexte général et problématique

La réussite des élèves dépend de la qualité des informations. Les maîtres(ses) doivent bien
préparer leurs cours afin de bien passer l’information d’une façon pédagogique sans oublier la
nécessité de choisir des exercices d’application convenable.

Durant ces deux dernières années l’apprentissage primaire rencontré des failles, je peux en
citer quelques-uns :

— Les cours restent incomplets et insuffisants : vu que les cours ont été assisté parfois en
classe et parfois en ligne.

— Manque des exercices de pratiques : l’apprentissage des élèves n’est pas renforcé vu
qu’il n’est basé que sur des cours et parfois un petit nombre d’exercices.

Page 6
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

Face à cette problématique, une plate-forme d’apprentissage en ligne pour les éléves s’avère
être très efficace et efficient. En effet, mon projet de fin d’études, consiste à concevoir et
développer une application publique dédiée à renforcer l’apprentissage des éléves afin d’améliorer
le niveau de nos futures cadres.

1.3.2 Travail demandé

Cette plateforme vise à faciliter l’éducation de nos éléves de l’école primaire, en leurs
offrants des cours en ligne, des exercices d’application, des quizs et des examens.

Mon travail consiste à réaliser :

— Module de création des cours : les maîtres(ses) inscrits dans la plateforme ajoutent des
cours de toutes les matières pour les différents niveaux d’éducation primaire. Ces cours
seront accessibles par n’importe quel éléve ayant un compte dans l’application.

— Module de création des exercices : les maîtres(ses) ajoutent des exercices qui correspond
à un cour donné afin de renforcer l’apprentissage.

— Module de création des examens : les maîtres(ses) importent des examens liés à une
matière donnée avec leurs corrections.

— Module de création des quizs : les maîtres(ses) crée des questions pour formuler des
quizs.

1.4 Analyse et critique de l’existant

1.4.1 Analyse de l’existant

D’après l’étude que j’ai fait, il existe dans notre pays tant des plateformes d’éducation en
ligne. Généralement, chaque école privée possède une plateforme en ligne gui gère l’éducation

Page 7
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

de l’éléve et la relation entre le(s) maître(ses) et les parents . Sinon il y a d’autres qui ne
dépendent pas à une école précise, dont on peut cité quelques-uns.

1.4.1.1 Topnet School

« TOPNET SCHOOL » [2], un service exclusif pour les clients TOPNET leur permettant
de bénéficier d’une plateforme d’éducation en ligne pour tous les niveaux, grâce à une varieté
de cours et exercices en ligne conforme au programme de l’éducation nationale.

« Topnet School » contient :

— Un contenu riche et conforme au programme de l’éducation nationale validées par des


inspecteurs pédagogiques

— Des outils ludiques :Activités interactives, Quiz,...

— Des indicateurs de suivi pour garantir un suivi de progression et d’assiduité

— Un espace collaboratif d’éducation via un réseau social dédié permettant aux élèves
d’interagir entre eux et avec des professeurs et partager des documents et activités

F IGURE 1.1: Topnet School

Page 8
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

1.4.1.2 Drousi.tn

« Drousi.tn » [*] Droussi est une plateforme d’enseignement et d’apprentissage en ligne


destinée à tout le monde. Les cours sont tutorés par des agrégés, des profs d’enseignement et
des experts à travers des vidéos et des visioconférences et restent accessibles en replay sans
limite de temps.

F IGURE 1.2: kademia.tn

1.4.1.3 Kademia.tn

« Kademia.tn » [3] est une plateforme d’apprentissage à distance conforme au programme


national tunisien. Cette plateforme propose des cours numériques et interactifs pour permettre
aux élèves des collèges et des lycées d’accéder à un enseignement personnalisé qui respecte
leur rythme d’apprentissage et répond à leurs besoins et exigences.

Page 9
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

F IGURE 1.3: kademia.tn

1.4.1.4 Monprof.tn

« Monprof.tn » [4] est une plateforme d’enseignement en ligne proposé par la startup
Estifida comme solution pour aider enseignants à finir leur mission durant la crise Covid
19. Cette plateforme est un complément aux plateformes des visioconférences, des groupes
Facebook et aux cours diffusés à la télévision nationale. Elle garantit à l’élève de poursuivre
son apprentissage et travailler sur des contenus interactifs envoyés par son enseignant et
recevoir des cours et des exercices conformes au programme de l’éducation nationale.

Page 10
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

F IGURE 1.4: Monprof.tn

1.4.2 Critique de l’existant

le tableau 1.1 présente les avantages et les inconvénients de chaque solution sité dans la
partie d’avant :

Solution Avantages Inconvénients

Topnet School

— Vidéos de cours — Solution payante

— Fiches de résumés de cours

— Exercices et devoirs corrigés

— Activités interactives

— Chat, vidéo, audio,...

Page 11
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

Drousi.tn

— Solution ergonomique — Rien n’est fonctionnel

— Conforme au programme de sauf l’inscription et

l’éducation nationnal (selon l’authentification qui sont à

la description publié) leur tour possédent des bugs

Kademia.tn

— Conforme au programme de — Solution payante


l’éducation nationnal — Solution spécifique au
— Traite tous les niveaux parascolaire "Académie de
scolaires (préscolaire, école l’excellence "
primaire, collége, lycée)

Monprof.tn

— Conforme au programme de — chaque éléve dépend d’un


l’éducation nationnal enseignant qui gére les

— Facilite l’échange des documents à partager....

documents entre l’enseignant — Les informations ne sont pas


et l’éléve accessibles à n’importe quel
éleve

TABLE 1.1: Critique des solutions existantes

Page 12
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

1.4.3 Solution proposée et objectifs

Puisque la plupart des solutions sont soit payantes soit incomplet, je propose de mettre en
oeuvre une application web d’éducation en ligne qui va offrir un espace pour l’administrateur
les maîtres(ses) et les élèves.
Parmi les objectifs de mon application :

— Renforcer l’apprentissage des éléves.

— Faciliter le partage des cours conforme au programme d’éducation national et des exercices
de pratique convenables.

— Assurer un supplément de formation à nos éléves vu les conditions de l’éducation causé


par la crise du Covid-19.

1.5 Méthodologie adoptée

Avant la réalisation d’un projet informatique, il est nécessaire de choisir une méthode de
travail et un procès de suivi afin d’aboutir à la fin un logiciel fiable.
J’ai choisi de travailler avec la méthode « Cycle en V ».

En effet, le cycle v s’agit fondamentalement d’une méthode traditionnelle qui s’adapte à


des différents projets. Il implique le même principe de gestion séquentielle et linéaire.

1.5.1 Principes

Le cycle en V est une méthode d’organisation très connue utilisé dans différents processus
de développement, notamment dans le développement de logiciels.
C’est l’une des premières méthodes qu’on apprend à l’école après le cycle en cascade, et à ce
jour, il reste le cycle de vie le plus utilisé.

Page 13
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

C’est un cycle de vie orienté test : A chaque activité créative (spécification, conception et
codage) correspond une activité de vérification (validation, intégration, tests unitaires).

1.5.2 Vue d’ensemble

De manière simplifiée, le cycle en V comprend les grandes étapes que l’on retrouve, pour
la plupart, dans le modèle en cascade

— Une première série d’étapes : le flux descendant, vise à détailler le produit jusqu’à sa
réalisation. Il comprend l’expression des besoins, l’analyse, la conception, puis la mise
en œuvre.

— Une deuxième série d’étapes : le flux ascendant, vise à valider le produit jusqu’à sa «
recette », c’est-à-dire son acceptation par le client. Il comprend principalement une série
de tests jusqu’à pouvoir valider que le produit répond au besoin et aux exigences.

1.5.3 Synthèse des étapes

Le cycle en V est constitué de 8 étapes qui ont toutes leur importance.

— Expression des besoins :


Le client exprime son besoin, en décrivant les usages correspondant au produit fini tel
qu’il peut l’imaginer. Cela doit répondre aux questions « Que veut-on ? » et « À quel
coût ? ».

— Spécifications fonctionnelles :
C’est le cahier des charges exact du produit final, tel que le désire le client. Il doit couvrir
l’intégralité des cas d’utilisation du produit, en expliquant ce qu’il doit faire et non pas
comment il va le faire.

— Spécifications techniques :
C’est une traduction des spécifications fonctionnelles en termes techniques. C’est durant

Page 14
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

l’élaboration des specs techniques que sont choisies les technologies à mettre en œuvre
pour développer le produit, et qu’est conçue l’architecture logicielle du produit.

— Codage :
C’est la phase de réalisation à proprement parler, pendant laquelle sont développées des
briques qui sont ensuite assemblées pour créer le produit fini.

— Tests unitaires :
Ces tests interviennent à un niveau « atomique ». Chaque brique logicielle a été modélisée
puis codée durant les étapes précédentes. Les tests unitaires assurent que ces briques
respectent de manière individuelle leur cahier des charges.

— Tests d’intégration :
Ce sont là les premiers tests grandeur nature du produit fini. On s’assure qu’il suit les
indications des spécifications techniques.

— Validation :
Le produit est à ce moment testé en regard de la spécification fonctionnelle. Toutes les
utilisations qui y ont été définies doivent pouvoir se vérifier dans les faits.

— Mise en production et recette :


Le produit est vérifié une dernière fois en préproduction, avant d’être mis en production.
Le client procède à la recette, pour vérifier que son expression de besoin est respectée.

Page 15
CHAPITRE 1. PRÉSENTATION DU CADRE DU PROJET

F IGURE 1.5: Cycle en V

1.6 Conclusion

Durant ce chapitre, j’ai présenté en premier lieu l’organisme d’accueil, ensuite, j’ai présenté
le projet de façon à donner une idée claire du travail qui sera réalisé par la suite, j’ai cité les
solutions existant dans le marché avec une étude critique et j’ai clôturé avec le choix de la
méthodologie qui sera utilisée tout au long du projet. Dans cette optique, j’entamerai dans le
chapitre suivant l’analyse et spécification des besoins.

Page 16
Chapitre

2
Analyse et spécification des besoins

Sommaire
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2 Identification des acteurs . . . . . . . . . . . . . . . . . . . . . 18
2.3 Spécification des besoins fonctionnels . . . . . . . . . . . . . 19
2.4 Diagramme de cas d’utilisation global . . . . . . . . . . . . . 20
2.5 Raffinement des cas d’utilisation . . . . . . . . . . . . . . . . 22
2.5.1 Espace Administrateur . . . . . . . . . . . . . . . . . . . . . . . 22
2.5.2 Espace Maître(sse) . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5.3 Espace Eléve . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.6 Spécification des besoins non fonctionnels . . . . . . . . . . . 33
2.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Page 17
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

2.1 Introduction

La capture des besoins se considère comme étant une activité majeure sur laquelle le projet
peut avoir un élan remarquable. Tout au long de ce chapitre , j’entamerai mon travail avec
les acteurs intervenants dans le système en identifiant leurs besoins fonctionnels représentés
dans des diagrammes de cas d’utilisation. De même, je prêterai attention aux besoins non
fonctionnels du produit logiciel.

2.2 Identification des acteurs

Quand on parle d’un acteur , on désigne toute personne ou machine voire un autre système
qui s’engage directement avec le système principal en vue d’accomplir un besoin bien déterminé.
le tableau 2.1 présente les principaux acteurs :

Acteurs Description du profil

Administrateur C’est le responsable de notre plateforme ayant déjà un compte qui lui permet
de gérer des maîtres, des éléves, des niveaux et des matiéres.

Maître C’est un acteur qui sera inscrit pour créer un compte qui lui permet de gérer
des cours, des exercices, des examens, des questions et des quiz .

Eléve C’est un acteur qui sera inscrit pour créer un compte qui lui permet de
consulter des cours, s’inscrire à un/plusieurs cour(s), télécharger des exercices
et des examens et passer des quizs .

TABLE 2.1: Description des acteurs

Page 18
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

2.3 Spécification des besoins fonctionnels

— S’inscrire :
L’utilisateur (maître/éléve) pourra créer un compte dans la plateforme tout en identifiant
ses coordonnées afin de jouir de ses fonctionnalités.

— S’authentifier :
Chaque acteur doit s’authentifier afin d’accéder à son espace privé et bénéficier de ses
fonctionnalités.

— Gérer les éléves :


L’administrateur de la plateforme pourra confirmer, modifier ou supprimer le profil d’un
éléve et consulter la liste des éléves existants dans la base de données.

— Gérer les maîtres :


L’administrateur de la plateforme pourra confirmer, modifier ou supprimer le profil d’un
maître et consulter la liste des maîtres existants dans la base de données.

— Gérer les niveaux :


L’administrateur de la plateforme pourra ajouter, modifier ou bien supprimer un niveau
et consulter la liste des niveaux existants dans la base de données.

— Gérer les matiéres :


L’administrateur de la plateforme pourra ajouter, modifier ou bien supprimer une matiére
et consulter la liste des matiéres existants dans la base de données.

— Gérer les cours :


Le maître pourra ajouter, modifier ou supprimer un cour, et consulter la liste des cours
existants dans la base de données.

— Gérer les exercices :


Le maître pourra ajouter, modifier ou supprimer un exercice, et consulter la liste des
exercices existants dans la base de données.

Page 19
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

— Gérer les examens :


Le maître pourra importer, modifier ou supprimer un examen avec sa correction, et
consulter la liste des examens existants dans la base de données.

— Gérer les questions :


Le maître pourra ajouter, modifier ou supprimer une question , et consulter la liste des
questions existants dans la base de données.

— Gérer les quizs :


Le maître pourra ajouter, modifier ou supprimer un quiz, et consulter la liste des quizs
existants dans la base de données.

— Consulter cour :
L’éléve pourra consulter un cour et le télécharger en PDF.

— Télécharger exercice :
L’éléve pourra télcharger un exercice et sa correction.

— Télécharger examen :
L’éléve pourra télcharger un examen et sa correction.

— Passer un quiz :
L’éléve, pourra passer un quiz ************(à détailler).

2.4 Diagramme de cas d’utilisation global

La figure 2.1 montre le diagramme des cas d’utilisation globale.

Page 20
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

F IGURE 2.1: Diagramme des cas d’utilisation de la plateforme

Page 21
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

2.5 Raffinement des cas d’utilisation

Chaque acteur du système possède un espace spécifique où il peut bénéficier de ses fonctionnalités
et réaliser ses tâches.

2.5.1 Espace Administrateur

L’administrateur de la plateforme doit avoir la possibilité de :

— Gérer maîtres(ses) : confirmer les maîtres(ses) qui ont été inscrit à la plateforme, les
modifier ou bien les supprimer

— Gérer élèves : confirmer les élèves qui ont été inscrit à la plateforme, les modifier ou
bien les supprimer

— Gérer niveaux : créer les niveaux d’éducation disponible dans la plateforme, les modifier
ou bien les supprimer

— Gérer matières : créer les matières qui doivent exister, les modifier ou bien les supprimer

La figure 2.2 ci-dessous représente le raffinement des cas d’utilisation du l’administrateur :

Page 22
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

F IGURE 2.2: Diagramme des cas d’utilisation raffiné de l’administrateur

2.5.1.1 Diagramme de cas d’utilisation "Gérer les maîtres(ses)"

L’administrateur a la possibilité de gérer un(e) maître(sse). Dans ce cas, il peut :

— Confirmer un(e) maître(sse) inscrit à la plateforme en vérifiant ses coordonnées.

— Modifier un(e) maître(sse)

— Supprimer un(e) maître(sse)

Page 23
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

F IGURE 2.3: Diagramme de cas d’utilisation "Gérer les maîtres(ses)"

Cas d’utilisation "Confirmer Profil"

Cas d’utilisation Confirmer Profil

Résume Ce cas d’utilisation commence lorsqu’un administrateur souhaite


vérifier les coordonnées d’un(e) maître(sse)

Acteurs Administrateur

Préconditions L’administrateur doit s’authentifier afin d’accéder au plateforme

Postconditions Confirmation du profil d’un(e) maître(sse)

Scénario nominal

1. L’administrateur accède à la liste des maîtres(ses)


2. L’administrateur choisit un(e) maître(sse) pour afficher ses
coordonnées
3. L’administrateur vérifie les coordonnées du profil

Page 24
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

Scénario alternatif 3.1 Données invalides :

— L’administrateur retourne vers la liste des maîtres(ses).

— L’administrateur désactive le maître(sse) jusqu’à ce qu’il corrige


ses informations

TABLE 2.2: Description textuelle du cas d’utilisation "Confirmer Profil"

2.5.1.2 Diagramme de cas d’utilisation "Gérer les matiéres"

L’administrateur a la possibilité de gérer une matiére. Dans ce cas, il peut :

— Ajouter une matière qui doit être associé à un niveau d’éducation bien précis

— Modifier une matiére

— Supprimer une matiére

F IGURE 2.4: Diagramme de cas d’utilisation "Gérer les matiéres"

Cas d’utilisation "Ajouter matiére"

Page 25
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

Cas d’utilisation Ajouter matiére

Résume Ce cas d’utilisation commence lorsqu’un administrateur souhaite créer


une nouvelle matiére.

Acteurs Administrateur

Préconditions L’administrateur doit s’authentifier afin d’accéder à l’application

Postconditions Création d’une nouvelle matiére

Scénario nominal

1. L’administrateur accède à la liste des matiéres


2. L’administrateur demande de créer une matiére
3. L’administrateur remplit les champs nécessaire et valide ensuite
sa demande via le bouton «Ajouter»
4. Le système vérifie les données saisies
5. L’application ajoute la nouvelle matiére, et affiche un message de
succès pour l’administrateur

Scénario alternatif 4.1 Données invalides :

— Retour vers l’étape 3.

TABLE 2.3: Description textuelle du cas d’utilisation "Ajouter matiére"

2.5.2 Espace Maître(sse)

Le Maître(sse) inscrit dans la plateforme doit avoir la possibilité de :

— Gérer cours : ajouter, modifer ou bien supprimer un cour

— Gérer exercices : ajouter , modifer ou bien supprimer un exercice

— Gérer examens : ajouter, modifer ou bien supprimer un examen avec sa correction

Page 26
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

— Gérer questions : ajouter, modifer ou bien supprimer une question

— Gérer quizs : Créer, modifer ou bien supprimer un quiz

La figure 2.5 ci-dessous représente le raffinement des cas d’utilisation du maître(sse) :

F IGURE 2.5: Diagramme des cas d’utilisation raffiné du maître(sse)

Page 27
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

2.5.2.1 Diagramme de cas d’utilisation "Gérer cours"

Le maître(sse) a la possibilité de gérer un cour. Dans ce cas, il peut :

— Ajouter un cour

— Modifier un cour

— Supprimer un cour

F IGURE 2.6: Diagramme de cas d’utilisation "Gérer cours"

Cas d’utilisation " Modifier un cour"

Cas d’utilisation Modifier un cour

Résume Ce cas d’utilisation commence lorsqu’un(e) maître(sse) souhaite


modifier un cour.

Acteurs maître(sse)

Page 28
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

Préconditions Le maître(sse) doit s’authentifier afin d’accéder à l’application

Postconditions Modification d’un cour

Scénario nominal

1. Le maître(sse) accède à la liste des cours


2. Le maître(sse) choisit un cour et demande de le modifier
3. Le maître(sse) modifie les champs nécessaire et valide ensuite sa
demande via le bouton «Modifier»
4. Le système vérifie la mise à jour des données
5. L’application modifie le cour, et affiche un message de succès
pour le maître(sse)

Scénario alternatif 4.1 Données invalides :

— Retour vers l’étape 3.

TABLE 2.4: Description textuelle du cas d’utilisation "Modifier un cour "

2.5.2.2 Diagramme de cas d’utilisation "Gérer quiz"

Le maître(sse) a la possibilité de gérer un quiz. Dans ce cas, il peut :

— Ajouter un quiz en créant les questions correspondantes

— Modifier quiz

— Supprimer quiz

Page 29
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

F IGURE 2.7: Diagramme de cas d’utilisation "Gérer quiz"

Cas d’utilisation "Supprimer quiz"

Cas d’utilisation Supprimer quiz

Résume Ce cas d’utilisation commence lorsqu’un administrateur souhaite


supprimer un quiz.

Acteurs Maître(sse)

Préconditions Le maître(sse) doit s’authentifier afin d’accéder à l’application

Postconditions Suppression d’un quiz

Page 30
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

Scénario nominal

1. Le maître(sse) accède à la liste des quizs


2. Le maître(sse) choisit un quiz et demande de le supprimer via le
bouton «Supprimerr»
3. Le système récupére le quiz à supprimer
4. L’application supprime le quiz, et affiche un message de succès
pour le maître(sse)

Scénario alternatif 3.1 quiz introuvable :

— Retour vers l’étape 2).

TABLE 2.5: Description textuelle du cas d’utilisation "Supprimer quiz"

2.5.3 Espace Eléve

L’éléve de la plateforme doit avoir la possibilité de :

— Consulter cour

— Télécharger exercice

— Télécharger examen

— Passer quiz

La figure 2.8 ci-dessous représente le raffinement des cas d’utilisation du l’éléve :

Page 31
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

F IGURE 2.8: Diagramme des cas d’utilisation raffiné du l’éléve

Cas d’utilisation "Consulter cour"

Cas d’utilisation Consulter cour

Résume Ce cas d’utilisation commence lorsqu’un éléve souhaite Consulter un


cour.

Acteurs Eléve

Préconditions L’éléve doit s’authentifier afin d’accéder à l’application

Postconditions Consultation d’un cour

Page 32
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

Scénario nominal

1. L’éléve accède à la liste des cours


2. L’éléve choisit un cour et demande d’accéder à leur détail
3. Le système récupére le cour à consulter
4. L’éléve demande de consulter le cour en validant sa demande via
le bouton «Consulter le cour»
5. L’application affiche le cour

Scénario alternatif 3.1 cour introuvable :

— Retour vers l’étape 2.

TABLE 2.6: Description textuelle du cas d’utilisation "Consulter cour"

2.6 Spécification des besoins non fonctionnels

Ces besoins sont les contraintes techniques exigées et les fonctionnalités nécessaires pour
rendre la plateforme plus performante et qui se résument généralement en :

— Ergonomie : les interfaces utilisateur doivent être conviviales et faciles à exploiter par
les utilisateurs.

— Fiabilité : le fonctionnement de l’application doit être correct et ne contient pas des


bogues.

— Performance : Les fonctionnalités de l’application répond à toutes les exigences des


usagers d’une manière optimale.

— Extensibilité : l’application doit faciliter l’ajout de nouvelles fonctionnalités au moindre


coût.

Page 33
CHAPITRE 2. ANALYSE ET SPÉCIFICATION DES BESOINS

2.7 Conclusion

Au fin de ce chapitre, j’ai entamé le travail avec l’identification des acteurs impliqués
dans le système. Puis, j’ai identifié les besoins fonctionnels à travers des scénarios et des
diagrammes de cas d’utilisation sans oublier les besoins non fonctionnels.
Durant le chapitre suivant, je me intéresserai à la phase de conception.

Page 34
Chapitre

3
Conception

Sommaire
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.2 Langage de modélisation utilisée . . . . . . . . . . . . . . . . 36
3.3 Diagramme de classes . . . . . . . . . . . . . . . . . . . . . . . 37
3.4 Diagramme de séquence . . . . . . . . . . . . . . . . . . . . . 39
3.4.1 Cas d’utilisation "S’authentifier" . . . . . . . . . . . . . . . . . 39
3.4.2 Cas d’utilisation "S’inscrire" . . . . . . . . . . . . . . . . . . . . 40
3.4.3 Cas d’utilisation "Modifier Eléve" . . . . . . . . . . . . . . . . . 40
3.4.4 Cas d’utilisation "Ajouter Quiz" . . . . . . . . . . . . . . . . . 41
3.4.5 Cas d’utilisation "Supprimer Question" . . . . . . . . . . . . . 42
3.4.6 Cas d’utilisation "Télécharger Examen" . . . . . . . . . . . . . 43
3.5 Diagramme de déploiement . . . . . . . . . . . . . . . . . . . 44
3.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Page 35
CHAPITRE 3. CONCEPTION

3.1 Introduction

Après avoir réalisé l’analyse et spécification des besoins du projet, j’avance, dans ce
chapitre, dans la préparation de la phase de réalisation et ce en proposant une conception
plus détaillée pour mon système.

3.2 Langage de modélisation utilisée

UML est un langage de modélisation graphique normalisé, basé sur les concepts orientés
objets. UML offre un standard de modélisation réfléchir, spécifier, visualiser, analyser, construire
et communiquer les documents nécessaires au bon développement oriente objets d’un logiciel.
Sans un moyen de communication standard tel que UML, il serait extrêmement difficile non
seulement de comprendre ce que font les autres personnes impliquées dans le développement,
mais aussi de transmettre les informations d’une activité à l’autre, d’une phase à l’autre et
d’une version à l’autre.

Page 36
CHAPITRE 3. CONCEPTION

L‘utilisation des modèles « UML » sert à :

— Décomposer le processus de développement

— Mettre en relation les experts des métiers et les analystes

— Coordonner les équipes d’analyse de la réalisation

— Coordonner les équipes d’analyse de la réalisation

— Séparer l’analyse de la réalisation

— Prendre en compte l’évolution de l’analyse et du développement

3.3 Diagramme de classes

Le diagramme de classes est une composante essentielle dans la conception de notre


système. En effet, ce dernier permet de visualiser, très facilement, la manière avec laquelle
notre base de données est conçue et ainsi la manière avec laquelle sont représentées les
données de notre application.[4]

Après l’étude approfondie des besoins et des cas d’utilisation, j’ai dégagé les entités de
mon projet qui se résument dans le diagramme des classes suivantes :

Page 37
CHAPITRE 3. CONCEPTION

F IGURE 3.1: Diagramme de classes

Page 38
CHAPITRE 3. CONCEPTION

3.4 Diagramme de séquence

Le diagramme de séquence [5] est un diagramme d’interaction qui se concentre sur l’


échange de messages entre plusieurs lignes de vie .Il décrit une interaction en se concentrant
sur la séquence des messages qui sont échangés, ainsi que leurs spécifications d’occurrence
correspondantes sur les lignes de vie.

3.4.1 Cas d’utilisation "S’authentifier"

Afin d’accéder à son espace et jouir de ses fonctionnalités, l’utilisateur doit s’authentifier
en premier lieu.

F IGURE 3.2: Diagramme de séquence du cas d’utilisation "S’authentifier"

Page 39
CHAPITRE 3. CONCEPTION

3.4.2 Cas d’utilisation "S’inscrire"

Afin de créer un compte, le maître ou bien l’éléve, peut accéder à la page d’inscription et
remplit un formulaire afin de saisir des coordonnées.

F IGURE 3.3: Diagramme de séquence du cas d’utilisation "S’inscrire"

3.4.3 Cas d’utilisation "Modifier Eléve"

Afin de modifier un éléve, l’administrateur, peut accéder à la page de modification et met


à jour ces coordonnées.

Page 40
CHAPITRE 3. CONCEPTION

F IGURE 3.4: Diagramme de séquence du cas d’utilisation "Modifier Eléve"

3.4.4 Cas d’utilisation "Ajouter Quiz"

Afin d’ajouter un quiz, le maître(sse), peut accéder à la page d’ajout et et remplit les
champs nécéssaire.

Page 41
CHAPITRE 3. CONCEPTION

F IGURE 3.5: Diagramme de séquence du cas d’utilisation "Ajouter Quiz"

3.4.5 Cas d’utilisation "Supprimer Question"

Afin de supprimer une question, le maître(sse), peut accéder à la liste des questions et
choisit laquelle à supprimer.

Page 42
CHAPITRE 3. CONCEPTION

F IGURE 3.6: Diagramme de séquence du cas d’utilisation "Supprimer Question"

3.4.6 Cas d’utilisation "Télécharger Examen"

Afin de télécharger un examen, l’éléve, peut accéder à la liste des examens et choisit lequel
à télécharger.

Page 43
CHAPITRE 3. CONCEPTION

F IGURE 3.7: Diagramme de séquence du cas d’utilisation "Télécharger Examen"

3.5 Diagramme de déploiement

Le diagramme de déploiement [8] est un diagramme de structure qui montre l’architecture


du système en tant que déploiement (distribution) d’artefacts logiciels vers des cibles de
déploiement.
La figure 3.15 ci-dessous décrit l’architecture globale nécessaire pour la mise en place de notre

Page 44
CHAPITRE 3. CONCEPTION

application.

F IGURE 3.8: Diagramme de déploiement

Page 45
CHAPITRE 3. CONCEPTION

3.6 Conclusion

J’ai présenté, tout au long de ce chapitre, le système souhaité à travers un certain nombre
de diagrammes. Je présente, dans le prochain chapitre, la phase de réalisation et de validation
qui mèneront à la mise en oeuvre de mon système.

Page 46
Chapitre

4
Réalisation

Sommaire
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.2 Architecture de l’application . . . . . . . . . . . . . . . . . . . 48
4.2.1 Architecture MVC . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.2.2 Architecture physique du projet . . . . . . . . . . . . . . . . . . 49
4.3 Environnement de travail . . . . . . . . . . . . . . . . . . . . . 50
4.3.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . 50
4.3.2 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . 50
4.4 Choix technologique . . . . . . . . . . . . . . . . . . . . . . . . 52
4.5 Développement de la plateforme d’éducation en ligne . . . 53
4.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Page 47
CHAPITRE 4. RÉALISATION

4.1 Introduction

L’implémentation est la phase la plus importante après celle de la conception. Cette phase
consiste à transformer le modèle conceptuel établi précédemment en des composants logiciels
formant mon système. Ce chapitre qui est le dernier volet de ce rapport vient pour présenter
l’environnement matériel et logiciel, les choix technologiques réalisés ainsi que le résultat de
l’implémentation.

4.2 Architecture de l’application

4.2.1 Architecture MVC

L’architecture à suivre dans mon projet est l’architecture MVC.


Le modèle-vue-contrôleur (en abrégé MVC, de l’anglais Model-View-Controller) est un patron
d’architecture et une méthode de conception qui organise l’interface homme-machine (IHM)
d’une application logicielle." Le principe d’une telle structure est de diviser l’application en 3
parties distinctes :

— Les modèles : ils représentent les données de l’application et permettent l’interaction


avec la base de données (ou les web services, etc...).

— Les vues : ce sont les représentations des résultats de la requête que l’utilisateur a
effectuée.

— Les contrôleurs : ils interceptent toutes les requêtes faites par les utilisateurs.

Page 48
CHAPITRE 4. RÉALISATION

F IGURE 4.1: Architecture MVC [10]

4.2.2 Architecture physique du projet

Mon application sera basée sur une architecture MVC.Elle est composée d’une couche
physique de données (base de données), d’une couche accès aux données qui permet la manipulation
des données, d’une couche service qui contient les traitements métiers, d’une couche présentation
(IHM).
La figure 4.2 présente l’architecture de mon application Web.

Page 49
CHAPITRE 4. RÉALISATION

F IGURE 4.2: Architecture physique de l’application

4.3 Environnement de travail

4.3.1 Environnement matériel

Au cours de notre projet, j’ai utilisé un ordinateur portable qui dispose de cette configuration :

— Lenovo : Intel Core i5 @1.6Ghz, Ram : 20.00 Go, Stockage : 1To.

— Système d’exploitation : Windows 10 Pro N.

4.3.2 Environnement logiciel

Overleaf

Overleaf est une plate-forme en ligne gratuite permettant


d’éditer du texte en LATEX sans aucun téléchargement d’application.

Page 50
CHAPITRE 4. RÉALISATION

PhpStorm
PhpStorm est un éditeur pour PHP, HTML, CSS et JavaScript, édité par
JetBrains. Il permet d’éditer du code PHP pour les versions allant de la 5.3
à la 7.4

Gitlab
Git est un système de contrôle de versions open source qui contient
un ensemble d’outils logiciels. Il permet d’historiser différentes versions
d’un projet et facilite le travail collaboratif. Gitlab est une plateforme
totalement intégrée de développement logiciel qui fournit à votre équipe
la transparence, la rapidité, l’efficacité et cohésive de la discussion d’une nouvelle idée aux
productions, tous sur la même plateforme.

Wampserver
Wampserver permet d’installer et de gérer Apache, PHP, MySQL,
phpMyAdmin, Sqlite manager et un gestionnaire de services.Il permet
donc de faire tourner un serveur de développement pour des applications
en PHP sur votre ordinateur et permet la gestion SGBD relationnelle.

Microsoft Visio 2016


Microsoft Visio est un logiciel de diagrammes et de synoptiques pour
Windows qui fait partie de la suite bureautique Microsoft Office mais se
vend séparément.

Page 51
CHAPITRE 4. RÉALISATION

4.4 Choix technologique

En mesure de développer mon application, j’ai opté pour une multitude d’environnements
de développement présentés ci dessous :

PHP7
PHP est un langage de programmation libre, principalement utilisé pour
produire des pages Web dynamiques via un serveur HTTP, mais pouvant
également fonctionner comme n’importe quel langage interprété de façon
locale. PHP est un langage impératif orienté objet.

Symfony4
Symfony est un ensemble de composants PHP ainsi qu’un framework
MVC libre écrit en PHP. Il fournit des fonctionnalités modulables et
adaptables qui permettent de faciliter et d’accélérer le développement d’un
site web.

Bootstrap
Bootstrap est une collection d’outils utile à la création du design
(graphisme, animation et interactions avec la page dans le navigateur ...
etc. ...) de sites et d’applications web. C’est un ensemble qui contient
des codes HTML et CSS, des formulaires, boutons, outils de navigation et autres éléments
interactifs, ainsi que des extensions JavaScript en option.

HTML5/CSS3

Page 52
CHAPITRE 4. RÉALISATION

Le CSS et le HTML sont complémentaires. Avec le couple HTML/CSS,


on peut créer des pages web ou la structure du document se trouve dans le
fichier HTML tandis que la présentation se situe dans un fichier CSS.

JQuery
jQuery est une bibliothèque JavaScript libre et multiplateforme créée pour
faciliter l’écriture de scripts côté client dans le code HTML des pages
web3.

MySQL
MySQL est un serveur de bases de données relationnelles SQL développé
dans un souci de performances élevées en lecture, ce qui signifie qu’il est
davantage orienté vers le service de données déjà en place que vers celui
de mises à jour fréquentes et fortement sécurisées. Il est multi-thread et multi-utilisateur.

4.5 Développement de la plateforme d’éducation en ligne

Dans cette section, je vais présenter un certain nombre d’interfaces de mon application
pour visualiser quelques sénarios.

4.6 Conclusion

Dans ce chapitre, j’ai identifié les logiciels et les techniques que j’ai utilisées durant la
phase de développement de mon application. Puis, j’ai enrichi mon travail par des imprimes
écrans englobant la majorité des fonctionnalités.

Page 53
CONCLUSION GÉNÉRALE

************************************* ***************************************
******************************************************

Pour réaliser ce travail, j’ai commencé par définir le contexte général, létude et le critique
de l’existant ainsi que la méthodologie de travail adoptée. Ensuite j’ai effectué une analyse et
spécification des besoins auxquels devra répondre ma solution. Dans une étape suivante, j’ai
détaillé ma conception à travers le diagramme de classe, les diagrammes de séquences, et le
diagramme de déploiement. Puis, j’ai présenté l’architecture de l’application, l’environnement
de travail, les outils et les techniques utilisés tout au long de mon stage. Finalement, j’ai décrit
mon application à travers des captures d’écran.

Ce stage m’a permis d’approfondir mes connaissances théoriques, acquises tout au long
de ma formation. je me suis familiarisés avec le langage de modélisation UML, le framework
de développement Symfony 4 et le SGBD relationnel MySql.

De même, ce stage m’a offert l’opportunité de s’initier à la vie professionnelle et d’avoir


un début d’expérience significative.

Comme perspectives, plusieurs fonctionnalités peuvent être ajoutées à mon application


notamment ********************.

Page 54
WEBOGRAPHIE

[1] Dot IT Sousse [en ligne]. Visité en février 2021. Disponible sur :
http ://www.dotit-corp.com/

[2] Topnet School [en ligne]. Visité en Mars 2021. Disponible sur :
https ://www.topnet.tn/offres/detail/services-securite-/topnet-school

[3] kademia.tn [en ligne]. Visité en Mars 2021. Disponible sur :


https ://thd.tn/kademia-tn-cours-particulier-gratuits-et-payants-en-ligne/

[4] Monprof.tn [en ligne]. Visité en Mars 2021. Disponible sur :


https ://www.tekiano.com/2020/04/11/monprof-tn-la-plateforme-denseignement-en-ligne
-a-disposition-des-enseignants/

[5] Diagramme de classe [en ligne]. Visité en février 2020. Disponible sur :
https ://www.uml-sysml.org/diagrammes-uml-et-sysml/diagramme-uml/diagramme-de-classe/

[6] Diagramme de séquence [en ligne]. Visité en Mai 2020. Disponible sur :
https ://www.uml-diagrams.org/sequence-diagrams.html

[7] Diagramme de deploiement [en ligne]. Visité en Mai 2020. Disponible sur :
https ://www.uml-diagrams.org/deployment-diagrams-overview.html

Page 55

Vous aimerez peut-être aussi

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy