Telechargé par Idriss MBUYU

TFC DANIELLA ET AARON Version Omega 2019

publicité
Page |I
EPIGRAPHE
« Tous les hommes projettent de la lumière dans une pièce ; les uns quand ils y entrent,
les autres lorsqu’ils en sortent » Yvan CASTANOU
P a g e | II
DEDICACE
Nous dédions ce travail, fruit de nos recherches après des années d’études
passées sur le banc de l’école :
A toi mon très père NYEMBO MATABU Pierre pour ton soutien matériel,
financier, spirituel et les conseils dont tu n’as jamais cessé de nous prodiguer.
A ma très chère mère KIBOMBO NZUGU Brigitte, toi qui as sacrifié ton
cœur, pour ma vie par ta volonté de mère tendre qui ne cesse jamais de me soutenir dans
toutes mes difficultés.
A ma mère BUTEKA KALENGA Alphonsine, tu n’as jamais cessé une seule
seconde de prier pour moi, tu as plusieurs fois été la seule à m’accepter lorsque personne
ne le pouvait. Tu es celle que j’appelle la Femme avec un « F majuscule », celle qui est
naturellement au-dessus de toutes les autres. C’est grâce à ton amour inconditionnel que
j’ai appris à avoir confiance en moi et que je suis devenu ce que je suis aujourd’hui. Que
le seigneur Jésus-Christ te comble de toutes sortes de bénédictions, de forces et de grâce.
A vous chers frères et sœurs pour vos engagements et votre souci de toujours
nous voir prospérer. Trouvez par ce travail plus de joie et de satisfaction.
P a g e | III
REMERCIEMENTS
Nos remerciements les plus déférents s’adressent :
A l’éternel Dieu Tout Puissant, le créateur incréé qui nous a fait grâce en nous
accordant sa faveur. Il a été avec nous durant tout le temps passé de notre vie estudiantine.
Dieu a été un secours en temps de détresse, il a été un appui solide pendant les épreuves
difficiles. Nous vous en serons toujours reconnaissants.
A vous Monsieur le Directeur General de l’ESIS Jacky MPUNGWA ;
A vous Monsieur MULUMBATI, vous avez disposé de votre temps malgré
votre agenda chargé pour diriger notre travail de fin de cycle. Recevez nos remerciements
les plus sincères.
A vous Monsieur KANANGILA Christian, vous avez disposé de votre temps
pour codiriger notre travail. Sentez-vous remercié.
A vous chers parents, KISHIKO NGOIE Donat, BUTEKA KALENGA
Alphonsine de vous être sacrifiés au point de manquer du nécessaire pour vous-mêmes
afin de payer nos études.
A vous chers frères et sœurs : Ruth MAUWA, Jérémie NYEMBO, Jonathan
NYEMBO,
Abigaël
NYEMBO,
Jethro
NYEMBO,
Emmanuela
KIBOMBO.
MWALULA SAKASANGU Jonas, TSHIMANGA Junior, KALENGA NSEYA Evodie.
A tous nos amis, collègues et compagnons, BAHATI BIMWILI Aimerance,
CHIHANZA NABINTU Irène, BULUNGA ILUNGA Ornella, FUMUNI BUTAKAR
Germaine, LUMBU POMBO Stella, MWEMBO MULENDA Chris, BUYAMBA SUZE
Ange, LUYEYE DINKWENU Joyce, NDAYA LUKUNA Déborah ; MBUYI MUSAMU
Francesco, MUTOMBO KATENDE Vally, KASONGO ILUNGA Gracia, KISENGA
KILUWE Kiss, NTWARI BIHENDO David. Trouvez ici l’expression de notre sens de
collaboration et de sympathie.
P a g e | IV
A toute la promotion de G3 Génie logiciel (Gestion et SI 2017 – 2018) pour
tous les moments passés ensemble.
A tous ceux dont les noms ne sont pas repris ci-dessus, qu’ils trouvent dans
l’anonymat l’expression de nos sentiments de reconnaissance pour les moments difficiles
de ce parcours qui continuent à laisser un souvenir dans nos mémoires.
Merci à tous de votre soutien matériel et financier pour les uns ; moral et
spirituel pour les autres.
FAILA MALUNGA Daniella
Et
KAZADI MUKAYA Aaron
Page |V
LISTE DES FIGURES
Figure 3.1 Diagramme des cas d'utilisation .................................................................... 26
Figure 3.2 Diagramme de Séquence du C.U. S'authentifier ........................................... 28
Figure 3.3 Diagramme des classes participantes du C.U. S'authentifier ........................ 28
Figure 3.4 Diagramme de Séquence du C.U. S'inscrire ................................................. 30
Figure 3.5 Diagramme des classes participantes du C.U. S'inscrire ............................... 31
Figure 3.6 Diagramme de Séquence du C.U. Passer test ................................................ 32
Figure 3.7 Diagramme des classes participantes du C.U. Passer test ............................. 33
Figure 3.8 Diagramme de Séquence du C.U. Consulter résultats................................... 34
Figure 3.9 Diagramme des classes participantes du C.U. Consulter résultats ................ 34
Figure 3.10 Diagramme de Séquence du C.U. Accéder aux dossiers personnels ........... 36
Figure 3.11 Diagramme des classes participantes du C.U. Accéder aux dossiers
personnels ....................................................................................................................... 37
Figure 3.12 Diagramme de Séquence du C.U. Participer au forum .............................. 39
Figure 3.13 Diagramme des classes participantes du C.U. Participer au forum .......... 40
Figure 3.14 Diagramme de Séquence du C.U. Accéder aux offres ................................ 41
Figure 3.15 Diagramme des classes participantes du C.U. Accéder aux offres.............. 41
Figure 3.16 Diagramme de Séquence du C.U. Consulter horaire ................................... 42
Figure 3.17 Diagramme des classes participantes du C.U. Consulter horaire .............. 43
Figure 3.18 Diagramme de Séquence du C.U. Accéder à la valve ................................. 44
Figure 3.19 Diagramme des classes participantes du C.U. Accéder à la valve .............. 44
Figure 3.20 Diagramme de Séquence du C.U. Gérer Cours ........................................... 47
Figure 3.21 Diagramme des classes participantes du C.U. Gérer Cours ........................ 47
P a g e | VI
Figure 3.22 Diagramme de Séquence du C.U. Gérer Notes ........................................... 48
Figure 3.23 Diagramme des classes participantes du C.U. Gérer Notes ........................ 49
Figure 3.24 Diagramme de Séquence du C.U. Gérer agenda ........................................ 51
Figure 3.25 Diagramme des classes participantes du C.U. Gérer agenda ...................... 52
Figure 3.26 Modèle du domaine ..................................................................................... 53
Figure 3.27 Diagramme de classes de conception .......................................................... 56
Figure 3.28 Diagramme de navigation ........................................................................... 57
Figure 4.1 Diagramme de déploiement........................................................................... 63
Figure 4.2 Ecran d'accueil principal ............................................................................... 63
Figure 4.3 Charger Dossiers personnels ......................................................................... 64
Figure 4.4 Passer test ...................................................................................................... 64
P a g e | VII
LISTE DES TABLEAUX
Tableau 1.1 Quatre grands services couverts par les portails ........................................... 9
Tableau 1.2 les phases de la méthode UP ....................................................................... 11
P a g e | VIII
LISTE DES ACRONYMES
AJAX : Asynchronous JavaScript And XML
CSS : Cascading Style Sheet
DCU : Diagramme de Cas d’Utilisation
ESIS : Ecole Supérieure d’Informatique Salama
HTML : HyperText Markup Language
HTTP : HyperText Transfer Protocol
MVC : Model View Controller
MySQL : My Structured Query Language
NTIC: Nouvelle Technologie de l’Information et de la Communication
SGBD : Système de Gestion de Base de Données
SQL : Structed Query Language
UML : Unified Model Language
UP : Unified Process
P a g e | IX
TABLE DES MATIERES
EPIGRAPHE ....................................................................................................................................... I
DEDICACE ......................................................................................................................................... II
REMERCIEMENTS ......................................................................................................................... III
LISTE DES FIGURES ....................................................................................................................... V
LISTE DES TABLEAUX ................................................................................................................. VII
LISTE DES ACRONYMES ............................................................................................................ VIII
TABLE DES MATIERES ................................................................................................................. IX
AVANT PROPOS ............................................................................................................................... XI
INTRODUCTION GENERALE ....................................................................................................... 1
0.1.
Problématique .................................................................................................................... 1
0.2.
Hypothèses .......................................................................................................................... 2
0.3.
Choix et intérêt du sujet .................................................................................................... 2
0.3.1.
Choix du Sujet ............................................................................................................ 2
0.3.2.
Intérêt du Sujet ........................................................................................................... 3
0.4.
Méthodes et techniques ..................................................................................................... 3
0.4.1.
Méthode....................................................................................................................... 3
0.4.2.
Technique .................................................................................................................... 3
0.4.2.1.
La technique documentaire ..................................................................................... 4
0.4.2.2.
La technique d’interview ......................................................................................... 4
0.5.
Etat de l’art ........................................................................................................................ 4
0.6.
Délimitation du travail ...................................................................................................... 5
0.6.1.
Délimitation spatiale ................................................................................................... 5
0.6.2.
Délimitation temporelle .............................................................................................. 5
0.7.
Subdivision du travail ........................................................................................................ 5
0.8.
Outils logiciels et équipements utilisés ............................................................................. 6
I.1. Introduction partielle ............................................................................................................... 7
I.2. Cadre conceptuel ...................................................................................................................... 7
I.3. Cadre théorique........................................................................................................................ 7
I.3.1. Le portail web ..................................................................................................................... 8
I.3.1.1. Types de portails ........................................................................................................... 8
I.3.2. Le Langage UML ............................................................................................................... 9
I.3.3. La méthode UP ................................................................................................................. 11
I.4. Conclusion partielle ............................................................................................................... 11
2. CHAPITRE DEUXIEME : ETUDE DE L’EXISTANT, SOLUTION PROPOSEE ET
DESCRIPTION DE L’APPLICATION.......................................................................................... 13
Page |X
II.1. Introduction partielle ........................................................................................................... 13
II.2. Etude de l’existant ................................................................................................................ 13
II.3. Solution proposée.................................................................................................................. 13
II.4. Description du besoin ........................................................................................................... 13
II.3. Spécifications fonctionnelles ................................................................................................ 14
II.3.1. Générales ........................................................................................................................ 14
II.3.2. Annuaire de l’étudiant.................................................................................................... 16
II.3.3. Annuaire de l’enseignant ............................................................................................... 17
II.4. Conclusion partielle .............................................................................................................. 22
3.
CHAPITRE TROISIEME : CONCEPTION ET MODELISATION DE L’APPLICATION
24
III.1. Introduction partielle.......................................................................................................... 24
III.2. Analyse ................................................................................................................................. 24
III.3. Modélisation ........................................................................................................................ 24
III.4. Les diagrammes UML ........................................................................................................ 25
III.4.1. Le diagramme de cas d’utilisation ................................................................................ 25
III.4.2. Etude des cas ................................................................................................................. 27
III.4.3. Modèle du domaine ....................................................................................................... 53
III.4.3.1. Transformation du modèle du domaine en modèle relationnel ................................ 54
III.4.4. Diagramme de classes de conception ........................................................................... 54
III.4.5. Diagramme de navigation ............................................................................................. 56
III.5. Conclusion partielle ............................................................................................................ 58
4.
CHAPITRE QUATRIEME : REALISATION DE L’APPLICATION ................................ 59
IV.1. Introduction partielle .......................................................................................................... 59
IV.2. Outils et langages utilisés .................................................................................................... 59
IV.3. Choix du langage ................................................................................................................. 59
IV.4. Choix du SGBD .................................................................................................................... 60
IV.5. Architecture logicielle utilisée ............................................................................................. 60
IV.6. Diagramme de déploiement ................................................................................................ 62
IV.6. Présentation de l’application .............................................................................................. 63
IV.6.1. Quelques interfaces........................................................................................................ 63
IV.6.1.1. Accueil ..................................................................................................................... 63
IV.6.1.2. Inscription (Charger Dossiers) ................................................................................. 64
IV.6.1.3. Test d’admission ...................................................................................................... 64
IV.7. Conclusion partielle ............................................................................................................. 65
CONCLUSION GENERALE .......................................................................................................... 66
REFERENCES ................................................................................................................................. 66
P a g e | XI
AVANT PROPOS
Notre
travail de fin cycle de graduat de nos études à l’Ecole Supérieure
D’informatique Salama est le produit des diverses conditions.
C’est au centre du présent travail que nous nous sommes rendu compte de la
longueur du chemin parcouru, des difficultés rencontrées, des montagnes gravies, des
vallées endurées et des obstacles franchis.
Cependant nous avons constatés que notre alma mater qui est l’ESIS ne
possède pas une porte d’entrée centralisée des ressources dont elle dispose. Afin de
permettre aux enseignants, étudiants et candidats d’avoir un accès facile et unique aux
ressources de l’ESIS, nous avons résolu de concevoir et de mettre en place un portail web
étudiant-enseignant. D’où le choix du sujet : « Conception et mise en place d’un portail
web étudiant – enseignant ».
Vu que notre travail résulte des différentes connaissances acquises selon un
besoin donné et qui a été de reformuler une solution utilisable, qui servira de miroir aux
générations futures et qui pourra être améliorée avec le temps et l’évolution de la
technologique.
Ceci est une œuvre humaine, il sied de rappeler que nous n’avons fait
qu’ouvrir une porte ; que tout celui qui voudrait le parfaire, ce travail reste à la disposition
de tout chercheur.
Page |1
INTRODUCTION GENERALE
Aujourd’hui suivre ses cours, consulter un document, prendre une inscription
sur n’importe quelle plateforme, partager des expériences, n’est plus un casse-tête en ce
qui concerne l’accès en temps voulu et de n’importe où l’on en a besoin ; la sécurité et la
confidentialité étant assurées, le monde passe chaque seconde à une étape supérieure en
parlant des NTIC [1].
L’enseignement et la pédagogie faisant aussi partie de cette grande révolution
technologique cela mènent plusieurs intuition à concevoir et à élaborer des portails de
ressources qui permettront une facilitation d’accès aux ressources d’apprentissage en
fournissant diffèrent élément aux apprenant d’une maniérer accessible de n’importe quel
endroit c'est-à-dire enseigner avec des outils de la génération actuelle et faire en sorte que
la technologie soit au service de l'apprentissage qui est autrement appelé la technopédagogie et cela une tâche laborieuse qui nécessite non seulement un choix approprié
des ressources et des services à fournir à la communauté, mais aussi une analyse
prospective des besoins et des formes d’évolution qui produiraient de la valeur ajoutée
pour l’enseignement et la recherche.
Face à cette réalité, l’évolution de technologie a apporté à l’univers une
nouvelle façon plus efficace et efficiente de conserver l’information, de la partager, et de
la canaliser grâce aux différents outils et méthodes dont elle dispose. Elle augmente la
vitesse de traitement des données, elle traite de volume considérable des données et
facilite un travail rapide. Pourtant un bon suivi d’une organisation doit être en mesure
d’accéder à l’information en temps record pour réaliser un traitement correct d’un
ensemble des tâches très souvent complexes et répétitives en vue d’aboutir à des résultats
satisfaisants. Ces traitements ne peuvent pas être faits par une manipulation humaine
simple, il y a une forte probabilité puisse conduire à un résultat incorrect et ralentir
l’évolution du travail.
0.1.Problématique
Étymologiquement parlant, le mot problématique est : « l’ensemble des
questions qu’une science ou une philosophie se pose relativement à un domaine
particulier » ; c’est-à-dire un champ des connaissances théoriques dans lequel on pose le
Page |2
problème, du lieu exact de sa position et des concepts requis, autour des faits ou des
relations.
L’école Supérieure d’informatique Salama est parmi les plus grandes
institutions d’enseignements Supérieures dans la ville de Lubumbashi et même dans tout
le pays. C’est comme cela qu’elle doit se rassurer d’offrir des services accessibles
facilement et de façon simple et organisée.
Nous avons constaté que l’ESIS dispose de plusieurs ressources, mais cellesci ne sont pas centralisée ; c'est-à-dire l’accès à ces ressources n’est pas organisé de
manière à permettre aux utilisateurs (Enseignants, Etudiants, Candidats, etc.) de pourvoir
y accéder en passant par un seul chemin (point d’entrée). Pour cela, nous avons pensé à
concevoir et à mettre en place un portail web étudiant-enseignant.
Ceci nous conduit à poser la question suivante :
 Comment les étudiants, les enseignants et les candidats peuvent-ils avoir un accès
