0% ont trouvé ce document utile (0 vote)
59 vues42 pages

Gestion Scolaire Simplifiée

Transféré par

adam
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
59 vues42 pages

Gestion Scolaire Simplifiée

Transféré par

adam
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Mohammed V

École Nationale Supérieur D’Arts Et Métiers

Rapport de stage de fin d’année


Département : Mathématique appliquées et Génie informatique
Filière : Ingénierie Numérique en Data Science et Intelligence Artificielle

Application web pour la gestion des


affairespédagogique
Réalisé par :
Badr harcha

Majda Hazim

Zakaria et-tajir

Encadré par :
Mr. Essadek Mohammed Zeriab

Soutenue le 04 Décembre 2023 devant le jury composé de :


Professeurs :
Pr. Essadek Mohammed Zeriab Professeur, ENSAM Rabat
Pr. Tmiri Amal Professeur, ENSAM Rabat
Année Universitaire : 2023 /2024
2
Remerciement

Nous souhaitons exprimer notre sincère gratitude envers le directeur de


l'ENSAM pour son engagement continu, ainsi que pour son leadership
inspirant qui a contribué à façonner notre expérience académique. De même,
nous tenons à remercier chaleureusement le chef de filière, Monsieur Essadek
Zeriab Mohamed, pour son soutien inébranlable tout au long de l'année. Sa
patience, sa disponibilité et ses conseils précieux ont été d'une importance
capitale pour notre progression. Les membres du jury méritent également nos
remerciements pour avoir accepté avec honneur d'évaluer notre travail et
pour leur expertise qui a enrichi notre compréhension du sujet.

Nous souhaitons exprimer notre profonde reconnaissance envers les


professeurs et les membres de l'équipe pédagogique de l'École nationale
supérieure d'arts et métiers de Rabat. Leur dévouement à l'excellence
académique et leur engagement envers notre réussite ont été des piliers
essentiels tout au long de notre parcours. Leurs enseignements, conseils et
critiques constructives ont joué un rôle vital dans notre développement
intellectuel et professionnel, en nous préparant efficacement aux défis du
monde professionnel.

3
Résumé

Dans le cadre de notre Projet de Fin d'Études, l'administration de l'École Nationale


d'Arts et Métiers a initié le développement d'une application web dédiée à la
gestion de la scolarité des professeurs. L'objectif principal de cette application est
de simplifier diverses fonctionnalités cruciales à travers une interface conviviale.
Ces fonctionnalités incluent la gestion des emplois du temps et la génération des
convocations.

Pour mener à bien ce projet, nous avons suivi une démarche structurée en trois
étapes clés

• Identification et recueil des exigences opérationnelles et techniques du


projet.
• Conception détaillée de l'application.
• Réalisation concrète de l'application.
Afin de garantir le succès du développement, nous avons opté pour l'utilisation du
langage de modélisation UML. Cela nous a permis de représenter et de
communiquer de manière efficace les différentes perspectives de l'application. Les
diagrammes UML ont contribué à clarifier les exigences fonctionnelles et à
structurer notre conception, facilitant ainsi une compréhension commune et une
communication fluide entre l'équipe et les parties prenantes.

Pour le développement proprement dit, nous avons choisi d'utiliser Laravel, un


Framework web basé sur PHP, pour la gestion des données et la mise en œuvre des
fonctionnalités requises. Côté front end, l'interface utilisateur interactive et
réactive a été réalisée avec [Link].

Mots clés : UML, Laravel, [Link], scolarité, gestion des emplois

4
ABSTRACT

Dans le cadre du Projet de Stage, l'administration de l'École Nationale d'Arts et


Métiers a initié un projet visant à élaborer une application web dédiée à la gestion
des affaires de scolarité. Cette application permettra non seulement d'intégrer de
nouveaux professeurs et étudiants, mais aussi de gérer les départements, les filières,
les modules, ainsi que de créer et gérer les emplois du temps. Son objectif principal
est de simplifier diverses tâches essentielles à travers une interface conviviale,
incluant la gestion des emplois du temps, la génération des convocations et la
gestion des notes.
Pour conduire ce projet de manière efficace, nous avons adopté une démarche en
trois étapes :
o Identifier et recueillir les exigences opérationnelles et techniques.
o Concevoir en détail l'application.
o Réaliser l'application.
Afin d'assurer un développement efficace, nous avons fait le choix d'utiliser le
langage de modélisation UML. Cette approche nous a permis de représenter et de
communiquer de manière efficace les différentes perspectives de l'application. Les
diagrammes UML ont clarifié les exigences fonctionnelles et structuré notre
conception, favorisant ainsi la compréhension et la communication au sein de
l'équipe et avec les parties prenantes.

Pour le développement, nous avons opté pour le framework Laravel ainsi que [Link],
HTML, PHP et JavaScript.

Mots clés : UML , laravel , scolarité, gestion ,professeur


.

