MFE Soulef Hlel
MFE Soulef Hlel
MFE Soulef Hlel
Présenté à
Réseaux et Télécommunications
Spécialité : service et sécurité réseaux
Réalisée Par
Soulef Hlel
Plateforme d'organisation et de
planification des formations certifiantes
Réseaux et Télécommunications
Spécialité : service et sécurité réseaux
Réalisée Par
Soulef Hlel
Plateforme d'organisation et de
planification des formations certifiantes
2
Dédicace
Du plus profond du mon cœur je dédie ce modeste
travail à : mes chers parents : Mon père ‘’Saleh’’, ma
mère ‘’Malika’’, qui ont assuré tous mes besoins
matériels et moraux,, qui n’ont jamais cessé de
m’encourager à finir mes études et qui m’ont aidé avec
un grand amour. Aucun dédicace ne serait exprimer la
profonde affectation et l’immense respect que je leur
avoue. Que ‘’DIEU’’ leur préserve une bonne santé et
longue vie
A mes chères sœurs et mon frère Pour leur tendresse,
que ‘’DIEU’’ nous unisse pour toujours.
3
Remerciements
Je veux remercier, en premier lieu, mes encadreurs qui
ont collaboré avec moi d’une manière étroite pour la
réalisation de ce rapport.
4
Titre : Plateforme d’organisation et de planification des formations certifiantes
RESUME :
Ce projet réalisé au sein de l’entreprise N3RD Tunisie consiste à développer une plateforme
de formation en ligne pour la gestion des formations, le développement, le renforcement des
compétences et pour le gain d’argent
ABSTRACT:
This project, realized within the N3RD company, is to develop an online training platform for
training management, development, competence building and for earn of money.
5
Table des matières
Introduction générale............................................................................................................................11
Chapitre 1 Présentation du cadre du projet...........................................................................................13
Introduction..........................................................................................................................................13
1. Présentation du lieu de travail et du projet............................................................................13
1.1. Description de l’existant :.....................................................................................................14
1.2. Critique de l’existant :..........................................................................................................15
2. Objectif du projet..................................................................................................................15
3. Présentation de l’application.................................................................................................16
Conclusion...........................................................................................................................................17
Chapitre 2 Analyse et spécification des besoins...................................................................................18
Introduction..........................................................................................................................................18
1. Les applications Web............................................................................................................18
1.1 Définition.............................................................................................................................18
2. Spécification des besoins......................................................................................................19
2.1 Besoins fonctionnels.............................................................................................................19
3. Développement :...................................................................................................................20
4. Les besoins non fonctionnels................................................................................................21
Conclusion...........................................................................................................................................22
Chapitre 3 : Etude conceptuelle............................................................................................................23
Introduction..........................................................................................................................................23
1. Principe de conception..........................................................................................................23
2. Les diagrammes des cas d’utilisateurs..................................................................................23
3. Composition du diagramme de cas d’utilisation...................................................................24
3.1 L’acteur de notre projet........................................................................................................24
4. Les différents cas d’utilisation..............................................................................................24
Diagramme des cas d’utilisation général..............................................................................26
5. Modèles statiques.................................................................................................................36
6. Modèle dynamique...............................................................................................................39
7. Diagramme d’activité...........................................................................................................47
Conclusion...........................................................................................................................................47
Chapitre 4 : Réalisation........................................................................................................................48
Introduction..........................................................................................................................................48
8. Environnement logiciel et langages utilisés..........................................................................48
9. Framework............................................................................................................................50
10. Développement de la solution...............................................................................................51
6
11. Interfaces graphiques principales partie back end.................................................................61
4.2. Authentification....................................................................................................................61
4.1.1. Interface d’accueil administrateur.....................................................................................62
4.1.2. Tables...............................................................................................................................64
12. Interface gestion de la plateforme.........................................................................................65
13. Interface comptes utilisateurs...............................................................................................67
14. Interface ajout utilisateurs.....................................................................................................68
15. Interface de gestion des formations......................................................................................69
8.1. Liste des formations..........................................................................................................69
8.2. Ajout/ modification d'une formation.................................................................................69
16. Interface de gestion des questions.........................................................................................70
17. Interface de gestion des vidéos.............................................................................................71
18. Interface de gestion de forum...............................................................................................72
19. Interface de gestion des réclamations...................................................................................73
20. Interfaces de gestion de profil...............................................................................................74
13.1. Consultation de profil...........................................................................................................74
Conclusion...........................................................................................................................................77
Conclusion et perspectives...................................................................................................................78
Listes des acronymes............................................................................................................................79
7
Liste des figures
8
Figure 32: Passer un test Qcm..................................................................................................60
Figure 33: Interface de chat......................................................................................................60
Figure 34 : Interface d'authentification.....................................................................................61
Figure 35: Interface d'accueil....................................................................................................62
Figure 36 : Notifications pour formations................................................................................63
Figure 37 : Notifications pour réclamations.............................................................................63
Figure 38: Interface de gestion de la plateforme......................................................................64
Figure 39: Liste comptes utilisateurs........................................................................................65
Figure 40 : Modifier utilisateurs...............................................................................................65
Figure 41 : Ajouter utilisateurs.................................................................................................66
Figure 42 : Liste des formations...............................................................................................67
Figure 43:Interface d’ajout / modification de formation..........................................................67
Figure 44: Interface liste des questions.....................................................................................68
Figure 45: Interface d’ajout des questions................................................................................69
Figure 46: Interface liste des vidéos.........................................................................................69
Figure 47: Liste des catégories.................................................................................................70
Figure 48: Liste des sujets.........................................................................................................70
Figure 49 : Gestion des réclamations........................................................................................71
Figure 50 : Affichage et envoi des émails................................................................................72
Figure 51: Consultation de profil..............................................................................................72
Figure 52: Changer nom email et mot de passe........................................................................73
Figure 53: Modifier l’information personnelle.........................................................................73
Figure 54: Modifier l'image......................................................................................................74
Figure 55: Interface formateur..................................................................................................74
Figure 56: Interface apprenant..................................................................................................75
9
Liste des tableaux
Tableau 1: Description du cas « S'authentifier »......................................................................30
Tableau 2: Description cas d'utilisation « Ajouter utilisateur »................................................31
Tableau 3 : Description cas d'utilisation « Modifier utilisateur ».............................................31
Tableau 4: Description cas d'utilisation « Supprimer utilisateur »...........................................32
Tableau 5: Description cas d'utilisation « Ajouter formation »................................................34
Tableau 6: Description cas d'utilisation « Animer une Formation »........................................34
Tableau 7: Description cas d'utilisation « Gérer le profil »......................................................35
Tableau 8: Description cas d’utilisation « Gérer la plateforme ».............................................36
Tableau 9: Description cas d'utilisation « Supprimer utilisateur »...........................................36
10
Introduction générale
Actuellement, les technologies Web ont permis aux développeurs de rendre le Web plus
générique et populaire, et surtout plus standard. De nos jours il est pris en charge par tous les
navigateurs.
Grâce à Internet, nous devons changer notre apprentissage « penser apprentissage rapide et
efficace », avec un minimum de problèmes d’organisation, de logistique et surtout de perte de
temps. Ce nouveau mode d’apprentissage est le e-learning.
Le e-Learning, est un système d'apprentissage formalisé spécialement conçu pour être utilisé à
distance en utilisant la communication électronique. Parce que l'apprentissage à distance est
moins coûteux à supporter et n'est pas contraint par des considérations géographiques, il offre
des opportunités dans des situations où l'éducation traditionnelle a des difficultés à
fonctionner. Les élèves ayant des problèmes de planification ou de distance peuvent en
bénéficier, tout comme les employés, car l'enseignement à distance est plus flexible en termes
de temps et peut être livré pratiquement n'importe où.
Le projet qui nous a été ainsi confié consiste à développer une plateforme de formation
personnalisée pour la gestion des formations, qui aide les formateurs à gérer leurs formations et
les apprenants à l'apprentissage. Le système à réaliser comporte plusieurs-fonctionnalités parmi
les quelles ; nous trouvons les fonctionnalités de gestion/ en premier lieu/, et les
fonctionnalités$ de communication/ en deuxième lieu.
11
Le quatrième chapitre sera consacré à la réalisation du portail en plus d'une description
des interfaces du système.
Enfin, la conclusion générale viendra rappeler le bilan de nos travaux et les résultats obtenus,
puis énoncera les perspectives de nos travaux.
12
Chapitre 1 Présentation du cadre du projet
Introduction
Dans ce chapitre introductif, nous présentons dans un premier temps le cadre général du projet et
l’environnement de stage. Par la suite nous décrivons les principaux objectifs à atteindre. En
dernier lieu nous présentons la planification temporelle.
13
Métiers :
Développement de sites et applications web pour tout business.
Développement des solutions web personnalisées.
Conseils.
Boutiques en ligne et e-commerce.
Design sur mesure.
Création multimédia.
Infogérance (hébergement, gestion d’infrastructure…).
Création d’outils collaboratifs.
Optimisation pour les plateformes mobiles.
Création d’applications mobiles.
Méthode de suivi :
N3RD utilise la méthode agile afin de mettre le client au centre du processus. En validant étape
par étape le développement fonctionnel du projet, les ingénieurs se placent comme CTO (Chief
Technology Officer) afin de contribuer pleinement à la progression du projet.
L’accompagnement et le conseil technique permettent de garantir la pérennité des offres
commerciales.
Compétences Techniques :
Analyse des besoins.
Conceptions et mise en place des bases de données.
Identification des spécifications.
Rédaction des cahiers des charges et des spécifications techniques.
Web design.
Développement d’interfaces Back/Middle/Front office.
Intégration.
Tests unitaires.
Maintenance évolutive.
Optimisation du référencement.
14
La formation continue se fait actuellement de façon traditionnelle : cours, apprenants et
tuteurs sur place. Dans ce cadre plusieurs plateformes de formation en ligne se subdivisent en
plateformes « propriétaires » et plateformes « libres ».
2. Objectif du projet
Ce projet a pour objectif de créer une plateforme qui assure les fonctionnalités suivantes :
Administrateur :
S’authentifier.
Consulter la liste des utilisateurs (apprenant, formateur).
Répondre aux réclamations.
Consulter la liste des formations existantes.
Supprimer l’utilisateur non actif (apprenant, formateur).
Ajouter une formation.
Pour apprenant :
S’authentifier.
Gérer son profil (mettre à jour ses informations Personnels et la liste
des formations).
S’inscrire à une formation.
Consulter la liste des formations proposées.
Réclamer un problème.
15
Payer d’une formation.
Télécharger et uploader des documents.
Tchater avec ses collègues et le formateur.
Pour le Formateur :
S’inscrire au site de formation.
S’authentifier.
Gérer son profil.
Ajouter une formation.
Consulter la liste des apprenants par Formation.
Réclamer un problème.
Animer une formation.
Uploader un cours.
Uploader et télécharger des documents.
Etapes de réalisation :
Pour avoir une idée plus précise de mon travail tout au long du stage, voici un diagramme de
Gantt qui récapitule le déroulement des missions qui m’ont été demandées.
Le diagramme de Gantt [N1] est un outil de planification des tâches nécessaire pour la
réalisation d'un projet quel que soit le secteur d’activité. Il permet de visualiser l’avancement des
tâches d’un projet de manière simple et concise, de planifier et suivre les besoins en ressources
humaines et matérielles et donc de pouvoir suivre l’avancement du projet.
Le diagramme suivant va représenter les tâches principales à réaliser dans notre projet.
16
3. Présentation de l’application
Notre objectif consiste à créer une plateforme d’E-Learning qui répond au besoin du
formateur et des apprenants à la fois et de manière à :
Conclusion
Dans ce chapitre, nous avons donné la présentation générale du projet dont nous avons
détaillé les objectifs et les différentes étapes à réaliser en développant cette application. Le
chapitre qui suit va couvrir l’étude préliminaire
17
Chapitre 2 Analyse et spécification des
besoins
Introduction
Dans ce chapitre, nous allons procéder à une étude préliminaire de notre projet ainsi d’une
analyse de l’existant. Nous allons exposer les solutions et les critiques, puis on va citer les
besoins fonctionnels et non fonctionnels, pour finir par la présentation de notre application.
1.1 Définition
Une application web désigne un logiciel applicatif hébergé sur un serveur et accessible via un
navigateur web.
Contrairement à un logiciel traditionnel, l’utilisateur d’une application web n’a pas besoin de
l’installer sur son ordinateur. Il lui suffit de se connecter à l’application à l’aide de son
navigateur favori. La tendance actuelle est d’offrir une expérience utilisateur et des
fonctionnalités équivalentes aux logiciels directement installés sur les ordinateurs. Les
technologies utilisées pour développer les applications web sont les mêmes que celles
employées dans la création des sites internet [N2] :
Visiteur :
Créer un compte
Consulter les formations et le forum partie front-end
Contacter l’administrateur
Administrateur :
S’authentifier.
Consulter et gérer la liste des utilisateurs (apprenant, formateur) .
Répondre aux réclamations par l'envoi des emails.
Consulter et gérer la liste des formations existantes (modifier au
supprimer).
Gérer les vidéos et les documents et les QCM par chaque formation.
Consulter la liste des formations par formateurs.
Gérer son profil.
Pour apprenant :
S’authentifier.
Gérer son profil (mettre à jour ses informations Personnels et la liste
des formations).
Commenter une formation.
Consulter la liste des formations proposées.
Passer un test de certification.
Réclamer un problème.
Payer d’une formation.
Télécharger des documents.
Chater avec ses collègues et le formateur.
Pour le Formateur :
S’inscrire au site de formation.
S’authentifier.
Gérer son profil.
Ajouter une formation.
Uploader des documents.
Commenter une formation.
3. Développement :
Coté Front end :
Inscription
Un visiteur peut s’inscrire dans notre site. Lors de cette inscription, il saisit son nom, email et
mot de passe afin de devenir utilisateur.
Authentification
Contact
Commenter
Blog
Formation
Chaque utilisateur est capable d'accéder à la page formation pour consulter les listes des
formations proposer et de voir les détails de chacune, les formations peuvent être gratuits ou
payantes.
Pour les formations gratuites, seuls les utilisateurs connectés sont capables de suivre la
formation et de télécharger les documents accompagnés et les vidéos, aussi de commenter la
formation et les vidéos.
Les formations payantes ne sont accessibles qu’après un paiement. Une fois la formation
payée l'utilisateur peut suivre la formation et passer un test de QCM, s'il réussit une badge va
être ajoutée au compte de l'apprenant sinon il doit payer autre fois pour repasser le QCM.
Aussi l'apprenant peut communiquer avec le formateur ou les apprenants qui ont payé la
même formation.
Recherche de formation
À tout moment, un utilisateur peut rechercher une formation selon leur : nom, catégorie à la
description.
Tout utilisateur (apprenant, admin, formateur) a des droits sur ses informations personnelles.
Il peut donc modifier à tout moment ses données telles que son pseudo, son mot de passe...
mais aussi son image (avatar) et ses informations personnelles.
Conclusion
Au cours de ce chapitre, nous avons donné une analyse sur l’étude de l’existant et la critique
de ce dernier, ensuite nous avons proposé une solution.
Pout bien achever notre travail, on va élaborer dans le chapitre qui suit l’approche
conceptuelle de notre application web.
Chapitre 3 : Etude conceptuelle
Introduction
La conception est la phase la plus importante dans la cycle de développement des
applications Web, au cours de ce chapitre, on présentera tout d’abord la modélisation du
diagramme de cas d’utilisation, par la suite on va montrer une vue statique du système par
la modélisation du digramme de classes relatif à notre projet, après on va présenter les
tables utilisées pour la manipulation de la base de données, et on terminera par la
présentation de la vue dynamique par la modélisation de quelques diagrammes de
séquence.
1. Principe de conception
La conception détaillée est une tâche délicate car elle nous permet de spécifier d’une manière
définitive les fonctionnalités du futur système d’information.
De ce fait la phase de conception nécessite des méthodes et langages permettant de mettre en place un
modèle sur lequel nous allons nous appuyer.
La modélisation consiste à créer une représentation virtuelle d’une réalité de telle façon à faire
ressortir les points auxquels nous allons nous intéresser, ce type de méthode est appelé
« analyse ». Parmi les méthodes existantes, on va choisir la plus simple et la plus organisée
la méthode UML.
D’une manière générale, le diagramme de cas d’utilisation sert à définir l’ensemble des
actions réalisées par le système en répondant à une action d’un acteur. Entre autres il
consiste à schématiser les interactions entre les différents acteurs formants le système.
Le cas d’utilisation représente un ensemble d’actions réalisées par le système et donnant
un résultat intéressant et observable pour un acteur spécifié. Il permet de :
Modéliser les attentes des utilisateurs du système.
Améliorer la compréhension du système.
Définir les interactions entre le système et l’acteur particulier.
Un Acteur : La définition d'un acteur définit la limite du système. Tout ce qui fait
partie du système que nous définissons n'est pas un acteur. Ne pas placer donc pas la
base de données qui stocke les informations système en tant qu'acteur sur le
diagramme de cas d’utilisation : il fait partie du système et ne peut donc pas être un
acteur.
Un cas d’utilisation : Un cas d'utilisation est une procédure par laquelle un acteur
peut utiliser le système.
Inscription : Lors de cette inscription, un visiteur saisit son nom, email et mot de
passe afin de devenir utilisateur.
Animer une formation : il s’agit d’un outil permettant d’effectuer les opérations de
gestion de modification telles que l’ajout, la suppression, la consultation des
informations caractérisant chacun des formations.
Consultation du forum : Un visiteur n'a pas le droit d'ajouter un sujet dans le
forum, il peut juste consulter les sujets par catégorie.
Gérer le profil : Un utilisateur a des droits sur ses informations personnelles. Il peut
donc modifier à tout moment ses données telles que son pseudo, son mot de passe...
mais aussi son image(avatar) et ses informations personnelles.
Gestion des utilisateurs : Il s’agit d’un outil permettant d’effectuer les opérations
de gestion de modification telles que l’ajout, la suppression, la consultation des
informations caractérisant chacun des utilisateurs.
Gestion des formations : Il s’agit d’un outil permettant d’effectuer les opérations
de gestion de modification telles que l’ajout, la suppression, la consultation des
informations caractérisant chacun des formations.
Gestion de la plateforme : Il s’agit d’un outil permettant d’effectuer les opérations
de gestion de modification telles que l’ajout, la suppression, la consultation des
informations caractérisant chacun des composant de la plateforme.
Gestion du forum : Elle permet d’effectuer les opérations de gestion telles que la
modification, l’ajout et la suppression des sujets et des catégories.
Diagramme des cas d’utilisation général
Scénario alternatif :
1. Le système notifie l’acteur que des données sont manquantes ou incorrectes : ce scénario
commence au point 03 du scénario nominal.
Scénario alternatif :
1. Le système notifie l’acteur que des données sont manquantes ou incorrectes : ce
scénario commence au point 04 du scénario nominal.
Scénario alternatif :
1. Le système notifie l’acteur que des données sont manquantes ou incorrectes : ce
scénario commence au point 03 du scénario nominal.
Tableau 5: Description cas d'utilisation « Ajouter formation »
Scénario alternatif :
1. Le système notifie l’acteur que des données sont manquantes ou incorrectes : ce
scénario commence au point 04 du scénario nominal.
5. Modèles statiques
5.1 Diagramme de classe
Le diagramme de classe [N4] est un schéma utilisé en génie logiciel pour présenter les classes
et les interfaces d’un système ainsi que les différentes relations qui existent entre elles. Ce
diagramme appartient à la partie statique d’UML car il fait abstraction des aspects temporels
et dynamiques.
Une classe est un ensemble de fonctions et de données (attribut) qui sont liées par un champ
sémantique. Les classes sont utilisées dans la programmation orientée objet. Elles permettent
de modéliser un programme et découper une tâche complexe en plusieurs petits travaux
simples.
Figure 12: Diagramme de classe
La classe users : définit les utilisateurs de notre système qui sont caractérisé par un
login et un mot de passe et des informations personnelles.
La classe sujet : précise les sujets ajoutées par les utilisateurs (formateur, apprenant,
administrateur) dans le forum de la plateforme.
La classe catégorie : précise les catégories ajoutées par l'administrateur dans le forum
de la plateforme.
La classe setting : précise les paramètres de configuration ajoutées par l'administrateur
de la plateforme.
La classe contact : précise les messages de réclamation envoyés a l’administration.
La classe commentaire : précise les commentaires ajoutés par formation ou par vidéo
par l’utilisateur connecté.
La classe documents : précise les documents ajoutés par vidéo (référence, nom code à
barre…)
La classe vidéo : précise les vidéos ajoutés par formation.
La classe question_ Qcm : contient les groupes des questions par formation.
La classe réponse_ Qcm : contient les groupes des réponses des questions d'un
utilisateur.
La classe formation : définit les formations de notre système ajoutés par les formateurs.
La classe paiement : précise les listes des formations payées par utilisateur.
La classe chat : contient les messages transférés entre deux utilisateurs.
Méthodes :
Nous n'avons pas inclut les méthodes des différentes classes dans le diagramme de classe, vu
leurs large nombre, mais nous notons que dans presque chaque classe les méthodes suivantes
"Insert ()", "Update ()" et "Delete()" sont implémentées.
6. Modèle dynamique
6.1 Diagramme de séquence
Le diagramme de séquence est la représentation graphique des interactions entre les acteurs et le
système selon un ordre chronologique dans la formulation UML. Le but étant de décrire comment se
déroulent les actions entre les acteurs ou les objets.
Description du diagramme
Un utilisateur qui se connecte doit introduire son login et son mot de passe. Le contrôleur
vérifie les données saisies. Si elles sont valides, il lance une requête interrogeant la base de
données. Si l'utilisateur existe c.à.d. authentification réussite : redirection à l'interface
d'accueil avec la liste de ressources attribuées. Sinon redirection à l'interface d'authentification
et affichage d'un message d'erreur et on boucle.
6.3 Diagrammes de séquences « Gestion des formations »
La figure suivante représente le diagramme de séquence du cas d'utilisation ajouter formation.
Figure 14 : Diagramme de séquences « Ajouter formation »
Description du diagramme
Description du diagramme
Le formateur ressaisi les données relatives à une formation. Ces données passent au
contrôleur qui vérifie leur validité. Dans le cas favorable, une requête "Update" sera exécutée
et un message de succès sera affiché à l'administrateur. Sinon, un message d'erreur sera
affiché.
Si non le formateur peut demander la suppression d'une formation, le contrôleur retourne une
confirmation si la confirmation est OK alors une requête "Delete" sera exécutée et un message
de succès sera affiché.
Description du diagramme
L'apprenant accède à une formation si la formation est gratuite, il peut consulter tous les
vidéos de la formation et télécharger des documents s'ils existent, et même de commenter la
formation pour demander une explication ou poser une question. Sinon, il doit payer la
formation.
La figure 18 représente le diagramme de séquence du cas d'utilisation ajouter utilisateur.
Description du diagramme
Description du diagramme
Conclusion
Dans ce chapitre, nous avons présenté la partie conceptuelle en élaborant les différents
diagrammes qui nous ont facilité l’implémentation de notre application.
Introduction
Ce chapitre est consacré à l’exposé de la mise au point de notre application. Pour ce faire,
nous allons présenter en premier lieu, l’environnement logiciel ainsi que les différents choix
techniques utilisés dans notre projet. Ensuite, nous allons décrire les principales interfaces que
nous avons développées tout en expliquant brièvement la démarche à suivre pour un bon
fonctionnement de notre application.
Les principaux outils qui sont utilisés pour la conception et le développement de notre
application sont : la réalisation de cette application a été faite sous la plateforme XAMPP
server qui permet d’intégrer le langage de script PHP, MYSQL et le serveur Apache…
Tout d’abord, voici les différents langages utilisés pour la réalisation du site web :
Le code PHP dans chacune des pages HTML agit à chaque chargement et rafraîchissement de
la page web. L’ensemble de mes scripts PHP que j’ai réalisé possèdent tous la même
structure. Tout d’abord je me connecte à ma base MySQL, ensuite je crée et exécute ma
requête et pour finir j’affiche le résultat.
Le serveur de base de données MySQL est très souvent utilisé avec le langage de création de
pages web dynamiques qui est PHP.
9. Framework
2.1 Définition
Laravel est un framework web open-source écrit en PHP respectant le principe modèle-vue-
contrôleur et entièrement développé en programmation orientée objet. Laravel est distribué
sous licence MIT, avec ses sources hébergées sur GitHub.
En général on résume en disant que le modèle gère la base de données, la vue produit les
pages HTML et le contrôleur fait tout le reste. Dans Laravel :
Le modèle correspond à une table d'une base de données. C'est une classe qui étend la
classe Model qui permet une gestion simple et efficace des manipulations de données
et l'établissement automatisé de relations entre tables.
Le contrôleur se décline en deux catégories : contrôleur classique et contrôleur de
ressource.
La vue est soit un simple fichier avec du code HTML, soit un fichier utilisant le
système de template Blade de Laravel.
10.Développement de la solution
2.3 Interfaces graphiques principales partie front end
2.4 Interfaces accueil
L’interface de démarrage de notre plateforme est celle affichée dans la figure suivante :
Figure 22: Interface d’accueil
Cette interface comporte quelques formations et une description de la plateforme.
Un utilisateur doit remplir le formulaire suivant, si tous les champs sont remplis avec succès,
il va cliquer sur ajouter pour publier un sujet.
Selon cette interface on peut consulter toutes les formations activées, payantes et non
payantes aussi, Tous les acteurs ont la possibilité de rechercher une formation selon son nom,
ou sa catégorie, à l'aide du champ de recherche au-dessus de la page.
Interface Détail de formation
En cliquant sur le bouton suivre formation ? on peut consulter la liste des vidéos pour une
formation.
Figure 30: Suivre formation
Cette interface présente la vidéo choisie et les documents ajoutées par le formateur, un
apprenant a la possibilité de lancer ou télécharger la vidéo ou le document, et aussi d'ajouter
un commentaire.
Interface Passer un test Qcm
Pour une formation payante, un apprenant peut passer un test de certification si toutes les
réponses sont justes. Dans ce cas, un badge de cette formation va être ajouté dans le compte
de l'apprenant.
Figure 33: Interface de chat
L'interface de la figure précédente est la première page qui se charge lorsqu’on se connecte à
l'application.
L'utilisateur est invité à saisir son login et son mot de passe pour pouvoir y accéder. Une fois
authentifié, il se trouve à la page d'accueil avec ses ressources attribuées. Ses ressources sont
sauvegardées dans la base de données et sont déterminées selon le rôle de l'utilisateur
authentifié.
L'interface d’accueil constitue la première page lancée une fois l'utilisateur est authentifié.
A partir de cette page, l’administrateur peut accéder à tout ce qui est indiqué au menu de
gauche. Ce menu-là change selon les ressources allouées à chaque utilisateur.
Les notifications pour les messages : Lorsqu’un utilisateur envoie une réclamation vers
l'administrateur, une notification va informer l’administrateur qu'il a un nouveau message
encore non lu avec le flag au-dessus de la page ou avec notification "new" en vert sur le
service contact.
Filtres à la volé.
L’administrateur peut ajouter des nouveaux utilisateurs en cliquant sur le bouton ajouter
utilisateur, et en remplissant le formulaire de l’interface d'ajout. Il peut aussi les modifier ou
les supprimer en cliquant sur le bouton modifier ou supprimer.
Figure 40 : Modifier utilisateurs
L’administrateur peut modifier le nom et l'email, ainsi que le rôle et le mot de passe d'un
utilisateur. Aussi il peut activer et désactiver les listes des formations ajoutées par un
utilisateur et en cliquant sur le bouton modifier l’interface au-dessous va être affichée.
Au niveau de cette interface, on peut ajouter, modifier ou supprimer des formations dans notre
plateforme. On peut connaitre toutes les caractéristiques des formations tel que leurs noms,
leurs niveau, leurs état, leurs prix de ventes (qui sont des prix modifiable au cours du temps)...
Après l'ajout d'une formation, un formateur peut gérer des questions au des vidéo.
Pour ajouter une question, il faut entrer la question et les choix des réponses, et indiquer la
réponse juste, puis cliquer sur enregistrer les données seront enregistrées dans la base et un
message de succès s’affichera.
Comme la montre la figure ci-dessous, on peut supprimer des vidéos par formation ou d'ajouter
des documents par vidéo.
A l’aide de ces interfaces, l’administrateur peut gérer le forum dans la partie front end par
l'ajout, la modification et la suppression des sujets, des catégories à partir de son back end.
Toute information concernant les sujets (nom, catégories) est indiquée dans le tableau
affiché dans cette interface au-dessous.
En cliquant sur l'image on peut accéder à l'interface ci-dessous pour modifier l'image :
Comme la montre la figure ci-dessus, un apprenant peut gérer son profil et consulter ses badges
obtenus.
Conclusion
Dans cette partie, nous avons mis l’accent sur la description des différentes technologies et
outils utilisés lors de la réalisation de notre projet. Notre choix a été effectué selon le besoin
de l’application tout en essayant à chaque fois d'utiliser l'outil le plus adéquat. De plus, nous
avons présenté les différentes phases de déroulement de travail ainsi que la visualisation de
quelques interfaces.
Conclusion et perspectives
Notre projet de fin d’études vise à développer une application web qui a été réalisé au sein de
la société N3RD Tunisie qui nous a offert l’opportunité d’appliquer nos connaissances
théoriques sur le plan pratique.
Ce stage nous a permis d’approfondir nos connaissances théoriques, acquises tous le long de
notre formation. Cette petite expérience nous a permis de maîtriser le langage de modélisation
UML, Le Framework Laravel (outils de développement PHP), sous lequel le développement
n’a pas été une tâche facile
Ce projet était bénéfique sur tous les plans. Ainsi, il nous a permis de nous perfectionner en
améliorant nos connaissances en programmation et en conception, de bien comprendre et
mettre en évidence le déroulement d’un cycle de vie d’un logiciel et de découvrir le monde de
l’entreprise (fonctionnement).
Bien que nous ayons pu atteindre les objectifs tracés au départ, notre application pourrait être
enrichie soit de point de vue nombres de services offerts, soit au niveau de l’aspect de ses
services. Sachant qu’aucune conception n’est parfaite et que toute conception peut s’enrichir,
ce travail reste ouvert pour d’autres améliorations grâce à la diversité des langages de
programmation et des systèmes de gestion de base de données.
Listes des acronymes
x
XAMPP: X (cross) ApacheMariaDB Perl PHP
Bibliographie et Netographie
[0] : http: //www.N3RD.com
[N3] :https://www.google.tn/search?q=fonctionnement+d
%27une+application+web&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwjys5XEm
J7WAhVFbBoKHfpBDxcQsAQILg&biw=1280&bih=683#imgrc=yWLJj6kYMDSYwM:
[N4] : https://fr.wikipedia.org/wiki/Diagramme_de_classes
[N5] : https://fr.wikibooks.org/wiki/Le_langage_CSS
[N6] : https://fr.wikipedia.org/wiki/PHP
[N7] : https://fr.wikipedia.org/wiki/MySQL
[N8] :https://fr.wikipedia.org/wiki/XAMPP
[N9] : https://fr.wikipedia.org/wiki/Bootstrap
[N10] : https://fr.wikipedia.org/wiki/Laravel
[N11] : http://prof.bpesquet.fr/cours/modele-mvc/