centralisé aux différentes ressources dont l’ESIS dispose ?
0.2.Hypothèses
L’hypothèse d’un travail scientifique est une réponse provisoire donnée aux
questions de la problématique [4]. C’est comme cela que nous allons essayer de répondre
aux questions de la problématique dans les lignes qui suivent.
 Pour pallier aux problèmes relevés dans la problématique, nous avons eu la pensée
de concevoir et de mettre en place un portail web étudiant-Enseignant qui donnera
une ouverture commune à toutes les ressources accessibles de l’ESIS.
0.3.Choix et intérêt du sujet
0.3.1. Choix du Sujet
Le choix sur ce sujet est motivé par le souci d’apporter un plus au sein de
notre alma mater qui est l’Ecole Supérieure d’Informatique Salama. Notre sujet intitulé :
« Gestion académique : Conception et mise en place d’un portail web étudiantenseignant » par le biais d’une solution informatique adéquate qui traite et consolide les
données pour permettre une vue d’ensemble des différentes ressources mises à la
Page |3
disposition. En apportant cette solution à notre école ; aussi petite soit-elle, étant
scientifique, nous aurons participé et contribué à l’évolution et à l’épanouissement de
cette école dans les NTIC.
0.3.2. Intérêt du Sujet
L’intérêt poursuivi est celui de mettre en œuvre nos connaissances et nous
évaluer par rapport à notre formation, ainsi que mettre en pratique les théories acquises
en tant qu’étudiant en terminal tout en nous servant de l’outil « informatique » comme
aide à la prise de décisions. Voici une motivation parmi tant d’autres.
Motivation scientifique : Tout étudiant de troisième graduat a l’obligation d’élaborer un
travail de fin de cycle, faisant preuve de ses recherches, analyses et études et montrant
qu’il a assimilé les matières et connaissances acquises tout au long de son cursus et qu’il
est à mesure de concilier toute théorie apprise à la pratique et aux réalités professionnelles
afin, d’accéder au titre d’ingénieur informaticien.
0.4.Méthodes et techniques
0.4.1. Méthode
Une méthode parait comme étant une démarche, une suite décrivant la
manière dont on procède pour aboutir à une solution [2]. La conception d’un système
d’information n’est pas évidente car il faut une méthode de développement logiciel piloté
par les besoins des utilisateurs, réfléchir à l’organisation que l’on doit mettre en place.
Pour notre travail, nous avons choisi d’utiliser la méthode UP (Processus
Unifié) qui est un processus de développement de logiciel reposant sur un bon sens sur
l’utilisation des diagrammes UML.
0.4.2. Techniques
Ce sont des instruments, des procédés opératoires pour récolter les données
en vue d’atteindre les objectifs [3]. Parmi lesquelles nous citons :
Page |4
0.4.2.1. La technique documentaire
Elle nous a permis d’atteindre une documentation ; par elle, nous avons eu
différents travaux, ouvrages de contribuer à ce sujet.
0.4.2.2. La technique d’interview
Pour cette technique, nous avons eu l’occasion d’organiser un jeu des
questions avec certains enseignants, nouveaux candidats et étudiants à travers cet échange
nous avons pu collecter certaines informations outils à notre travail.
0.5. Etat de l’art
Nous devons signaler qu’il n’a pas été facile de nous orienter sur une
plateforme non encore maitriser, c’est ainsi que notre sujet, vient d’un constat que nous
avons fait lors de notre entrée à l’ESIS et durant notre parcours académique.
Comme travail similaire au notre, nous nous sommes ressourcés sur le net et
nous avons eu à consulter divers travaux à l’occurrence du TFC de KANYEBA
MUTOMBO Carmine, de G3 Systèmes Informatiques à l’ESIS, septembre 2017. Dans
ce travail, « Conception d’une plateforme mobile-learning d’une institution » (cas de
l’ESIS) elle s’est basée sur l’outil ou le matériel à utiliser pour accéder à la formation quel
que soit l’endroit où l’on se trouve [4]. Nous avons consulté le TFC de KUMWIMBA
KISHIKO Serge, de G3 Systèmes Informatiques à l’ESIS, septembre 2017, intitulé
« Outil d’évaluation de la e-réputation d’une entreprise et/ou d’une marque congolaise
et d’aide à la prise de décisions selon le comportement de ses visiteurs et de ses
concurrents » ; ici l’étudiant a démontré la place quasi-incontournable qu’occupe le web
ou l’internet dans le monde des affaires aujourd’hui [5].
Notre travail se démarque de deux susmentionnés, par son adaptabilité à
toutes les plateformes, on n’a pas seulement ou forcément besoin de se munir d’un mobile
pour accéder à la formation ; par son étendu qui est le monde de l’enseignement
universitaire, l’internet ne sert pas seulement pour les affaires, mais aussi et surtout un
moyen efficace de l’enseignement.
Page |5
0.6. Délimitation du travail
0.6.1. Délimitation spatiale
Notre travail, étant une solution pour la gestion académique en général, se
basera uniquement sur la gestion académique à l’Ecole Supérieure d’Informatique
Salama.
0.6.2. Délimitation temporelle
Notre travail s'étend sur la réalité observée dans l’année 2018 qui est l’année
de notre cycle de graduat, période au cours de laquelle nous avons fait une étude détaillée
sur les tenants et les aboutissants de notre travail. En ce qui concerne les données, l’outil
que nous mettrons en place sera utilisable avec les données de n’importe quelle date,
ultérieure ou antérieure.
0.7. Subdivision du travail
Hormis l’introduction générale et la conclusion générale, ce travail est
subdivisé en quatre chapitres suivants :
-
Chapitre premier : Cadre conceptuel et théorique
Dans ce chapitre nous essaierons d’expliquer certains concepts auxquels nous
ferons allusion tout au long de notre travail et ainsi nous permettre de comprendre tout ce
qui sera utilisé dans la partie pratique du travail.
- Chapitre deuxième : Etude de l’existant, solution proposée et Description
détaillée de l’application
Dans ce chapitre nous passerons en revu le système d’information existant à
l’ESIS qui est notre champ d’observation, les outils utilisés pour la gestion académique
dans son ensemble, les différentes ressources dont dispose l’ESIS.
Nous parlerons de la solution que nous voulons proposer par rapport à ce
système, nous allons présenter notre cahier des charges qui permettra d’avoir une vue
claire sur le fonctionnement de l’application et de décrire le besoin principal de l’ESIS
qui est d’avoir un outil qui facilite et centralise l’accès à ses ressources.
- Chapitre troisième : Conception et Modélisation de l’application
Nous aurons beau parler et présenter le travail dans son contexte théorique,
cela ne suffit pas ; dans ce chapitre il sera question de concevoir et modéliser notre
application à l’aide du langage de modélisation UML et la méthodologie UP.
Ici nous présenterons certains diagrammes qui constitueront le squelette de
notre application.
Page |6
Chapitre quatrième : Réalisation de l’application
Ce chapitre qu’est le dernier, implémentera le modèle de l’application
réalisé dans le chapitre précédent, nous présenterons les langages HTML, PHP, le
Framework Bootstrap, les bibliothèques JQuery et Ajax, ainsi que d’autres outils qui
auront concouru à la réalisation de notre application.
-
0.8. Outils logiciels et équipements utilisés
Pour parvenir à nos objectifs dans ce travail, nous allons réaliser notre outil
web en PHP, HTML et CSS pour la création du site, nous utiliserons le Framework
Bootstrap, et JavaScript pour la création des scripts ; nous utiliserons les bibliothèques
JQuery et Ajax. Pour le stockage des données, nous utiliserons le SGBD MySQL. Et aussi
Edge, le logiciel de modélisation, qui permet la création des diagrammes UML ; ce
logiciel nous permettra de créer :





