Thème: Devellopemnt D'Une Application Web Pour Suivre L'Assiduite Et La Participation Des Etudiant
Thème: Devellopemnt D'Une Application Web Pour Suivre L'Assiduite Et La Participation Des Etudiant
Thème: Devellopemnt D'Une Application Web Pour Suivre L'Assiduite Et La Participation Des Etudiant
Thème
DEVELLOPEMNT D’UNE APPLICATION WEB
POUR SUIVRE L’ASSIDUITE ET LA
PARTICIPATION DES ETUDIANT
PRESENTER PAR :
SEGHIER Amine
KAHLANE Abdeldjalil
1
REMERCIEMENT
KAHLANE Abdeldjalil
SEGHIER Amine
2
Table Des
Matières………………………………………………………………
INTRODUCTION GENERALE ……………………………………………………………………………8
1. Chapitre 01 : Présentation de l’organisme d’accueil ………………………………………… 10
1.1 Introduction.......................................................................................................................11
1.3 Description des procédures de la gestion des informations des étudiants : cas
du département informatique....................................................................................................14
1.7 Conclusion..........................................................................................................................17
2.1 Introduction.......................................................................................................................19
2.5 Conclusion..........................................................................................................................24
3. Chapitre 03 : Conception.......................................................................................................... 25
3.1 Introduction.......................................................................................................................26
3
3.3.1 Notions et symboles du diagramme de cas d’utilisation......................................26
3.3.2 Diagramme de cas d’utilisation générale du système..........................................28
3.3.3 Diagramme de cas d’utilisation "Administrateur”................................................29
3.3.4 Diagrammes de cas d’utilisation ”Enseignant”......................................................31
3.8 Conclusion..........................................................................................................................46
4. Chapitre 4 : Realisation et implementation ....................................................................47
4.1 Introduction.......................................................................................................................48
4
CONCLUSION GENERALE ………………………………………………………………………………… 66
BIBLIOGRAPHIE ………………………………………………………………………………………..…….6
5
LISTE DES FIGURES
6
Figure 4. 9 Interface de La page de Voir les Notes.
7
INTRODUCTION GENERALE
L'objectif principal de notre projet est de fournir aux enseignants un moyen pratique et
fiable de collecter, stocker et analyser les données relatives aux performances des étudiants
en classe. En centralisant toutes ces informations au sein d'une plateforme conviviale, notre
application permettra aux enseignants de générer des rapports détaillés sur les progrès de
chaque étudiant, tout en facilitant la communication et la collaboration entre les différents
acteurs de l'éducation. En outre, en proposant des fonctionnalités avancées telles que la
génération de statistiques et de graphiques personnalisés, notre application contribuera à une
évaluation plus approfondie et éclairée des performances des étudiants, favorisant ainsi une
approche pédagogique plus individualisée et adaptée à chaque apprenant.
8
Bougera de Boumerdès, incluant son fonctionnement interne. Ensuite, nous
procéderons à une analyse de l'existant et à la spécification des besoins. Après cela,
nous aborderons la phase de conception, détaillant les choix techniques et conceptuels à
travers les cas d'utilisation, les diagrammes de séquence et de classes, ainsi que la
transition vers un modèle relationnel adapté. Enfin, nous présenterons l'architecture du
système, l'environnement de développement utilisé, et les interfaces utilisateur conçues
pour répondre aux besoins des différents utilisateurs du système.
9
Chapitre 01
Présentation d’organisme
d’accueil
10
1.1 Introduction
11
Un semestre comporte en général 04 catégories d’unités d’enseignements : Les
UE fondamentales (EUF), les UE méthodologique (UEM), les UE découverte (UED), les
UE transversales (UET).
12
1.2.2 Présentation de la Faculté des sciences (Campus sud-
Boumerdes)
Département de chimie.
Département de physique.
Département des Mathématiques.
Département d’informatique.
Département de biologie.
13
L’organigramme de département d’informatique
Dans cette section, nous détaillons les procédures pour les enseignants et les
administrateurs, ainsi que les fonctionnalités communes.
14
Les enseignants doivent se connecter à l'application avec leurs
identifiants pour garantir un accès sécurisé. Ils peuvent ensuite gérer les
cours,
Suivre l'assiduité et la participation des étudiants ainsi que le
comportement, et générer des rapports et des statistiques pour visualiser
les performances des étudiants.
Les administrateurs, également soumis à un processus de connexion
sécurisé, gèrent les utilisateurs et les informations des étudiants, ainsi que
les cours et modules. Ils supervisent également les rapports globaux pour
avoir une vue d'ensemble de l'assiduité, participation et le comportement.
Les deux types d'utilisateurs disposent d'un tableau de bord interactif
affichant notifications, rappels et résumés des activités récentes, ainsi que
d'une fonctionnalité d'historique et d'archivage pour consulter et analyser
les données passées.
15
pratiques. Un suivi individuel des étudiants est essentiel, avec des
réunions pour discuter des progrès et des points à améliorer.
L'utilisation d'une application web permet d'enregistrer les notes et
d'analyser les données pour générer des statistiques et des rapports,
facilitant ainsi le suivi des performances.
Enfin, des ajustements périodiques des critères d'évaluation et des
méthodes d'enseignement sont nécessaires, accompagnés de formations
continues pour les enseignants afin d'améliorer leurs compétences en
évaluation continue et en suivi pédagogique.
16
la communication, le travail en équipe et la pensée critique, cruciales pour leur future
carrière professionnelle.
1.7 Conclusion
17
étudiants, soulignant l'importance d'un suivi rigoureux et de critères d'évaluation.
L'objectif est d'assurer une gestion efficace et une évaluation continue pour améliorer
les performances académiques et le développement personnel des étudiants. Dans le
prochain chapitre, nous traiterons la spécification et l'analyse des besoins pour notre
projet, y compris l'utilisation de l'UML et les diagrammes de cas d'utilisation et de
séquence.
Chapitre 02
Etude de l’existant et
spécification des besoins
18
2 Chapitre
2.1 Introduction
Méthodes Traditionnelles
19
Les fonctionnalités des systèmes actuels de suivi de l'assiduité et de la
participation varient, mais comprennent généralement :
20
défis comprennent des coû ts de mise en œuvre élevés, des problèmes de
confidentialité des données, et des besoins en formation pour les utilisateurs.
21
ressources importantes pour l'impression, le temps, la distribution et la
gestion des données manuelles. Cela représente un défi pour les
établissements d'enseignement à budget limité, limitant l'efficacité globale du
système.
22
Gestion d’Authentification et Gestion des Comptes.
Gestion des Informations des É tudiants.
Gestion des Cours, Modules et Groupes.
Gestion de l'Assiduité, Participation et le comportement.
Gestion de Rapports et de Statistiques.
Une fois les besoins fonctionnels identifiés, il est essentiel de tenir compte des
contraintes techniques pour assurer une performance optimale du système. Nous
exposons ci-après les différentes contraintes à observer. En ce qui concerne le système,
nous nous concentrons sur :
23
2.4 Identification des acteurs
Pour notre système, nous avons identifié et défini deux types principaux d’acteurs
qui interagiront avec les différentes fonctionnalités du système :
Dans ce chapitre, nous avons examiné les défis liés aux méthodes traditionnelles
de suivi de l'assiduité et de la participation des étudiants. En réponse à ces défis, nous
avons proposé une solution innovante : une application web intégrée permettant
l'enregistrement de la présence, le suivi en temps réel des absences, ainsi qu'une
gestion avancée des données pour répondre aux besoins fonctionnels et non
fonctionnels. Cette approche vise à améliorer l'efficacité et la qualité de l'enseignement
et de l'administration dans les établissements éducatifs.
Chapitre 03
Conception
25
3 Chapitre 03 : Conception
3.1 Introduction
Après la spécification et l’analyse des besoin, il est essentiel de passer par une
méthodologie d'analyse et de conception rigoureuse. Cette dernière vise à structurer les
étapes initiales du développement en formalisent des diagrammes de cas d'utilisation,
de séquence et de classe, ainsi que le modèle relationnel du système, Cela garantit une
structure cohérente et logique.
26
Tandis qu’un cas d'utilisation décrit une interaction entre un utilisateur et un
système pour atteindre un objectif spécifique sans entrer dans les détails de
l'implémentation technique [4].
Ce diagramme utilise des symboles spécifiques pour représenter les acteurs, les
cas d'utilisation, et les relations entre eux, offrant ainsi une vue d'ensemble
structurée et intuitive des besoins et des interactions des utilisateurs avec le
système.
27
Figure 3. 1 les Notions et symboles du diagramme de cas d’utilisation
28
3.3.2 Diagramme de cas d’utilisation générale du système
29
Diagrammes de cas d’utilisation détaillés
30
Modifier un enseignant
Supprimer un enseignant
Assigner un module
Recherche
Le cas d'utilisation "Assigner un module " dépend du cas d'utilisation "Gérer les
enseignants". Cela signifie que l'administrateur doit gérer les enseignants avant
d'assigner un module à un enseignant.
Le cas d'utilisation "Gérer les enseignants" est étendu par les cas d'utilisation "Créer
un enseignant", "Modifier un enseignant" et "Supprimer un enseignant".
Le cas d'utilisation "Authentification" est inclus dans les cas d'utilisation "Gérer les
enseignants" et "Assigner un module". Cela signifie que l'administrateur doit
s'authentifier avant d'effectuer l'une de ces actions.
31
3.3.4 Diagrammes de cas d’utilisation ”Enseignant”
32
Voir les notes : le professeur peut consulter les notes des étudiants.
Voir les statistiques : le professeur peut consulter les statistiques des
étudiants.
L'utilisation de << extend >> et << include >> permet d'organiser les cas
d'utilisation et de montrer les relations entre eux. Par exemple, "Afficher la
fréquentation" est une extension de "Gérer la présence", car l'affichage de la
fréquentation est une action qui peut être effectuée après la saisie de la présence. "Gérer
les statistiques" inclut "Voir les statistiques", car l'action de voir les statistiques est une
partie de l'action de gérer les statistiques.
33
Fragments : Les cadres rectangulaires qui délimitent des portions du
diagramme pour illustrer des structures de contrô le comme des boucles, des
conditions ou des parallélismes.
34
3.4.4 Diagramme de séquence de chercher une donnée
35
3.4.5 Diagramme de séquence de supprimer une donnée
36
3.4.6 Diagramme de séquence d'ajouter une donnée
37
3.4.7 Diagramme de séquence de modifier une donnée
38
renvoyé à l'utilisateur. (L’enseignant n’est pas concerné de la modification sauf la
modification de son compte)
39
affiche un message d'erreur si elles sont incomplètes. Si les données sont correctes, le
système enregistre les notes dans la base de données et confirme leur enregistrement à
l'enseignant.
Un diagramme de classes fournit une vue globale statique (ils montrent les
entités qui interagissent, mais pas les détails de l'interaction elle-même) d’un système
en présentant ses classes, ses attributs et ses méthodes, ainsi que les relations
(d’associations et autres), les cardinalités et les interactions entre elles [6].
40
de celui de composite : si le composite disparaît, alors le compostant disparaît
aussi. Le composant ne peut Pas appartenir simultanément à plusieurs
composites (multiplicité 1 ou 0.1 cô té Composite), C’est une relation forte.
Généralisations : relation dans laquelle un élément de modèle (l'enfant) est
basé sur un autre élément de modèle (le parent). Les relations de
généralisation sont utilisées Dans les diagrammes de classes, de composants,
de déploiement et de cas d'utilisation Pour indiquer que l'enfant reçoit tous
les attributs, opérations et relations qui sont Définis dans le parent.
41
3.5.3 Diagrammes de classe
42
La figure (FIGURE) présente le diagramme de classe qui met en évidence la
structure statique interne du système. Elle illustre les principales classes de notre
application, ainsi que leurs attributs, leurs méthodes et les relations entre elles.
La classe spécialité : Cette table stocke des informations sur les spécialités,
telles que le nom de la spécialité et le nombre de groupes.
La classe teacher : Cette table stocke des informations sur les enseignants, telles
que leur nom, leur adresse électronique, leur mot de passe, leur numéro de
téléphone et la date de création de leur compte. Elle comprend également des
méthodes pour afficher la liste des étudiants, la présence, la participation, les
notes, les enregistrements de présence et afficher le graphique de performance.
La classe admin : Cette table stocke des informations sur les administrateurs,
telles que leur nom, leur adresse électronique, leur mot de passe. Elle comprend
également des méthodes pour ajouter, mettre à jour, supprimer les entités et
afficher les notes et le graphique de performance.
La classe Etudiant : Cette table stocke des informations sur les étudiants, telles
que leur nom, leur nom, leur autre nom, leur numéro d'admission, l'ID de
spécialité et le groupe.
La classe Module : Cette table stocke des informations sur les modules, telles
que l'ID du module, le nom du module, l'ID de spécialité, l'ID de l'enseignant et
s'il est attribué.
La classe Suivi Présence : Cette table stocke des informations sur la présence
des étudiants, telles que l'ID d'admission, l'ID de spécialité, l'ID du module, la
présence, la participation et la date et l'heure prises.
Les relations entre les tables sont représentées par des lignes. Chaque ligne
représente une relation entre deux tables, et le nombre sur la ligne indique la
multiplicité de la relation. Par exemple, la relation entre les tables teacher et Etudiant
est une relation un-à -plusieurs, ce qui signifie qu'un enseignant peut être associé à
plusieurs étudiants, mais un étudiant ne peut être associé qu'à un seul enseignant.
Le diagramme montre également que les tables teacher et admin ont toutes deux
des méthodes pour afficher les notes et le graphique de performance. Cela suggère que
les enseignants et les administrateurs peuvent tous deux accéder à ces informations.
43
3.5.4 Dictionnaire de donnes
Le dictionnaire de données est un descripteur qui regroupe toutes les données
de la base pour la réalisation d’un diagramme de classe [7].
Sa désignation.
Sa longueur (en caractère). (Facultatif)
Un code (attribut).
Son type (N : Numérique, A : Alphabétique, AN : Alphanumérique, D : Date,
B : Booléen)
Une observation si cela est nécessaire.
44
firstName A Le nom d’étudiant /
lastName A Le prénom d’étudiant /
otherName A Le surnom /
admissionNumber AN Numéro unique de /
chaque étudiant lors de
son admission à
l’établissement
SpecialityID N L’identifient de Identifiant
spécialité
Groupe N Numéro du groupe /
Module ModuleID N L’identifient de module Identifiant
45
3.6 Passage du Modèle Conceptuel au Modèle Relationnel
Chaque classe devient une table, les attributs de la classe deviennent de la table
et L’identifiant devient clé primaire pour la table.
Chaque association 1-1 est prise en compte en incluant la clé primaire d’une des
relations comme clé étrangère dans l’autre relation.
Chaque association 1-N est prise en compte en incluant la clé comme clé
étrangère dans la relation dont la multiplicité maximale est la clé primaire de
l’autre relation.
Une association de type N-N (c’est à dire qui a les cardinalités maximales
positionnées à « N » des 2 cô tés de l’association) se traduit par la création d’une
table dont la clé primaire est composée des clés étrangères référençant les
relations correspondant aux entités liées par l’association. Les éventuelles
propriétés de l’association deviennent des attributs de la relation [8].
46
3.8 Conclusion
47
Chapitre 04
Realisation et implementation
4 Chapitre 4
4.1 Introduction
48
Après avoir terminé la phase de conception répondant aux besoins de
l'application, il est essentiel de passer à l'étape de réalisation et d'implémentation. Dans
ce chapitre, nous allons présenter l'environnement matériel et logiciel, ainsi que les
outils et langages de programmation utilisés pour le développement de notre
application web.
49
Dans notre cas, ce diagramme de déploiement représente un système Web
simple composé de trois éléments : un PC utilisateur, un serveur Web et une base de
données.
Le PC utilisateur interagit avec le serveur Web via des requêtes HTTP, tandis que
le serveur Web exécute l’application Web qui accède à la base de données pour
récupérer des informations. Lorsque le serveur Web reçoit une réponse de la base de
données, il envoie une réponse HTTP au PC utilisateur.
La communication entre les différents éléments est indiquée par des flèches et
des messages. Le serveur Web est le point d'entrée du système pour le PC utilisateur et
joue un rô le central en orchestrant les interactions entre le PC utilisateur et la base de
données [9].
Machine PC
Système Windows 11
d’exploitation
3.20 GHz
CPU (AMD Ryzen 7
5800H with
Radeon Graphics)
RAM 16GB
Langages de programmation :
50
de saisie. L'utilisation de ce langage est souvent accompagnée d'autres langages
tels que PHP, JavaScript, et CSS [10].
CSS (Cascading Style Sheets) : CSS est un langage de feuille de style
utilisé pour gérer la présentation des pages HTML. Il permet de
créer des effets visuels et des animations simples, améliorant ainsi
l'apparence des pages web [11].
Bootstrap : Bootstrap est une collection d'outils pour créer le design des sites et
des applications web. Il comprend des modèles HTML et CSS pour les
formulaires, boutons, outils de navigation et autres éléments
interactifs, ainsi que des extensions JavaScript optionnelles [15].
XAMPP : est un serveur web très populaire qui aide à créer et tester
des programmes sur un serveur local. Créé par Apache Friends, il
est open source, donc tout le monde peut le modifier. Il inclut
plusieurs composants : Apache HTTP Server, MariaDB, et des outils pour des
51
langages comme PHP et Perl. XAMPP est disponible en 11 langues et fonctionne
sur différentes plateformes [16].
Chart.js est une bibliothèque JavaScript open source pour créer des
graphiques interactifs sur des pages web. Elle permet de générer
divers types de graphiques, comme des graphiques en ligne, en
barres, et en secteurs. Facile à utiliser et personnalisable, elle s'adapte aux
besoins des utilisateurs [18].
Nous avons utilisé Dans notre projet les outils logiciels et matériel précédents
pour créer une application web dynamique et fonctionnelle. Ces composants ont assuré
une performance optimale et une structure bien organisée.
52
4.4 Les interfaces de l’application
Cette page agit comme un tableau de bord administratif, affichant des métriques
essentielles à travers des cartes. Elle présente des données telles que le nombre
d'étudiants, de spécialités, de modules, la fréquentation totale des étudiants et les
53
enseignants, chacune accompagnée d'une icô ne pertinente. La page comprend
également des barres de navigation et un pied de page pour faciliter la navigation.
54
Figure 4 . 4 Interface de La page de gestion de profil.
Cette page permet aux administrateurs de gérer les spécialités. Ils peuvent en
créer de nouvelles, ainsi avec un affichage d’un tableau répertoriant les spécialités
avec des options pour éditer ou supprimer chaque entrée. La figure suivante illustre
cette page :
Cette page permet aux administrateurs de crée les modules, ainsi pour les gérer
pour les différents enseignants selon les besoins. Avec une option d’affichage si
55
chaque module est actuellement attribué à un enseignant. La figure suivante illustre
cette page :
Cette page facilite la gestion des enseignants et de leurs modules associés. Les
administrateurs peuvent ajouter, éditer ou supprimer des enseignants. Lors de la
suppression d'un enseignant, les modules qui lui sont attribués sont également
libérés.
56
Figure 4 . 7 Interface de La page de Gérer Les Enseignants.
Cette page facilite la gestion des étudiants et de leurs groupes associés dans une
spécialité. Dans cette page, Les administrateurs peuvent ajouter, éditer ou
supprimer des étudiants.
57
Figure 4 . 8 Interface de La page de Gérer Les É tudiants.
Cette page facilite aux administrateurs la sélection d'une spécialité, d'un groupe
et d'un module sur une page web. Après la soumission du formulaire, le système
récupère les données nécessaires, calcule les notes des étudiants en tenant compte
58
de leur présence et de leur participation, puis les affiche. De plus, les
administrateurs ont la possibilité de télécharger les notes au format Excel.
Cette page facilite aux administrateurs la sélection d'un étudiant par son numéro
d'admission sur une page web. Après soumission du formulaire, le système
récupère les données pertinentes, calcule les statistiques de performance de
l'étudiant pour chaque module (présence, participation, comportement), et les
affiche sous forme d'un graphique à lignes.
59
La figure suivante représenter cette page :
60
Figure 4 . 11 les graphes individuels du graphe père.
61
La page d’accueil pour l’enseignant :
Cette page est un tableau de bord pour l’enseignants. Elle affiche des statistiques
de base telles que le nombre d'étudiants, de spécialités, de modules. La figure
suivante montre cette page :
Cette page permet aux enseignants de modifier leur profil. Ils peuvent changer
leur prénom, nom de famille, le courriel, numéro de téléphone et mot de passe. Le
formulaire affiche les informations actuelles et permet les mètres à jour.
Figu
re 4 : 12 Interface de La page de Gérer le profil.
62
Cette page offre aux enseignants la possibilité de choisir une spécialité ainsi
qu'un groupe d'étudiants associé à cette spécialité. Une fois sélectionnés, les
informations des étudiants seront affichées, La figure suivante illustre cette page :
Fi
gure 4 . 13 L’Interface de Voir la liste des étudiants.
Fi
gure 4 . 14 Interface de Prendre les présences.
64
Cette fonctionnalité permet aux enseignants de sélectionner une spécialité, un
groupe et un module spécifiques, puis afficher les détails de présence,
comportement et de participation des étudiants correspondants. Une fois les
critères choisis, les données sont présentées et peuvent être téléchargées au format
Excel.
Fig
ure 4 . 16 Interface de Voir les Notes.
65
Voir les Statistiques :
66
Figure 4 . 20 les extensions du graphe.
4.5 Conclusion :
67
CONCLUSION GENERALE
Le projet s’est déroulé en quatre étapes pour développer une application web de
suivi de l’assiduité et de la participation des étudiants. D'abord, nous avons présenté
l'organisme d'accueil, l'Université M’Hamed BOUGARA de Boumerdès, et ses méthodes
traditionnelles de gestion. Ensuite, nous avons analysé les limitations du système actuel
et proposé une solution innovante via une application web. La conception de
l'application a été réalisée en utilisant des diagrammes UML pour modéliser le système.
Enfin, la réalisation et l'implémentation de l'application ont été détaillées, avec un focus
sur l’architecture, l’environnement de développement et les interfaces utilisateur. Ce
projet a abouti à une application efficace pour améliorer la gestion de l’enseignement et
de l’administration, offrant un modèle pour d’autres institutions.
68
En termes d'objectifs, nous avons visé non seulement à améliorer la gestion
académique au sein de l'université, mais également à promouvoir une culture de
transparence et d'engagement parmi les étudiants. En fournissant une surveillance
totale pour améliorer les performances académiques des étudiants et garantir un suivi
continu de leur progression, nous efforçons de créer un environnement propice à
l'apprentissage et à l'épanouissement académique. Cette approche proactive permet
non seulement d'identifier les difficultés potentielles dès leur apparition, mais aussi
d'adapter les méthodes d'enseignement et de soutien pour répondre aux besoins
spécifiques de chaque étudiant. En parallèle, nous encourageons la responsabilisation
individuelle et collective, renforçant ainsi l'engagement des étudiants dans leur propre
réussite et dans la communauté universitaire.
69
BIBLIOGRAPHIE
70
[15] Def de bootstrap https://www.w3schools.com/bootstrap/bootstrap_ver.asp
(Choose a Bootstrap Version (3,4 or 5) (w3schools.com)) / [Consulté le 15/06/2024]
[21] https://drive.google.com/file/d/1o0Ozr_or_T8cPh98HA5vwA8POFp60Yze/view
[Consulté le 06/04/2024]
[24] Apprenez à créer votre site web avec HTML5 et CSS3 - OpenClassrooms
https://openclassrooms.com/fr/courses/1603881-creez-votre-site-web-avec-html5-et-
css3 . [Consulté le 15/04/2024]
[28] livre É coconception web : les 115 bonnes pratiques. ‘’ Frédéric Bordage’’.
[29] Modern Web Development on the Jamstack. ‘’Mathias Biilmann & Phil
Hawksworth’’
71