ANNÉE-ACADÉMIQUE 2019-2020
RÉPUBLIQUE DÉMOCRATIQUE DU
CONGO ENSEIGNEMENT SUPÉRIEUR ET UNIVERSITAIRE UNIVERSITÉ DE
L'ASSOMPTION AU CONGO
U.A.C
B.P 104 BUTEMBO
E-mail : uacuniversite2018@
gmail.com Site
:
www.uaconline.org
FACULTÉ DE SCIENCES ÉCONOMIQUES ET DE
GESTION DÉPARTEMENT DE L'INFORMATIQUE DE GESTION
DÉVELOPPEMENT D'UNE APPLICATION WEB
DE GESTION DES ACTIVITÉS ACADÉMIQUES DE L'U.A.C
Par : KAMBALE KASAMBYA Moïse, a.a.
Travail de Fin de Cycle présenté et
défendu en vue de l'obtention du titre de Gradué en Informatique
de gestion
Directeur : NSENGE MPIA Héritier,
a.a.
Assistant
i
ÉPIGRAPHES
« L'informatique s'est glissée
imperceptiblement dans notre vie quotidienne. Des machines à laver aux
lecteurs de disques compacts, en passant par les distributions de billets et
les téléphones, quasiment toutes nos activités
quotidiennes utilisent du logiciel et, plus le temps
passe, plus ce logiciel devient complexe et coûteux
»
(Pierre-Alain Muller)
« L'informatique est une science mais aussi une
technologie et un
ensemble d'outils » (Vincent Granet).
II
DEDICACE
A tous ceux et celles qui s'intéressent
et qui veulent promouvoir
l'évolution technologique.
KAMBALE KASAMBYA Moïse
III
REMERCIEMENTS
L'homme ne naît pas complet et personne ne peut
prétendre connaître totalement. Ce qui montre combien
l'interdépendance est d'importance capitale dans sa vie. Ainsi
serions-nous ingrat en passant sous silence l'intervention extérieure
dans la réalisation de ce travail de fin du premier cycle en
Informatique de Gestion.
De près et de loin, nous avons été
bénéficiaires d'un apport considérable de la part des
personnes de bonne foi. C'est pourquoi nos sincères remerciements
s'adressent, tout d'abord, à Dieu, Maître et garant de la vie,
pour nous avoir accordé une bonne santé physique, morale,
intellectuelle et spirituelle durant notre premier cycle. Ensuite, c'est
à la Congrégation des Augustins de l'Assomption pour son soutien
tant moral que matériel apporté à la réalisation de
ce travail à travers la communauté Gervais Quenard.
Nos sentiments de reconnaissance s'adressent plus
spécialement à l'assistant NSENGE MPIA Héritier
qui s'est donné corps et âme comme directeur de ce travail.
Son savoir-faire y est vraiment visible et très important. Sans oublier
le corps professoral académique et le personnel scientifique de l'UAC
qui nous ont appris la base de l'informatique.
Enfin, nos sentiments de gratitude s'adressent à
tous les ami(e)s, camarades, connaissances et compagnons pour tant
d'encouragements et collaborations que nous avons reçus de leur part.
Que chacun trouve ici l'expression de notre sincère reconnaissance pour
l'entraide fraternelle qu'il nous a réservée pendant
l'élaboration de ce travail de fin du premier cycle.
WWW : World Wide Web
iv
SIGLES ET ABREVIATIONS
Art. : Article
BD : Base de données
CSS : Cascading Style Sheets
Coll. : Collection
DB : Database
HTML : HyperText Markup Language (langage de balisage
d'hypertexte)
HTTP : HyperText Transfer Protocol
I.S.E.A.B. : Institut Supérieur Emmanuel d'Alzon de
Butembo
IHM : Interface Homme Machine
MOA : Maître d'ouvrage
MOE : Maître d'oeuvre
MySQL : My Structured Query Language
NTIC : Nouvelle Technologie de l'Information et de la
Communication
PHP : PHP HyperText Preprocessor
R.D.C. : République Démocratique du Congo
SGBD : Système de Gestion de Bases de données
SGBDR : Système de Gestion de Bases de données
Relationnelles
SQL : Structured Query Language
TIC : Technologie de l'Information et de la Communication
U.A.C. : Université de l'Assomption au Congo
UML : Unified Modeling Language
URL : Uniform Ressource Locator
V
LISTE DES FIGURES
Figure 1 : Organigramme de l'UAC 9
Figure 2 : Système d'information et système
14
Figure 3 : Identification des acteurs et leurs rôles
18
Figure 4 : Diagramme des cas d'utilisation 20
Figure 5 : Diagramme de séquence du cas «
s'authentifier » 29
Figure 6 : Diagramme de séquence du cas «
s'inscrire » 30
Figure 7 : Diagramme de séquence du cas « imprimer
» 30
Figure 8 : Diagramme de séquence du cas «
attribuer » 31
Figure 9 : Diagramme de séquence du cas « affecter
» 31
Figure 10 : Diagramme de séquence du cas «
gérer» 32
Figure 11 : Diagramme de séquence du cas «
évaluer » 32
Figure 12 : Diagramme de séquence du cas « diriger
» 33
Figure 13 : Diagramme d'activité « s'authentifier
» 33
Figure 14 : Diagramme d'activité « s'inscrire
» 34
Figure 15 : Diagramme d'activité « imprimer »
34
Figure 16 : Diagramme d'activité « affecter »
34
Figure 17 : Diagramme d'activité « attribuer
» 34
Figure 18 : Diagramme d'activité « gérer
» 34
Figure 19 : Diagramme d'activité « consulter
» 35
Figure 20 : Diagramme d'activité « évaluer
» 35
Figure 21 : Diagramme d'activité « diriger »
35
Figure 22 : Diagramme de classe 37
Figure 23 : Diagramme de déploiement 39
Figure 24 : Interface d'authentification 42
Figure 25 : Page d'accueil de l'appariteur 43
Figure 26 : Page d'accueil enseignant 43
Figure 27 : Page d'accueil étudiant 43
Figure 28 : Interface inscription et gestion de
réinscription 44
Figure 29 : Interface attribution aux cours 45
Figure 30 : Interface affectation aux cours 46
vi
Figure 31 : Interface évaluation 47
Figure 32 : Interface cotes par semestre 48
Figure 33 : Grille de délibération 48
Figure 34 : Exemple d'un relevé des cotes 49
LISTE DES TABLEAUX
Tableau 1 : Cahier des charges 17
Tableau 2 : Description textuelle du cas « s'authentifier
» au système 21
Tableau 3 : Description du cas « s'inscrire » 22
Tableau 4 : Description textuelle du cas « imprimer
» 23
Tableau 5 : Description textuelle du cas « affecter
» au cours 24
Tableau 6 : Description textuelle du cas « attribuer
» les cours 25
Tableau 7 : Description textuelle du cas « gérer
» les étudiants 26
Tableau 8 : Description textuelle du cas « consulter
» les résultats 27
Tableau 9 : Description textuelle du cas « évaluer
» l'étudiant 28
Tableau 10 : Description textuelle du cas « diriger
» l'étudiant 28
0. INTRODUCTION GÉNÉRALE 0.1. État
de la question
Il est connu aujourd'hui que l'activité des entreprises
est centrée sur l'information. Les systèmes les plus connus et
les plus visibles sont les systèmes de base des entreprises qui
sous-tendent des activités opérationnelles de l'entreprise. Parmi
ces applications, nous trouvons traditionnellement la comptabilité
générale, la gestion des fournisseurs, la gestion de stock, la
gestion des ventes et des clients et souvent une application centrée sur
le métier de l'entreprise1. Pour un établissement
scolaire, il peut s'agir de la gestion de scolarité. À ce qui
nous concerne à l'Université de l'Assomption au Congo, il est
question de développer une application Web de gestion des
activités académiques.
C'est pourquoi, dans ce point, nous voulons présenter
certains auteurs qui ont traité avant nous du thème de
développement d'application Web de gestion des activités d'un
établissement d'enseignement tant primaire, secondaire
qu'universitaire.
Dans son travail intitulé Conception et
réalisation d'un site Web pour la gestion d'un jardin d'enfants,
BRAHIMI YOUSSOUF a eu comme objectif d'alléger les problèmes
concernant les tâches faites par l'administration d'un jardin d'enfant
(inscription des enfants, modification, la communication entre l'administration
et les utilisateurs, etc.) et faciliter les tâches aux parents
(inscription de leurs enfants, suivi quotidien des activités et du menu
de restauration, etc.) 2. Cela étant, Youssouf a
réalisé un site Web dynamique répondant à son
objectif.
De sa part, MOUNOUAR OTHMANE SAADAOUI ISSAM, dans son travail
intitulé Application pour la gestion des notes des étudiants
de la FST, a eu pour objectif de développer une application Web
pour gérer les notes des étudiants de la faculté des
sciences et techniques de l'université Sidi Mohamed Ben Abdellah afin de
simplifier la tâche du responsable et sécuriser les
données3. Au terme de son travail, Mounouar Issam a
réalisé un site Web capable de gérer les notes des
étudiants.
De notre part, nous voulons développer une application
Web de gestion des activités académiques de l'Université
de l'Assomption au Congo. L'objectif visé est de faciliter l'inscription
des nouveaux étudiants, la réinscription des anciens
étudiants, les attributions des
1 Cf. Jacques GUYOT,
Conception et réalisation des bases de données : De UML
à SQL, Vésenaz, éd. Systèmes et information,
2008, p.17.
2Cf. Brahimi YOUSSOUF, Conception et
réalisation d'un site Web pour la gestion d'un jardin d'enfants,
Mémoire inédit, Université Abou Bekr Belkaid, 2014-2015,
p.1.
3 Cf. Issam MOUNOUAR OTHMANE SAADAOUI,
Application pour la gestion des notes des étudiants de la FST,
Mémoire inédit, Université Sidi Mohamed Ben Abdellah,
2014-2015, p.1.
2
cours aux enseignants, les affectations des étudiants
aux cours, la gestion de cotes en ligne, la publication des résultats
des étudiants en ligne, l'automatisation de relevés des cotes et
de la grille de délibération, etc.
0.2. Problématique
De nos jours, la gestion des données de façon
automatisée occupe une place privilégiée dans le monde de
l'informatique. Depuis la découverte de l'outil informatique, de
nombreuses activités de la vie courante ont été
simplifiées. Aujourd'hui, les ordinateurs remplacent les papiers, les
calculatrices, les radios, les boites aux lettres, etc. Grâce à
cette technologie, le temps de recherche des données a chuté
considérablement, ce qui pousse à croire qu'elle a encore de
beaux jours devant elle.
Dans cette perceptive, plusieurs sociétés ou
entreprises essayent de profiter au maximum possible de cette technologie afin
d'améliorer leurs productivités et de faire face à
certains problèmes pénibles qui peuvent constituer un obstacle
dans la progression. En fait, l'objectif des informaticiens est de
développer cette technologie dans tous les domaines de la vie de la
population : « qu'on le veuille ou non, les bases de données, les
technologies de l'information de manière générale, sont
omniprésentes dans les diverses activités de l'Homme moderne
»4. L'informatique est le phénomène le plus
important de notre époque. Elle s'immisce dans la plupart des objets de
la vie courante. Elle est au coeur de toutes les grandes entreprises.
Il est intéressant aujourd'hui pour un
établissement ambitieux et soucieux de sa notoriété et des
résultats des membres de sa communauté de se doter des outils
numériques qui respectent les exigences technologiques de l'heure. La
gestion informatisée est de plus en plus courante dans notre
société, le secteur éducatif n'échappe pas à
cette tendance. En effet, ce secteur fait partie de ceux qui ont le plus besoin
d'adopter les Technologies de l'Information et de la Communication (TIC) tant
au niveau des enseignements qu'au niveau de la gestion de ces enseignements et
des acteurs impliqués. C'est pour cette raison que Gilles Roy propose,
par exemple, qu'une institution universitaire pourrait exploiter une seule base
de données permettant de gérer l'admission des candidats,
d'assurer l'offre de cours à chaque session, d'inscrire les
étudiants, de percevoir les frais d'inscription, de compiler les
résultats et d'émettre les bulletins de notes5.
4 Gilles ROY, Conception de bases de données avec
UML, Québec, Presses de l'Université du Québec, 2009,
p.1.
5 Cf. Ibidem, p. 2.
6 Cf. Guillaume PLOUIN, Cloud computing.
Sécurité, gouvernance du SI hybride et panorama du marché,
4e édition, Paris, Dunod, 2016, p.5.
3
S'inscrivant dans cette logique, nous avons constaté
que l'Université de l'Assomption au Congo est dépourvue de
mécanisme de gestion rapide et automatisée de certaines de ses
activités. L'idée de ce projet est née du souci de
répondre à un ensemble des besoins que présente cette
structure académique notamment : l'inscription des nouveaux
étudiants et la réinscription des anciens étudiants,
l'affectation des étudiants aux cours, les attributions des cours, la
gestion des cours par filière, la cotation des cours en ligne par les
enseignants, la compilation des résultats, l'émission des
relevés de côtes, etc.
Voilà l'objet de cette présente
problématique qui tourne autour de ces questions : quel sera l'apport de
cette application future par rapport au système existant ? Le
système informatique va-t-il résoudre les problèmes que
pose le système existant ? Va-t-il répondre aussi aux attentes
des acteurs impliqués ? Sont là autant d'interrogations
auxquelles nous chercherons à répondre tout au long de cette
étude que nous avons intitulée : Développement d'une
application Web de gestion des activités académiques de
l'UAC.
0.3 Hypothèse
Pour mener à bien notre investigation, notre
hypothèse se construit sur les convictions suivantes selon lesquelles :
il nous semble que la mise en place d'une application Web de gestion des
activités académique au sein de l'UAC faciliterait la tâche
aux utilisateurs par rapports au système existant. Il faciliterait aussi
la tâche aux différents chefs de départements dans la
constitution et l'impression des relevés des étudiants car
déjà automatique. En effet, le Web aurait introduit un changement
incommensurable dans l'évolution aussi bien de l'informatique que des
entreprises6.
Aussi, il se pourrait que la conservation des données
sur les supports numériques garantisse mieux leur sécurité
et minimise l'espace (diminution des papiers imprimés, etc.).
L'informatisation et l'automatisation des activités académiques
au sein de l'UAC favoriseraient la rapidité et l'efficacité dans
la publication des résultats, l'impression des relevés, etc.
0.4 Choix et Intérêt de
l'étude
Le choix de ce thème de recherche présente pour
nous un intérêt capital. Nous le savons, l'administration d'un
établissement universitaire comporte un certain nombre de tâches
indispensables que les responsables ont toujours essayé d'optimiser.
L'arrivée
7 Pascal ROQUES et Franck VALLEE, UML 2 en
action. De l'analyse des besoins à la conception, 4e
édition, Paris, Eyrolles, 2007, p.23.
4
d'ordinateurs a fait naître l'espoir d'améliorer
de façon significative l'ensemble de ces tâches. C'est en nous
inscrivant dans cette logique d'amélioration de la gestion de l'UAC que
nous avons voulu mettre à pied un système de gestion des
activités académiques au sein de ladite université.
0.5 Objectifs de l'étude
Le but de ce projet est de mettre en oeuvre une solution
d'optimisation de la gestion des activités académiques au sein de
l'UAC. Le souhait des utilisateurs de cette application est d'optimiser et de
faciliter les processus de travail. En d'autres termes, cette étude a
pour objectifs de permettre de gérer le registre de matricule des
étudiants avec les mêmes obligations de rigueur et de contenu que
celles de la gestion écrite ; de permettre la gestion interne de
l'université en matière de distribution des cours, d'affectation
des étudiants aux cours, de direction des travaux scientifiques,
d'évaluation, d'impression des grilles de délibération,
d'impression de relevé des cotes des étudiants,
etc. et de permettre une plus grande
lisibilité des données et une exploitation plus facile des
résultats des examens des étudiants.
0.6 Méthodes et techniques 0.6.1
Méthodes
Nous avons fait usage, dans ce travail, d'UML, des
méthodes historique et analytique. UML qui « se définit
comme un langage de modélisation graphique et textuel destiné
à comprendre et décrire des besoins, spécifier et
documenter des systèmes, esquisser des architectures logicielles,
concevoir des solutions et communiquer des points de vue »7,
nous a permis de faire la modélisation de notre système futur.
La méthode historique nous a permis de comprendre la
manière dont l'UAC gère ses activités académiques
au niveau des enseignements. La méthode analytique, quant à elle,
nous a aidé à analyser les différentes composantes du
système en cours, y relever les limites en vue d'y apporter une solution
qui serait palliative.
0.6.2 Techniques
L'observation nous a aidé à récolter les
données et à connaître le fonctionnement du système
en cours. La technique d'interview nous a permis de comprendre davantage le
5
système via des questions posées aux
responsables de l'UAC. Et, la technique documentaire nous a aidé
à exploiter certains documents où l'on traite ce genre des
questions.
0.7 Délimitation du sujet
Dans le temps, ce travail prend en considération les
données recueillies en 2019 lors de nos descentes sur le terrain
à l'UAC. Et, la réalisation de ce projet a couvert la
période allant de juillet 2019 à mai 2020. Du point de vue
spatial, ce projet est destiné aux services académiques de l'UAC.
Il s'agit de l'implémentation d'une application Web capable de
gérer la quasi-totalité des activités académiques :
affectation des étudiants aux cours, attributions des cours aux
enseignants, cotation des étudiants en ligne, consultation des
résultats en ligne, etc.
0.8 Subdivision du travail
Ce travail s'articule autour de trois chapitres
enveloppés d'une introduction et d'une conclusion
générales. Le premier chapitre traite du cadre théorique.
Il s'agit de donner une présentation de notre milieu d'étude et
les considérations théoriques, c'est-à-dire nous allons
essayer de définir certains concepts qui seront utilisés dans ce
travail. Le deuxième chapitre porte sur l'analyse et sur la conception
du système futur. Le troisième chapitre, quant à lui,
porte sur l'implémentation et le test du système.
Premier chapitre : PRÉSENTATION DU MILIEU
D'ÉTUDE ET CONSIDÉRATION THÉORIQUE
I.0 Introduction
Dans ce chapitre, nous voulons présenter le milieu
d'étude de notre investigation : sa dénomination, sa situation
géographique, un bref aperçu historique, son statut... d'une part
et nous essayerons de définir certains concepts à rapport avec
notre thématique comme application web, web, système
d'information, système informatique, base de données,
système de gestion de base de données... d'autre part.
I.1 Présentation du milieu d'étude
I.1.1 Dénomination
Notre milieu d'étude est l'Université de
l'Assomption au Congo, UAC en sigle. C'est une université privée
d'obédience catholique.
I.1.2 Situation géographique
L'Université de l'Assomption au Congo, ex Institut
Supérieur Emmanuel d'Alzon de Butembo, comporte une situation
géographique complexe. En effet, l'institution fonctionne sur trois
sites différents. Il est en République Démocratique du
Congo, Province du Nord-Kivu, Ville de Butembo. Le premier site est celui de
Bulengera, situé dans la Commune portant le même nom, il est
distant du centre-ville de Butembo de plus ou moins 8Km sur la route
Butembo-Bunyuka. Le deuxième site est celui de Kambali qui est
situé en Commune Vulamba, au Quartier portant le même nom à
côté de la Radio Moto Butembo-Beni. Le troisième campus est
celui dénommé Mirador : situé en Commune Kimemi, sur la
route de MANGUREJIPA.
I.1.3 Bref aperçu historique
L'UAC est la ramification du Philosophat Saint Augustin de
Bulengera, qui fonctionne depuis l'année académique 1982-1983.
Cette maison de formation des Pères assomptionnistes était
ouverte pour accueillir ceux qui, essentiellement religieux ou grands
séminaristes, lui étaient recommandés pour la formation
philosophique préparant à la théologie en vue du
sacerdoce.
Dès sa création, l'UAC a été
caractérisée par sa vénération pour saint Augustin
et son héritage intellectuel et spirituel. De sa pensée, elle a
pris comme devise ces mots : « Noverim
7
Me, noverim Te » qui se traduisent : « Que
je me connaisse, que je Te connaisse »8. Cette intuition
d'Augustin qu'on retrouve à toutes les étapes de son oeuvre,
revêt pour lui tout un programme : son désir se résume en
effet dans la connaissance de Dieu et de l'âme, sans ignorer la dimension
sociale de l'existence. Rien n'honore ainsi l'intelligence humaine que Saint
Augustin, reconnu de tous comme le « grand génie » de
l'intelligence croyante. Pour notre institution éducative, c'est donc un
honneur et une tâche que de nous situer à son sillage :
l'engagement dans la tâche exigeante de chercher et de servir la
vérité, de connaître pour servir9.
En revanche, depuis l'année académique 1993-1994
jusqu'en 2001-2002, le Philosophat Saint Augustin de Bulengera était
affilié au Philosophat Saint Augustin de Kinshasa, comme campus de
Butembo. Ce partenariat assurait la reconnaissance, par l'Etat, des
diplômes qu'il décernait. En 2002, sur demande du Ministère
de l'éducation en République Démocratique du Congo, en vue
de l'agrément provisoire, le Philosophat Saint Augustin de Bulengera a
été renommé Institut Supérieur Emmanuel
d'Alzon de Butembo (ISEAB). Il est placé sous le patronage du
Vénérable Père Emmanuel d'Alzon, fondateur des Augustins
de l'Assomption10.
En date du 18 avril 2003, en plus du graduat en philosophie,
le Ministère de l'enseignement supérieur avait accordé
à cet Institut Supérieur, par arrêté
ministériel, le pouvoir d'organiser le graduat en Sciences et techniques
de développement et en Sciences de l'information et de la communication
sociale. Dans la suite, le même ministère avait donné
l'aval d'ouvrir le second cycle pour les trois sections. L'arrêté
ministériel n°MINEDUC/CABMINESU/0048/2003 du 18/04/2003 portant
agrément provisoire de l'ISEAB fut revu et modifié comme suit
:
« Est agréé l'Institut Supérieur
Emmanuel d'Alzon de Butembo, en sigle ISEAB, organisant les cycles de graduat
et de licence jour et soir en Philosophie, en Sciences et Techniques de
Développement et en Sciences de l'Information et Communication ».
Dès lors, les dispositions antérieures avaient été
abrogées par l'arrêté Ministériel
n°006/MINESU/CAB MIN/FL/RS/2006 et le décret présidentiel
n°06/0106 du 16 juin 2006 portant agrément définitif de
l'ISEAB.
Par ailleurs, en l'année académique 2018-2019,
l'ISEAB a changé de dénomination, à la suite de
l'arrêté Ministériel
n°407/MINIESU/CAB.MIN/SMM/JPK/LMM/2018 du
8 Saint AUGUSTIN, Soliloques, II, 1.
9 Cf. Secrétariat Général
Académique, Programmes d'études, ISEAB, 2012-2015,
p.10.
10 Cf. Ibidem, p.11.
8
22/11/2018 de son Excellence monsieur le ministre de l'ESU, et
est devenu l'Université de l'Assomption au Congo, UAC en sigle.
Comme institution éducative privée
d'obédience catholique, l'UAC veut que ses étudiants soient
« formés à devenir des hommes éminents par leur
science, prêts à assumer les plus lourdes tâches dans la
société, en même temps qu'à être des
témoins de la foi dans le monde »11. Comme institut
technique privé catholique, son enseignement n'est pas confessionnel. Il
n'est pas seulement un lieu d'enseignement, d'apprentissage du savoir et du
savoir-faire, mais aussi un lieu de vie, de rencontre entre les personnes, de
développement et de promotion de chacun des étudiants qui le
fréquentent. En plus de la rigueur dans le travail, il met une note
particulière sur le respect des autres, de leurs convictions,
préalable pour le respect de la chose commune.
I.1.4 Statuts
I.1.4.1 Nature et but de l'Institution
L'Université de l'Assomption au Congo, UAC en sigle,
est une université privée d'enseignement supérieur et
universitaire en République Démocratique du Congo. Elle est une
initiative prise et réalisée par l'ASBL-Pères
Assomptionnistes établie en République Démocratique du
Congo. L'UAC existe et fonctionne donc sous la responsabilité morale des
Augustins de l'Assomption ou Assomptionnistes. Tout en ayant sa
personnalité morale autonome12.
L'UAC a été créée dans le but
d'assurer d'abord aux religieux Assomptionnistes et à d'autres religieux
la formation philosophique de niveau universitaire leur permettant de continuer
leur formation sacerdotale. Ensuite, et ceci depuis ses origines, l'UAC a
ouvert ses portes aux laïcs loyaux pour leur formation dans les
facultés qu'elle organise, aujourd'hui la faculté de lettres et
sciences humaines (avec les départements de philosophie, de sciences de
l'information et communication, et, de sciences du langage), la faculté
de sciences de gestion (avec les départements d'informatique de gestion
et de sciences de développement et Management), la faculté de
psychologie et sciences de l'éducation (avec les départements de
psychologie scolaire et de psychologie clinique) et la faculté de
sciences appliquées (avec les départements de génie civil
et de génie informatique)13.
11 Jean-Paul II, « Ex corde Ecclesiae
». Constitution apostolique sur les universités catholiques,
15 août 1995, n°9.
12 Cf. Statuts de l'UAC, Art. 1-3.
13 Cf. Art. 4.
9
GRAND CHANCELIER
I.1.5 Organigramme
CHANCELIER
Recteur
Secrétaire Général Académique
Secrétaire Général Administratif
Administrateur de budget
FACULTES
COMPTABILITE
FINANCES
PROJET
BIBLIOTHEQUE
CENTRE DE RECHERCHE
APPARITORAT PATRIMOINE PERSONNEL
PSYCHOLOGIE ET SCIENCES DE L'EDUCATION
LETTRES ET SCIENCES HUMAINES
GESTION
SCIENCES APPLIQUEES
DEPARTEMENT DE PSYCHOLOGIE SCOLAIRE
E ST I O N
DEPARTEMENT DE GENIE CIVIL
LANGAGE
DEPARTEMENT DE PSYCHOLOGIE CLINIQUE
DEPARTEMENT DE P HILOSOPHIE
DEPARTEMENT DE SCIENCES DE
DEVELOPPEMENT ET MANAGEM E NT
DEPARTE MENT DESCIENCES DU
D E P A RTEMENT DE GENIE IN FORMATIQUE
Figure 1 : Organigramme de l'UAC
Source: Cf. Archives de l'UAC
ET DE LA COMMUNICATION
DEPARTEMENT DE SCIENCES DE L' I NFORMATIO N
DEPARTEMENT D'INFORMATIQUE DE G
10
I.2 Considérations théoriques
Il s'agit, dans ce point, de définir certains concepts
ou mieux de donner une petite notion sur certains concepts qui seront d'usage
dans ce travail.
I.2.1 Une application Web
Tout d'abord, une application peut être comprise comme
« un programme ou un groupe de programmes conçus pour être
exploités par un utilisateur final quel qu'il soit (client, membre,
acrobate...). Lorsque l'utilisateur final dialogue avec l'application au moyen
d'un navigateur, on dit qu'il s'agit d'une application de base de
données sur le Web ou, plus simplement, d'une application Web
»14.
L'utilisation du Web et des applications qu'il héberge
est aujourd'hui une chose courante. Une application Web est un programme de
type client-serveur qui s'exécute sur le Web et rend un service.
Autrement dit, une application Web est hébergée sur un serveur et
est accessible via un navigateur. Un navigateur peut être compris comme
un outil permettant d'accéder à des ressources sur le Web. Les
plus utilisés à l'heure actuelle sont Google Chrome, Mozilla
Firefox, Internet Explorer, Safari et Opera. Ce navigateur affiche un document
d'accueil dans lequel une fenêtre de pilotage permet la saisie de
l'adresse Web du serveur. Le document affiché est appelé
page. L'adresse web du serveur identifie le serveur Web de
façon unique sur le Web. Elle est aussi appelée URL
(Uniform Ressource Locator)15.
En sus, une application Web est composée d'un ensemble
de pages décrites par un langage de programmation. Elle est
organisée autour de trois composants : un client, un
serveur et un réseau. Une partie client qui
émet des requêtes (identification de la page à afficher),
reçoit la page demandée, affiche la page. Le client Web
désigne tout à la fois le client matériel (hardware) et le
client logiciel, à savoir le navigateur ; une partie serveur
qui héberge les pages. Le serveur Web désigne tout à
la fois le serveur matériel (hardware) et le serveur logiciel
composé du système d'exploitation (compilateurs,
interprétateurs de code), des applications (Apache, Java, NodeJS) et les
données (ressources) et une partie réseau qui assure le
transport des requêtes et des réponses (les pages
demandées). Le réseau est composé par l'interconnexion
mondiale Internet et l'utilisation pour les applications Web du protocole
HTTP16.
14 Janet VALADE, PHP et MySQL pour les nuls,
Paris, First Interactive, 2002, p. 4.
15Cf. Alain CAZES et Joëlle DELACROIX,
Développer une application web, Paris, Dunod, 2016, p. 4.
16 Cf. Ibidem, pp. 12-13.
11
I.2.2 Différence entre une application Web et
un site Web
Une application Web est conçue et fonctionne comme un
site Web, en termes de plateforme, c'est-à-dire qu'elle est
créée à l'aide des technologies Web standard comme HTML,
CSS, JavaScript. La différence entre une application Web et un site Web
est qu'un site Web est défini par son contenu alors qu'une application
Web est définie par son interaction. Autrement dit, un site Web est une
collection de pages Web qui donnent du contenu statique, principalement
informatif. Par opposition, une application Web est un programme ou un logiciel
stocké sur un serveur et est caractérisée par
l'interaction et le traitement des données17. Le rôle
principal d'un site Web est de fournir et de présenter de l'information
aux visiteurs. Un blog, un site de nouvelles ou un site d'information sur un
produit ou une compagnie sont de bons exemples de sites Web18.
I.2.3 Internet, Web et http I.2.3.1
Internet
L'Internet est un réseau informatique mondial accessible
au public. Il est composé des millions de petits réseaux aussi
bien publics que privés, universitaires, commerciaux, etc. En bref, on
peut dire que l'internet nous permet de relier (interconnecter) des
équipements. Il s'agit « d'un inter-réseau
c'est-à-dire d'une interconnexion de réseaux
»19.
I.2.3.2 Web
Le Web est le terme communément employé pour
parler du World Wide Web, ou WWW, traduit par la toile d'araignée
mondiale. On l'appelle Toile ou la toile virtuelle car elle
est formée par différents documents liés entre eux par des
liens. C'est une énorme archive vivante composée d'une myriade de
sites Web proposant des pages Web contenant
du texte mis en forme, des images, des sons, des vidéos,
etc.20 Le Web est un système hypertexte public fonctionnant
sur Internet. Il permet de consulter, avec un navigateur, des pages accessibles
sur des sites (sites web). Le Web n'est qu'une des applications d'Internet ;
17 Cf. Bernard KAMBALE,
Modèle de m-learning et conception d'applications mobiles comme
outils de support pour l'enseignement à distance en informatique et
génie logiciel, Mémoire, Québec, Canada, 2018,
p.41.
18 Cf.
http://codegenome.com/blog/posts/la-difference-entre-un-site-web-et-une-application-web
consulté le 28/07/2019 à 22h33'.
19 Alain CAZES et Joëlle DELACROIX,
Architectures des machines et des systèmes informatiques. Cours et
exercices corrigés, Coll. « Sciences up », 3e
édition, Paris, Dunod, 2008, p. 409.
20 Cf. Jean-François PILLOU et Jean-Marie
COCHETEAU, Tout sur le Webmastering. Créer et optimiser son site
web, 3e édition, Paris, Dunod, 2011, p. 1.
12
distincte d'autres applications comme courrier
électronique, la messagerie instantanée et le partage de fichiers
en peer to peer.
I.2.3.3 Le http
Le http est le protocole de communication
communément utilisé pour transférer les ressources du Web.
Et, https est la variante de ce protocole avec authentification et
chiffrement, c'est la version sécurisée.
I.2.4 Système d'information
Aux dires de Chantal Morley, « le système
d'information est la partie du réel constituée d'informations
organisées, d'événements ayant un effet sur ces
informations, selon le processus visant une finalité de gestion et
utilisant les technologies de l'information »21. En fait, la
tâche primordiale d'un système d'information consiste
à offrir aux acteurs soit interne soit externe de l'organisation
l'information dans une perspective de double finalité.
D'une part, la finalité fonctionnelle dans laquelle le
système d'information se présente comme un outil de communication
et de coordination entre les différentes instances et domaines de
l'entreprise. Dans cette approche, le système d'information revient
à assurer un double rôle notamment le rôle
stratégique et le rôle opérationnel. Il est
stratégique lorsqu'il s'accommode avec le système de pilotage,
c'est-à-dire les prises de décisions afin de garantir
l'émergence et l'adaptation de l'entreprise. Il est opérationnel
dans la mesure où il se fonde sur des activités et
procédures de gestion automatisables, quotidiennes telles que la
gestion, la paie, la comptabilité, le commerce22.
D'autre part, le système d'information a une
finalité sociale. Étant le coeur de l'entreprise, il
s'insère dans la dynamique de la vie de l'entreprise tout en assurant la
survie des employés, leur salaire, la promotion et en faisant le
marketing pour faire connaître l'entreprise. En sus, le système
d'information entendu comme activité sociale, permet de
développer, chez le personnel l'esprit d'appartenance dans l'entreprise
afin de promouvoir une vie sociale.
En somme, le système d'information permet de produire
les informations légales réclamées par l'environnement,
déclencher les décisions programmées, fournir des
informations aux décideurs pour aider à la prise de
décisions non programmées et de coordonner les tâches en
assurant les communications au sein du système organisationnel.
21 Chantal MORLEY, Management d'un projet
système d'information. Principes, techniques, mise en oeuvre et outils,
6e édition, Paris, Dunod, 2007, p.15.
22 Cf. Camille MOINE et Bertrand
HERZ, Informatique appliquée à la gestion, 1re et
2e année, Coll. « Comptabilité et gestion
», Paris, Foucher, 1996, pp.29-33.
13
I.2.5 Système informatique
Les activités au sein d'une organisation
nécessitent une certaine automatisation. Ce qui fait que, après
avoir conçu le système d'information, ce dernier seul n'offre pas
d'une manière satisfaisante les informations en temps réel aux
utilisateurs, ce qui nécessite la mise en place d'un système
informatique en vue de traiter les informations et les restituer aux
utilisateurs d'une manière automatique.
Le système informatique est « un ensemble
organisé d'objets techniques - matériels, logiciels, applications
- dont la mise en oeuvre réalise l'infrastructure d'un système
d'information »23. Pour Jacques Lonchamp, le système
informatique peut être compris comme « un ensemble de moyens
informatiques et de télécommunications, matériels et
logiciels, ayant pour finalité de collecter, traiter, stocker, acheminer
et présenter des données »24. En d'autres termes,
le système informatique assure la communication, le traitement et la
mémorisation.
Le système informatique constitue l'infrastructure
technique du système d'information de l'organisation. Ce qu'on appelle
système d'information de l'organisation comporte, outre le
système informatique, un ensemble organisé d'autres ressources
humaines, organisationnelles et immatérielles, comme des
méthodes, des règles, des procédures, etc. En ce sens, le
système d'information est destiné à faciliter le
fonctionnement de l'organisation en lui fournissant les informations utiles
pour atteindre ses objectifs.
Dans ces définitions, donnée et
information, quand on parle du système d'information, ne sont
pas équivalents. Une donnée est « la description
d'un élément ponctuel de la réalité, comme mesure
ou une observation »25. A titre illustratif, le chiffre des
ventes d'un produit à une certaine date est une donnée. Une
donnée est représentée dans le système informatique
sous une forme binaire, c'est-à-dire à deux états,
notés 0 et 1. C'est dans cette perspective que Gilles Roy définit
une donnée comme une « représentation d'un
élément d'information, tel qu'un chiffre ou un fait, codé
dans un format permettant son stockage et son traitement par ordinateur
(Data) »26.
Une information, par contre, est «
l'interprétation humaine d'une donnée ou d'un ensemble de
données qui lui donne du sens »27. A titre indicatif, la
forme de la courbe
23 Chantal MORLEY, Op.Cit., p. 15.
24 Jacques LONCHAMP, Introduction aux
systèmes informatiques. Architectures, composants, mise en oeuvre,
Paris, Dunod, 2017, p. 1.
25 Ibidem, p. 3.
26 Gilles ROY, Op.Cit., p. 6.
27 Jacques LONCHAMP, Op.Cit., p.
3.
14
annuelle de ventes d'un produit constitue une information
significative pour un responsable commercial. Autrement dit, une information
est « une donnée ou un ensemble de données qui a ou ont
été interprétée(s) (Information)
»28. Ces deux concepts sont intimement liés. Toutefois,
il faut noter que « l'activité des entreprises est actuellement
centrée sur l'information »29. En d'autres termes,
l'information est au coeur de l'entreprise.
Figure 2 : Système d'information et
système30
I.2.6 Base de données (BD ou DB,
database)
Aujourd'hui plus qu'hier, le nombre d'informations disponibles
et les moyens de les diffuser sont en constante progression. La croissance
du World Wide Web a encore accru ce développement, en
fournissant l'accès à des bases de données très
diverses avec une interface commune. Celles-ci se situent au coeur de
l'activité des entreprises, des administrations, de la recherche et de
bon nombre d'activités humaines désormais liées à
l'informatique. « Les bases de données ont pris aujourd'hui une
place essentielle dans l'informatique, plus particulièrement en gestion
»31.
Toutefois, il semble que le terme base de données
est souvent utilisé pour désigner n'importe quel ensemble de
données ; ainsi, comme nous le confie Georges Gardarin, il s'agit
là d'un abus de langage qu'il faut éviter. Une base de
données est « un ensemble structuré d'éléments
d'information, souvent agencés sous forme de tables, dans lesquels les
données sont organisées selon certains critères en vue de
permettre leur exploitation pour répondre aux besoins d'information
d'une organisation (Database) »32. En empruntant la
terminologie de
28 Gilles ROY, Op.Cit., p. 7.
29 Jacques GUYOT, Conception et
réalisation des bases de données : De UML à SQL,
Vésenaz, éd. Systèmes et information, 2008, p. 17.
30 Chantal MORLEY, Op.Cit., p. 15.
31 Georges GARDARIN, Bases de données,
Paris, Eyrolles, 2003, p. 3.
32 Gilles ROY, Op.Cit., p. 2.
15
Georges Gardarin, nous pouvons dire que la BD est « un
ensemble de données modélisant les objets d'une partie du monde
réel et servant de support à une application informatique
»33. Le coeur d'une application Web de base de données
est la base de données proprement dite, celle qui constitue la
mémoire à long terme des informations utilisées par
l'application. Une BD peut être simplement définie comme «
l'ensemble des données stockées »34.
Techniquement, l'expression base de données désigne un
fichier ou un groupe des fichiers concernant des données réelles.
Pour les manipuler, on utilise généralement un logiciel
spécialisé appelé SGBD (Système de Gestion de
Bases de Données) ou DBMS (Database Management System). Il y a
parfois confusion, par abus de langage aussi, entre BD et SGBD.
I.2.7 Système de Gestion de base de
données
Nous l'avons dit, la gestion de la base de donnée se
fait grâce à un système appelé SGBD. Un SGBD peut
être perçu comme « un ensemble de logiciels systèmes
permettant aux utilisateurs d'insérer, de modifier et de rechercher
efficacement des données spécifiques dans une grande masse
d'informations (pouvant atteindre quelques milliards d'octets) partagée
par de multiples utilisateurs »35. Il est un outil informatique
permettant la sauvegarde, l'interrogation, la recherche et la mise en forme de
données stockées sur mémoires secondaires.
Conclusion
Dans ce chapitre, il a été question de
présenter, dans un premier temps, notre milieu d'étude,
l'Université de l'Assomption au Congo. En effet, l'Université de
l'Assomption au Congo est une institution privée d'enseignement
supérieur et universitaire en R.D.Congo. Elle est une initiative de
l'ASBL-Pères Assomptionnistes. L'Université de l'Assomption au
Congo est d'obédience catholique, ce qui ne veut pas dire que son
enseignement est confessionnel. Elle veut que ses étudiants soient
« formés à devenir des hommes éminents par leur
science, prêts à assumer les plus lourdes tâches dans la
société, en temps qu'à être des témoins de la
foi dans le monde ». Dans la seconde partie de ce chapitre, nous avons
essayé de définir certains concepts en rapport avec notre
thématique, à savoir une application Web, Web, Internet, http,
système de l'information, système informatique, base de
données, système de gestion de base de données, etc.
33 Georges GARDARIN, Op.Cit., p. 3.
34 Nicolas LARROUSSE, Création de bases de
données, Coll. « Synthex », Paris, Pearson Education,
2009, p.2.
35 Georges GARDARIN, Op.Cit., p. 4.
Deuxième chapitre :
ANALYSE ET CONCEPTION DU SYSTÈME
FUTUR
II. 0 Introduction
Après avoir présenté notre milieu
d'étude et donner le cadre théorique de notre travail, dans ce
deuxième chapitre, il s'agit essentiellement de faire l'analyse et la
conception pour une solution adéquate d'informatisation de notre
système. En effet, analyse et conception sont fondamentalement
différentes. L'analyse correspond à la modélisation du
problème tandis que la conception correspond à la
modélisation de la solution. Entre ces deux niveaux, il y a une relation
de résolution, puisque la conception résout l'analyse. Il existe
une réelle différence entre le problème et la solution.
C'est là d'ailleurs que le travail de développement prend tout
son sens : fournir la meilleure solution susceptible de répondre au
problème. Avant de développer ces deux niveaux (analyse et
conception), nous allons d'abord faire une étude préliminaire.
II.1 Étude préliminaire
L'étude préliminaire nous sert à poser
les bases de la capture des besoins de la solution que nous voulons
réaliser. Dans un premier temps, nous allons présenter le cahier
des charges du projet. Dans un second temps, nous allons identifier les
acteurs qui interagiront avec le système. Enfin, nous allons
énumérer les différents cas d'utilisation.
II.1.1 Élaboration de cahier de
charges
Le cahier des charges est une représentation
approximative des besoins réels de l'utilisateur.
17
CAHIER DES CHARGES
Ce projet est à réaliser au sein de l'UAC. Son
domaine d'application concerne
certaines activités académiques de l'UAC, et son
utilisation quotidienne ne devra pas laisser place à l'éventuel
point faible. Ce système répondra donc aux besoins suivants :
1. Besoins fonctionnels L'application doit :
> Permettre l'inscription des nouveaux étudiants et la
réinscription des anciens
étudiants.
> Permettre la modification des données
enregistrées sur les étudiants et les cours.
> Permettre le suivi automatique des étudiants pendant
leur cursus académique.
> Permettre l'impression des listes des étudiants
inscrits, des résultats des étudiants.
> Permettre l'affectation des étudiants aux cours.
> Permettre l'attribution des cours aux enseignants.
> Permettre la cotation en ligne par les enseignants.
> Permettre la consultation des résultats en ligne par
les étudiants.
2. Besoins non fonctionnels
> L'ergonomie : L'application devra être
cohérente du point de vue ergonomique. La qualité de l'ergonomie
sera un facteur essentiel, étant donnée l'utilisation intensive
qui sera faite de l'application. Un fichier d'aide à l'utilisateur,
présentant l'interface et les fonctionnalités seront
disponibles.
> Avoir un accès sécurisé et les
utilisateurs doivent avoir un accès individualisé et
limité aux données.
3. Choix techniques
> Nous avons choisi comme langage de programmation PHP. Pour
la réalisation des
interfaces, nous allons utiliser les classes du framework
Bootstrap et HTML5.
> SGBD : MySQL
> Langage de modélisation : UML36
> Architecture : client /serveur du type
3-tiers37.
|
Tableau 1 : Cahier des charges
36 UML (Unified Modeling Language, que l'on peut
traduire par « langage de modélisation Unifié ») est un
langage permettant de modéliser un problème de façon
standard. Ce langage est né de la fusion de plusieurs méthodes
existantes auparavant (OMT, BOOCH, OOSE), et est devenu désormais la
référence en terme de modélisation objet, à tel
point que sa connaissance est nécessaire pour conduire un grand projet.
Il est fondé sur les concepts orientés objets et a
été conçu pour la modélisation de tous les
phénomènes de l'activité de l'entreprise
indépendamment des techniques d'implémentation mise en oeuvre par
la suite. Il n'est ni une méthode, ni un processus mais un langage de
modélisation (Cf. Joseph GABAY et David GABAY, UML2. Analyse et
conception. Mise en oeuvre guidée avec études de cas, Coll.
« Etudes développement », Paris, Dunod, 2008).
37 Pour l'architecture client/serveur, la charge de
travail est répartie entre un ordinateur centralisé, le serveur,
et des ordinateurs qui lui sont connectés, les clients. Dans le cas
d'une architecture 3-tiers, on sépare les trois « couches »
interface homme-machine, application et gestion des données. Un
ordinateur client (la couche IHM) transmet ainsi ses requêtes à un
serveur d'application qui lui répond en faisant appel à un autre
serveur, le serveur de données. L'architecture 3-tiers est le
modèle principal d'une informatique distribuée sur Internet (cf.
Jean François PILLOU et Christine EBERHARDT, Tout sur le
développement logiciel. Écrire du code efficace, Coll.
« Comment ça marche », Paris, Dunod, 2011, p.166).
18
II.1.2 Identification des acteurs et leurs
rôles
Il s'agit ici d'identifier les acteurs qui interagissent avec
le système. Un acteur représente « un rôle joué
par une entité externe (utilisateur humain, dispositif matériel
ou autre système) qui interagit directement avec le système
étudié »38. Pour notre système, nous avons
trois acteurs : l'appariteur, l'enseignant et l'étudiant.
|
|
|
|
|
|
L'appariteur gère les étudiants. Il s'occupe
de l'attribution des cours, de l'affectation aux cours, de la
gestion des cours par filière et par promotion. Il s'occupe aussi
de l'impression des listes des étudiants inscrits, des
relevés de cotes. Il attribue aux enseingants comme aux
étudiants des mots de passe afin qu'ils se connectent au
système
|
|
|
|
|
|
|
|
|
|
|
|
|
Appariteur
|
|
|
|
L'enseignant évalue et dirige l'étudiant
inscrit.
Enseignant
L'étudiant s'inscrit, consulte et imprime ses
résultats
Etudiant
Figure 3 : Identification des acteurs et leurs
rôles
II.1.3 Identification des cas
d'utilisation
Les cas d'utilisation pour notre système futur sont :
s'authentifier au système, s'inscrire, affecter au
cours, attribuer les cours, évaluer
l'étudiant, diriger l'étudiant, consulter les
résultats, imprimer les résultats et
gérer les étudiants.
II.2 Analyse et modélisation du système
futur
L'analyse sert à modéliser la «
compréhension du problème »39 posé par le
client. En fait, l'analyse essaie de comprendre, d'expliquer et de
représenter la nature profonde du système qu'elle observe. Elle
identifie le quoi faire et l'environnement d'un système, sans
décrire le comment qui est le propre de la
conception40. C'est grâce à cette phase d'analyse que
nous saurons ce qui doit être intégré dans la solution,
mais aussi ce qui ne doit pas l'être.
38 Pascal ROQUES, UML2 par la pratique.
Études de cas et exercices corrigés, 6e
édition, Paris, éd. Eyrolles, 2008, p.16.
39 Xavier BLANC et Isabelle MOUNIER, UML2 pour
les développeurs. Cours avec exercices corrigés, Paris,
Eyrolles, p. 110.
40 Cf. Pierre-Alain MULLER, Modélisation
objet avec UML, Eyrolles, Paris, sd, p. 205.
19
Idéalement, une analyse doit être
réalisée par l'équipe de développement (MOE) et
validée par le client (MOA). « Cette communication est essentielle
pour aboutir à une compréhension commune aux différentes
parties prenantes (notamment entre la maîtrise d'ouvrage et la
maîtrise d'oeuvre informatique) et précises d'un problème
donné »41.
Pourquoi modéliser ? De la même
façon qu'il vaut mieux dessiner une maison avant de la construire, il
vaut mieux modéliser un système avant de le réaliser.
Comme le note Pascal Roques, le recours à la modélisation est
depuis longtemps une pratique indispensable au développement logiciel,
car un modèle est prévu pour arriver à anticiper les
résultats du codage. Un modèle est une représentation
abstraite d'un système destiné à en faciliter
l'étude et à le documenter. En sus, les systèmes devenant
de plus en plus complexes, leur compression et leur maîtrise globale
dépassent les capacités d'un seul individu. La construction d'un
modèle abstrait aide à y remédier. Le modèle
présente l'atout de faciliter la traçabilité du
système, à savoir la possibilité de partir d'un de ses
éléments et de suivre ses interactions et ses liens avec d'autres
parties du modèle42. Disons que modéliser un
système avant sa réalisation permet de mieux comprendre le
fonctionnement du système. C'est également un bon moyen de
maîtriser sa complexité et d'assurer sa cohérence. Dans le
cas qui est le nôtre, nous allons utiliser UML43 pour la
modélisation.
II.2.1 Diagramme de cas
d'utilisation
Le diagramme de cas d'utilisation est celui qui permet de
recueillir, d'analyser et d'organiser les besoins. Il montre les interactions
fonctionnelles entre les acteurs et le système à l'étude.
Un cas d'utilisation (en anglais « use case »)
représente un ensemble de séquences d'actions qui sont
réalisées par le système et qui produisent un
résultat observable intéressant pour un acteur particulier.
Chaque cas d'utilisation spécifie un comportement attendu du
système considéré comme un tout sans imposer le mode de
réalisation de ce comportement. Il permet de décrire ce que le
système futur devra faire, sans spécifier comment il le
fera44. L'objectif poursuivi est que « l'ensemble des cas
d'utilisation doit décrire exhaustivement les
41 Laurent AUDIBERT, UML2. De l'apprentissage
à la pratique, sl, 2009, pp.12-13.
42 Cf. Pascal ROQUES, Les cahiers du
programmeur. UML2. Modéliser une application web, 4e
édition, Eyrolles, Paris, 2008, p. 2. Notons qu'« a priori, il n'y
a pas une modélisation fausse, il y a seulement de modélisation
qui ne reflète pas la réalité » (Jacques GUYOT,
Op. Cit., p. 77).
43 UML est avant tout une notation et non une
méthode. En d'autres termes, UML ne dicte pas le processus
d'élaboration de la modélisation. Il est ouvert aux
sociétés de service, éditeurs de logiciel,
méthodologues qui peut y ajouter une valeur propre. En effet, UML unifie
à la fois les notations et les concepts orientés objet mais
également les notations nécessaires aux différentes
activités d'un processus de développement et offre le moyen
d'établir le suivi des décisions prises, depuis l'expression de
besoin jusqu'au codage. UML est un langage de modélisation graphique
à base de diagrammes (Cf. ibidem, p. 75).
44 Cf. Pascal ROQUES, UML2 par la pratique.
Études de cas et exercices corrigés, 6e
édition, Paris, Eyrolles, 2008, pp. 16-17.
20
exigences fonctionnelles du système
»45. En d'autres termes, chaque cas d'utilisation correspond
à une fonction métier du système, selon le point de vue
d'un de ses acteurs. Retenons que c'est avec le diagramme de cas d'utilisation
que commence l'étape d'analyse.
II.2.1.1 Elaboration du diagramme de cas
d'utilisation
« : Gestion des activités académiques
de l'U.A.C »
S'inscrire
« Extend »
« Extend »
Etudiant
« Extend »
Consulter les résultats
« Extend»
Imprimer les résultats
« include »
Évaluer l'étudiant
« include »
S'authentifier au système
Diriger l'étudiant
Enseignant
Appariteur
Gérer les étudiants
Attribuer les cours
« include »
« include »
« include »
Affecter au cours
Figure 4 : Diagramme des cas d'utilisation
Bien que de nombreux diagrammes d'UML permettent de
décrire un cas, il est recommandé de rédiger une
description textuelle.
II.2.1.2 Descriptions textuelles des cas
d'utilisation
La description textuelle couramment utilisée se compose
de deux parties. La première partie permet d'identifier le cas. Elle
doit contenir le nom du cas ; un résumé de son objectif ; les
acteurs impliqués (principaux et secondaires) ; les dates de
création et de mise à jour de la description courante ; le nom
des responsables ; un numéro de version.
La deuxième partie, quant à elle, contient la
description du fonctionnement du cas sous la forme d'une séquence de
messages échangés entre les acteurs et le système. Elle
contient toujours une séquence nominale qui correspond au fonctionnement
nominal du cas. Cette séquence nominale commence par préciser
l'événement qui déclenche le cas et se développe
45 Pascal ROQUES, Op.Cit, p. 17.
21
en trois points : les pré-conditions qui indiquent dans
quel état est le système avant que se déroule la
séquence ; l'enchaînement des messages et les post-conditions :
indiquent dans quel état se trouve le système après le
déroulement de la séquence nominale.
II.2.1.2.1 Description textuelle du cas «
s'authentifier » au système
Description du cas « s'authentifier » au
système
Identification
Nom : S'authentifier
Résumé : Il permet aux acteurs d'accéder
au système en saisissant leur login et mot de
passe.
Acteurs : Appariteur, enseignant et étudiant
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Pré-condition
*L'acteur doit être présent dans la base de
données et avoir un mot de passe.
A. Séquence nominale :
1. L'acteur ouvre l'application
2. Le système affiche la page d'authentification
3. L'acteur saisit le login et le mot de passe
4. Le système vérifie l'existence de
données
5. Le système affiche la page d'accueil
B. Séquence alternative
SA4 : Fermeture du système
C. Séquence d'erreur :
SE3 : Message d'erreur : Login et mot de passe non valide.
SE4 : Message d'erreur : champs obligatoires vides.
Post-condition : Acteur authentifié.
|
Tableau 2 : Description textuelle du cas «
s'authentifier » au système
22
II.2.1.2.2 Description textuelle du cas « s'inscrire
»
Description textuelle du cas « s'inscrire
»
Identification
Nom : s'inscrire
Résumé : Ce cas vise l'inscription de
l'étudiant au sein de l'Université de l'Assomption au
Congo.
Acteur : Etudiant
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Ce cas d'utilisation débute lorsque l'étudiant a
toutes les cordonnées pour s'inscrire.
Pré-condition
*L'étudiant doit avoir son dossier complet.
A. Séquence nominale :
1. L'étudiant dépose le dossier complet à
l'apparitorat
2. L'appariteur choisit d'inscrire l'étudiant
3. Le système affiche un formulaire à remplir
4. L'appariteur saisit les informations concernant
l'étudiant à inscrire
5. Le système vérifie les données
6. Le système enregistre l'étudiant dans la base
de données.
B. Séquence alternative SA5 : Pas d'enregistrement
C. Séquence d'erreur
SE4 Champs obligatoires non valides ou vide.
SE5 Certaines informations sont incorrectes. Post-condition :
étudiant inscrit.
|
Tableau 3 : Description du cas « s'inscrire
»
23
II.2.1.2.3 Description textuelle du cas « imprimer
»
Description du cas « imprimer »
Identification
Nom : Imprimer
Résumé : Ce cas permet à l'étudiant
d'imprimer ses résultats et à l'appariteur d'imprimer
les listes des étudiants inscrits et leurs relevés
des cotes.
Acteurs : Etudiant et appariteur
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Ce cas d'utilisation débute lorsque l'appariteur est
sûr que l'étudiant est inscrit et qu'il
remplit toutes les conditions. Bien plus, l'étudiant doit
se rassurer qu'il est en ordre.
Pré-condition :
*Être inscrit.
* La base de données doit être renseignée.
A. Séquence nominale :
1. Recherche des informations de l'étudiant.
2. le système affiche les informations sur
l'étudiant
3. l'appariteur ou l'étudiant clique sur imprimer
4. le système demande la validation de l'impression
5. l'appariteur ou l'étudiant valide l'impression
6. le système affiche un message de validation.
Post-condition : liste ou relevé des cotes imprimé(e).
|
Tableau 4 : Description textuelle du cas «
imprimer »
24
II.2.1.2.4 Description textuelle du cas affecter au
cours
Description du cas « affecter » au
cours
Identification Nom : affecter
Résumé : Ce cas vise l'affectation de l'étudiant aux cours
après qu'il est inscrit. Acteur : Appariteur
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Ce cas d'utilisation débute quand l'étudiant vient
d'être inscrit.
Pré-condition :
*Etre inscrit dans la base de données
A. Séquence nominale :
1. L'appariteur choisit d'affecter l'étudiant
2. Le système propose de choisir le code du cours
3. L'appariteur choisit le code du cours
4. Le système demande de choisir le code de la
promotion
5. L'appariteur choisit le code de la promotion
6. L'appariteur affecte l'étudiant au cours
7. Le système enregistre l'affectation. Post-condition
:
*L'étudiant est affecté au cours.
|
Tableau 5 : Description textuelle du cas «
affecter » au cours
25
II.2.1.2.5 Description textuelle du cas « attribuer
» au cours
Description du cas « attribuer » les
cours
Identification Nom : attribuer
Résumé : Ce cas d'utilisation vise à attribuer les cours
aux enseignants. Acteur : Appariteur
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Ce cas commence quand l'appariteur veut attribuer un cours
à un enseignant.
Pré-condition :
* Le cours doit être enregistré dans la base de
données.
*L'enseignant doit figurer dans la base de données.
A. Séquence nominale :
1. L'appariteur choisit l'attribution aux cours.
2. Le système demande de choisir le semestre.
3. L'appariteur sélectionne le semestre
concerné.
4. Le système demande de choisir le code du cours.
5. L'appariteur sélectionne le code du cours
concerné.
6. Le système demande de choisir la matricule de
l'enseignant.
7. L'appariteur sélectionne la matricule de l'enseignant
concerné.
8. Le système demande choisir l'année
académique.
9. L'appariteur sélectionne l'année
académique.
10. Le système enregistre l'attribution. Post-condition :
Le cours est attribué.
|
Tableau 6 : Description textuelle du cas «
attribuer » les cours
26
II.2.1.2.6 Description textuelle du cas «
gérer » les étudiants
Description du cas « gérer » les
étudiants
Identification
Nom : gérer les étudiants
Résumé : Ce cas d'utilisation vise la gestion des
étudiants inscrits. Acteur : Appariteur
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Ce cas commence quand l'étudiant est déjà
inscrit.
Pré-condition :
* Être inscrit.
A. Séquence nominale :
1. L'appariteur cherche les étudiants inscrits.
2. Le système affiche la liste des étudiants
inscrits.
3. L'appariteur cherche le numéro matricule de
l'étudiant concerné.
4. Le système affiche l'étudiant.
5. L'appariteur choisit de réinscrire
l'étudiant.
6. Le système enregistre la réinscription.
7. L'appariteur attribue un mot de passe à
l'étudiant.
8. Le système enregistre la modification. Post-condition
: étudiant est réinscrit à l'UAC.
|
Tableau 7 : Description textuelle du cas «
gérer » les étudiants
27
II.2.1.2.7 Description textuelle du cas «
consulter » les résultats
Description du cas « consulter » les
résultats
Identification Nom : consulter
Résumé : Ce cas vise à vérifier la cote ou le
résultat obtenu par un étudiant. Acteur : Etudiant
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Ce cas d'utilisation débute lorsque l'étudiant veut
connaître ses points.
Pré-condition :
* Avoir suivi le cours concerné
* S'assurer que le cours a été
évalué
*Avoir fini le semestre ou l'année
A. Séquence nominale :
1. L'étudiant choisit de consulter son résultat
2. Le système demande de choisir l'année
académique
3. L'étudiant choisit l'année académique
4. Le système affiche le résultat. Post-condition
: Résultat disponible
|
Tableau 8 : Description textuelle du cas «
consulter » les résultats
28
II.2.1.2.8 Description textuelle du cas «
évaluer » étudiant
Description du cas « évaluer »
étudiant
Identification Nom : évaluer
Résumé : Ce cas d'utilisation vise
l'évaluation de l'étudiant dans une matière.
Acteur : Enseignant
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Ce cas débute lorsque l'enseignant veut évaluer
l'étudiant dans une matière enseignée.
Pré-condition :
*Etre inscrit et affecté au cours concerné
A. Séquence nominale :
1. L'enseignant choisit l'évaluation de
l'étudiant.
2. Le système affiche la liste des étudiants
à évaluer
3. L'enseignant évalue
4. Le système enregistre les données introduites.
Post-condition : l'étudiant est évalué.
|
Tableau 9 : Description textuelle du cas «
évaluer » l'étudiant II.2.1.2.9 Description textuelle du cas
« diriger » l'étudiant
Description du cas « diriger »
l'étudiant
Identification
Nom : diriger
Résumé : Ce cas d'utilisation vise la direction des
travaux scientifiques des étudiants
finalistes.
Acteur : Enseignant
Date de création : 1er/09/2019 Version : 1.0
Responsable : Kasambya
Séquencement
Ce cas débute quand l'étudiant présente son
sujet chez l'enseignant pour la direction.
Pré-condition :
*Etre en troisième année de graduat ou en
deuxième année de Licence.
A. Séquence nominale :
1. L'enseignant choisit la direction des étudiants.
2. Le système demande de choisir l'année
académique
3. L'enseignant choisit l'année académique
4. Le système demande de choisir du numéro
matricule de l'étudiant
5. L'enseignant choisit la matricule de l'étudiant
6. L'enseignant choisit évalué puis enregistre la
cote de l'étudiant. Post-condition : l'étudiant a
été dirigé.
|
Tableau 10 : Description textuelle du cas «
diriger » l'étudiant
29
II.2.2 Diagramme de séquence
Un diagramme de séquence est un diagramme qui
représente une interaction entre objets en insistant sur la chronologie
des envois de messages. Un objet est matérialisé par un rectangle
et une barre verticale appelée ligne de vie des objets. Les
objets communiquent en échangeant des messages représentés
au moyen de flèches horizontales46, orientés de
l'émetteur du message vers le destinataire. L'ordre d'envoi des messages
est donné par la position sur l'axe vertical47. Le diagramme
de séquence reprend les différents scénarios d'un cas
d'utilisation. Dans ce travail, nous allons essayer de représenter les
diagrammes de séquence des différents cas d'utilisation de notre
système.
II.2.2.1 Diagramme de séquence du cas «
s'authentifier »
Sd : S'authentifier
Else
If
Alt
Appariteur
Enseignant
Etudiant
1. Ouverture de l'application
2. Affichage de la page d'authentification
3.Saisie du login et mot de passe O
5. Affichage de la page d'accueil O
4. Vérification du login et mot de passe
O
5.1 Fermeture du systèmeO
: Système
Figure 5 : Diagramme de séquence du cas «
s'authentifier »
46 Un message synchrone se
représente par une flèche à l'extrémité
pleine qui pointe sur le destinataire du message. Ce message peut être
suivi d'une réponse qui se représente par une flèche en
pointillé. Un message asynchrone se représente par une
flèche à l'extrémité ouverte (voir Benoît
CHARROUX et alii, UML2. Pratique de la modélisation, Coll.
« Synthex », 2e édition, Paris, éd. Pearson
Education, 2009, p. 91).
47 Cf. Joseph GABAY et David GABAY, Op. Cit.,
pp. 90-92.
30
II.2.2.2 Diagramme de séquence du cas «
s'inscrire »
Sd : inscription
Etudiant Appariteur
1. Arrivée de l'étudiant
9. Remise du reçu d'inscription
2. Présentation du dossier
Alt
Else
If
3. Vérification du dossier
4. Demande du formulaire d'inscription()
5. Affichage du formulaire d'inscription ()
6.Saisie des coordonnées de l'étudiant ()
7. Vérification des données
saisies()
8. Enregistrement de l'étudiant dans la
BD()
8.1 Refus d'enregistrement ()
: Système
Figure 6 : Diagramme de séquence du cas «
s'inscrire » II.2.2.3 Diagramme de séquence du cas « imprimer
»
Sd : impression
Appariteur
Etudiant
2. Affichage des informations de l'étudiant ()
3. Clic sur le bouton imprimer ()
1. Recherche des informations de l'étudiant
()
6. Impression effectuée avec succès
()
4. Génération de la page à
imprimer ()
5. Validation de l'impression()
: Système
Figure 7 : Diagramme de séquence du cas «
imprimer »
31
II.2.2.4 Diagramme de séquence du cas «
attribuer »
Sd : Attribution
Appariteur
: Système
. o x u se es e
2. Choix du code du cours à attribuer
3. Choix matricule de l'enseignant
4. Attribution du mot de passe
5. Choix de l'année académique
6. Enregistrement de l'attribution() Figure 8
: Diagramme de séquence du cas « attribuer » II.2.2.5
Diagramme de séquence du cas « affecter »
Sd : Affectation
Appariteur
5. Choix de l'année et spécification de la
promotion ()
6. Affichage de la liste des étudiants à
affecter ()
4. Affichage du code de la promotion ()
8. Etudiant affecter avec succès ()
4. Clic sur le bouton affecter ()
3. Clic sur nom de la filière ()
2. Affichage du cours ()
1. Choix du code cours
: Système
Figure 9 : Diagramme de séquence du cas «
affecter »
Figure 11 : Diagramme de séquence du cas «
évaluer »
32
II.2.2.6 Diagramme de séquence du cas «
gérer »
Sd : Gestion étudiant
Appariteur
4. Choix de la promotion et l'année
académique ()
3. Affichage du formulaire de réinscription
()
1. Recherche matricule de l'inscrit ()
2. Clic sur le bouton recherche ()
5. Clic sur le bouton réinscrire ()
6. Etudiant réinscrit ()
: Système
Figure 10 : Diagramme de séquence du cas «
gérer»
Sd : Evaluation
Enseignant
1. Demande d'afficher la liste des étudiants
()
5. Affichage du formulaire pour évaluer ()
2. Affichage liste des étudiants ()
4. Choix de l'étudiant ()
7. Enregistrement des données ()
6. Clic sur le bouton évaluer ()
6. Saisie de la cote obtenue ()
: Système
II.2.2.7 Diagramme de séquence du cas «
évaluer »
33
II.2.2.8 Diagramme de séquence du cas «
diriger »
Sd : Direction
Enseignant
2. Affichage de la liste des étudiant par
matricule ()
6. Affichage du formulaire de cotation ()
4. Affichage de l'étudiant concerné
()
1. Recherche de l'étudiant par année
()
3. Choix de matricule de l'étdiant ()
7. Saisie de la cote de l'étudiant ()
8. Enregistrement avec succès ()
5. Clic sur bouton évaluer ()
: Système
Figure 12 : Diagramme de séquence du cas «
diriger »
II.2.3 Diagramme d'activité
Les diagrammes d'activités sont particulièrement
adaptés à la description des cas d'utilisation. Plus
précisément, ils viennent illustrer et consolider la description
textuelle des cas d'utilisation. De plus, leur représentation sous forme
d'organigrammes les rend facilement intelligibles et beaucoup plus accessibles
que les diagrammes d'états-transitions. On se concentre ici sur les
activités telles que les voient les acteurs qui collaborent avec le
système dans le cadre d'un processus métier.
II.2.3.1 Diagramme d'activité «
s'authentifier »
Affichage de la
page d'accueil
Ouverture de
l'application
Affichage de la page
d'authentification
Oui
Vérification des données saisies
Saisie de login et mot de passe
Non
Login ou le mot de passe incorrect
Figure 13 : Diagramme d'activité «
s'authentifier »
Certains champs
obligatoires sont vides.
Enregistrement de
l'étudiant dans la BD
34
II.2.3.2 Diagramme d'activité « s'inscrire
»
Présentation du
dossier
Vérification du
dossier
Affichage du
formulaire d'inscription
Saisie des
coordonnées
Oui
Non
Figure 14 : Diagramme d'activité « s'inscrire
» II.2.3.3 Diagramme d'activité « imprimer »
Clic sur le bouton imprimer
Impression des résultats de
l'étudiant
Recherches des informations de l'étudiant
Figure 15 : Diagramme d'activité «
imprimer » II.2.3.4 Diagramme d'activité « affecter
»
Affichage code
promotion
Clic sur filière
Recherche code
cours
|
Choix code
cours
|
Choix année
académique
Affichage liste
des étudiants
|
Enregistrement de
l'affectation Clic sur le bouton
|
affecter
|
Figure 16 : Diagramme d'activité « affecter
» II.2.3.5 Diagramme d'activité « attribuer »
Choix semestre
Choix code
cours
Choix matricule
de l'enseignant
Attribution de
mot de passe
Choix année
académique
Enregistrement de
l'attribution
Figure 17 : Diagramme d'activité « attribuer
» II.2.3.6 Diagramme d'activité « gérer
»
Affichage liste des
étudiants inscrits
|
Recherche matricule
de l'étudiant inscrit
|
Clicsur le bouton
réinscrire
|
Enregistrement
dans la BD
|
Clic sur le bouton
gestion inscription
Attribution mot de
passe à l'étudiant
Enregistrement
modification
|
Figure 18 : Diagramme d'activité «
gérer »
Choix de
l'étudiant
Clic sur le bouton
évaluer
Affichage liste
des étudiants
35
II.2.3.7 Diagramme d'activité « consulter
»
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sélection année
académique
|
|
|
|
Affichage
résultat
|
|
|
|
Choix relevé
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Choix cote cours
Choix cote
semestre
Sélection année
académique
Sélection année
académique
Sélection code
cours
Sélection
semestre
Affichage
résultat
Affichage
résultat
Figure 19 : Diagramme d'activité « consulter
» II.2.3.8 Diagramme d'activité « évaluer
»
Affichage formulaire
d'évaluation
|
Saisie de la
cote
|
Enregistrement
Figure 20 : Diagramme d'activité «
évaluer » II.2.3.9 Diagramme d'activité « diriger
»
Sélection matricule
de l'étudiant
Affichage de
l'étudiant
Clic sur le bouton
évaluer
Saisie de la
cote
Figure 21 : Diagramme d'activité « diriger
»
36
II.3 Conception de la solution
La phase de la conception consiste à modéliser
une solution qui résout le problème modélisé dans
la phase d'analyse. Il me semble que « fournir une solution informatique
n'est pas ce qu'il y a de plus difficile : c'est juste un problème
algorithmique. Par contre, il est bien plus compliqué de fournir la
meilleure solution au problème, car, à un problème
donné, correspondent bien souvent plusieurs solutions
»48. La conception est le temps de la mise en oeuvre du
savoir-faire. Elle débute par la détermination de l'architecture
du logiciel, c'est-à-dire par l'élaboration des structures
statiques et dynamiques qui serviront de charpente pour l'ensemble du
développement. L'architecture définit la forme
générale de l'application ; de sa qualité dépendent
le développement et l'évolution du logiciel.
II.3.1 Diagramme de classes
Le diagramme de classe constitue l'un des pivots essentiels de
la modélisation avec UML. Ce diagramme permet de donner la
représentation statique du système à développer
centrée sur les concepts de classe et d'association. Chaque classe se
décrit par les données et les traitements dont elle est
responsable pour elle-même et vis-à-vis des autres classes. Les
traitements sont matérialisés par des opérations. Le
détail des traitements n'est pas représenté directement
dans le diagramme de classe49.
II.3.1.1 Elaboration du diagramme de classes
48 Xavier BLANC et Isabelle MOUNIER, UML2 pour
les développeurs. Cours avec exercices corrigés, Paris,
Eyrolles, p. 110.
49 Cf. Joseph GABAY et David GABAY, UML2.
Analyse et conception. Mise en oeuvre guidée avec études de
cas, Coll. Etudes développement , Paris, Dunod, 2008, pp. 17-25.
37
1..*
travauxscientifique
|
|
|
|
|
type
|
semestre
|
+Code : string
|
+Sujet : string
|
|
+idtype : int
|
|
+CoSemestre :string
|
+Domaine : string
|
|
+Libelle : string
|
|
+NomSemestre : string
|
+AnneeAcad : string
|
|
|
|
|
+Ajouter () : void
|
|
+Ajouter () : void
|
|
+Ajouter () : void
|
+Modifier () : void
|
|
+Modifier () : void
|
|
+Modifier () : void
|
+Supprimer () : void
|
|
+Supprimer () : void
|
|
+Supprimer () : void
|
1..*
enseignant
*
1..*
1
1..*
1..*
cours
+CodCours : string +NomCours :
string +Credit : int +nbre_Heure :
int +objectif : string
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
1..*
direction
+AnneeAcad : string +CoteSatge :
int +CotesTravail : int
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
*
|
inscription
+dateinscription : string
+AnneAcad : string +password :
string
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
|
1..*
affecter
1..* 1..*
+Matricuenseig : string +Nom :
string +PostNom : string +Prenom :
string +Sexe : char +Tel :
string
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
attribution
+DateAttribution : string
+AnnéeAcad : string +password :
string
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
1..*
etudént
|
+MatriculeInscrit : string +Nom
: string
+PostNom : string
+Prenom : string
+Tel : string
+Lieunaissance : string
+Datenaissance : string +Adresse :
string +Adressecontrat : string
+Nationalite : string +ProvinceOrigine :
string +TerritoireCommune : string
+EtatCivil : string +EcoleSecondaire :
string +numerocentreexamenetat:string
+anneeobtentiondiplome : string +Pourcentage :
string +Postsecondaire : string
|
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
|
s'inscrire
|
|
affectation
+DateAffectation : string
+AnneeAcad : string
|
1..*
|
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
|
|
gestioncours
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
appartenir
évaluer
evaluation
+cote : int +DateEvaluation :
string +AnneeAcad : string
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
1..*
1..*
1..*
promotion
|
|
Appartenir
|
1
|
filiere
|
|
|
|
|
+Codfil : string
|
+CodPro : string
|
+Nomfil : string
|
+NomPro : string
|
|
|
|
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
|
+Ajouter () : void +Modifier ()
: void +Supprimer () : void
|
|
departement
|
|
faculte
|
|
+CodDep : string
|
|
+Codfac : string
|
|
+NomDep : string
|
|
+Nomfac : string
|
|
+Objectif : string
|
|
+Objectif : string
|
|
|
|
|
|
+Ajouter () : void
|
|
+Modifier () : void
|
|
+Modifier () : void
|
|
+Supprimer () : void
|
|
+Supprimer () : void
|
* 1
appartenir
+Ajouter () : void apparteni
Figure 22 : Diagramme de classe
38
II.3.1.2 Schéma relationnel
faculte(Codfac, Nomfac)
semestre(CodSemestre, NomSemestre)
types(idtype, Libelle)
cours(Codcours, NomCours, credit, Nbre_Heure)
enseignant(Matriculenseig, Nom, PostNom, Prenom, Sexe, Tel)
etudiant(MatriculeInscrit, Nom, PostNom, Prenom, Sexe,
Tel, Lieunaissance, Datenaissance, Adresse, Adressecontrat, Nationalite,
ProvinceOrigine, TerritoireCommune, EtatCivil, EcoleSecondaire, AdresseEcole,
nomcentreexamenetat, anneeobtentiondiplome, Pourcentage, numerodiplome,
Postsecondaire)
departement(CodDep, #Codfac, NomDep)
filiere(Codfil, #CodDep, Nomfil)
promotion(CodPro, #Codfil, NomPro)
gestioncours(idgescours, #Codcours, #Codfil)
inscription(idinscription, #MatriculeInscrit, #CodPro,
Dateinscription, AnneeAcad, password) travauxscientifique(Code, #idtype,
#MatriculeInscrit, Sujet, Domaine, AnneeAcad) affectation(idAffection,
#idinscription, #Codcours, DateAffectation, AnneeAcad) evaluation(idEvaluation,
#idAffectation, #idAttribution, cote, DateEvaluation, AnneeAcad)
attribution(idAttribution, #CodSemestre, #Codcours, #Matriculenseig,
DateAttribution,
AnneeAcad, password)
direction(id, #idinscription, #Code, #CodPro, AnneeAcad,
CotesSatge, CotesTravail)
II. 3.2 Diagramme de déploiement
Le diagramme de déploiement permet de
représenter l'architecture physique supportant l'exploitation du
système. Cette architecture comprend des noeuds correspondant aux
supports physiques (serveurs, routeurs...) ainsi que la répartition des
artefacts logiciels (bibliothèques, exécutables...) sur ces
noeuds. C'est un véritable réseau constitué de noeuds et
de connexions entre ces noeuds qui modélise cette
architecture50.
50 Cf. Joseph GABAY et David GABAY, UML2.
Analyse et conception. Mise en oeuvre guidée avec études de
cas, Coll. « Etudes développement », Paris, Dunod, 2008,
p.50. Un noeud correspond à une ressource
matérielle de traitement sur laquelle des artefacts seront mis en oeuvre
pour l'exploitation du système. Les noeuds peuvent être
interconnectés pour former un réseau d'éléments
physiques.
Un artefact est la
spécification d'un élément physique qui est utilisé
ou produit par le processus de développement du logiciel ou par le
déploiement du système. C'est donc un élément
concret comme par exemple : un fichier, un exécutable ou une table d'une
base de données.
39
«internet»
Routeur : Cisco small business
FAI ;
Orange
Client :
PC S.E ; Windows CPU :
N3060
Client :
PC S.E ; Windows CPU :
N380
ServeurBaseDonnées : ServeurSGBD
Serveur WEB :
Figure 23 : Diagramme de
déploiement51
Conclusion
Ce chapitre nous a permis de faire l'analyse et la conception
de notre système futur. Nous sommes partis de l'étude
préliminaire qui nous a aidé à poser les bases sur la
capture des besoins de la solution que nous avons à réaliser.
Dans ce point, nous avons présenté le cahier des charges,
identifié les acteurs qui interagissent avec le système et
énuméré les différents cas d'utilisation.
Après cette étude, nous avons focalisé notre attention sur
l'analyse et la modélisation du système futur. En effet,
l'analyse sert à modéliser la compréhension du
problème posé par le client. La modélisation, quant
à elle, nous permet de mieux comprendre le fonctionnement du
système. A ce sujet, nous nous sommes servis du langage de
modélisation unifié, UML. Enfin, nous sommes passés
à l'étape de la conception qui consiste à modéliser
une solution qui résout le problème modélisé dans
la phase de l'analyse. Ce qui nous conduit à l'implémentation et
au test du système au chapitre suivant.
51 La figure 23 représente le
déploiement d'un serveur Web avec lequel deux machines clientes,
dotées des navigateurs Web, communiquent. Le serveur, qui est
connecté à une base de données installée sur
machine tierce, exécute l'artefact siteWEB. En fait, ce sont les parties
d'un système qui s'exécutent sur un noeud qu'on appelle artefact
(voir CHARROUX Benoît et alii, UML2. Pratique de la
modélisation, Coll. « Synthex », 2e édition,
Paris, éd. Pearson Education, 2009, p.240) .
Troisième chapitre :
IMPLÉMENTATION ET TEST DU
SYSTÈME
III.0 Introduction
Après avoir réalisé l'étude
préliminaire, l'analyse et la conception de notre système futur
dans le deuxième chapitre, dans ce dernier, il est question de faire
l'implémentation et le test de notre système. Nous allons tout
d'abord parler du choix du langage de programmation, ensuite, présenter
quelques interfaces graphiques de notre système et donner quelques
codes.
III.1 Choix du langage de programmation
Dès l'élaboration de notre cahier des charges,
nous avons signifié que notre choix pour le langage de programmation,
c'est le PHP et MySQL comme notre SGBD. En effet, PHP est un langage de script
côté serveur qui a été conçu
spécifiquement pour le Web. Le Code PHP est inclus dans une page
HTML52. Pour ce faire, nous avons usé de HTML5, du CSS3 et du
framework bootstrap53. PHP est un projet open-source, ce
qui signifie qu'on peut se procurer son code, l'utiliser, le modifier et la
redistribuer gratuitement. PHP signifiait à l'origine Personal Home
Page, mais ce nom a été changé en acronyme, il
signifie maintenant PHP Hypertext Preprocessor.
MySQL, quant à lui, est un système de gestion
des bases de données relationnelles (SGBDR) robuste et rapide. Il est
aussi open-source. MySQL est un serveur de bases de données
relationnelles. Une base de données, nous l'avons-dit, permet de
manipuler les informations de manière efficace, de les enregistrer, de
les trier, de les lire et d'y effectuer des recherches. Le serveur MySQL
contrôle l'accès aux données pour assurer que plusieurs
utilisateurs peuvent se servir simultanément d'une même base de
données. MySQL est un serveur « multi-utilisateur » et «
multithread ». Il utilise SQL (Structured Query Language ou
52 HTML est le langage unificateur de World Wide
Web. Comme le Web lui-même, l'HyperText Markup Language est une invention
personnelle de Sir Tim Berners-Lee (voir Jeremy KEITH, HTML5 Pour les Web
designers, Paris, Eyrolles, 2010).
53 Bootstrap est un framework HTML, CSS et
JavaScript, c'est-à-dire une structure qui contient de nombreux
composants prêts à l'emploi. Bootstrap permet de
développer plus rapidement et plus simplement car il est compatible avec
tous les navigateurs. Mais ce qui fait de Bootstrap une
véritable star, c'est sa popularité pour
développer responsive. Un framework, issu de
l'anglais, signifie littérallement « structure ». Il est un
ensemble de composants structurés qui sert à créer les
fondations et à organiser le code informatique pour faciliter le travail
des programmeurs, que ce soit en termes de productivité ou de
simplification de la maintenance. Il en existe beaucoup pour les applications
web qui ciblent de nombreux langages : Java, Python, Ruby, PHP. . . Il existe
des frameworks côté serveur (désignés
backend en anglais), et d'autres côté client
(désignés frontend en anglais). Bootstrap fait
partie de cette deuxième catégorie (voir Maurice CHAVELLI,
Prenez en main Bootstrap, OpenClassrooms, 2014).
41
mieux, Langage d'interrogation structuré), le
langage standard des requêtes de bases de données54. Il
sied de noter que SQL est un langage de définition de données
(LDD), c'est-à-dire qu'il permet de créer des tables dans
une base de données relationnelle, ainsi que d'en modifier ou en
supprimer ; un langage de manipulation de données (LMD), cela
signifie qu'il permet de sélectionner, insérer, modifier ou
supprimer des données dans une table d'une base de données
relationnelle ; un langage d'interrogation des données (LID) :
c'est-à-dire qu'il permet la sélection (recherche) de
l'information et la mise en oeuvre du langage relationnel et un langage de
protections d'accès ou mieux un langage de contrôle des
données (DCL) : Il est possible avec SQL de définir des
permissions au niveau des utilisateurs d'une base de données. On parle
de DCL (Data Control Language). Le langage SQL (Structured Query Language) est
un langage de requête utilisé pour interroger des bases de
données exploitant le modèle relationnel55.
Pourquoi avons-nous choisi PHP et MySQL ?
Il sied de noter que lors de l'implémentation d'un site
Web ou d'une application Web, le programmeur a le choix entre les nombreux
produits : la plate-forme matérielle du serveur Web ; un système
d'exploitation ; un logiciel de serveur web ; un système de gestion de
base de données ; un langage de programmation ou de script. Certains de
ces choix dépendent directement des autres. Tous les systèmes
d'exploitation ne fonctionnent pas sur toutes les plates-formes. Par ailleurs,
l'une des caractéristiques intéressantes de PHP et de MySQL tient
à ce qu'ils fonctionnent avec tous les systèmes d'exploitation
les plus connus et avec la plupart des autres. C'est cette
caractéristique avec beaucoup d'autres avantages de PHP comme sa
performance, son adaptabilité, son faible coût, sa
simplicité d'utilisation et d'apprentissage, sa souplesse dans le
processus de développement, etc. qui nous a motivé à
choisir PHP comme notre langage de programmation.
MySQL et PHP sont fréquemment utilisés
conjointement. On les appelle parfois le duo dynamique. MySQL assure
la gestion de la base de données et PHP le langage de programmation dans
lequel sont écrites les applications de bases de données sur le
Web.
Pour réaliser les interfaces de notre application, nous
nous sommes servis des classes de Bootstrap dans lesquelles nous avons
inclus les codes PHP.
54 Cf. Luke WELLING et Laura THONSON, PHP &
MySQL, 4e édition, Paris, Pearson Education, 2009,
pp.1-5.
55 S. NAMECHE, Support de cours : Introduction
à SQL et MySQL, 2003 in
http://sebastien.nameche.fr/cours,
C. SOUTOU, Apprendre SQL avec MySQL. Avec 40 exercices
corrigés, Paris, éd. Eyrolles, 2006, p.2.
42
III.2 Présentation des quelques interfaces
graphiques
La conception des interfaces de l'application est une
étape très importante. Toutes les interactions avec le coeur de
l'application passent à travers ces interfaces. On doit alors guider
l'utilisateur avec les messages d'erreurs et de notification si besoin. Dans
cette partie, nous allons présenter quelques interfaces de
l'application, répondant aux recommandations ergonomiques de
compatibilité, de guidage, de clarté,
d'homogénéité et de souplesse.
III.2.1 Interface d'authentification
Nous avons opté de créer une page
d'authentification pour l'appariteur, les enseignants et les étudiants.
Cette page permet à ces utilisateurs de s'identifier par leur nom pour
l'appariteur, leur numéro matricule pour les enseignants et les
étudiants ; leurs mots de passe, ainsi qu'un champ de leur statut, voir
figure 24.
Figure 24 : Interface d'authentification
Si les coordonnées de l'utilisateur sont
erronées, le système affiche un message d'erreur et l'invite
à ressaisir ses coordonnées. Sinon l'utilisateur est
redirigé vers sa page d'accueil, dans lequel on trouve les
différents menus selon le statut de chacun (voir figures 25 pour
l'appariteur, 26 pour l'enseignant et 27 pour l'étudiant).
43
Figure 25 : Page d'accueil de l'appariteur
Figure 26 : Page d'accueil enseignant
Figure 27 : Page d'accueil étudiant
44
III.2.2 Interface inscription et gestion des
réinscriptions
L'interface inscription et gestion des réinscriptions
permet à l'appariteur d'accéder à la liste des
étudiants inscrits et de faire la réinscription dans la promotion
supérieure. À partir de cette interface, on peut imprimer des
listes des inscrits par promotion en cliquant sur le bouton imprimer. Il suffit
de faire une recherche par promotion pour avoir la liste des étudiants
qui y sont inscrits. Si l'on veut connaître les étudiants inscrits
au courant d'une année, il est question de faire une recherche par
année. La figure 28 illustre cette interface :
Figure 28 : Interface inscription et gestion de
réinscription
III.2.3 Interface attribution des
cours
L'interface attribution des cours permet à l'appariteur
d'attribuer les cours aux enseignants. Il s'agit de choisir le semestre, le
code du cours, le numéro de l'enseignant, de donner un mot de passe au
cours concerné et de choisir l'année académique puis
enregistrer (voir figure 29). S'il faut modifier une attribution, il suffit de
cliquer sur le bouton gestion des attributions puis choisir
modifier.
45
Figure 29 : Interface attribution aux cours
III.2.4 Interface affectation aux
cours
Cette interface permet à l'appariteur d'affecter les
étudiants aux cours. Il suffit d'une recherche par code cours, le
système affiche l'intitulé du cours et la filière puis un
clic sur la filière pour afficher le code de la promotion, choix de
l'année académique, clic sur le bouton recherche, le
système affiche tous les étudiants inscrits dans la promotion
concernée par ce cours enfin clic sur le bouton affecter. L'affectation
peut être supprimée en cliquant sur supprimer (cf. figure
30).
46
Figure 30 : Interface affectation aux
cours
III.2.5 Interface évaluation
Cette interface permet à l'enseignant d'évaluer
l'étudiant qui a suivi le cours et qui a participé aux
différents tests d'évaluation (interrogation, travail pratique,
etc.). Il sied de souligner que tous les cours sont cotés sur vingt (20)
points. La cote pondérée sera obtenue en multipliant le
crédit du cours par la cote obtenue sur vingt (20) (voir figures 31). En
s'authentifiant au système à partir de son matricule et son mot
de passe attribué au cours, l'interface évaluation
présente directement la liste des étudiants à
évaluer. Il suffit de cliquer sur le bouton évaluer pour avoir la
zone de texte où saisir la cote obtenue puis enregistré. S'il
faut modifier la cote, il suffit de cliquer sur le bouton gestion des
évaluations puis modifier.
47
Figure 31 : Interface évaluation
III.2.6 Interface cotes par semestre
L'interface cotes par semestre permet à
l'étudiant à consulter ses résultats après un
semestre. Il lui suffit de saisir sa matricule, son mot de passe et choisir son
statut d'étudiant au niveau de l'interface d'authentification (figure
24). Une fois sur sa page d'accueil, il choisit cote semestre. A ce niveau, il
choisit l'année académique, le semestre puis il clique sur le
bouton recherche et le système affiche le résultat de ce
semestre. La figure ci-dessous illustre cette interface :
48
Figure 32 : Interface cotes par semestre
III.2.7 Interface relevé
L'interface relevée génère
automatiquement les relevés des cotes des étudiants.
C'est-à-dire que lorsque l'enseignant évalue le cours, le
relevé se complète automatiquement. Ce relevé est
imprimable en cliquant sur le bouton imprimé.
Figure 33 : Grille de
délibération
49
Figure 34 : Exemple d'un relevé des
cotes
III.3 Quelques codes
Après cette brève présentation de quelques
interfaces graphiques de notre système, nous allons présenter,
dans ce point, quelques codes sources.
III.3.1 Codes du login
50
51
III.3.2 Codes de la page index
52
Conclusion
Ce chapitre portant sur l'implémentation et le test de
notre système a consisté, dans un premier temps, à donner
le choix du langage de programmation, le PHP. Nous avons souligné que le
choix de ce langage a été motivé par le fait qu'il
fonctionne sur tous les systèmes d'exploitation, mais aussi à
cause de ses nombreux autres avantages. Dans un deuxième moment, nous
avons présenté quelques interfaces graphiques de notre
système. Enfin, nous avons donné quelques codes.
CONCLUSION GENERALE
Au terme de notre travail portant sur le
Développement d'une application Web de gestion des activités
académiques de l'UAC, nous pouvons retenir que l'informatique comme
science de traitement automatique de données s'avère
bénéfique dans tous les domaines. Toutefois, l'on constate que
les établissements éducatifs, dans notre milieu, connaissent
encore assez de difficultés liées à leurs modes de gestion
manuelle entraînant le gaspillage du temps. C'est pourquoi, vu la
complexité des activités d'un établissement
éducatif, l'outil informatique se veut un élément
important qui lui facilite une bonne gestion. C'est dans ce sens que ce travail
s'est focalisé sur une des problématiques de la gestion de
l'université, la gestion des activités académiques de
l'UAC. L'objectif poursuivi est de faciliter l'inscription des nouveaux
étudiants, la réinscription des anciens étudiants,
l'attribution des cours aux enseignants, l'affectation des étudiants aux
cours, la gestion des cotes, la consultation des résultats par les
étudiants, l'automatisation des relevés des cotes, etc.
Ce travail a trois chapitres. Dans le premier chapitre, nous
avons présenté notre milieu d'étude, l'UAC. En effet,
l'UAC est une institution privée d'enseignement supérieur et
universitaire en R.D.C. Son objectif est de former les étudiants
à devenir des hommes éminents par leur science, prêts
à assurer les plus lourdes tâches dans la société,
en temps qu'à être des témoins de la foi dans le
monde. Toujours dans ce chapitre, nous avons essayé de donner
quelques définitions des concepts à rapport avec notre
thématique.
Le deuxième chapitre, par ailleurs, nous a permis de
faire l'analyse et la conception de notre système futur. L'analyse, en
fait, sert à modéliser la compréhension du problème
posé par le client. Alors que la conception consiste à
modéliser une solution qui résout le problème
modélisé dans la phase de l'analyse.
Enfin, le troisième chapitre a porté sur
l'implémentation et le test de notre système. Dans ce chapitre,
nous avons donné le choix du langage de programmation, le PHP ; choix
motivé par le fait que ce langage fonctionne sur tous les
systèmes d'exploitation mais aussi à cause de ses nombreux autres
avantages. Après nous avons présenté quelques interfaces
et quelques codes de notre système.
En définitive, nous pensons que ce système
pourra faciliter la tâche à la gestion des activités
académiques de l'UAC. Toutefois, nous ne prétendons pas avoir
élucidé tous les enjeux liés à la gestion des
activités académiques d'une institution supérieure et
universitaire. Ce domaine est si vaste qu'il constitue un chantier, toujours
à construire. Il reste donc ouvert aux chercheurs et développeurs
des systèmes informatiques.
54
BIBLIOGRAPHIE
a. Ouvrages
1. AUDIBERT Laurent, UML2. De l'apprentissage à la
pratique, sl, 2009.
2. CHARROUX Benoît et alii, UML2. Pratique de la
modélisation, Coll. « Synthex », 2e édition,
Paris, éd. Pearson Education, 2009.
3. BLANC Xavier et MOUNIER Isabelle, UML2. Pour les
développeurs. Cours avec exercices corrigés, Eyrolles,
sd.
4. CAZES Alain et DELACROIX Joëlle, Architectures des
machines et des systèmes informatiques. Cours et exercices
corrigés, Coll. « Sciences up », 3e
édition, Paris, Dunod, 2008.
5. CAZES Alain et DELACROIX Joëlle, Développer
une application web, Paris, Dunod, 2016.
6. CHAVELLI Maurice, Prenez en main Bootstrap,
OpenClassrooms, sl, 2014.
7. GABAY Joseph et GABAY David, UML2. Analyse et conception.
Mise en oeuvre guidée avec études de cas, Coll. «
Etudes développement », Paris, Dunod, 2008.
8. GARDARIN Georges, Bases de données, Paris,
Eyrolles, 2003.
9. GUYOT Jacques, Conception et réalisation des bases
de données : De UML à SQL, éd. Systèmes et
information, 2008.
10. JEAN-PAUL II, « Ex corde Ecclesiae ».
Constitution apostolique sur les universités catholiques, 15
août 1995.
11. KEITH Jeremy, HTML5 Pour les Web designers, Paris,
Eyrolles, 2010.
12. LARROUSSE Nicolas, Création de bases de
données, Coll. « Synthex », Paris, Pearson Education,
2009.
13. LONCHAMP Jacques, Introduction aux systèmes
informatiques. Architectures, composants, mise en oeuvre, Paris, Dunod,
2017.
14. MOINE Camille et HERZ Bertrand, Informatique
appliquée à la gestion, 1re et 2e année,
Coll. « Comptabilité et gestion », Paris, Foucher, 1996.
15. MORLEY Chantal, Management d'un projet système
d'information. Principes, techniques, mise en oeuvre et outils,
6e édition, Paris, Dunod, 2007.
16. MULLER Pierre-Alain, Modélisation objet avec UML,
Eyrolles, Paris, sd.
17. PILLOU Jean François et EBERHARDT Christine, Tout
sur le développement logiciel. Écrire du code efficace,
Coll. « Comment ça marche », Paris, Dunod, 2011.
55
18. PILLOU Jean-François et COCHETEAU Jean-Marie,
Tout sur le Webmastering. Créer et optimiser son site web,
3e édition, Paris, Dunod, 2011.
19. PLOUIN Guillaume, Cloud computing.
Sécurité, gouvernance du SI hybride et panorama du marché,
4e édition, Paris, Dunod, 2016.
20. ROQUES Pascal et VALLEE Franck, UML 2 en action. De
l'analyse des besoins à la conception, 4e
édition, Paris, Eyrolles, 2007.
21. ROQUES Pascal, Les cahiers du programmeur. UML2.
Modéliser une application web, 4e édition, Paris,
Eyrolles, 2008.
22. ROQUES Pascal, UML2 par la pratique. Études de
cas et exercices corrigés, 6e édition, Paris, éd.
Eyrolles, 2008.
23. ROY Gilles, Conception de bases de données
avec UML, Québec, Presses de l'Université du Québec,
2009.
24. Secrétariat Général
Académique, Programmes d'études, ISEAB, 2012-2015.
25. SOUTOU Christian, Apprendre SQL avec MySQL. Avec 40
exercices corrigés, éd. Paris, Eyrolles, 2006.
26. VALADE Janet, PHP et MySQL pour les nuls, Paris,
First Interactive, 2002
27. WELLING Luke et THONSON Laura, PHP & MySQL,
4e édition, Paris, Pearson Education, 2009.
b. Mémoires
1. KAMBALE Bernard, Modèle de m-learning et
conception d'applications mobiles comme outils de support pour l'enseignement
à distance en informatique et génie logiciel,
Mémoire, Québec, Canada, 2018.
2. MOUNOUAR OTHMANE SAADAOUI Issam, Application pour la
gestion des notes des étudiants de la FST, Mémoire
inédit, Université Sidi Mohamed Ben Abdellah, 2014-2015.
3. YOUSSOUF Brahimi, Conception et réalisation
d'un site Web pour la gestion d'un jardin d'enfants, Mémoire
inédit, Université Abou Bekr Belkaid, 2014-2015.
c. Webographie
1.
http://codegenome.com/blog/posts/la-difference-entre-un-site-web-et-une-application-web
2.
http://sebastien.nameche.fr/cours
56
TABLE DES MATIERES
ÉPIGRAPHES i
DEDICACE ii
REMERCIEMENTS iii
SIGLES ET ABREVIATIONS iv
LISTE DES FIGURES v
LISTE DES TABLEAUX vi
0. INTRODUCTION GÉNÉRALE 1
0.1. État de la question 1
0.2. Problématique 2
0.3 Hypothèse 3
0.4 Choix et Intérêt de l'étude 3
0.5 Objectifs de l'étude 4
0.6 Méthodes et techniques 4
0.6.1 Méthodes 4
0.6.2 Techniques 4
0.7 Délimitation du sujet 5
0.8 Subdivision du travail 5
Premier chapitre : PRÉSENTATION DU MILIEU
D'ÉTUDE ET CONSIDÉRATION
THÉORIQUE 6
I.0 Introduction 6
I.1 Présentation du milieu d'étude 6
I.1.1 Dénomination 6
I.1.2 Situation géographique 6
I.1.3 Bref aperçu historique 6
I.1.4 Statuts 8
I.1.4.1 Nature et but de l'Institution 8
I.1.5 Organigramme 9
I.2 Considérations théoriques 10
I.2.1 Une application Web 10
57
I.2.2 Différence entre une application Web et un site
Web 11
I.2.3 Internet, Web et http 11
I.2.3.1 Internet 11
I.2.3.2 Web 11
I.2.3.3 Le http 12
I.2.4 Système d'information 12
I.2.5 Système informatique 13
I.2.6 Base de données (BD ou DB, database) 14
I.2.7 Système de Gestion de base de données
15
Conclusion 15
Deuxième chapitre : 16
ANALYSE ET CONCEPTION DU SYSTÈME FUTUR 16
II. 0 Introduction 16
II.1 Étude préliminaire 16
II.1.1 Élaboration de cahier de charges 16
CAHIER DES CHARGES 17
II.1.2 Identification des acteurs et leurs rôles 18
II.1.3 Identification des cas d'utilisation 18
II.2 Analyse et modélisation du système futur
18
II.2.1 Diagramme de cas d'utilisation 19
II.2.1.1 Elaboration du diagramme de cas d'utilisation 20
II.2.1.2 Descriptions textuelles des cas d'utilisation 20
II.2.1.2.1 Description textuelle du cas « s'authentifier
» au système 21
II.2.1.2.2 Description textuelle du cas « s'inscrire
» 22
II.2.1.2.3 Description textuelle du cas « imprimer »
23
II.2.1.2.4 Description textuelle du cas affecter au cours
24
II.2.1.2.5 Description textuelle du cas « attribuer
» au cours 25
II.2.1.2.6 Description textuelle du cas « gérer
» les étudiants 26
II.2.1.2.7 Description textuelle du cas « consulter
» les résultats 27
II.2.1.2.8 Description textuelle du cas « évaluer
» étudiant 28
58
II.2.1.2.9 Description textuelle du cas « diriger »
l'étudiant 28
II.2.2 Diagramme de séquence 29
II.2.2.1 Diagramme de séquence du cas «
s'authentifier » 29
II.2.2.2 Diagramme de séquence du cas « s'inscrire
» 30
II.2.2.3 Diagramme de séquence du cas « imprimer
» 30
II.2.2.4 Diagramme de séquence du cas « attribuer
» 31
II.2.2.5 Diagramme de séquence du cas « affecter
» 31
II.2.2.6 Diagramme de séquence du cas «
gérer » 32
II.2.2.7 Diagramme de séquence du cas «
évaluer » 32
II.2.2.8 Diagramme de séquence du cas « diriger
» 33
II.2.3 Diagramme d'activité 33
II.2.3.1 Diagramme d'activité s'authentifier 33
II.2.3.2 Diagramme d'activité s'inscrire 34
II.2.3.3 Diagramme d'activité imprimer 34
II.2.3.4 Diagramme d'activité affecter 34
II.2.3.5 Diagramme d'activité attribuer 34
II.2.3.6 Diagramme d'activité gérer 34
II.2.3.7 Diagramme d'activité consulter 35
Figure n°19 : Diagramme d'activité consulter 35
II.2.3.8 Diagramme d'activité évaluer 35
II.2.3.9 Diagramme d'activité diriger 35
II.3 Conception de la solution 36
II.3.1 Diagramme de classes 36
II.3.1.1 Elaboration du diagramme de classes 36
II.3.1.2 Schéma relationnel 38
II. 3.2 Diagramme de déploiement 38
Conclusion 39
Troisième chapitre : 40
IMPLÉMENTATION ET TEST DU SYSTÈME 40
III.0 Introduction 40
III.1 Choix du langage de programmation 40
59
III.2 Présentation des quelques interfaces graphiques
42
III.2.1 Interface d'authentification 42
III.2.2 Interface inscription et gestion des
réinscriptions 44
III.2.3 Interface attribution des cours 44
III.2.4 Interface affectation aux cours 45
III.2.5 Interface évaluation 46
III.2.6 Interface cotes par semestre 47
III.2.7 Interface relevé 48
III.3 Quelques codes 49
III.3.1 Codes du login 49
III.3.2 Codes de la page index 51
Conclusion 52
CONCLUSION GENERALE 53
BIBLIOGRAPHIE 54
TABLE DES MATIERES 56
|