Le diagramme de cas d’utilisation
Le diagramme de séquence système
Le diagramme de classe
Le modèle du domaine
Etc.
Page |7
1. CHAPITRE PREMIER : CADRE CONCEPTUEL ET THEORIQUE
I.1. Introduction partielle
Dans ce chapitre, nous voulons définir et expliquer différents concepts
théoriques de base dont nous aurons besoin et que nous allons employer tout au long de
notre travail.
I.2. Cadre conceptuel
 Un portail Web : est un site internet ou intranet qui offre une porte d'entrée
unique sur un large panel de ressources et de services (messagerie électronique,
forum de discussion, espaces de publication, moteur de recherche, etc.) centrés
sur un domaine ou une communauté particulière [6].
 La conception : est l’acte de l’intelligence ou une action de concevoir [7]

La mise en place : Elle est toute action d’installer ou d’agencer ou encore de
mettre quelque chose à une certaine place.
 Un étudiant : est une personne qui fait des études supérieures et qui suit les cours
d’une université ou d’une institution supérieure ou encore d’une grande école.
 Enseignant : est une personne qui enseigne une discipline, un art, une technique,
d’une manière habituelle.
 Internet : Interconnected Networks, est le réseau (mondial) des réseaux
interconnectés par l’intermédiaire d’un protocole (le protocole TCP/IP) [8].
Le présent travail a pour objectif, de concevoir et mettre en place un portail
web étudiant – enseignant, qui permettra un accès facile, simplifié et centralisé aux
ressources et facilitera la communication, l’échange et la transmission au sein de
l’institution (ESIS à l’occurrence).
I.3. Cadre théorique
Dans le cadre de notre travail, qui est la mise en place d’un portail web qui
facilitera l’accès aux ressources, nous avons choisi de concevoir notre système
d’information avec le langage UML et la méthode UP que nous allons devoir expliquer
dans les lignes qui suivent.
Page |8
I.3.1. Le portail web
Un portail web est un site internet ou intranet qui offre une porte d’entrée
unique sur un large panel de ressources et de services (messagerie électronique, forum de
discussion, espaces de publication, moteur de recherche, etc.) centrés sur un domaine ou
une communauté particulière. Un portail fournit un point d’accès unifié et sécurisé,
souvent sous forme d’une interface utilisateur sur le web conçu pour agréger et
personnaliser l’information grâce à des portlets spécifiques à l’application.
Un portail est un cadre d’intégration d'information, de personnes et de
processus dans des frontières organisationnelles. L’une des marques de fabrique des
portails est la contribution et la gestion décentralisée du contenu qui garantit que
l’information soit à jour en permanence. Un portail peut agréger des contenus et des
applications de façon dynamique en vue de fournir différents types de services proposant
un libre accès à l'information. En entreprise, un portail permet de regrouper et faciliter la
navigation entre de nombreux outils (ressources) web [9].
La technique du portail apporte également :

Une charte graphique commune ;
 La possibilité de personnaliser la page en fonction de l'utilisateur : ici
l’utilisateur n’aura accès qu’à des ressources qui lui sont destinées en fonction de son
type. Il aura uniquement accès aux outils auxquels il est autorisé (exemple : passation de
test, pour un candidat ; accéder à ces dossiers personnels, pour l’étudiant ; etc.) ;
 L’authentification unique (single sign-on) : un identifiant et mot de passe pour
accéder aux différentes ressources [10].
I.3.1.1. Types de portails
La notion de portail, qui tend à se généraliser, recouvre un grand nombre de
produits aux fonctions diverses. Pour avoir quelque chance de se retrouver dans ce
domaine foisonnant, il est utile de définir une typologie des diverses approches et
solutions existantes. Celle que nous proposons dans la liste ci-dessous n’a pas la
prétention d’être exhaustive ni définitive, mais permettra néanmoins d’y voir un peu plus
clair.
On distingue donc :
 Les portails d'entreprise,
 Les portails de divertissement,
Page |9




Les portails de jeux,
Les portails politiques,
Les portails éducatifs,
Etc.
Tableau 1.1 Quatre grands services couverts par les portails
Informations destinées à
Informations destinées à
l’intérieur de l’organisation
l’extérieur de l’organisation
Informations en
Service de KM : gestion de
Service de e-business :
provenance de l’intérieur
connaissance
commerce électronique
Informations en
Service de veille :
Portail généraliste
provenance de
intelligence économique
Portail vertical
de l’organisation
l’extérieur de
l’organisation
Cependant, bien que les portails prennent différentes significations selon la
perspective qu’on veut leur donner, ils gardent une caractéristique commune, celle de
constituer un endroit où sont cumulées d’énormes ressources d’information (locales ou
hébergées sur plusieurs sites répartis). Ces ressources sont soumises à une chaine de
référencement et de production qui permet de les décrire, indexer, analyser, classer,
conserver et communiquer selon les besoins des utilisateurs [11].
I.3.2. Le Langage UML
UML est un langage de modélisation objet, il est graphique et textuel. Etant
un langage de modélisation graphique et textuel, UML est destiné à comprendre et décrire
les besoins, spécifier et documenter les systèmes, concevoir des solutions et
communiquer des points de vue.
UML est né de la fusion de trois grandes méthodes :


Object Modeling Système (OMS) : fournit une représentation graphique
des aspects statiques, dynamiques et fonctionnels d’un système ;
Object Oriented Developpement (OOD) : définie par le département
(américain) de la défense, introduit le concept de paquetage (package) ;
P a g e | 10

Object Oriented Software Engineering (OOSE) : fonde l’analyse sur la
description des besoins des utilisateurs (cas d’utilisation) [12].
UML unifie é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. Dans ce cadre, un concept appartenant
aux exigences des utilisateurs projette sa réalité dans le modèle de conception et dans le
codage. Le fil tendu entre les différentes étapes de construction permet alors de remonter
du code aux besoins et d’en comprendre les tenants et les aboutissants. En d’autres termes,
on peut retrouver la nécessité d’un bloc de codes en se référant à son origine dans le
modèle des besoins.
UML est un langage de modélisation graphique et textuel permettant de
représenter et de communiquer les divers aspects d’un système d’information. Etant un
langage graphique, UML présente des graphiques auxquels sont associés des textes qui
expliquent leur contenu [16] il s’articule sur treize types de diagrammes, chacun d’eux
étant dédié à la représentation des concepts particuliers d’un système logiciel. Pour la
modélisation de notre application web nous utiliserons les diagrammes suivants :
a. Diagrammes dynamiques ou comportementaux :



Diagramme de cas d’utilisation : Il montre les interactions fonctionnelles
entre les acteurs et le système à l’étude.
Diagramme de séquence : Il montre la séquence verticale de messages
passés entre objets au sein d’une interaction.
Diagramme d’activité : Il montre l’enchaînement des actions et décisions
au sein d’une activité.
b. Diagrammes structurels ou statistiques :


Diagramme de classes : Il montre les briques de base statiques : Classes,
associations, interfaces, attributs, opérations, généralisations, etc.
Diagramme de navigation : il fournit la possibilité de décrire précisément
et exhaustivement les aspects dynamiques de l’interface utilisateur.
P a g e | 11
I.3.3. La méthode UP
Nous utiliserons une méthode parmi plusieurs qui est la suivante :
Le Processus Unifié (UP en Sigle).
Le Processus Unifié est un processus de développement logiciel itératif et
incrémental, basé sur l’architecture, conduit par les cas d’utilisation et piloté par les
risques.
Ainsi nous pouvons noter les quatre phases importantes de la méthode UP
dans le tableau ci-dessous :
Tableau 1.2 les phases de la méthode UP
Numéro
Phases
1
L’initialisation
2
L’élaboration
3
La construction
4
La transition
 La phase d’initialisation : elle nous conduit à définir la vision globale du projet,
c’est cette phase qui nous permet de voir la faisabilité et la portée afin de prendre
des décisions soit de poursuivre ou de mettre fin à la progression du projet.
 La phase d’élaboration se base sur trois principes suivants : l’identification et la
description des parties majeures des besoins de l’utilisation, la construction de
l’architecture de base du système ainsi que de lever les risques majeurs du projet.

La phase de construction consiste à concevoir et implémenter l’ensemble des
éléments opérationnels.
 La phase de transition consiste de faire passer le système informatique des mains
de développeurs aux utilisateurs finaux.
I.4. Conclusion partielle
En bref ce chapitre nous a présenté le cadre conceptuel de notre travail dont
nous avons défini les différents concepts de notre thème de recherche qui est la conception
et la mise en place d’un portail Web étudiant-enseignant.
P a g e | 12
Nous avons eu à expliciter le sens et le quid du portail dans une organisation
avant de parler des technologies qui nous permettront d’implémenter la solution. Dans le
cadre théorique nous avons parlé de langage Unified Modeling Language (UML) qui est
un langage de modélisation graphique et textuel destiné à comprendre ainsi qu’à pouvoir
décrire les besoins, spécifier et documenter le système et de la méthode Unified Process
(UP) qui est un processus de développement moderne, itératif, efficace sur des projets
informatiques de toutes tailles.
P a g e | 13
2. CHAPITRE DEUXIEME : ETUDE DE L’EXISTANT, SOLUTION
PROPOSEE ET DESCRIPTION DE L’APPLICATION
II.1. Introduction partielle
Dans ce chapitre nous voulons passer en revue le système d’information de
l’Ecole Supérieure d’Informatique Salama. Cela nous permettra de comprendre le
fonctionnement sur lequel est basée la gestion académique de l’ESIS et répertorier les
différentes ressources dont elle dispose pour ainsi avoir une idée sur la solution que nous
allons implémenter avant de présenter et spécifier notre application, son fonctionnement
dans une description plus ou moins détaillée ; ce qui constituera notre cahier des charges.
II.2. Etude de l’existant
L’étude de l’existant permet au chercheur d’observer et prendre en compte les
outils et/ou les technologies mis en place par son champ d’observation. Ici pour nous le
champ d’observation est l’Ecole Supérieure d’Informatique Salama ; nous essaierons
dans ce point de voir comment l’enseignement et le suivi de cours se passe au sein de
l’ESIS, et tous les outils que l’on utilise pour cette fin.
L’Ecole Supérieure d’Informatique Salama dispose dans son fonctionnement
de plusieurs ressources dont les enseignants, les étudiants, les candidats et mêmes les
membres du corps académique ont besoin. Parmi ces ressources nous citons :
-
Inscription des nouveaux (Candidats)
Les cours (Enseignants et Etudiants)
Dossiers des étudiants (Etudiants et Institut)
Etc.
II.3. Solution proposée
Etant une institution d’enseignement supérieur et universitaire, l’Ecole
Supérieure d’Informatique Salama dispose de plusieurs ressources qui concourent à sa
gestion et à son fonctionnement, et elle a besoin d’un outil efficace qui puisse centraliser
l’accès à ces ressources et lui faciliter la gestion académique dans son ensemble.
L’automatisme étant l’enjeu dans ce besoin, elle désire donner un accès permanent et
régulier aux différents membres du corps académique à leurs ressources respectives.
P a g e | 14
Aujourd’hui avec la montée incessante de la technologie avec l’avènement
des NTIC, l’information circule et atteint le monde entier. Point n’est besoin de se
déplacer pour s’informer, à ce jour, l’information vient vous trouver là où vous êtes. C’est
dans cette perspective que nous avons proposé cet outil qui est un portail web dans le but
de faciliter la communication et de centraliser l’accès aux différentes ressources.
II.4. Description du besoin
Cette application, le portail web s’adresse :
-
-
-
Aux Enseignants :

Gérer cours

Gérer notes

Gérer agenda
Aux Etudiants :
 Accéder à ses dossiers

Accéder aux offres de stages