5
Remerciement ..................................................................................................... 3
Résumé ................................................................................................................ 4
Abstract ............................................................................................................... 5
Table des matières ............................................................................................. 6
Table de figures ................................................................................................... 8
Introduction Générale ......................................................................................... 9
Chapitre 1 : Cahier de charge ............................................................................ 11
1. Introduction ...................................................................................... 12
2. Les objectifs du projet ....................................................................... 12
3. Exigences fonctionnelles................................................................... 12
3.1. Fonctionnalités pour les professeurs ............................................ 12
3.2. Fonctionnalités pour l'administration ........................................... 13
4. Livrables du projet ............................................................................ 13
5. Conclusion ........................................................................................ 13
Chapitre 2 : Analyse et conception 14
1. Introduction ....................................................................................... 15
2. Langage utilisée ................................................................................ 15
3. Outil utilisée...................................................................................... 15
4. Diagramme de cas d’utilisation ........................................................ 16
4.1. Diagramme de cas d’utilisation d’acteur « professeur » .............. 18
4.2. Diagramme de cas d’utilisation d’acteur « Administration » ........ 19
5. Diagramme de séquence .................................................................. 19
5.1. Diagramme de séquence de « Authentification »......................... 19
5.2. Diagramme de séquence de «Consulter l’emploi» ....................... 20
5.3. Diagramme de séquence «Générer l’emploi» .............................. 21
5.4. Diagramme de séquence «Gérer les filière» ................................. 23

6
6. Diagramme de classe ........................................................................ 24
7. Conclusion ........................................................................................ 26

Chapitre 3 : Réalisation du projet ...................................................................... 27


1. Introduction ....................................................................................... 28
2. Environnement de développement .................................................. 28
3. Interfaces graphiques ....................................................................... 30
3.1. Interfaces de professeurs ..............................................................30
3.1.1. Authentification ........................................................................ 30
3.1.2. Filière et départements .............................................................31
3.1.3. Emploi de temps ....................................................................... 31
3.2. Interfaces de l’administrateur ...................................................... 32
3.2.1. Authentification ........................................................................ 32
3.2.2. Page d’accueil ........................................................................... 32
3.2.3. Page Filière ................................................................................ 32
3.2.4. Lister professeurs ...................................................................... 33
3.2.5. Générer l’emploi du temps ....................................................... 34

4. Conclusion .................................................................................................. 36

7
Table des figures
Figure 1 Diagrammes des rôles ............................................................................................................. 17
Figure 2 Diagramme de cas d'utilisation d'acteur - professeur ............................................................. 18
Figure 3 Diagramme de cas d'utilisation d'acteur - administration....................................................... 19
Figure 4 Diagramme de séquence authentification .............................................................................. 19
Figure 5 Diagramme de séquence de Consulter l’emploi ...................................................................... 19
Figure 6 Diagramme de séquence de Générer l’emploi ........................................................................ 19
Figure 7 Diagramme de classe ............................................................................................................... 19
Figure 8 : Page d'authentification.......................................................................................................... 19
Figure 9 Page de Filière de professeur .................................................................................................. 19
Figure 10 Page d'emploi de temps ........................................................................................................ 19
Figure 11 Page d'accueil ........................................................................................................................ 19
Figure 12 Page filière ............................................................................................................................. 19
Figure 13 Page filière ............................................................................................................................. 19
Figure 14 Page de liste des professeurs ................................................................................................ 19
Figure 15 Page de gestion d'emploi- admin ........................................................................................ 19

8
Introduction Générale

L'ère de la transformation numérique a profondément bouleversé de nombreux secteurs


d'activité. Cette évolution rapide a ouvert la voie à de nouvelles possibilités d'optimisation
des processus et d'amélioration de l'efficacité dans les entreprises et les organisations.
Dans ce contexte, de nombreuses entités cherchent à exploiter pleinement ces
technologies afin d'accroître leur performance et de surmonter les défis qui pourraient
entraver leur progression.
Dans ce cadre, notre établissement, l'ENSAM, nous a confié la mission de développer une
application web destinée à simplifier la gestion des affaires pédagogiques. Ce projet
représente une opportunité unique de mettre en pratique nos compétences et de
renforcer notre expertise. En travaillant sur des tâches concrètes, nous aurons l'occasion
d'appliquer les connaissances théoriques acquises et de les adapter à des situations
réelles, approfondissant ainsi notre compréhension des concepts et développant des
compétences pratiques essentielles.
Chacun des membres de l'équipe Badr harcha, Hazim Majda ,et Zakaria Et-tajir, apportera
ses connaissances et son savoir-faire spécifique dans le domaine qui lui a été attribué,
contribuant ainsi à enrichir l'équipe et favorisant la diversité des perspectives.
Cette initiative s'inscrit dans la volonté d'exploiter les avancées technologiques et la
digitalisation pour améliorer l'efficacité et l'organisation des processus administratifs liés à
la gestion des professeurs. En créant cette application, nous visons à simplifier les tâches
telles que la gestion des convocations, des emplois du temps des professeurs, ainsi que la
communication avec les professeurs et l'administration. En offrant une solution
numérique adaptée, nous espérons optimiser les efforts de gestion et faciliter la prise en
charge de la scolarité, contribuant ainsi à une expérience d'enseignement et
d'apprentissage plus fluide au sein de notre établissement.
Pour mener à bien le développement de ce projet, nous avons utilisé une combinaison
d'outils adaptés. Du côté backend, nous avons opté pour Laravel, un framework web basé
9
sur PHP, qui nous a permis de gérer efficacement les données et de mettre en place les
fonctionnalités nécessaires. En ce qui concerne le frontend, nous avons utilisé des
technologies essentielles telles que [Link] pour créer une interface utilisateur interactive
et réactive.