Participer au forum

Consulter horaire

Voir ses notes
Aux Candidats :
 S’inscrire

Passer le test d’admission

Consulter résultats
II.3. Spécifications fonctionnelles
II.3.1. Générales
1.1.Connexion
Utilisateurs : les utilisateurs de type : « Enseignant », « Etudiant »,
« Candidat »
Description : un utilisateur doit se connecter au moyen d’un Login (Nom
d’utilisateur) et un mot de passe selon qu’il est classé dans une catégorie correspondant à
son type.
P a g e | 15
1.2. Interface graphique
Description : l’interface graphique sera constituée (du moins pour
l’interface accueil) :
o Des boutons « principaux » suivants : Log In et Inscription, et des boutons
secondaires suivants : à propos, contact, etc.
o Le bouton « Inscription » : renvoie le formulaire d’inscription des candidats
désireux de poursuivre leurs études à l’ESIS.
o Le bouton « Log In » : renvoie l’interface de connexion. A l’aide de son mot
de passe et son nom d’utilisateur, l’utilisateur sera renvoyé à l’interface (la
page le concernant selon son type) :
 L’interface de type « Enseignant » :

Annuaire des cours

Annuaire de l’enseignant

Notes des étudiants

Agenda de l’enseignant
 L’interface de type « Etudiant » :
 Annuaire de l’étudiant

Offres

Forum

Notes

Horaire

Valve
 L’interface de type « Candidat » :

Passation du test d’admission
 Résultats
o De plusieurs autres interfaces (secondaires) de renseignement.
1.3. Accès restreint à des types d’utilisateurs
Description : chaque page (interface) est accessible aux utilisateurs selon
leur profil. Notre application définira les profils suivants :
- Enseignant : ce sont tous les enseignants de l’ESIS vacataires et permanents
y compris.
- Etudiant : ce sont tous les étudiants inscrits à l’ESIS.
- Candidat : ce sont les nouveaux venus, tous ceux qui se sont inscrits au test
d’admission en passe de devenir étudiants de l’ESIS.
P a g e | 16
II.3.2. Annuaire de l’étudiant
Description : l’annuaire de l’étudiant est un outil permettant d’accéder aux
informations concernant l’étudiant (ses dossiers par exemple).
1. Modification / Ajout / Mise à jour des éléments du dossier
Utilisateur : Etudiant
Description : L’utilisateur ayant le profil "Etudiant", peut modifier, ajouter
et/ou mettre à jour les données suivantes :
-
Attestation de naissance
Attestation d’aptitude physique
Attestation de bonne vie et mœurs
Bulletin 5ème et/ou 6ème
Journal ou diplôme d’état
Pièce d’identité
Photo (passeport) de l'étudiant
2. Recherche d’un étudiant
Utilisateurs : Enseignant, Etudiant
Description : A partir d'un champ de recherche (unique), on peut chercher
dans la base de données les étudiants. La recherche s'effectue dans les champs : nom,
post-nom, prénom, matricule.
Par défaut, la recherche se fait sur les étudiants ayant le statut "Etudiant" mais
il est possible de spécifier cette valeur.
Une recherche permet d'afficher une liste d'étudiant : on affichera un tableau
présentant : le nom, le prénom, le post nom, le statut de l'étudiant, le niveau de l'étudiant.
On présentera un lien sur le nom de l’étudiant qui pointera vers sa fiche
3. Consultation d'une fiche d'étudiant
Utilisateurs : Enseignant
Description : L’utilisateur mentionné ci-dessus peut avoir accès aux
données d'un étudiant :
-
Enseignant : accès restreints aux champs suivants :
o Matricule de l'étudiant : identifiant unique et invariant dans le temps
P a g e | 17
o
o
o
o
o
o
o
o
o
o
o
o
o
Nom de l'étudiant
Post nom de l'étudiant
Prénom de l'étudiant
Date de naissance
Photo de l'étudiant
Numéro de téléphone de l'étudiant
Adresse physique de l'étudiant
Adresse email ESIS de l'étudiant
Adresse email personnel de l'étudiant [OPTIONNEL]
Numéro de téléphone 1 de l'étudiant
Numéro de téléphone 2 de l'étudiant [OPTIONNEL]
Promotion de l'étudiant (Prépa, G1, G2, G3)
Statut de l'étudiant (Parmi les valeurs : Candidat, Etudiant, Diplômé,
Abandon, Renvoi)
On donnera la possibilité à l'utilisateur qui consulte une fiche de l'imprimer.
Interface : on peut accéder à la fiche d'un étudiant depuis la fonction de
recherche, ou depuis une page qui liste les étudiants par niveaux / options.
4. Consulter une liste d’étudiants
Utilisateurs : Enseignant
Description : Permet de consulter une liste d'étudiants d'un niveau et de
l'imprimer. On affichera tous les étudiants d'un niveau ayant le statut "Etudiant".
II.3.3. Annuaire de l’enseignant
Description : l’annuaire des Enseignants contient toutes les informations
concernant l’Enseignant telles que ses coordonnées, ses aptitudes, etc.
1. Enregistrement / Modification des données d’un enseignant
Utilisateurs : Académique, Administratif, Administrateur
Description : Les utilisateurs ayant le profil "Académique", "Administratif",
"Administrateur" peuvent créer une fiche d’enseignants et ajouter ou modifier les données
suivantes :
-
Matricule de l’enseignant
Nom de l’enseignant
Post nom de l’enseignant
P a g e | 18
-
Prénom de l’enseignant
Titre de l’enseignant
Date de naissance de l’enseignant
Photo de l’enseignant
Adresse physique de l’enseignant
Adresse email de l’enseignant
Diplôme 1 de l’enseignant
Diplôme 2 de l’enseignant [OPTIONNEL]
Diplôme 3 de l’enseignant [OPTIONNEL]
Nom de l'entreprise dans lequel travaille l’enseignant
Adresse de l'entreprise
Numéro de téléphone 1 de l’enseignant
Numéro de téléphone 2 de l’enseignant
Présentation (Expertise)
Taux horaire
2. Rechercher des enseignants
Utilisateurs: Enseignant
Description : À partir d'un champ de recherche unique, on peut chercher dans
la base de données les enseignants. La recherche s'effectue dans les champs : nom, postnom, prénom, matricule.
Une recherche permet d'afficher une liste de enseignants : on affichera un
tableau présentant : le nom, le prénom, le post nom. On présentera un lien sur le nom de
l’enseignant qui pointera vers sa fiche détaillée.
3. Consulter une fiche d’enseignant
Utilisateurs : Enseignant
Description : Les utilisateurs peuvent avoir accès aux données d'un
enseignant selon leur profil :
-
Enseignant : accès aux données suivantes : nom, prénom, post nom, titre,
Adresse physique de l’enseignant, adresse email de l’enseignant,
numéros de téléphone de l’enseignant
On donnera la possibilité à un utilisateur d’imprimer cette fiche.
4. Consulter une liste d’enseignants
P a g e | 19
Utilisateurs : Enseignant
Description : L’utilisateur mentionné ci-dessus peut accéder à la liste des
enseignants d'un niveau et d'une option (ex : Prépa). On affichera alors dans un tableau :
leur nom, post nom, prénom, cours
On donnera la possibilité à un utilisateur d'imprimer (au besoin) la liste des
enseignants.
5. Gérer un cours
Utilisateurs : Enseignant
Description : L’utilisateur « Enseignant » gère son cours dans une promotion
donnée, il peut mettre son support de cours à la disposition des étudiants, programmer les
épreuves dans son cours sur une période bien déterminée.
Les étudiants aurons par ricoché la possibilité de télécharger se support.
6. Gérer agenda
Utilisateur : Enseignant
Description : ceci consiste à gérer les emplois du temps (la disponibilité) de
l’enseignant pour savoir quand est-ce qu’il est programmé pour un cours dans
une promotion donnée.
On donnera à l’enseignant de proposer (donner) aussi son agenda ou emploi du
temps sur une période donnée.
1. Donner/Ajouter/Modifier un emploi de temps
Utilisateurs : Enseignant
Description : On permet à l’utilisateur d’ajouter ou modifier un créneau dans l’emploi
du temps. Il devra renseigner :
- La promotion concernée
- la filière (optionnelle)
- l’option concernée (optionnelle)
- le cours (on affichera sous forme de liste déroulante la liste des cours du niveau
et/ou de l’option sélectionné)
- le professeur dispensant ce cours
- le local occupé pour ce cours (liste déroulante présentant les locaux de l’ESIS)
- le type de plage horaire (cours, interrogation, examen)
- le jour (on affichera un datepicker pour sélectionner le jour concerné)
P a g e | 20
-
l’heure de début (sous forme HH:mm)
l’heure de fin de cours (sous forme HH :mm)
Lors de l’enregistrement de la plage on veillera à ce qu’aucune autre plage ne soit
programmée en même temps que la plage en cours d’enregistrement. On veillera
également à la disponibilité des jours.
2. Afficher/Consulter l’emploi de temps
Utilisateurs : Etudiant, Enseignant
Description : Pour une promotion et une option donnée, un enseignant et un
cours donné (qui seront à sélectionner sur l’interface), on affichera l’emploi du temps de
l’enseignant sur une plage donnée.
Pour une plage, on affichera, le cours, l’enseignant et la plage (de date) de sa
disponibilité.
3. Donner/Renseigner son emploi de temps
Utilisateur : Enseignant
Description : On donnera la possibilité à l’utilisateur de renseigner son
emploi du temps une période donnée.
7. Gestion des cotes (notes)
Utilisateur : Enseignant
Description : gérer les cotes des étudiants dans différentes épreuves
(travaux) passées.
1. Encoder les cotes
Utilisateur : Enseignant
Description : La saisie se passe en 2 temps :
1° L’utilisateur lance l’interface de saisie de cote, il renseigne :
-
le nom de la saisie de cote (exemple : interrogation NomCours)
la matière concernée parmi une liste de cours
le type d’épreuve qui concerne la cote (interrogation, examen, TP, TD,
etc.)
P a g e | 21
-
le coefficient de la cote
la promotion concernée
l’option concernée
2° L’utilisateur saisit les cotes. Par défaut, on présentera la liste des étudiants.
On présentera un champ de recherche pour chercher un étudiant parmi les étudiants de la
liste (la recherche se fait dans les champs : nom, post nom, prénom, matricule). Un champ
permettra d’enregistrer la note et une fois l’enregistrement effectué, la page (cote) sera
mise à jour.
On enregistre l’enseignant concerné par cet enregistrement ainsi que la date
d’ajout de la cote.
Une cote peut être modifiée. Dans ce cas, on gardera l’historique et on
enregistrera une nouvelle cote.
2. Consulter les cotes (voir ses notes)
Utilisateur : Etudiant
Description : L’utilisateur étudiant pourra consulter ses cotes (notes). Sur
une page, il aura accès à un tableau lui donnant par matière la liste des cotes, la
moyenne générale pour chacune des cotes, sa moyenne pour la matière et la moyenne
générale de la promotion.
8. Consulter horaire
Utilisateurs : Etudiant
Description : L’utilisateur aura la possibilité de consulter l’horaire
(programme d’un cours spécifique) de sa promotion et pour une période déterminée.
9. Accéder aux offres
Utilisateurs : Etudiant
Description : Les étudiants peuvent avoir l’information sur les différentes
offres (de stage et/ou d’emploi) des entreprises en partenariat avec l’ESIS et ils pourront
y postuler selon qu’ils seront intéressés par ces offres.
10. Participer au forum
P a g e | 22
Utilisateur : Etudiant
Description : Les étudiants ont un besoin, celui d’échanger les expériences
entre eux. Le forum pourrait être un moyen plus facile et adapté pour cela.
On donnera la possibilité aux étudiants de poser des questions à leurs
condisciples, et aussi de répondre à celles des autres sur la plateforme.
11. Passer test d’admission
Utilisateur : Candidat
Description : Les candidats désirant entrer à l’ESIS sont soumis à un test
d’admission. Ce test ils pourront le passer à travers le portail que nous mettrons en place.
12. Consulter les résultats des tests
Utilisateur : Candidat
Description : Une fois le test passé, l’utilisateur (candidat) aura la possibilité
de voir ses résultats toujours à travers cette plateforme.
II.4. Conclusion partielle
Dans ce chapitre nous avons passé en revue le système d’information de
l’ESIS, nous avons donné les motivations de notre travail en présentant la solution
proposée à ce système puis nous avons détaillé le fonctionnement de notre application par
ce que nous avons appelé cahier des charges de notre application qui reprend les
différentes fonctionnalités qui seront implémentées dans ce travail.
La répartition des fonctionnalités de ce cahier des charges pour le
développement de l’application qui commence déjà à partir du prochain chapitre se
présente comme suit :
FAILA MALUNGA Daniella
-
Les fonctionnalités concernant l’étudiant
Les fonctionnalités concernant l’inscription des candidats et leur passation du test
d’admission
KAZADI MUKAYA Aaron
-
Les fonctionnalités concernant l’enseignant
Certaines fonctionnalités concernant l’étudiant
P a g e | 23
C’est ainsi que nous concluons la partie théorique de notre travail et passons
à la partie pratique.
P a g e | 24
3. CHAPITRE TROISIEME : CONCEPTION ET MODELISATION
DE L’APPLICATION
III.1. Introduction partielle
Dans ce chapitre nous allons faire une analyse, mais cela passe
impérativement par une modélisation qui permet de structurer et de donner un squelette
construisant notre application.
III.2. Analyse
Selon le dictionnaire Larousse, le mot analyse est une étude faite de
discerner les différentes parties d’un tout. Le but de l’analyse est de traduire dans un
langage proche de celui des informaticiens les modèles exprimés dans l’expérience des
besoins. L’analyse doit servir de support pour la conception, l’implémentation et la
maintenance.
III.3. Modélisation
La modélisation permet de mieux comprendre le système à développer,
pour permettre de visualiser le système comme il est ou comme il devait être, de valider
le modèle, de spécifier la structure de données et le comportement du système, de
fournir un guide pour la construction du système, de documenter le système et les
décisions prises [13].
Nous ne pouvons pas parler des diagrammes sans pour autant parler des
acteurs ; pour notre cas, nous avons recensé les grandes fonctionnalités de notre
système en distinguant trois acteurs qui sont : le candidat, l’étudiant et l’enseignant
P a g e | 25
III.4. Les diagrammes UML
III.4.1. Le diagramme de cas d’utilisation
Ce diagramme nous permet de recueillir, d’analyser et d’organiser les
besoins, aussi, il recense les grandes fonctionnalités d’un système. Il modélise les
services rendus par le système aux utilisateurs. Il met en évidence ce que l’utilisateur
peut faire par rapport au système.
Voici la représentation du diagramme de cas d’utilisation de notre système :
ESISPORTAIL
S'inscrire
Passer test
<<Include>>
Consulter résultats
<<Include>>
Candidat
Vérifier
dossiers
Mettre à jour dossiers
<<Include>>
<<Include>>
S'informer sur les cours
Voir ses notes
Accéder aux
signalitiques
Accéder aux dossiers personnels
<<Include>>
Participer au forum
<<Include>>
S'authentifier
Etudiant
Créer nouveau post
Répondre au post
<<Include>>
Accéder aux offres
<<Include>>
Postuler à une offre
<<Include>>
Consulter horaire
<<Include>>
Accéder à la valve
<<Include>>
Gérer cours
<<Include>>
Uploader cours
Retirer cours
Mettre à jour cours
Enseignant
Gérer notes
Encoder notes
Envoyer notes
Gérer agenda
Consulter agenda
Créer agenda
P a g e | 26
Figure 3.1 Diagramme des cas d'utilisation
P a g e | 27
III.4.2. Etude des cas
L’étude des cas consiste à présenter pour chaque cas d’utilisation :
-
Sa description textuelle, qui est une explication détaillée du cas.
-
Son diagramme de séquence système, qui est un diagramme qui montre les
acteurs externes qui interagissent directement avec le système, non seulement,
mais également ce système (en tant que boîte noire) et les événements
déclenchés par les acteurs [14].
-
Son diagramme des classes participantes, Il s’agit de diagrammes de classes
UML qui décrivent pour chaque cas d’utilisation, les trois principales classes
d’analyse et leurs relations [15]. Les (trois) classes d’analyse sont : les «
dialogues » qui représentent les moyens d’interaction avec le système, les «
contrôles » qui contiennent la logique applicative, et enfin les « entités » qui
sont les objets "métier" manipulés [16].
3. S’authentifier
a. Description textuelle
-
-
Nom du cas : s’authentifier
Objectif : se connecter au compte utilisateur
Acteur principal : candidat, étudiant, enseignant
Acteur secondaire : Précondition : Scénarios :
 Nominal :
 Entrer login et mot de passe
 Valider
 Alternatif :
 Annuler connexion
 Exception : message d’erreur si login et/ou mot de passe sont incorrects,
saisir de nouveau ces derniers
Post condition : accéder au compte
b. Diagramme de Séquence
P a g e | 28
EsisPortal
Etudiant
LOOP
S'authentifier
EnterLogIn_pwd()
Valider()
Système vérifie
ALT
[Incorrect]
LogIn ou Mot de passe Invalide
[Correct]
Page demandée
Figure 3.2 Diagramme de Séquence du C.U. S'authentifier
c. Diagramme de classes participantes
«Ctrl»
S'authentifier
«Dlg»
S'authentifier
Ent. User
-LogIn : String
-Pwd : String
Forum
Etudiant
+Repondre()
+CréerPost()
Ent. Candidat
- IdCand : String
- IdInscr : int
- DateInsription : date
+Reponse()
+Sujet()
Ent. Etudiant
- MatrEtu : String
- Promotion : String
- EmailEtu : date
Ent. Enseignant
- MatrEns : String
- TitreEns : String
Figure 3.3 Diagramme des classes participantes du C.U. S'authentifier
Ent. Personne
-id : int
-Nom : String
-PostNom : String
-Prenom : String
-Genre : String
-DateNaiss : date
-Adresse : String
-Tel : String
-Email : String
P a g e | 29
4. S’inscrire
a. Description textuelle
- Nom du cas : s’inscrire
- Objectif : permettre à un candidat de prendre son inscription au test
d’admission
- Acteur principal : candidat
- Acteur secondaire : - Précondition : - Scénarios :
 Nominal :
 Remplir formulaire d’inscription
 Charger dossier
 Envoyer formulaire
 Alternatif :
 Annuler l’inscription
 Exception : afficher un message d’erreur si le formulaire n’est pas bien
remplis
- Post condition : code envoyé dans l’adresse mail
b. Diagramme de séquence
P a g e | 30
EsisPortail
Candidat
LancerPage()
Page lancée
RemplirFormulaire()
ChargerDossiers()
Système charge
dossiers
ALT
[Echec]
Chargement echoué
[Succés]
Chargement réussi
EnvoyerFormulaire()
Vérification
ALT
[Echec]
[Succés]
Veuillez correctement remplir tous les champs
Inscription faite
Figure 3.4 Diagramme de Séquence du C.U. S'inscrire
c. Diagramme des classes participantes
P a g e | 31
Ent. Candidat
«Dlg»
S'inscrire
Incription
Candidat
+ChargerDoc()
+Valider()
+Annuler()
«Ctrl»
S'inscrire
+Valider()
+ChargerDoc()
- Id: int
- IdCand : String
- IdInscr : int
-NomCand : String
- PostNomCand : String
- PrenomCand : String
- DateNaiss : date
- Genre : String
- Adresse : String
- Telephone : String
- Email : String
- DateInsription : date
Ent. Dossier
1.1
1.*
Ent. Document
- Id: int
- IdInscr : int
- IdDossier : int
Figure 3.5 Diagramme des classes participantes du C.U. S'inscrire
-
IdDossier
AttestNaiss : String
AttestRes : String
AttestMoeurs : String
AptPhysique : String
DiplomeEtat : String
Bulletin5eme : String
Bulletin6eme : String
PieceIdentite : String
P a g e | 32
5. Passer test
a. Description textuelle
-
Nom du cas : passer test
Objectif : évaluer le niveau du candidat
Acteur principal : candidat
Acteur secondaire : Précondition : s’être inscris au test
Scénarios :
 Nominal :

Aller sur passer test

Entrer code d’accès

Valider code d’accès

Répondre aux questions

Valider
 Alternatif :

Annuler test
 Exception : message d’erreur si le résultat n’est pas disponible
-
Post condition : test présenté
b. Diagramme des séquences
EsisPortail
Candidat
REF
S'authentifier
LancerPage()
Page de test lancée
RepondreQuestions()
Envoyer()
CalculerResultat()
Affichage résultat
Figure 3.6 Diagramme de Séquence du C.U. Passer test
P a g e | 33
c. Diagramme des classes participantes
«Ctrl»
Passer test
«Dlg»
Passer test
-IdTest : int
-AnneeAcad : int
-DateTest : date
Test
+Presenter()
Ent. Test
+AfficherQuestions()
1..*
Candidat
1
Ent. Candidat
-IdCand : int
-CodeCand : String
Figure 3.7 Diagramme des classes participantes du C.U. Passer test
6. Consulter résultats
a. Description textuelle
-
Nom du cas : consulter résultat
Objectif : permettre au candidat d’avoir connaissance de ce résultat une seconde fois
Acteur principal : candidat
Acteur secondaire : Précondition : avoir passé le test
Scénarios :
 Nominal :

Entrer code d’accès

Valider code
 Alternatif :

-
 Exception : afficher un message d’erreur si le code est mal saisi
-
Post condition : résultat consulté
b. Diagramme de séquence
P a g e | 34
EsisPortail
Candidat
REF
S'authentifier
REF
Passer test
LancerPage()
Chargement
résultats
ALT
[Echec]
Résultats non disponibles
[Succès]
Résultats affichés
Figure 3.8 Diagramme de Séquence du C.U. Consulter résultats
c. Diagramme des classes participantes
«Ctrl»
Consulter résultats
«Dlg»
Consulter résultats
Ent. Résultats
-resultat : double
-Mention : String
Résultats
+s_authentifier()
Candidat
+Afficher()
+Consulter()
1.1
1.1
Ent. Candidat
-IdCand : int
-NomCand : String
Figure 3.9 Diagramme des classes participantes du C.U. Consulter résultats
7. Accéder aux dossiers personnels
a. Description textuelle
-
Nom du cas : accéder aux dossiers personnels
-
Acteur principal : étudiant
Objectif : permettre à l’étudiant de vérifier ces dossiers, de mettre à jour ces dossiers,
de s’informer sur les cours, d’avoir accès aux signalétiques, de voir ses notes
Acteur secondaire : Précondition : s’authentifier
P a g e | 35
-
Scénarios :
Option 1 : vérifier dossiers
 Nominal :

Aller sur vérifier dossier

Parcourir dossier
 Alternatif :
 Exception :
-
Option 2 : mettre à jour dossier
 Nominal :

Aller sur mettre à jour

Chercher document

Charger document

Valider l’action
 Alternatif : annuler mise à jour
 Exception : afficher message d’erreur si la mise à jour à échouée
-
Option 3 : voir ses notes
 Nominal :

Afficher grille travail

Choisir travail
 Alternatif :  Exception : message d’erreur si la page n’est pas disponible
-
Option 4 : s’informer sur les cours
 Nominal :

Aller sur informations sur les cours

Afficher listes des cours ainsi que le volume horaire
 Alternatif : annuler affichage
 Exception : message d’erreur si la page ne s’affiche pas
-
Option 5 : Accéder aux signalétiques
 Nominal :

Aller sur accéder aux signalétiques

Vérifier

Consulter
 Alternatif : annuler l’accès
 Exception : message d’erreur affiché