Après avoir exposé les outils et les méthodes adoptés, nous allons maintenant présenter
le plan de ce rapport, qui est structuré en 3 chapitres principaux :

• Chapitre 1 : Spécifications fonctionnelles et techniques


Cette partie du projet consiste à examiner et définir les exigences globales, qu'elles soient
fonctionnelles ou non fonctionnelles. Cette phase vise à identifier et comprendre les
besoins essentiels du système pour les décrire de manière claire et précise.

• Chapitre 2 : Conception conceptuelle de l'application


Dans ce chapitre, nous aborderons la phase de conception de l'application, qui se
concentre sur la modélisation théorique de celle-ci. Cette étape implique la création de
représentations abstraites de l'application afin de définir sa structure et son
fonctionnement de manière conceptuelle.

• Chapitre 3 : Implémentation et déploiement


Ce chapitre présente les outils utilisés pour le développement de l'application web,
l'architecture du système ainsi que le matériel de déploiement nécessaire pour son
fonctionnement. Nous fournirons une description complète de ces éléments, mettant en
évidence leur rôle et leur importance dans la réalisation de l'application.

Enfin, une conclusion sera donnée à la fin de ce rapport.

10
Chapitre 1 : Cahier de charge

11
1. Introduction
Ce chapitre a pour dessein de présenter les buts du projet ainsi que les exigences
fonctionnelles et non fonctionnelles de l'application de gestion des professeurs. De
plus, nous fournirons une analyse détaillée des livrables escomptés, représentant les
résultats tangibles attendus à la fin du développement de l'application

2. Objectifs du projet

Les objectifs du projet sont les suivants :

• Offrir un accès simplifié aux convocations pour les événements académiques.


• Générer les emplois du temps des professeurs à partir de fichiers Excel.
• Faciliter la consultation des emplois du temps des professeurs.
• Fournir des informations sur les jours fériés.
• Permettre l'accès aux descriptifs des filières.
• Autoriser l'administration à ajouter et gérer les professeurs et départements dans le
système.
• Donner à l'administration la capacité de gérer les convocations, les cours et les emplois du
temps.

3. Fonctionnalités Requises
Les exigences fonctionnelles décrivent les actions que le système doit
entreprendre en réponse à des requêtes particulières. Le projet de gestion de la
scolarité des professeurs implique la conception d'une application intégrant des
caractéristiques spécifiques destinées aux enseignants et à l'administration.

3.1 Fonctionnalités destinées aux Enseignants


Consultation des convocations
• Détails des examens, éléments de module, responsables, intervenants, horaires
• Consulter son emploi du temps

12
• Consultation des jours fériés
• Consultation des descriptifs des filières

3.2 Fonctionnalités pour l'administration

• Gestion du Corps Enseignant :


• Ajout de nouveaux enseignants.
• Organisation des Examens Finaux :
• Planification et gestion des convocations.
• Attribution des enseignants responsables.
• Gestion des Programmes Académiques :
• Administration des filières, modules et départements :
• Ajout, suppression et gestion.
• Génération des emplois du temps des enseignants.
• Gestion des Descriptifs de Programmes :
• Ajout de descriptions détaillées.
• Gestion des Jours Fériés.

4. Livrables du projet

Phase Livrable Responsable

Etude des besoins Cahier de charge Majda

Analyse et conception Diagrammes UML Zakaria

Codage et test Application web Badr,Majda,Zakaria

Documentation Rapport du projet Badr

5. Conclusion

En résumé de ce chapitre, une analyse minutieuse des exigences du client a été effectuée.
13
Toutes les fonctionnalités du futur portail ont été soigneusement définies, qu'elles soient
opérationnelles ou non, à travers les différentes phases de développement de
l'application. De plus, une attention particulière a été accordée à l'examen approfondi des
livrables associés à ce projet.

14
Chapitre 2 : Analyse et
conception

15
1. Introduction
Dans cette phase cruciale du projet, nous nous engageons à approfondir l'analyse
et la modélisation des besoins du client en utilisant le langage UML.

Cette démarche d'analyse et de conception revêt une importance capitale, car


elle nous permet de traduire les besoins fonctionnels ainsi que les contraintes
énoncées dans le cahier des charges et les spécifications des exigences. En
adoptant cette approche méthodique, nous sommes en mesure de formuler ces
éléments dans un langage professionnel et compréhensible par tous les acteurs
impliqués dans la réalisation et l'utilisation de l'application.

En utilisant les diagrammes UML appropriés, nous pourrons représenter de


manière claire et précise les différents aspects fonctionnels, structurels et
comportementaux de notre système. Cela facilitera grandement la
communication et la collaboration entre les membres de l'équipe de
développement et les parties prenantes du projet.
2. Langage utilisée
Le langage UML (Unified Modeling Language, ou
langage de modélisation unifié) a été pensé pour
être un langage de modélisation visuelle commun,
et riche sémantiquement et syntaxiquement. Il est
destiné à l'architecture, la conception et la mise en
œuvre de systèmes logiciels complexes par leur
structure aussi bien que leur comportement.
L'UML a des applications qui vont au-delà du développement logiciel, notamment pour
les fluxde processus dans l'industrie.