-
Post condition : dossiers personnels consultés
b. Diagramme de séquence
P a g e | 36
EsisPortal
Etudiant
S'authentifier
REF
LancerPage()
PageLancée
AccéderDossierPersonnels()
OptionsAffichées
OPT
vérifierDossier()
ALT
affichageéchouée
[succès]
REF
affichageréussie
VérifierDossier()
Mettreàjourdossier()
ChargerDocument()
chargement
ALT
[echec]
[succès]
chargementéchoué
chargementréussi
ValiderMiseàjour()
MiseàjourValidée
VoirsNotes()
AfficherGrillesTravaux
ALT
[echec]
[succès]
cotenonaffiché
coteaffiché
S'informerSurLesCours
DemanderListeCours()
AfficherListeCours
AccéderSignalitiques
DemanderInfosPersonnels()
InfosPersonnelsVérifiées
Figure 3.10 Diagramme de Séquence du C.U. Accéder aux dossiers personnels
P a g e | 37
c. Diagramme des classes participantes
«Ctrl»
Accéder aux dossiers
«Dlg»
Accéder aux dossiers
Ent. Cours
-IdCours : int
-IntituleCours : String
-VolHoraire : int
Dossiers
Etudiant
+VerifierDossier()
+Maj()
+VoirNotes()
+AccederSignaletique()
+VerifierDossier()
+Maj()
+VoirNotes()
+AccederSignaletique()
Ent. Signalétiques
Ent. Dossier
Ent. Document
- Id: int
- IdInscr : int
- IdDossier : int
- IdDossier
- AttestNaiss : String
- AttestRes : String
- AttestMoeurs : String
- AptPhysique : String
- DiplomeEtat : String
- Bulletin5eme : String
- Bulletin6eme : String
- PieceIdentite : String
Ent. Note
-Intitule : String
-Note : float
1.1
1.1
1.1
1.1
Ent. Epreuve
Ent. Etudiant
-MatrEtu : String
-NomEtu : String
-Promotion : String
-EmailEtu : String
1..*
1..*
-IdEpreuve :int
-IntituleEpreuve : String
-DateEpreuve : date
Ent. Enseignant
1..*
1.1
-MatrEns : String
-NomEns : String
-TitreEns : String
-EmailEns : String
Figure 3.11 Diagramme des classes participantes du C.U. Accéder aux dossiers personnels
P a g e | 38
8. Participer au forum
a. Description textuelle
-
Nom du cas : participer au forum
Objectif : permettre aux étudiants d’échangés
Acteur principal : étudiant
Acteur secondaire : Précondition : s’authentifier
Scénarios :
Option 1 : Créer post
 Nominal :

Crée post

Ecrire

Envoyer
 Alternatif : annuler envoie
-
Option 2 : Répondre au post
 Nominal :

Répondre au post

Ecrire réponse

Envoyer
 Alternatif : annuler envoie de la réponse
 Exception : afficher message d’erreur si le message n’est pas envoyer
-
Post condition : échange effectué
b. Diagramme de séquence
P a g e | 39
EsisPortail
Etudiant
REF
S'authentifier
LancerPage()
ALT
[Echec]
Page non disponible
[Succès]
Page de forum lancée
OPT
RepondreAuPost()
Liste des posts
ChoisirPost()
EcrireMessage()
Envoyer()
Enregistrement
ALT
[Echec]
Réponse non envoyée
[Succès]
Réponse envoyée
CréerPost()
Affichage formulaire
SaisirSujet()
Envoyer()
Enregistrement
ALT
[Echec]
[Succès]
Echec envoie
Post envoyé
Figure 3.12 Diagramme de Séquence du C.U. Participer au forum
P a g e | 40
c. Diagramme des classes participantes
«Dlg»
Participer au forum
«Ctrl»
Participer au forum
-IdMsg : int
-MsgTypeRep : String
-MsgTypeSujet : String
Forum
+Repondre()
+CréerPost()
Etudiant
Ent. Message
+Reponse()
+Sujet()
1..*
1.1
Ent. Etudiant
-MatrEtu : String
-NomEtu : String
-PromotionEtu : String
-DatePost : date
Figure 3.13 Diagramme des classes participantes du C.U. Participer au forum
9. Accéder aux offres
a. Description textuelle
-
Nom du cas : accéder aux offres
Objectif : permettre à un étudiant d’avoir accès aux offres de stages
Acteur principal : étudiant
Acteur secondaire : Précondition : s’authentifier
Scénarios :
Option 1 : postuler à une offre
 Nominal :

Aller sur menu offres

Parcourir les offres

Choisir une offre

valider
 Alternatif :

Annuler la candidature
 Exception : un message d’erreur si la plage est déjà atteinte
-
Post condition : accès réussis et choix opéré
b. Diagramme de séquence
P a g e | 41
EsisPortail
Etudiant
REF
S'authentifier
LancerPage()
Chargement
Liste des offres
ChoisirOffre()
OPT
Postuler()
Chargement
ALT
[Echec]
Candidature non valide
[Succès]
Candidature envoyée
Figure 3.14 Diagramme de Séquence du C.U. Accéder aux offres
c. Diagramme des classes participantes
«Ctrl»
Accéder aux offres
Ent. Offres
«Dlg»
Accéder aux offres
-IdOffre : int
-NumOffre : int
-LibelleOffre : String
Offres
+Postuler()
0..*
+Valider()
1..*
Etudiant
1..*
Ent. Etudiant
Ent. Entreprise
-NomEse : String
-OffreEse : String
1.1
-MatrEtu : String
-NomEtu : String
-Promotion : String
-EmailEtu : date
Figure 3.15 Diagramme des classes participantes du C.U. Accéder aux offres
10. Consulter horaire
a. Description textuelle
-
Nom du cas : consulter horaire
Objectif : permettre à l’étudiant de connaitre son horaire de la semaine
Acteur principal : étudiant
P a g e | 42
-
Acteur secondaire : Précondition : s’authentifier
Scénarios :
 Nominal :

Aller sur menu horaire

Consulter
 Alternatif :

-
 Exception : Post condition : l’horaire est consulté
-
b. Diagramme de séquence
EsisPortail
Etudiant
REF
S'authentifier
AfficherHoraire()
Chargement
horaire
ALT
[Echec]
Horaire non disponible
[Succès]
Horaire affiché
Figure 3.16 Diagramme de Séquence du C.U. Consulter horaire
P a g e | 43
c. Diagramme des classes participantes
«Dlg»
Consulter horaire
«Ctrl»
Consulter horaire
Ent. Horaire
-Intitulé : String
Horaire
+Ouvrir()
+Afficher()
Etudiant
1.1
1.*
Ent. Etudiant
- IdEtu : int
- MatrEt : String
- EmailEsis : String
Figure 3.17 Diagramme des classes participantes du C.U. Consulter horaire
11. Accéder à la valve
a. Description textuelle
-
Nom du cas : accéder à la valve
-
Acteur principal : étudiant
Objectif : permettre à un étudiant d’avoir connaissance des annonces, des
communiqués, etc.
Acteur secondaire : Précondition : s’authentifier
Scénarios :
 Nominal :

Aller sur valve

Afficher valve

Parcourir valve
 Alternatif :

Interrompre action
 Exception : afficher un message d’erreur si valve ne s’affiche pas
-
Post condition : avoir les communiqués et annonces courantes
b. Diagramme de séquence
P a g e | 44
EsisPortail
Etudiant
REF
S'authentifier
LancerPage()
Chargement
Page lancée
AfficherValve()
Chargement
ALT
[Echec]
Valve non valide
[Succès]
Valve affichée
Figure 3.18 Diagramme de Séquence du C.U. Accéder à la valve
c. Diagramme des classes participantes
«Dlg»
Accéder à la valve
«Ctrl»
Accéder à la valve
-Id : int
-Annonce : String
Valve
Etudiant
+Consulter()
Ent. Valve
+Afficher()
+Consulter()
1..*
1
Ent. Etudiant
-MatrEtu : String
-NomEtu : String
-Promotion : String
-EmailEtu : String
Figure 3.19 Diagramme des classes participantes du C.U. Accéder à la valve
12. Gérer cours
a. Description textuelle
-
Nom du cas : gérer cours
P a g e | 45
-
Objectif : permettre à l’enseignant de mettre d’uploader les cours, de les mettre à jour
et de les retirés
-
Acteur principal : enseignant
Acteur secondaire : Précondition : s’authentifier
Scénarios :
Option 1 : Uploader cours
 Nominal :

Chercher le support de cours dans le dossier de l’emplacement

Sélectionner le cours

Charger cours

valider
 Alternatif : annuler l’opération
 Exception : message d’erreur si le chargement est mal effectuer
-
Option 2 : Retirer les cours
 Nominal :

Sélectionner le cours

Cliquer sur retirer les cours
 Alternatif : annuler le retrait
 Exception : afficher message d’erreur
-
Option 3 : Mettre à jour cours
 Nominal :

Sélectionner le support de cours à mettre à jour

Le remplacer par une nouvelle version
 Alternatif : annuler la mise à jour
 Exception : un message d’erreur si la mise à jour n’est pas effectuée
-
Post condition : cours géré
P a g e | 46
b. Diagramme de séquence
EsisPortal
Enseignant
REF
S'AUTHENTIFIER
LancerPage()
PageLancée
GererCours()
Options Affichées
UploaderCours()
OPT
Chargement
ALT
[echec]
[succes]
Syllabus_non_chargé
Syllabus_chargé
RetirerCours()
Cours Affichés
chargement
ChoisirCours()
ValiderAction()
ALT
[echec]
[succes]
Syllabus_non_retiré
Syllabus_retiré
MajCours()
OuvrirCours()
ModifierCours()
EnregistrerModification()
enregistrement
ALT
[echec]
Echec de mise à jour
[succes]
mise à jour effectuée
P a g e | 47
Figure 3.20 Diagramme de Séquence du C.U. Gérer Cours
c. Diagramme des classes participantes
«Ctrl»
GererCours
«Dlg»
GererCours
gererCours
+uploaderCours()
+retirerCours()
+mettreàjourCours()
Enseignant
Ent. Cours
-IntituléCours : string
-VolumeHoraireCours : int
+ConsulterCours()
+MettreàJoursCours
+uploaderCours()
1..*
1
Enseignant
_MatriculeEnseignant : string
-NomEnseignant : string
-¨PostNomEnseignant : string
Figure 3.21 Diagramme des classes participantes du C.U. Gérer Cours
13. Gérer notes
a. Description textuelle
-
Nom du cas : gérer notes
-
Acteur principal : enseignant
Objectif : donner la possibilité à l’enseignant de saisir et d’envoyer les notes dans son
cours
Acteur secondaire : Précondition : s’authentifier
Scénarios :
Option 1 : Encoder notes
 Nominal :

Créer une épreuve

Saisir la note pour chaque étudiant
 Alternatif : annuler l’encodage
 Exception : message d’erreur si l’encodage n’est pas effectuer
-
Option 2 : Envoyer notes
 Nominal :

Après avoir saisi la note, l’envoyer
 Alternatif : annuler l’envoi
 Exception : afficher message d’erreur si l’envoie ne réussis pas
-
Post condition : notes envoyées
P a g e | 48
b. Diagramme de séquence
EsisPortal
Enseignant
REF
S'AUTHENTIFIER
LancerPage()
Page Lancée
GererNotes()
Options Affichées
EncoderNotes()
OPT
Liste des étudiants
CreerEpreuve()
Chargement
ALT
[echec]
[succes]
Epreuve non créée
Epreuve créée
SaisirNotes()
ActiverNote()
Liste
Chargement
SelectionnerNote()
Envoyer()
Chargement
ALT
[echec]
[succes]
Echec de l'activation
Notes envoyées
Figure 3.22 Diagramme de Séquence du C.U. Gérer Notes
P a g e | 49
c. Diagramme des classes participantes
DialogueGererNotes
GérerNotes
Enseignant
Encoder()
Créer()
Activer()
Enseignant
ControleurGérerNotes
-Matricule:string
-NomEnseig:string
-PostNom : string
-TelEnseig : string
+EncoderPoint()
+CreerEpreuve
+ActiverNotes()
1
1..*
Notes
-IntituléNote:string
--MaxNote : int
Epreuves
1..*
1..*
1
Etudiants
-NomEtud : string
-PostNom : string
-NumTel : string
-Email : string
Figure 3.23 Diagramme des classes participantes du C.U. Gérer Notes
1
-IntituléEp: string
-MaxPoint : int
-Date:date
1..*
1
Cours
-IntituléC : string
-VolhC : int
P a g e | 50
14. Gérer agenda
a. Description textuelle
-
Nom du cas : gérer agenda
-
Acteur principal : enseignant
Objectif : permettre à l’enseignant d’avoir une idée claire sur l’horaire établi par
l’école par rapport à son cours et à une promotion donnée
Acteur secondaire : Précondition : s’authentifier
Scénarios :
Option 1 : Consulter agenda
 Nominal :

Afficher l’agenda établis par l’école pour son cours
 Alternatif :  Exception : erreur si l’agenda ne s’affiche pas
-
Option 2 : Créer agenda
 Nominal :

Aller sur nouveau

Création

Définir disponibilité
 Alternatif : annuler la création de l’agenda
 Exception : message d’erreur si l’agenda n’est pas créer
-
Post condition : agenda créé
b. Diagramme de séquence
P a g e | 51
ESISPORTAL
Enseignant
REF
S'authentifier
LancerPage()
Page Lancée
GererAgenda()
Options Afiichées
OPT
ALT
ConsulterAgenda()
[echec]
[succès]
Agenda non Disponible
Agenda Affiché
CreerAgenda()
Calendrier
SelectionnerPlage()
Envoyer()
chargement
ALT
[echec]
[succès]
Agenda non créé
Agenda créé
Figure 3.24 Diagramme de Séquence du C.U. Gérer agenda
P a g e | 52
c. Diagramme des classes participantes
Ent. Enseignant
-MatrEns : string
-NomEns : string
-TitreEns : string
«Dlg»
Gérer agenda
«Ctrl»
Gérer agenda
Agenda
Enseignant
+ConsulterAgenda()
+CréerAgenda()
1.1
1.1
+GererAgenda()
+CreerAgenda()
Ent. HoraireCours
-Promotion : String
-Horaire : String
-Date : date
Figure 3.25 Diagramme des classes participantes du C.U. Gérer agenda
Ent. Agenda
-IdAgenda : int
-IntituléAgenda : string
-DateAgenda : date
P a g e | 53
III.4.3. Modèle du domaine
1
Horaire
Valve
-Id : int
-Annonce : String
1..*
Consulter
-LogIn : String
-Pwd : String
1.* 1.*
1..*
1..*
1
1..*
1..*
Passer
1
Appartenir
Personne
-MatrEtu : String
-Promotion : String
-EmailEtu : String
Publier
1
-id : int
-Nom : String
-PostNom : String
-Prenom : String
-Genre : String
-DateNaiss : date
-Adresse : String
-Tel : String
-Email : String
Document
Dossier
-IdDossier : int
-NomDoc :String
- IdDossier : int
-NomDossier : String
DetailCours
1..*
Epreuve
-NomEse : String
-OffreEse : String
-IdEpreuve :int
-IntituleEpreuve : String
-DateEpreuve : date
- MatrEns : String
- TitreEns : String
1..*
1
Encoder
1..*
Note
-IdAgenda : int
-IntituléAgenda : string
-DateAgenda : date
1
-Intitule : String
-Note : float
Publier
1..*
-IdMsg : int
-ObjetMsg : String
-DateMsg : date
1
Promotion
-IdProm : int
-Promotion : String
Filière
1..*
Figure 3.26 Modèle du domaine
Comprendre
1..*
-IdCours : int
-IntituleCours : String
-VolHoraire : int
1
1
1..*
Agenda
Message
1..*
Dispenser
Concerner
1
Etre inscrit
-IntituleCours : String
-VolHoraire : int
Cours
Enseignant
Consulter
Signalétiques
1..*
Prendre connaissance
Entreprise
-Id : int
-Nom : String
1.1
1
1..*
1
1..*
Test
-IdTest : int
-DateTest : date
Passer
Consulter
Etudiant
Postuler
-IdOffre : int
-NumOffre : int
-LibelleOffre : String
Candidat
- IdCand : String
1..*
1..*
Offres
User
-Intitulé : String
-IdFil : int
-Filiere : String
1
Concerner
1..*
Inscription
- IdInscr : int
- DateInsription : date
1
P a g e | 54
III.4.3.1. Transformation du modèle du domaine en modèle relationnel
Le modèle relationnel est issu du modèle du domaine suivant une
transformation basée sur certaines règles. Pour notre cas, nous nous sommes servis des
règles suivantes [17] :
 La présence de multiplicité ( ?..1) d’un côté de l’association, on procède comme
suit :
-
Chaque classe se transforme en une table
-
Chaque attribut de classe se transforme en un champ de table
-
L’identifiant de la classe qui est associée à la multiplicité ( ?..) devient la clé
étrangère de l’autre classe
 La présence de ( ?..N) des deux côtés de l’association
-
Chaque classe se transforme en une table
-
Chaque attribut de classe se transforme en un champ de table
-
L’association se transforme en une table. Cette table a comme champs
l’identifiant de chacune de deux classes, plus d’éventuels autres attributs.
 La présence d’une généralisation