3. Outil utilisée

StarUML est un logiciel de modélisation UML largement utilisé par les


développeurs et les analystes pour créer des diagrammes et des
modèles conceptuels. Il permet de visualiser et de représenter
graphiquement des concepts, des relations et des processus dans le
développement de logiciels.

16
Avec StarUML, vous pouvez créer des diagrammes de classes, des diagrammes de séquence,
des diagrammes de cas d'utilisation, des diagrammes d'activités, des diagrammes de
composants et bien d'autres encore. Il offre une interface conviviale qui permet de dessiner
facilement ces diagrammes en utilisant une variété d'outils et de fonctionnalités.

4. Identification des acteurs et leurs rôles

Type d’acteur Rôle

L’acteur le plus important, qui aura


lesfonctionnalités suivantes :
• S’authentifier
• Consulter les descriptifs des filières
• Consulter l'emploi du temps
• Consulter les jours fériés

Ce type d'acteur présentera les


fonctionnalitéssuivantes :
• S’authentifier
• Gérer les professeurs
• Gérer les convocations
• Gérer les filières
• Gérer les modules
• Générer l’emploi du temps
• Gérer le descriptif pour chaque filière
• Gérer les jours fériés

Les diagrammes de cas d'utilisation sont des diagrammes UML utilisés pour :
• Identifier les besoins fonctionnels d'un système en se concentrant sur les actions réalisées
par les utilisateurs.
• Définir les fonctionnalités du système en spécifiant les interactions entre les acteurs et les
cas d'utilisation.

17
• Documenter les exigences du système et servir de base à la conception et au développement
ultérieurs.
• Communiquer efficacement avec les parties prenantes pour s'assurer que les
fonctionnalités et les interactions attendues sont correctement comprises.

Diagrammes des rôles

Figure 1 Diagrammes des rôles

18
4.1. Diagramme de cas d’utilisation d’acteur « professeur »

Figure 2 Diagramme de cas d'utilisation d'acteur - professeur

19
4.2. Diagramme de cas d’utilisation d’acteur « Administration »

Fiche de description « Authentification » :

5. Diagramme de séquence
Les diagrammes de séquence sont utiles pour montrer comment les objets d'un système
interagissent entre eux, en mettant l'accent sur l'ordre chronologique des messages échangés.
Ils complètent les diagrammes de cas d'utilisation en montrant clairement la séquence des
interactions, ce qui facilite la compréhension et la communication lors de la conception et de
la modélisation des systèmes logiciels.

5.1. Diagramme de séquence de « Authentification »

20
Récapitulatif d'Identification :

Titre : Processus d'Authentification.


Objectif : Permettre à chaque utilisateur de l'application de s'authentifier en fonction de ses
rôles, en utilisant un login et un mot de passe.
Acteurs : Utilisateur - Système.
Description des Étapes :

Étapes Scénario :

• Entrée des identifiants (login et mot de passe).


• Envoi des identifiants.
• Traitement des données transmises.
• Si une erreur survient, l'authentification est rejetée.
• Sinon, redirection de l'utilisateur vers ses rôles autorisés.

Tableau 3 : Description textuel d'authentification

Figure 4 Diagramme de séquence authentification


5.2.
Diagramme de séquence de « Consulter l’emploi »
Fiche de description «Consulter l’emploi» :
21
Sommaire d’identification :
• Titre : Consulter l’emploi
• Objectif : Faciliter la consultation individuelle de l'emploi du temps pour chaque
utilisateur de l'application
• Acteurs : utilisateur – système.
Description des enchainements :
• Enchainements :
Scenario :
1. Saisie du login et du mot de passe.
2. Accès à la page dédiée à l'emploi.
3. Traitement des informations transmises.
4. Affichage de l'emploi du temps personnel.

Figure 5 Diagramme de séquence de Consulter l’emploi

5.3. Diagramme de séquence de « Générer l’emploi »

22
Fiche de description «Générer l’emploi» :

Sommaire de Génération de l'Emploi du Temps :


• Titre : Générer l'Emploi du Temps

• Objectif : Permettre à l'administrateur de créer l'emploi du temps de manière efficace


en téléchargeant un fichier Excel contenant les informations nécessaires.
• Acteurs : Administrateur, Système

Description des Enchaînements :


• Enchaînements :

• Scenario :
1. L'administrateur accède à la fonctionnalité de génération d'emploi du
temps.
2. Uploader du fichier Excel contenant les détails des cours, des
professeurs attribués, et des salles affectées.
3. Traitement automatique des informations incluses dans le fichier Excel.
4. Génération automatisée de l'emploi du temps pour l'ensemble du
corps enseignant.
5. Possibilité pour l'administrateur de visualiser et vérifier l'emploi du
temps généré.
6. Confirmation de la finalisation du processus de génération.

Figure 6 Diagramme de séquence de Générer l’emploi

23
5.4. Diagramme de séquence de « Gérer les filière»

Figure 9 iagramme de séquence de Gérer les filière

24
6. Diagramme de classe