-
Créer une table pour chaque sous type, chaque table se compose des attributs
génériques et d’attributs spécifiques
Voici notre modèle relationnel après l’usage des règles ci-dessus
1. Enseignant (MatrEns, Nom, Postnom, Prenom, Genre, Adresse, Telephone,
Email, DateNaiss, TitreEns)
2. Etudiant (MatrEtu, Nom, Postnom, Prenom, Genre, Adresse, Téléphone, Email)
3. Cours (IdCours, NomCours, Pondération, #MatrEns)
4. Epreuve (IdEpreuve, #IdCours, #MatrEtu)
5. Notes (IdNote, #IdCours, #IdEpreuve, #MatrEtu)
6. Agenda (IdAgenda, #MatrEns)
7. Message (IdMessage, ObjetMsg, DateMsg, #MatrEtu)
8. Entreprise (IdEntreprise, NomEse, OffreEse)
9. Offre (IdOffre, NumOffre, libeleOffre, #IdEntreprise)
10. Postuler (MatrEtu, IdOffre)
11. Promotion (IdProm, promotion, #MatrEtu)
P a g e | 55
12. Filière (IdFil, Filière)
13. Comprendre (IdProm, IdFil)
14. Valve (IdValve, annonce, #MatrEtu)
15. Signalétique (Id, nom, #MatrEtu)
16. Horaire (IdHoraire, intitule)
17. Consulter (MatrEtu, IdHoraire)
18. DetailCours (IdDetail, #IdCours)
19. PrendreConnaissance (IdDetail, MatrEtu)
20. Candidat (IdCand, Nom, Postnom, Prenom, Genre, DateNaiss, Adresse,
Telephone, email)
21. Inscription (IdInscription, #IdCand)
22. Test (IdTest, #IdCand)
23. Dossier (IdDossier, NomDossier, #IdCand)
24. Document (IdDocument, NomDocument, #IdDossier)
III.4.4. Diagramme de classes de conception
Le diagramme de classe de conception modélise le diagramme de classes,
qui servira à l’implémentation de l’application [17].
P a g e | 56
Candidat
Horaire
Valve
User
-Intitulé : String
-Id : int
-Annonce : String
+Creer()
+MaJ()
Etudiant
Offres
-IdOffre : int
-NumOffre : int
-LibelleOffre : String
-IdTest : int
-DateTest : date
+Enregisrer()
+Modifier()
+Supprimer()
+Passer()
+Corriger()
+S_inscrire()
-LogIn : String
-Pwd : String
+Consulter()
+Consulter()
+Creer()
Test
- IdCand : String
Personne
-MatrEtu : String
-Promotion : String
-EmailEtu : String
Document
-id : int
-Nom : String
-PostNom : String
-Prenom : String
-Genre : String
-DateNaiss : date
-Adresse : String
-Tel : String
-Email : String
+Ajouter()
+Maj()
+Publier()
+Postuler()
-IdDossier : int
-NomDoc :String
Dossier
- IdDossier : int
-NomDossier : String
+Verifier()
+MaJ()
+Creer()
DetailCours
Entreprise
-NomEse : String
-OffreEse : String
+Creer()
+MaJ()
Epreuve
Enseignant
Signalétiques
+Modifier()
+Ajouter()
+MaJ()
+Supprimer()
+Ajouter()
+MaJ()
Note
Agenda
-Intitule : String
-Note : float
-IdAgenda : int
-IntituléAgenda : string
-DateAgenda : date
+MaJ()
+Verifier()
-IdCours : int
-IntituleCours : String
-VolHoraire : int
- MatrEns : String
- TitreEns : String
+Creer()
+Modifier()
-Id : int
-Nom : String
-IntituleCours : String
-VolHoraire : int
Cours
-IdEpreuve :int
-IntituleEpreuve : String
-DateEpreuve : date
+Ajouter()
+MaJ()
+Supprimer()
+Creer()
+Modifier()
+Ajouter()
+Creer()
+Modifier()
+Supprimer()
Message
Promotion
-IdMsg : int
-ObjetMsg : String
-DateMsg : date
-IdProm : int
-Promotion : String
-NbreEtu : int
-IdFil : int
-Filiere : String
+Creer()
+Envoyer()
+Commenter()
+Creer()
+MaJ()
+Creer()
Inscription
- IdInscr : int
- DateInsription : date
+Valider()
+Verifier()
+Enregistrer()
Filière
Figure 3.27 Diagramme de classes de conception
III.4.5. Diagramme de navigation
Le diagramme de navigation modélise les interactions entre les objets en
mettant l’accent sur l’aspect spatial. Il représente de manière pratique la navigabilité
entre les objets sous forme d’échange de messages.
P a g e | 57
«Page»
Page d'accueil
Prendre
son inscription
Accéder
au portail
LogIn ou password
[Incorrect]
Accéder
au portail
«Page»
Authentification
«Page»
Inscription
LogIn et password
[Correct]
«Frame»
Page Utilisateur
«Page»
Test
Passer le test
d'admission
Résultats
«Frame»
Résultats du test
Portail Enseignant
Portail Etudiant
Candidats
retenus
«Page»
Enseignant
«Page»
Liste des étudiants
Gérer cours
Gérer notes
Gérer agenda
«Page»
Etudiant
Accéder aux
dossiers
personnels
«Page»
Géstion cours
Participer au
forum
Postuler à
une offre
«Page»
Géstion notes
Accéder à
la valve
Consulter
horaire
«Page»
Dossiers personnels
«Page»
Forum
«Page»
Offres
Figure 3.28 Diagramme de navigation
«Page»
Horaire
«Page»
Valve
«Page»
Géstion Agenda
P a g e | 58
III.5. Conclusion partielle
Dans ce chapitre il s’est agi de présenter le plan « architectural » de
l’application que nous comptons mettre en place.
Nous avons présenté les différents diagrammes UML qui nous permettent
d’avoir une idée claire sur le comportement et le fonctionnement de l’application avant
même de la mettre sur pied. Nous avons commencé par recenser les différents acteurs qui
interagissent avec notre système, nous avons présenté le diagramme des cas d’utilisation,
qui reprend les acteurs et les actions qu’ils posent dans le système, en suite nous avons
pour chaque cas d’utilisation présenté le diagramme de séquence système basé sur une
description textuelle du cas, et aussi le diagramme des classes participantes qui ressort
toutes les entités qui concourent à la réalisation de ce cas, et enfin nous avons chuté par
présenter le modèle du domaine et sa transformation en modèle relationnel qui donne
l’image de notre base de données avant de présenter le diagramme de classes de
conception qui reprend tous les objets nécessaires à la mise en œuvre de l’application.
P a g e | 59
4. CHAPITRE QUATRIEME : REALISATION DE L’APPLICATION
IV.1. Introduction partielle
Ce chapitre constitue la partie pratique de la solution apportée. Nous
essaierons de parler brièvement des outils et langages de programmation que nous avons
utilisés pour la réalisation de notre application.
IV.2. Outils et langages utilisés
Un programme est un ensemble d’instructions détaillées et exécutées par le
processeur de l’ordinateur.
Pour obtenir un résultat dans n’importe quel domaine nous avons besoin
d’outils et langages qui nous amèneront à notre solution.
IV.3. Choix du langage
Un langage de programmation est un code de communication, permettant à
un être humain de dialoguer avec une machine en lui soumettant des instructions et en
analysant les données matérielles fournies par le système, généralement un ordinateur. Le
langage permet à la personne qui rédige un programme (programmeur), de faire
abstraction de certains mécanismes internes, généralement des activations et
désactivations de commutateurs électroniques, qui aboutissent au résultat désiré [17].
Pour l’implémentation de notre application, nous avons utilisé les langages
suivant :
 PHP : est un langage de programmation permettant par la génération du code
HTML de créer de pages (web) dynamiques [18].
 HTML (HyperText Mark up Langage) qui est un langage de description de
données, permettant de créer des pages web pouvant être lues dans des navigateurs
[19].
 Le BOOSTRAP : est un Framework du CSS permettant par ses classes
personnalisées de perfectionner l’apparence de nos pages web.
P a g e | 60
 Le CSS (Cascading Style Sheets) est un langage de mise en forme.
 Le JQUERY : est un Framework JavaScript, c’est une énorme bibliothèque de
fonctions JavaScript qui ont été écrites et regroupées en un seul et unique fichier
pour plus de simplicité [20].
 JAVASCRIPT : est un langage de script incorporé dans un document HTML
IV.4. Choix du SGBD
Pour assurer le stockage des informations nous avons opté pour le Système
de Gestion de Base de Données MySQL. Ce dernier vient déjà incorporé dans
l’environnement WampServer, qui est une plate-forme de développement web permettant
de faire fonctionner en local des scripts PHP. Il comprend deux serveurs qui sont Apache
et MySQL, un interpréteur de script PHP ainsi que PhpMyAdmin pour l’administration
et les maquettes.
IV.5. Architecture logicielle utilisée
En ce qui concerne l’architecture logicielle, nous avons utilisés l’architecture
en couche qui est un modèle d’architecture appelé « MVC ». En effet, ce modèle propose
une subdivision du code en 3 couches principales formant les initiales MVC (Modèle –
Vue – Contrôleur). Du point de vue application, l’entrée de l’application est la couche
contrôleur. Toutes les entrées (les requêtes) passent d’abord par un contrôleur. Un
contrôleur peut aller manipuler les données Nécessaires en interagissant avec la couche
du modèle.
Le modèle est la couche qui gère les données persistantes, et l’accès à ces
données. C’est à partir de la couche « Modèle » que les actions ordonnées par le
contrôleur sur les données seront effectuées. Une fois les données opérées et récupérées,
le contrôleur fournit à la couche « Vue » les données nécessaires à l’affichage. Il peut
arriver que la couche « vue » accède directement aux informations via la couche
« modèle ».
 Le Modèle : est la couche qui gère les données persistantes, et l’accès à ces
données. C’est au niveau de la couche « Modèle » que les actions ordonnées par
le contrôleur sur les données seront effectuées. Son rôle est de gérer les données
et le contenu.
P a g e | 61
 La Vue : son rôle est d’afficher les pages. Elle est constituée des éléments
graphiques tels que des contrôles utilisateurs, des pages Web ou encore des Master
Pages.
 Le Contrôleur : Le point d’entrée de l’application est la couche contrôleur. Toutes
les entrées (les requêtes) passent d’abord par un contrôleur. Un contrôleur peut
aller manipuler les données nécessaires en interagissant avec la couche du modèle.
Son rôle est de générer la réponse à la requête http demandée par notre visiteur. Il
est la couche qui se charge d’analyser et de traiter la requête de l’utilisateur et de
renvoyer les bonnes informations. Le contrôleur contient la logique de notre site
Internet et va se contenter « d’utiliser » les autres composants : les modèles et les
vues. Il est constitué d’un ensemble de classes permettant de créer les objets
métiers manipulés dans l’application, et d’exécuter les traitements métiers [20].
IV.6. Diagramme de composants
Le diagramme de composants permet de représenter les composants logiciels
d'un système ainsi que les liens existant entre ces composants. Il décrit l'organisation du
système du point de vue des éléments d'application comme les modules (paquetages,
fichiers sources, bibliothèques, exécutables), des données (fichiers, bases de données) ou
encore d'éléments de configuration (paramètres, scripts, fichiers de commandes). La
représentation « boite noire » par connecteur d'interface donne une vue externe du
composant et présente ainsi ses interfaces fournies et requises sans entrer dans le détail
de l'implémentation du composant [22].
P a g e | 62
«Interface»
Recepteur (Socket)
Navigation
SGBD
+Protocole = "Http"
+Port = 8080
«Interface»
Emetteur (Socket)
+Protocole = "Http"
+Port = 8080
«Interface»
MySQL (Socket)
Site web
+Protocole = "TCP"
+Port = 3306
Site web
Figure 4.1 Diagramme de Composants
IV.7. Diagramme de déploiement
Le diagramme de déploiement décrit la disposition physique des ressources
matérielles qui composent le système et montre la répartition des composants sur ces
matériels. Chaque ressource étant matérialisée par un nœud, le diagramme de
déploiement précise comment les composants sont répartis sur les nœuds et quelles sont
les connexions entre les composants ou les nœuds.
P a g e | 63
Serveur Web
«Component»
Apache
Version 2.2.21
USER
TCP/IP
«Component»
Navigateur
SGBD
«Component»
MySQL
Version 5.5.20
Figure 4.2 Diagramme de déploiement
IV.6. Présentation de l’application
IV.6.1. Quelques interfaces
IV.6.1.1. Accueil
Figure 4.3 Ecran d'accueil principal
Fifefox,
Chrome,
Opera, ...
P a g e | 64
IV.6.1.2. Inscription (Charger Dossiers)
Figure 4.4 Charger Dossiers personnels
IV.6.1.3. Test d’admission
Figure 4.5 Passer test
P a g e | 65
IV.7. Conclusion partielle
Ce chapitre a consisté à faire une brève description de notre application en
présentant les outils et langages utilisés nous avions dit que pour obtenir un résultat dans
n’importe quel domaine nous avons besoin de ces derniers afin d’aboutir à n’importe
quelle solution, pour le stockage des informations nous avons opté pour le système de
gestion de base de données MySQL.
En ce qui concerne l’architecture logiciel
nous avons utilisés l’architecture
en couche qui est un modèle d’architecture appelé « modèle MVC » ce modèle propose
une subdivision du code en 3 couches, nous avions aussi parler de notre diagramme de
déploiement qui décrit la disposition physique des ressources matérielles qui composent
le système et montre la répartition des composants sur ces matériels et pour finir nous
avions présentés quelques interfaces de notre l’application.
P a g e | 66
CONCLUSION GENERALE
Au bout de notre cursus, après avoir passé quatre ans d’études à l’Ecole
Supérieure d’Informatique Salama. Ce travail scientifique représente le fruit de nos
recherches en tant que finaliste pour marquer la fin de nos études et confirmer la
qualification d’ingénieur informaticien en génie logiciel gestion et en génie logiciel
systèmes informatiques.
Nous voilà au terme de notre travail scientifique intitulé : « gestion
académique : conception et mise en place d’un portail web étudiant-enseignant », nous
avons pris le cas de l’ESIS.
Notre travail a commencé par une introduction générale suivie de quatre
chapitres ainsi que leurs conclusions partielles. Pour donner un sens à cette structure nous
n’avons pas oublié la conclusion générale, c’est dans différents points que nous avons
abordés différents aspects du sujet. Pour mener à bien notre travail nous avons recouru
aux différentes méthodes, partant de l’existant en usage pour enfin proposer des solutions,
après avoir pris connaissance de toutes les insuffisances constatées.
A l’issue de notre travail, nous avons eu la pensée de concevoir et de mettre
en place un portail Web étudiant-Enseignant par le biais d’une solution informatique
adéquate qui donnera une ouverture ou une entrée commune à toutes les ressources dont
une institution académique dispose.
Nous ne prétendons pas que notre travail soit exempt d’imperfections et nous
espérons que d’autres études seront menées dans le même sens que le nôtre afin
d’approfondir l’un ou l’autre aspect que nous n’avons pas pu développer.
P a g e | 67
Pour ce faire, nous demandons votre indulgence pour les éventuelles erreurs
et omissions.
Nous restons ouverts à toutes les critiques objectives que tout chercheur
pourra bien nous adresser après la lecture de ce présent travail.
P a g e | 68
REFERENCES
[1] P. Breton, Histoire de l'informatique, Paris: La Découverte, 1987.
[2] «latin_dictionnaire,» [En ligne]. Available:
http://www.lexilogos.com/latin_dictionnaire.html. [Accès le 20 septembre 2018].
[3] «latin_dictionnaire,» [En ligne]. Available:
http://www.lexilogos.com/latin_dictionnaire.html. [Accès le 20 septembre 2018].
[4] K. M. Carmine, KANYEBA MUTOMBO Carmine, « Conception d’une plateforme
mobile-learning d’une institution » (Cas de l’ESIS), ESIS, septembre 2017..
[5] K. K. Serge, KUMWIMBA KISHIKO Serge, « Outil d’évaluation de la eréputation d’une entreprise et/ou d’une marque congolaise et d’aide à la prise de
décisions selon le comportement de ses visiteurs et de ses concurrents », ESIS,
septembre 2017..
[6] [En ligne]. Available: https://www.linternaute.fr/dictionnaire/fr/definition/portail/.
[Accès le le 11 Août 2018].
[7] [En ligne]. Available: http://www.lexilogos.com/latin_dictionnaire.html. [Accès le
le 02 Septembre 2018].
[8] [En ligne]. Available: https://www.technoscience.net/?onglet=glossaire&definition=1434. [Accès le le 02 Septembre 2018].
[9] M. B. HENDA, ETUDE SUR LES PORTAILS ET AGREGATEURS DES
RESSOURCES PEDAGOGIQUES UNIVERSITAIRES FRANCOPHONES EN
ACCES LIBRE, IDNEUF, 2015.
[10] M. B. HENDA, ETUDE SUR LES PORTAILS ET AGREGATEURS DES
RESSOURCES PEDAGOGIQUES UNIVERSITAIRES FRANCOPHONES EN
ACCES LIBRE, IDNEUF, 2015.
[11] M. B. HENDA, ETUDE SUR LES PORTAILS ET AGREGATEURS DES
RESSOURCES PEDAGOGIQUES UNIVERSITAIRES FRANCOPHONES EN
ACCES LIBRE, IDNEUF, 2015.
[12] P. Kasonga, cours de conception des systèmes d'informations avec UML, 2016,
p.5.
[13] P. Kasonga, Cours de Conception des systèmes d'informations avec UML (16,
p.5).
[14] P. Roques, UML 2 Modéliser une application web, 4e éd., Paris: Eyrolles, 2008.
[15] P. Roques, UML 2 Modéliser une application web, 4e éd., Paris: Eyrolles, 2008.
[16] P. Roques, UML 2 Modéliser une application web, 4e éd., Paris: Eyrolles, 2008.
[17] P. Roques, UML en action. De l'analyse à la conception en java, 2e éd., Paris:
Eyrolles, 2003.
[18] P. Kasonga, Cours de conception et modélisation avec UML, ESIS, 2016.
P a g e | 69
[19] R. Ogor, Cours de modélisation avec UML.
[20] M. Nebra, Concevez votre site avec PHP et MySQL, 2013.
[21] M. Nebra, Concevez votre site avece PHP et MySQL, 2013.
[22] L. Masangu, Cours de Conception et developpement web, Lubumbashi: Esis,
2018.
[23] K. K. Serge, TFC : Outil d'évaluation de la e-réputation d'une entreprise etou
d’une marque congolaise et d'aide à la prise de décision selon le comportement de
ses visiteurs et de ses concurrents sur les réseaux sociaux, ESIS, 2017.
Téléchargement