Le diagramme de classes est essentiel dans la modélisation orientée objet et constitue le seul
diagramme obligatoire. Il permet de représenter la structure interne du système en
fournissant une abstraction des objets et de leurs interactions pour réaliser les cas
d'utilisation. Ce diagramme offre une vue statique, sans tenir compte du temps dans le
comportement du système. Les éléments clés de cette vue statique sont les classes et leurs
relations, telles que les associations, les généralisations et divers types de dépendances
comme la réalisation et l'utilisation.
Une classe d'association combine les caractéristiques des classes et des associations. Elle se
connecte à deux ou plusieurs classes, possède des attributs et des opérations. Une classe
d'association est représentée par un trait discontinu entre la classe et l'association.
Une classe représente un groupe d'objets partageant des propriétés communes (attributs),
des comportements (opérations ou méthodes) et des relations avec d'autres objets
(associations et agrégations).

25
Une classe de conception est composée d'attributs dont la valeur est identique pour chaque
instance de la classe, ainsi que de méthodes qui
définissent le comportement de la classe elle- même,
indépendamment du comportement de ses instances,
qui peut varier.

Figure 70 Diagramme de classe

26
7. Conclusion
Au cours de ce chapitre, nous avons accompli la conception de notre projet. Toutes les
interrogations relatives à la mise en œuvre du système à développer ont été résolues. Nous
disposons maintenant d'un modèle graphique complet, composé de plusieurs diagrammes,
prêt à être traduit en code. Dans le prochain chapitre, nous approfondirons notre
compréhension des outils et des langages utilisés pendant la phase de construction, afin de
concrétiser notre modèle en un produit fonctionnel.

27
Chapitre 3 : Réalisation du
projet

28
1. Introduction
Une fois que le développement du système est achevé, nous entamons la phase
cruciale de déploiement et de mise en production. Cette étape implique la
configuration de l'infrastructure nécessaire pour héberger notre application, ainsi
que la mise en place des protocoles de sécurité adéquats pour garantir la
confidentialité et l'intégrité des données de nos utilisateurs.

Parallèlement, nous nous engageons à fournir une documentation exhaustive et


conviviale pour faciliter l'adoption et l'utilisation de notre application. Des
formations et des supports techniques seront également disponibles pour aider nos
utilisateurs à tirer le meilleur parti de notre produit.

Enfin, nous resterons à l'écoute des retours de nos utilisateurs afin d'identifier
d'éventuelles améliorations à apporter. Notre processus de développement itératif
nous permettra de continuer à faire évoluer notre application pour répondre aux
besoins changeants du marché et des utilisateurs, garantissant ainsi sa pertinence à
long terme
2. Environnement de développement
• Visual Studio

Visual Studio est largement utilisé dans l'industrie du développement logiciel en raison de
sa polyvalence et de sa puissance. En plus de ses fonctionnalités de base telles que l'édition
de code, le débogage et la gestion de projet, Visual Studio offre une gamme étendue
d'extensions et de plugins qui permettent aux développeurs d'étendre et de personnaliser
leur environnement de développement selon leurs besoins spécifiques.

De plus, Microsoft continue d'investir dans Visual Studio en ajoutant régulièrement de


nouvelles fonctionnalités et en améliorant les performances et la stabilité de l'IDE. La prise
en charge des dernières technologies et frameworks est une priorité, ce qui permet aux
développeurs de rester à la pointe de la technologie et de tirer pleinement parti des
innovations de l'industrie.

En outre, Visual Studio s'intègre étroitement avec d'autres outils et services de


développement de Microsoft, tels que Azure DevOps et GitHub, offrant ainsi une expérience
de développement fluide et cohérente, de la conception initiale au déploiement en passant
par la gestion du cycle de vie du logiciel.

En résumé, Visual Studio reste un pilier essentiel dans l'écosystème des outils de
29
développement logiciel, offrant aux développeurs les moyens nécessaires pour créer des
applications de qualité professionnelle dans un large éventail de domaines.
• XAMPP

XAMPP, en simplifiant la mise en place d'un serveur Web et FTP, réduit considérablement
les barrières à l'entrée pour ceux qui souhaitent héberger leurs propres sites Web ou
développer des applications en ligne. En combinant les puissants composants X Apache
MySQL Perl PHP, XAMPP offre une solution complète pour la création et la gestion de
serveurs Web dynamiques.

Ce logiciel libre est apprécié non seulement pour sa simplicité et sa rapidité d'installation,
mais aussi pour sa flexibilité. Il permet aux utilisateurs de personnaliser leur environnement
de serveur en fonction de leurs besoins spécifiques, que ce soit pour des projets de
développement web, la création de bases de données, ou le déploiement d'applications en
ligne.

Grâce à sa compatibilité avec les systèmes d'exploitation les plus populaires, XAMPP est
accessible à un large éventail d'utilisateurs, qu'ils soient novices ou expérimentés. Sa nature
conviviale et intuitive signifie que même ceux qui n'ont pas de connaissances approfondies
en administration système peuvent rapidement mettre en place un environnement de
développement ou de production.

En outre, XAMPP simplifie la gestion des dépendances logicielles en installant


automatiquement tous les outils nécessaires pour la création d'un site Web. Cela permet
aux utilisateurs de se concentrer sur le développement de leur projet sans se soucier des
configurations complexes.

En résumé, XAMPP représente une solution tout-en-un pour la création et la gestion de serveurs
Web, offrant une expérience utilisateur fluide et accessible à tous, quelle que soit leur expérience
préalable en matière de développement web

• GitHub

GitHub, en tant que plateforme de développement collaboratif, joue un rôle essentiel


dans la gestion des projets basés sur Git. Cette plateforme offre aux développeurs un
environnement centralisé où ils peuvent collaborer de manière fluide et organisée sur
des projets de toutes tailles.

30
En exploitant la puissance de Git, GitHub permet de suivre facilement les versions du
code source, offrant ainsi une traçabilité précise des modifications apportées au fil du
temps. Cette fonctionnalité s'avère particulièrement utile pour maintenir la cohérence
du projet et assurer la qualité du code tout au long du cycle de développement.

Outre la gestion des versions, GitHub fournit également des outils avancés pour la
gestion des problèmes (issues) et des demandes de fusion (pull requests), ce qui facilite
la communication et la collaboration au sein de l'équipe de développement. Les
problèmes peuvent être signalés, discutés et résolus de manière transparente, tandis que
les demandes de fusion permettent aux développeurs de proposer et de réviser les
modifications de code de manière structurée.

Dans le cadre de notre projet, l'utilisation de GitHub a été un choix stratégique pour
favoriser une collaboration transparente et efficace. Grâce à cette plateforme, nous
avons pu coordonner nos efforts de développement, suivre l'évolution du code source et
faciliter la communication au sein de l'équipe. En fin de compte, GitHub a contribué à
renforcer notre processus de développement et à garantir la réussite de notre projet
• [Link].

[Link], en tant que Framework JavaScript progressif, offre une approche moderne et
flexible pour la construction d'interfaces utilisateur interactives. Son principal avantage
réside dans sa capacité à simplifier le développement d'applications web à une seule
page en mettant l'accent sur la création de composants réutilisables.

En adoptant [Link] dans notre projet, nous avons bénéficié de sa syntaxe claire et
déclarative, qui rend la création d'interfaces utilisateur intuitive et efficace. La
modularité offerte par [Link] nous a permis de diviser notre application en composants
distincts, facilitant ainsi la maintenance et l'évolution du code.

Un autre aspect positif de [Link] est sa compatibilité avec d'autres bibliothèques et


projets. Nous avons pu intégrer facilement [Link] avec d'autres outils et technologies,
ce qui nous a donné la liberté de choisir les meilleures solutions pour chaque aspect de
notre application.

Dans notre projet, [Link] a joué un rôle crucial dans le domaine de la visualisation des
données. Grâce à ses capacités de liaison de données réactives et à ses outils de
manipulation du DOM efficaces, nous avons pu créer des interfaces utilisateur
31
dynamiques et interactives pour présenter nos données de manière claire et
convaincante.

En résumé, l'adoption de [Link] dans notre projet a été un choix stratégique qui a
contribué de manière significative à la réussite de notre application. Sa flexibilité, sa
simplicité d'intégration et ses performances dans la visualisation des données ont
permis de créer une expérience utilisateur exceptionnelle pour nos utilisateurs finaux..
• Laravel
1

Laravel, en tant que Framework PHP open-source, s'est imposé comme un choix de
prédilection pour le développement d'applications web modernes et évolutives. Sa
popularité repose sur une combinaison de facteurs, notamment sa structure élégante et
expressive qui permet de créer des projets web robustes et maintenables.

Dans notre projet, l'adoption de Laravel a été motivée par plusieurs avantages clés. Tout
d'abord, sa structure bien définie et son architecture modulaire offrent une base solide
pour le développement, ce qui nous a permis de concevoir notre application de manière
organisée et extensible.

L'un des atouts majeurs de Laravel est son ORM Eloquent, qui simplifie la gestion des
bases de données en offrant une syntaxe fluide et intuitive pour interagir avec la base de
données. Cette abstraction puissante nous a permis de travailler efficacement avec nos
données, en minimisant le temps et les efforts nécessaires pour créer des requêtes
complexes.

De plus, le système de routage clair de Laravel nous a facilité la tâche pour définir les
différentes routes de notre application, offrant ainsi une navigation fluide aux
utilisateurs.

En outre, Laravel intègre Composer, un gestionnaire de dépendances largement utilisé


dans l'écosystème PHP. Cette intégration nous a permis de gérer facilement les
dépendances de notre projet et d'incorporer des packages tiers avec une grande facilité.

Enfin, la documentation exhaustive de Laravel et sa communauté active ont été des


atouts précieux tout au long du processus de développement. La disponibilité de
ressources de qualité et de solutions prêtes à l'emploi a considérablement accéléré notre
32
progression et simplifié la résolution des problèmes rencontrés.

En résumé, l'adoption de Laravel dans notre projet a été un choix judicieux qui a
contribué à simplifier le processus de développement et de maintenance de notre
application. Sa simplicité, sa robustesse et ses fonctionnalités intégrées ont permis de
créer une application web performante et fiable, répondant aux besoins de nos
utilisateurs avec excellence.
• MySQL

SQL (Structured Query Language) occupe une place prépondérante dans le monde
de la gestion des données, offrant aux développeurs et aux administrateurs de bases
de données un ensemble robuste d'outils pour interagir avec les systèmes de gestion
de bases de données relationnelles (SGBDR).

Au-delà de sa fonctionnalité de base, SQL offre une grande flexibilité pour manipuler
et interroger les données. Les requêtes SQL permettent d'effectuer une variété
d'opérations complexes, telles que l'agrégation, le filtrage, la jointure et la
modification des données, offrant ainsi un contrôle précis sur la manière dont les
données sont récupérées et manipulées.

De plus, SQL offre des fonctionnalités avancées telles que les transactions, les
contraintes d'intégrité, les procédures stockées et les déclencheurs, qui permettent
de garantir la cohérence et la sécurité des données au sein d'une base de données.

L'importance de SQL dans le domaine de la gestion des données est indéniable, car il
est largement utilisé dans une multitude d'applications et de systèmes, des petites
applications web aux grandes entreprises. Sa syntaxe claire et standardisée en fait un
langage universellement compris et utilisé par les professionnels de la gestion des
données à travers le monde.

Dans notre projet, l'utilisation de SQL a été essentielle pour interagir avec la base de
données et manipuler les données stockées. En exploitant les fonctionnalités
puissantes de SQL, nous avons pu concevoir et mettre en œuvre des fonctionnalités
robustes pour notre application, offrant ainsi une expérience utilisateur riche et
personnalisée.
33
En résumé, SQL est bien plus qu'un simple langage de requête ; c'est un pilier
fondamental de la gestion des données, offrant aux développeurs un ensemble
complet d'outils pour gérer et manipuler efficacement les données stockées dans les
bases de données relationnelles. Son rôle central dans notre projet a été
déterminant pour le succès de notre application, en fournissant les fondations
solides sur lesquelles construire et développer nos fonctionnalités de gestion des
données.

3. Interfaces graphiques
3.1. Interfaces de professeurs
3.1.1. Authentification
Pour simplifier le processus d'authentification, nous avons pris la décision de
développer une unique page d'identification qui servira aussi bien pour les
administrateurs que pour les professeurs. Cela permettra à tous les utilisateurs
autorisés d'accéder à leurs comptes en utilisant la même interface, simplifiant ainsi
la gestion des identifications et offrant une expérience utilisateur homogène.

Figure 81 : Page d'authentification

3.1.2. Filière et départements :

34
Le tableau de bord a été conçu pour fournir aux enseignants une vue d'ensemble claire et
concise de la structure de l'établissement. En un coup d'œil, les enseignants peuvent
visualiser le nombre de départements disponibles ainsi que les filières proposées dans
chaque département. Cette présentation détaillée des spécialisations offertes permet aux
enseignants de mieux comprendre la diversité des programmes d'études proposés par
l'établissement, ce qui les aide à orienter et conseiller efficacement les étudiants.

Figure 92 Page de Filière de professeur

3.1.3. Emploi de temps


L'interface dédiée à l'emploi du temps a été spécialement conçue pour offrir aux
professeurs une expérience de consultation intuitive et organisée. Grâce à un
affichage clair et structuré au format calendrier, chaque professeur peut accéder
facilement à son emploi du temps personnalisé. Ce dernier regroupe toutes les
informations essentielles telles que les cours prévus, les créneaux horaires
attribués et les salles correspondantes.

35
Cette fonctionnalité permet aux professeurs d'avoir une vision d'ensemble
complète de leur planning, ce qui facilite grandement la gestion de leur emploi du
temps. Ils peuvent ainsi anticiper leurs cours, préparer leurs activités
pédagogiques et organiser leurs déplacements en fonction des lieux de leurs
enseignements. De plus, la disponibilité de cette information en ligne garantit aux
professeurs un accès rapide et facile à leur emploi du temps, que ce soit depuis
leur ordinateur, leur tablette ou leur téléphone portable.

En résumé, l'interface dédiée à l'emploi du temps offre aux professeurs un outil


efficace pour gérer leurs obligations professionnelles de manière optimale. En
centralisant toutes les informations pertinentes et en les présentant de manière
claire et accessible, cette fonctionnalité contribue à améliorer la productivité et
l'organisation des enseignants au quotidien.

Figure 103 Page d'emploi de temps

3.2. Interfaces de l’administrateur

36
3.2.1. Authentification
Pour accéder à ses privilèges en tant qu'administrateur, l'utilisateur doit fournir son adresse
e-mail ainsi que son mot de passe dans l'interface de connexion dédiée. Cette étape est
essentielle pour authentifier l'identité de l'administrateur et garantir un accès sécurisé aux
fonctionnalités et aux données sensibles qui lui sont réservées.

Une fois que l'adresse e-mail et le mot de passe ont été soumis, ils sont vérifiés par le
système pour s'assurer de leur validité. Cette vérification permet de confirmer que
l'utilisateur est bien autorisé à accéder aux privilèges et aux droits associés à son compte
d'administration.

Une fois l'authentification réussie, l'administrateur est autorisé à utiliser les fonctionnalités
avancées et à accéder aux données confidentielles nécessaires à l'exercice de ses
responsabilités. Ces privilèges peuvent inclure la gestion des utilisateurs, la modification des
paramètres système, la consultation de rapports spécifiques, et bien plus encore.

3.2.2. Page d’accueil


La page d'accueil de l'administrateur affiche les principales informations comme le
nombre de professeurs, d'étudiants et de départements. Une barre de navigation
latérale présente les différentes fonctionnalités du site. Cette interface facilite la
navigation et permet à l'administrateur d'effectuer ses tâches de gestion de manière
efficace.

Figure 1411 Page d'accueil

3.2.3. Page Filière


Cette interface permet à l'administrateur d'ajouter une filière en fournissant les informations
requises. L'administrateur peut saisir les détails pertinents tels que le nom de la filière, le chef
de filière associé, etc. Cela permet de structurer et d'organiser les programmes d'études en
fonction des filières spécifiques, offrant ainsi une gestion plus précise et adaptée aux besoins
37
de l'établissement scolaire.

Figure 1513 Page filière

Figure 1612 Page filière

38
3.2.4. Lister professeurs
Pour que l'administrateur puisse consulter la liste des professeurs, il doit d'abord sélectionner
le département. Ensuite, il peut accéder aux informations détaillées des professeurs, telles
que leurs noms, prénoms, numéros d'identification, etc. De plus, l'administrateur a la
possibilité de télécharger la liste des professeurs au format Excel, ce qui facilite la gestion et
l'utilisation des données. Cette fonctionnalité offre à l'administrateur une vue complète et
organisée des professeurs appartenant à un département spécifique et lui permet de
manipuler les données selon ses besoins. Il a aussi la possibilité de rechercher un professeur
en utilisant la CIN, le nom ou le prénom comme critères de recherche. Cette fonctionnalité de
recherche permet à l'administrateur de trouver rapidement un professeur spécifique dans la
liste, en filtrant les résultats en fonction des critères saisis.

Figure 14Page de liste des professeurs

39
3.2.5. Générer l’emploi du temps
Dans cette fonctionnalité, l'administrateur bénéficie d'une approche simplifiée pour élaborer
l'emploi du temps, il suffit d’uploader un fichier Excel. Ce fichier contient toutes les
informations cruciales, telles que les cours programmés, les professeurs assignés à chaque
cours, ainsi que les salles dédiées à ces enseignements. Une fois le fichier Excel chargé, le
système se charge automatiquement de générer l'emploi du temps pour l'ensemble du corps
enseignant. Cette automatisation non seulement accroît l'efficacité en éliminant le besoin
fastidieux de création manuelle des emplois du temps, mais garantit également une
distribution équilibrée des cours et des ressources, optimisant ainsi l'utilisation des salles de
cours disponibles.

Figure 15 Page de gestion d'emploi- admin

40
4. Conclusion

À travers ce chapitre, nous avons présenté la réalisation de l'application en expliquant les


technologies utilisées. De plus, nous avons inclus la représentation de quelques interfaces
graphiques que nous avons considérées comme étant essentielles.

41
Conclusion générale

En conclusion, notre projet de gestion de scolarité pour l'École Nationale des Arts et Métiers
de Rabat (ENSAM) a été mené à bien avec succès. Nous avons conçu et développé une
application complète répondant aux besoins spécifiques de cette institution renommée.
Notre démarche a débuté par une analyse minutieuse de l'existant, permettant ainsi d'avoir
une vue d'ensemble sur les processus de gestion en vigueur à l'ENSAM. Cette étape a été
essentielle pour définir la problématique à résoudre et choisir l'architecture appropriée pour
notre système.
Grâce à une analyse approfondie des besoins des différents utilisateurs, notamment les
professeurs et les administrateurs, nous avons conçu une interface conviviale et intuitive qui
leur permet d'accéder facilement aux fonctionnalités nécessaires à leur travail. La gestion des
notes, des cours, des convocations, de l'emploi du temps, des jours fériés, de la liste des
étudiants et des descriptifs des filières sont autant de fonctionnalités disponibles pour les
professeurs. Les administrateurs, quant à eux, disposent de fonctionnalités supplémentaires
telles que la gestion des listes d'étudiants, l'ajout ou la suppression de départements et de
filières, la gestion des convocations des examens finaux, l'ajout des jours fériés,
l'établissement de l'emploi du temps et la possibilité de verrouiller ou déverrouiller l'accès des
professeurs à la modification des notes des étudiants.
Ce projet a été une opportunité précieuse pour mettre en pratique nos connaissances en
matière de développement d'applications. Nous avons utilisé des outils et des technologies
modernes pour réaliser cette application, en veillant à respecter les normes de qualité et de
sécurité requises.
En conclusion, notre projet de gestion de scolarité pour l'ENSAM est une réalisation
significative qui simplifie et améliore les processus de gestion au sein de cette institution. Il
permet aux professeurs et aux administrateurs de gagner du temps, d'optimiser leurs tâches
administratives et d'améliorer l'efficacité globale de la gestion de la scolarité. Ce projet
constitue une étape importante dans notre parcours académique et professionnel, nous
permettant d'acquérir des compétences essentielles et de contribuer à l'amélioration
continue de l'ENSAM.

42

Vous aimerez peut-être aussi