SlideShare une entreprise Scribd logo
1  sur  86
Télécharger pour lire hors ligne
Présenté le 09 mars 2020
Par Monsieur PÉPIN LISQUEUR Claudio
Membres du Jury :
Président : Monsieur RAFAMANTANANTSOA Fontaine, Professeur
Examinateur : Monsieur SIAKA, Assistant d’Enseignement Supérieur et de Recherche
- Monsieur RAKOTOASIMBAHOAKA Cyprien Robert, Maître des Conférences
- Monsieur RAKOTONOMENJANAHARY Parfait, chef de service du SIUVE
UNIVERSITE DE FIANARANTSOA
ECOLE NATIONALE D’INFORMATIQUE
MEMOIRE DE FIN D’ETUDES POUR L’OBTENTION DU DIPLÔME DE
LICENCE PROFESSIONNELLE EN INFORMATIQUE
Parcours : Informatique générale
Intitulé
Année Universitaire : 2018 - 2019
Rapporteurs :
I
CURRICULUM VITAE
PEPIN LISQUEUR Claudio
Célibataire, 25 ans
Cité « U » N 04 Andrainjato FIANARANTSOA 301
(+261) 32 67 897 46 / 34 38 650 96
lisqueur1309@gmail.com
FORMATION ET
DIPLÔMES
2019 : Obtention du Diplôme d’Étude de Langue Française (DELF) niveau B1.
2018 – 2019 : Troisième année de la formation en Licence professionnelle en
informatique
2013 – 2014 : Deuxième année de la formation en Licence professionnelle en
informatique
2012 – 2013 : Première année de la formation en Licence professionnelle en
informatique
2011 – 2012 : Terminale D au Lycée Laurent Botokeky Toliara, obtention du
diplôme Baccalauréat série D avec mention Bien
STAGES ET
EXPÉRIENCES
PROFESSIONNELLES
2019 – 2020 : Stage pratique au sein de la SIUVE Université de Fianarantsoa
Thème : Conception et réalisation d’une application de gestion
des logements du SIUVE
Outils et langage utilisé : SulimeText, CSS,
PHP, MySQL, UML
Durée : 03 mois (04 novembre 2019 au 31 janvier 2020)
2018 – 2019 : Stage pratique au sein de la DRB Atsimo Andrefana
Thème : Conception et réalisation d’une application suivie
Outils et langage utilisé : PHP MySQL, CSS
Durée : 03 mois
Bureautiques : Microsoft Office (Word, Excel, PowerPoint, Publisher…)
Système d’exploitation : Windows (7, 8, 10) et Linux (Ubuntu, Debian)
Langage de programmation : C, C++, Visual Basic, Java, C#, VB NET
Programmation web : DHTML, XHTML, XML, PHP, ASP, JSP, ASP.NET,
ASP.NET MVC
Méthode et langage de conception : Merise, Merise 2, UML
SGBD: MS Access, MySQL, PostgreSQL, Oracle, SQL Server, SQLite
Outils de conception: Visual Paradigm, Win’Design, Astah Community
Framework: JSF, Code Igniter, Symfony, Laravel
Développement d’application mobile : Androïd
Script : CSS, Javascript, VB script, Ajax
Outils de développement : NetBeans, Eclipse, Visual Studio, JDeveloper
II
CONNAISSANCE
LINGUISTIQUE
Grille d’évaluation :
1 : Médiocre 2 : Moyen 3 : Excellent 4 : Très excellent
Ecrit Parlé Lecture
Français 4 3 3
Anglais 2 2 2
DIVERS Sports : Football, Pratique d’art martial Kung Fu
Loisirs : Écoute la musique
Qualités : Sociable, Dynamique, Sens du travail en équipe
III
SOMMAIRE GÉNÉRAL
CURRICULUM VITAE .............................................................................................................I
SOMMAIRE GÉNÉRAL......................................................................................................... III
REMERCIEMENTS ................................................................................................................. V
LISTE DES FUGURES ...........................................................................................................VI
LISTE DES TABLEAUX..................................................................................................... VIII
LISTE DES ABREVIATIONS................................................................................................IX
INTRODUCTION GÉNÉRALE................................................................................................ 1
PARTIE I : PRÉSENTATION................................................................................................... 2
CHAPITRE 1 : PRESENTATION DE L’ECOLE NATIONALE D’INFORMATIQUE (ENI) ..................... 3
1.1. Localisation et contact............................................................................................. 3
1.2. Missions et historique.............................................................................................. 3
1.3. Organigramme institution de l’ENI......................................................................... 4
1.4. Domaines de spécialisation ..................................................................................... 6
1.5. Architecture des formations pédagogiques ............................................................. 7
1.6. Relations de l’ENI avec les entreprises et les organismes ...................................... 9
1.7. Partenariat au niveau international........................................................................ 10
1.8. Débouches professionnels des diplômes ............................................................... 11
1.9. Ressources humaines............................................................................................. 13
CHAPITRE 2 : PRESENTATION DU SERVICE DE L’INTENDANCE UNIVERSITAIRES ET DE LA VIE
ETUDIANTE (SIUVE)............................................................................................................. 14
2.1. Localisation ........................................................................................................... 14
2.2. Historique.............................................................................................................. 14
2.3. Objectif général ..................................................................................................... 14
2.4. Organigramme du Service des Intendance Universitaires .................................... 15
CHAPITRE 3 : DESCRIPTION DU PROJET .................................................................................. 16
3.1. Formulation ........................................................................................................... 16
3.2. Objectif et besoin de l’utilisateur .......................................................................... 16
3.3. Moyens nécessaires pour la réalisation du projet.................................................. 16
3.4. Résultats attendus.................................................................................................. 17
3.5. Planning de stage................................................................................................... 18
PARTIE II : ANALYSE ET CONCEPTION .......................................................................... 19
CHAPITRE 4 : ANALYSE PREALABLE ...................................................................................... 20
4.1. Analyse et étude de l’existant................................................................................ 20
4.2. Critique et diagnostic de l’existant........................................................................ 21
4.3. Conception avant – projet...................................................................................... 21
CHAPITRE 5 : ANALYSE CONCEPTUELLE...................................................................... 31
5.1. Dictionnaire des données....................................................................................... 31
5.2. Règle des gestions ................................................................................................. 32
5.3. Représentation et spécifique des besoins .............................................................. 32
5.4. Spécification des besoins techniques .................................................................... 43
5.5. Modélisation du domaine ...................................................................................... 44
IV
CHAPITRE 6 : CONCEPTION DETAILLEE (UML)...................................................................... 45
6.1. Architecture du système ........................................................................................ 45
6.2. Diagramme de séquence de conception pour chaque cas d’utilisation ................. 46
6.3. Diagramme de classe de conception pour chaque cas d’utilisation ...................... 50
6.4. Diagramme de classe de conception global .......................................................... 51
6.5. Diagramme de paquetages..................................................................................... 51
6.6. Diagramme de déploiement................................................................................... 52
PARTIE III : RÉALISATION ................................................................................................. 53
CHAPITRE 7 : MISE EN PLACE DE L’ENVIRONNEMENT DE DEVELOPPEMENT........................... 54
7.1. Installation et configuration des outils .................................................................. 54
7.2. Architecture de l’application................................................................................. 59
CHAPITRE 8 : DEVELOPPEMENT DE L’APPLICATION ............................................................... 60
8.1. Création de la base de données................................................................................ 60
8.2. Codage d’application ............................................................................................... 62
8.3. Présentation de l’application.................................................................................... 63
CONCLUSION GÉNÉRALE.................................................................................................. 69
REFERENCE BIBLIOGRAPHIE ...........................................................................................XI
REFERENCE WEBOGRAPHIQUE ......................................................................................XII
GLOSSAIRE......................................................................................................................... XIII
TABLE DES MATIÈRES ....................................................................................................XIV
RÉSUME...............................................................................................................................XVI
ABSTRACT..........................................................................................................................XVI
V
REMERCIEMENTS
Avant toute chose, nos sincères remerciements s’adressent à Dieu tout puissant de nous
avoir la force, la santé et le courage qu’il nous a fourni tout au long de nos années d’études et
qui nous a conduits à la concrétisation de ce présent mémoire.
L’aboutissement de ce travail a vu la contribution de plusieurs personnes. Nous tenons à
exprimer nos plus vives reconnaissances à tous ceux qui ont pris part à l’aboutissement de notre
stage de mémoire à travers ces quelques lignes :
 Professeur RAFAMANTANANTSOA Fontaine, Président de l’Université de
Fianarantsoa qui a consenti à notre intégration au sein de l’Université de
Fianarantsoa ;
 Professeur RAMAMONJISOA Bertin Olivier Andriantiana, Directeur de l’École
Nationale d’Informatique qui a sans cesse trouvé un moyen pour améliorer la
formation des étudiants de l’ENI ;
 Docteur RAKOTOASIMBAHOAKA Cyprien Robert, qui est mon encadreur
pédagogique et aussi mon professeur, pour les attentions qu’il a fournis afin
d’offrir le plus d’éventuel aide possible ;
 Monsieur RAKOTONOMENJANAHARY Parfait, chef de service SIUVE, qui est mon
encadreur professionnel qui m’a consacré son temps et prodigué son aide et ses
différentes recommandations dans l’aboutissement de ce mémoire ;
 Le corps professoral et administratif de l’ENI, pour avoir partagé les
connaissances et conseils tout au long de ces trois années d’études ;
 Tous les personnels du service SIUVE pour leur précieuse aide et leur
collaboration ;
 Un immense remerciement également à toute notre famille, nos proches ainsi que
nos amis de nous avoir toujours soutenu et encouragé tout au long de notre période
de stage et la réalisation de ce mémoire. À toutes les personnes qui ont contribué
de près ou de loin à la concrétisation de ce travail, je vous remercie.
Nos sincères gratitudes s’adressent également aux membres du jury pour leurs critiques et
propositions dans le but d’améliorer notre travail.
VI
LISTE DES FUGURES
Figure 1. Organigramme de l’ENI ............................................................................................. 5
Figure 2. Organigramme du SIUVE ........................................................................................ 15
Figure 3. Planning prévisionnel (a).......................................................................................... 18
Figure 4. Planning prévisionnel (b).......................................................................................... 18
Figure 5. Schéma d'ensemble de la méthode UP ..................................................................... 24
Figure 6. Formalisme d'un cas d'utilisation.............................................................................. 32
Figure 7. Diagramme de cas d'utilisation globale .................................................................... 33
Figure 8. DSS de cas d'utilisation "Authentification".............................................................. 39
Figure 9. DSS de cas d'utilisation "Nouvelle demande" .......................................................... 39
Figure 10. DSS de cas d'utilisation "Saisir logement" ............................................................. 40
Figure 11. DSS de cas d'utilisation "Saisir filière"................................................................... 40
Figure 12. DSS de cas d'utilisation "Valide demande" ............................................................ 41
Figure 13. DSS de cas d'utilisation "Renouvèlement"............................................................. 41
Figure 14. DSS de cas d'utilisation "Exclure étudiant"............................................................ 42
Figure 15. DSS de cas d'utilisation "Annuler demande".......................................................... 42
Figure 16. DSS de cas d'utilisation "Permutation ".................................................................. 43
Figure 17. Modèle de domaine................................................................................................. 44
Figure 18. Schéma de l’architecture du modèle MVC............................................................. 46
Figure 19. DSC de cas d'utilisation "Nouvelle demande"........................................................ 46
Figure 20. DSC de cas d'utilisation "Saisir logement"............................................................. 47
Figure 21. DSC de cas d'utilisation "Saisir filière" .................................................................. 47
Figure 22. DSC de cas d'utilisation "Valide demande"............................................................ 48
Figure 23. DSC de cas d'utilisation "Renouvèlement"............................................................. 48
Figure 24. DSC de cas d'utilisation "Exclure d'étudiant"......................................................... 49
Figure 25. DSC de cas d'utilisation "Permutation" .................................................................. 49
Figure 26. DCC de cas d'utilisation "Saisir nouvelle demande".............................................. 50
Figure 27. DCC de cas d'utilisation "Saisir logement" ............................................................ 50
Figure 28. DCC de cas d'utilisation "Valide de la demande"................................................... 50
Figure 29. Diagramme de classe de conception globale du projet........................................... 51
Figure 30. Diagramme des paquetages .................................................................................... 52
Figure 31. Diagramme de déploiement du projet..................................................................... 52
Figure 32. Installation du PHP sous Windows......................................................................... 54
VII
Figure 33. Début d’installation WampServer .......................................................................... 56
Figure 34. WampServer est prêt à installer.............................................................................. 56
Figure 35. Choix de dossier de destination .............................................................................. 57
Figure 36. Progression d’installation de WampServer............................................................. 57
Figure 37. Menu de lancement des services WampServer....................................................... 58
Figure 38. Page d’accueil WampServer................................................................................... 59
Figure 39. Architecture de l’application .................................................................................. 59
Figure 40. Création de la table "Logement "............................................................................ 60
Figure 41. Création de la table "Etudiant" ............................................................................... 60
Figure 42. Création de la table "Filière"................................................................................... 61
Figure 43. Code Controller "login.php"................................................................................... 62
Figure 44. Code Vue "login.php"............................................................................................. 62
Figure 45. Interface d’authentification de l’application........................................................... 63
Figure 46. Page contient la liste des étudiants occupe les logements ...................................... 64
Figure 47. Fenêtre de la demande ............................................................................................ 64
Figure 48. Fenêtre d’inscription dans un logement.................................................................. 65
Figure 49. Fenêtre de téléchargement photo d’un étudiant...................................................... 65
Figure 50. Fenêtre d'inscription avec photo de profil............................................................... 66
Figure 51. Inscription terminé.................................................................................................. 66
Figure 52. Fenêtre de renouvèlement....................................................................................... 67
Figure 53. Fenêtre de permutation ........................................................................................... 67
Figure 54. Liste des étudiants ont exclus dans les logements .................................................. 68
VIII
LISTE DES TABLEAUX
Tableau 1. Organisation du système de formation pédagogique de l’École .............................. 6
Tableau 2. Architecture des études correspondant au système LMD ........................................ 7
Tableau 3. Liste des formations existantes à l’ENI.................................................................... 8
Tableau 4. Débouchés professionnels éventuels des diplômés................................................ 12
Tableau 5. Configuration de la machine qu’on a utilisée......................................................... 17
Tableau 6. Comparaison entre les deux solutions.................................................................... 21
Tableau 7. Comparaison entre la méthode MERISE et Processus Unifié ............................... 22
Tableau 8. Comparaison entre MySQL et PostgreSQL ........................................................... 26
Tableau 9. Tableaux comparatifs entre les différentes solutions web..................................... 27
Tableau 10. Dictionnaire des données...................................................................................... 31
Tableau 11. Priorisation de cas d'utilisation............................................................................. 34
Tableau 12. Cas d'utilisation " Saisir nouveau demande "....................................................... 34
Tableau 13. Cas d'utilisation " Saisir logement "..................................................................... 35
Tableau 14. Cas d'utilisation " Saisir filière " .......................................................................... 35
Tableau 15. Cas d'utilisation "Validation demande d'un étudiant" .......................................... 36
Tableau 16. Cas d'utilisation "Renouvèlement"....................................................................... 36
Tableau 17. Cas d'utilisation "Exclure étudiant"...................................................................... 37
Tableau 18. Cas d'utilisation "Annuler demande" ................................................................... 37
Tableau 19. Cas d'utilisation "Consulter l'information d'un étudiant" ..................................... 38
Tableau 20. Cas d'utilisation "Permutation" ............................................................................ 38
IX
LISTE DES ABREVIATIONS
B
BTS : Brevet de Technicien Supérieur
C
CCNA : CISCO Networking Academy
CITEF : Conférence Internationale des Ecoles de Formation d’Ingénieurs et Techniciens
d’Expression Française
CSS : Cascade Style Sheet
CNH : Commission National d’Habilitation
COUM : Centre d’Œuvre Universitaire Malgache
CPU : Central Processing Unit
CUR : Centre Universitaire Régional
D
DASRE : Direction des Affaires Sociales et des Relations avec les Etudiants
DTS : Diplôme de Technicien Supérieur
DEA : Diplôme d’Etudes Approfondies
DUT : Diplôme Universitaire de Technicien
E
ENI : École Nationale d’Informatique
ESPA : École Supérieure Polytechnique d’Antananarivo
G
Go : Gigaoctet
H
HDD : Hard Driver Disk
I
IDE : Integrated Development Environment
INPG : Institut National Polytechnique de Grenoble
IRD : Institut de Recherche pour le Développement
L
LMD : Licence-Master-Doctorat
M
MD : Modèle du Domaine
MESupRES : Ministère de l’Enseignement Supérieur et de la Recherche Scientifique
MVC : Model-Vue-Contrôleur
X
O
OOD : Object Oriented Design
OMT : Object Modeling Technique
OOSE : Object Oriented Software Engineering
P
PC : Personnal Computer
PRESUP : Programme de Renforcement de l’Enseignement Supérieur.
PDO : PHP Data Objets
R
RAM : Radom Access Memory
S
SE : Système d’Exploitation
SQL : Structured Query Language
SI : Système d’Information
SGBD : Système de Gestion de Base de Données
SAS : Service des Aides Sociales
SAE : Service des Aides aux Etudiants
SIUVE : Service des Intendances Universitaires et de la Vie Etudiante
T
TIC : Technologies de l’Information et de la Communication
U
UF : Université de Fianarantsoa
UML : Unified Modeling Language
UPST : Université Paul Sabatier de Toulouse
1
INTRODUCTION GÉNÉRALE
Comme chaque année, l’École Nationale d’Informatique envoie ses étudiants dans les
milieux professionnels pour appliquer tous ceux qu’ils ont appris durant les années passées.
Pendant ces trois mois de stage du 04 novembre 2019 au 31 janvier 2020, j’ai effectué le mien
au sein de SIUVE dans le Service INFORMATIQUE.
Le SIUVE (Service des Intendances Universitaires et de la Vie Etudiante) de l’Université
de Fianarantsoa gère tout ce qui est en rapport avec le service logement de l’UF (Université de
Fianarantsoa), ainsi cela implique la gestion générale de tous les biens et matériel dans ces
logements. Par ailleurs, le SIUVE à des obligations pour améliorer le bien- être de tous au
niveau de la société de l’UF. Dans ce fait, il a aussi une importance capitale dans la sérénité et
la surveillance de la vie entre les personnels et entre les étudiants eux-mêmes.
Dans l’accomplissement de son travail, le SIUVE connait quelque problème qu’il
empêche de mieux organiser ses tâches, cela se voit à plusieurs reprises. Auparavant, pour
enregistrer les informations des étudiants qui adhèrent au logement de l’UF, il le fait manuscrit
et avec des logiciels offices au lieu d’utiliser une application qui répond à leurs besoins.
Le présent mémoire visant la restitution du travail portera sur la « conception et
réalisation d’une application pour la gestion des logements ».
Pour réaliser cette application, nous avons besoin de la méthode de conception, le langage
de programmation, le système de gestion de base de données et l’outil de modélisation.
Le présent travail de recherche est constitué de trois parties dont la première sera
consacrée à la présentation de l’Ecole Nationale d’Informatique, du SIUVE et à la description
du projet suivi de l’analyse et de la conception du projet et enfin, nous parlerons dans la
partie de la réalisation du projet.
2
Partie I : PRÉSENTATION
3
Chapitre 1 : Présentation de l’école nationale d’informatique
(ENI)
1.1. Localisation et contact
L’École Nationale d’Informatique de Fianarantsoa comme sous le sigle ENI est
localisée à Tanambao Fianarantsoa, sa boite postale est le 1487 avec le code postal 301. Son
numéro de téléphone est le 020 75 508 01 et son adresse électronique est eni@univ-fianar.mg
1.2. Missions et historique
L’École Nationale d’Informatique est rattachée administrativement et académiquement
à l’Université de Fianarantsoa.
Cette École Supérieure se positionne dans le système socioéducatif malgache comme
étant le plus puissant vecteur de diffusion et de vulgarisation des connaissances et des
technologies informatiques.
On peut considérer aujourd’hui cette École Supérieure comme la
vitrine et la pépinière des élites informaticiennes malgaches.
L’ENI s’est constituée de façon progressive dans le Centre Universitaire Régional
(CUR) de Fianarantsoa.
De façon formelle, l’ENI fut constituée et créée au sein du CUR par le décret N° 83-
185 du 24 mai 1983, comme étant le seul établissement Universitaire Professionnalisé au
niveau national, destiné à former des techniciens de haut niveau, aptes à répondre aux besoins
et exigences d’informatisation des entreprises, des sociétés et des organismes implantés à
Madagascar.
L’ENI a donc comme missions de former des spécialistes informaticiens compétents et
opérationnels de niveaux différents :
• En leur fournissant des connaissances de base en informatique
• En leur transmettant le savoir-faire requis, à travers la professionnalisation des
formations dispensées
• En les initiant aux activités de recherche
L’implantation de cette École Supérieure de technologie de pointe dans un pays en voie
de développement dans une province à tissu économique et industriel faiblement développé ne
l’a pas empêchée de former des spécialistes informaticiens de bon niveau qui sont recherchés
par les sociétés et les organismes.
La filière de formation d’Analyste – programmeur a été mise en place à l’École en 1983,
et a été gelée par la suite en 1996.
Tandis que la filière de formation d’Ingénieurs a été ouverte à l’École en 1986.
La filière de formation de Techniciens Supérieurs en Maintenance des Systèmes
Informatiques a été mise en place à l’École en 1996 grâce à l’appui matériel et financier de la
Mission Française de Coopération auprès de l’Ambassade de France dans le cadre du
Programme de Renforcement de l’Enseignement Supérieur (PRESUP).
4
Une formation pour l’obtention de la certification CCNA et/ou NETWORK+, appelée
«CISCO Networking Academy» a été créée à l’ENI en 2002-2003 grâce au partenariat avec
SISCO SYSTEM et l’École Supérieure Polytechnique d’Antananarivo (ESPA). Cependant,
cette formation n’a pas duré longtemps.
Une formation doctorale a été ouverte à l’École depuis l’année 2003-2004 grâce à la
coopération académique et scientifique entre l’Université de Fianarantsoa pour le compte de
l’ENI et l’Université Paul Sabatier de Toulouse (UPST). Cette filière avait pour objectif de
former certains étudiants de l’École à la recherche et par la recherche dans les différents
domaines de l’Informatique, et notamment pour préparer la relève des Enseignants –
Chercheurs actuellement en poste.
Pendant l’année universitaire 2007-2008, la formation en vue de l’obtention du diplôme
de Licence professionnelle en Informatique a été mise en place à l’École avec les deux
parcours suivants :
Génie logiciel et Base de données
Administration des systèmes et des réseaux
La mise en place à l’École de ces deux parcours répond au besoin du basculement vers
le système Licence-Master-Doctorat (LMD).
La filière de formation des Techniciens Supérieurs en Maintenance des Systèmes
Informatiques a été gelée en 2008.
En vue de surmonter les difficultés de limitation de l’effectif des étudiants accueillis à
l’École, à cause du manque d’infrastructures, un système de « Formation Hybride » a été mise
en place. Il s’agit d’un système de formation semi-présentielle et à distance.
La formation hybride a été mise en place à partir de 2012 à Fianarantsoa ainsi qu’à
Toliara.
1.3. Organigramme institution de l’ENI
L’ENI constitue ainsi un Établissement de formation supérieure placé sous la tutelle
administrative et académique de l’Université de Fianarantsoa.
Cet organigramme de l’École est inspiré des dispositions du Décret N° 83-185 du 23
mai 1983.
L’ENI est administrée par un Conseil d’École, et dirigée par un Directeur nommé par un
Décret adopté en conseil des Ministres.
Le Collège des Enseignants regroupant tous les Enseignants – Chercheurs de l’École est
chargé de résoudre les problèmes liés à l’organisation pédagogique des enseignements ainsi
qu’à l’élaboration des emplois du temps.
Le Conseil Scientifique propose les orientations pédagogiques et scientifiques de
l’Établissement, en tenant compte notamment de l’évolution du marché de travail et de
l’adéquation des formations dispensées aux besoins des entreprises.
5
Trois Départements de formation caractérisent l’organigramme :
Le département de formation théorique à l’intérieur de l’École ;
Le département de formation pratique pour la coordination et la supervision des stages en
entreprise et des voyages d’études ;
Le département de formation doctorale pour l’organisation de la formation de 3e cycle.
La figure 1 représente l’organigramme actuel de l’ENI.
Figure 1. Organigramme de l’ENI
Sur cet organigramme, l’École placée sous la tutelle académique et administrative de
l’Université de Fianarantsoa, et dirigée par un Directeur élu par les Enseignants – Chercheurs
permanents de l’Établissement et nommée par un décret pris en Conseil des ministres pour un
mandat de 3 ans.
Le Conseil de l’École est l’organe délibérant de l’École.
Le Collège des Enseignants propose et coordonne les programmes d’activités
pédagogiques.
Le Conseil scientifique coordonne les programmes de recherche à mettre en œuvre à
l’École.
Le Secrétariat principal coordonne les activités des services administratifs (Scolarité,
Comptabilité, et Intendance).
Conformément aux textes en vigueur régissant les Établissements malgaches
d’Enseignement Supérieur, qui sont barrés sur le système LMD, les Départements de Formation
6
pédagogique ont été ainsi remplacés par des Mentions et des parcours. Et les chefs des
Départements ont été ainsi remplacés par des responsables des mentions et les responsables des
parcours.
Un administrateur des Réseaux et Systèmes gère le système d’information de l’École et
celui
de l’Université.
1.4. Domaines de spécialisation
Les activités de formation et de recherche organisées à l’ENI portent sur les domaines
suivants :
Génie logiciel et Base de données ;
Administration des Systèmes et Réseaux ;
Informatique générale
Modélisation informatique et mathématique des systèmes complexes.
D’une manière plus générale, les programmes des formations sont basés sur l’informatique
de gestion et sur l’informatique des Systèmes et Réseaux. Et les modules de formation intègrent
aussi bien des éléments d’Informatique fondamentale que des éléments d’Informatique
appliquée.
Le tableau 1 décrit l’organisation du système de formation pédagogique de l’École.
Tableau 1. Organisation du système de formation pédagogique de l’École
Enseignement théorique Enseignement pratique
Enseignement théorique
Travaux dirigés
Travaux pratiques
Étude de cas
Travaux de réalisation
Projets / Projets tutoyés
Voyage d’études
Stages
7
1.5. Architecture des formations pédagogiques
Le recrutement des étudiants à l’ENI se fait uniquement par voie de concours
d’envergure nationale en première année.
Les offres de formation organisées à l’Ecole ont été validées par la Commission
Nationale d’Habilitation (CNH) auprès du Ministères de l’Enseignement Supérieur et de la
Recherche Scientifique selon les dispositions de l’Arrêté N°31.174/2012-MENS en date du 05
Décembre 2012.
Au sein de l’ENI, il existe une seule mention (INFORMATIQUE) et trois parcours :
Génie logiciel et Base de données ;
Administration des Systèmes et Réseaux ;
Informatique générale.
L’architecture des études à trois niveaux conforme au système Licence- Master-
Doctoral (LMD) permet les comparaisons et les équivalences académiques des diplômes au
niveau international.
L = Licence (Bac + 3) = L1, L2, L3 = 6 semestres S1 à S6
M = Master (Bac + 5) = M1, M2 = 4 semestres S7 à S10
Le diplôme de licence est obtenu en 3 années des études après Baccalauréat. Et le
diplôme de Master est obtenu en 2 ans après obtenu du diplôme de LICENCE.
Le MASTER PROFESSIONNEL est un diplôme destiné à la recherche emploi au terme
des études.
Le MASTER RECHERCHE est un diplôme qui remplace l’ancien Diplôme d’Etudes
Approfondies (DEA), et qui permet de s’inscrire directement dans une École Doctorale.au
terme des études.
D = Doctorat (Bac +8)
Le Doctorat est un diplôme qu’on peut obtenir en 3 ans après l’obtention du diplôme de
MASTER RECHERCHE.
Le tableau 2 présente l’architecture des études correspondant au système LMD.
Tableau 2. Architecture des études correspondant au système LMD
8
DTS : Diplôme de Technicien Supérieur
BTS : Brevet de Technicien Supérieur
DUT : Diplôme Universitaire de Technicien
La licence peut avoir une vocation générale ou possessionnelle.
Le master peut avoir une vocation professionnelle ou de recherche.
Le tableau 3 présente liste des formations existantes à l’ENI
Tableau 3. Liste des formations existantes à l’ENI
FORMATION EN
LICENCE PROFESSIONNELLE MASTER
Condition
d’admission
Par voie de concours Formation
Professionnelle : 100 candidats
Formation Généraliste : 150 candidats
Condition d’accès Bac de série C, D ou Technique Être titulaire de licence professionnelle
Durée de formation 3 années 2 années
Diplôme à délivrer
Licence professionnelle en
Informatique
Master professionnel en Informatique
Master Recherche en Informatique
L’accès en première année de MASTER se fait automatiquement pour les étudiants de
l’École qui ont obtenu le diplôme de Licence professionnelle.
Le Master Recherche permet à son titulaire de poursuivre directement des études en
doctorat et de s’inscrire directement dans une Ecole Doctorale.
Les Ecoles Doctorales jouissent d’une autonomie de gestion par rapport aux
Établissements de formation universitaire.
Il convient de signaler que par arrêté ministériel N° 21.626/2012 – MESupRES publié
le 9 Août 2012 par la Commission National d’habilitation (CNH), l’École Doctorale «
Modélisation – Informatique » a été habilitée pour l’Université de Fianarantsoa.
Depuis l’année universitaire 2010-2011, l’ENI s’est mise à organiser des formations
hybrides en informatique dans les différentes Régions (Fianarantsoa, Toliara) en raison de
l’insuffisance de la capacité d’accueil des infrastructures logistiques. En effet, le système de
formation hybride semi - présentielle utilise la visioconférence pour la formation à distance.
9
Bien qu’il n’existe pas encore au niveau international de reconnaissance écrite et
formelle des diplômes délivrés par l’ENI, les étudiants diplômés de l’École sont plutôt bien
accueillis dans les instituts universitaires étrangers (CANADA, Suisse, France…)
1.6. Relations de l’ENI avec les entreprises et les organismes
Les stages effectués chaque année par les étudiants mettent l’Ecole en rapport
permanent avec plus de 300 entreprises et organismes publics, semi-publics et privés, nationaux
et internationaux.
L’Ecole dispose ainsi d’un réseau d’entreprises, de sociétés et d’organismes publics et
privés qui sont des partenaires par l’accueil en stage de ses étudiants, et éventuellement pour le
recrutement après l’obtention des diplômes par ces derniers.
Les compétences que l’Ecole cherche à développer chez ses étudiants sont
l’adaptabilité, le sens de la responsabilité, du travail en équipe, le goût de l’expérimentation et
l’innovation.
En effet, la vocation de l’ENI est de former des techniciens supérieurs de niveau
LICENCE et des ingénieurs de type généraliste de niveau MASTER avec des qualités
scientifiques, techniques et humaines reconnues, capables d’évoluer professionnellement dans
des secteurs d’activité variés intégrant l’informatique.
Les stages en milieu professionnel permettent de favoriser une meilleure adéquation
entre les formations à l’École et les besoins évolutifs du marché de l’emploi.
Les principaux débouchés professionnels des diplômés de l’École concernent les
domaines suivants :
L’informatique de gestion d’entreprise
Les technologies de l’information et de la communication (TIC)
La sécurité informatique des réseaux
L’administration des réseaux et des systèmes
Les services bancaires et financiers, notamment le Mobile Banking
Les télécommunications et la téléphonie mobile
Les Big Data
Le commerce, la vente et l’achat, le Marketing
L’ingénierie informatique appliquée
L’écologie et le développement durable
Parmi les sociétés, entreprises et organismes partenaires de l’École, on peut citer :
ACCENTURE Mauritius, Air Madagascar, Ambre Associates, Airtel, Agence Universitaire de
la Francophonie ( AUF) , B2B, Banque Centrale, BFG-SG, BIANCO, BLUELINE, Bureau
national de gestion des Risques et des catastrophes (BNGRC), CEDII-Fianarantsoa, Data
Consulting, Central Test, Centre National Antiacridien, CNRE, CHU, CNRIT, COLAS,
Direction Générale des Douanes, DLC, DTS/Moov, FID, FTM, GNOSYS, IBONIA,
INGENOSIA, INSTAT, IOGA, JIRAMA, JOUVE, MADADEV, MAEP, MEF, MEN,
MESupRES, MFB, MIC, MNINTER, Min des postes/Télécommunications et du
Développement Numérique, NEOV MAD, Ny Havana, Madagascar National Parks,
10
OMNITEC, ORANGE, OTME, PRACCESS, QMM Fort-Dauphin, SMMC, SNEDADRS
Antsirabe, Sénat, Société d’Exploitation du Port de Toamasina (SEPT), SOFTWELL, Strategy
Consulting, TELMA, VIVETEC, Société LAZAN’I BETSILEO, WWF …
L’organisation de stage en entreprise continue non seulement à renforcer la
professionnalisation des formations dispensées, mais elle continue surtout à accroître de façon
exceptionnelle les opportunités d’embauche pour les diplômés de l’École.
1.7. Partenariat au niveau international
Entre 1996 et 1999, l’ENI avait bénéficié de l’assistance technique et financière de la
Mission Française de Coopération et d’action culturelle dans le cadre du Programme de
Renforcement de l’Enseignement Supérieur (PRESUP) consacré à l’École a notamment porté
sur :
Une dotation en logiciels, micro-ordinateurs, équipements de laboratoire de
maintenance et de matériels didactiques
La réactualisation des programmes de formation assortie du renouvèlement du fonds
de la bibliothèque
L’appui à la formation des formateurs
L’affectation à l’École d’Assistants techniques français
De 2000 à 2004, l’ENI avait fait partie des membres du bureau de la Conférence
Internationale des Ecoles de formation d’Ingénieurs et Technicien d’Expression Française
(CITEF).
Les Enseignants-Chercheurs de l’École participent régulièrement aux activités
organisées dans le cadre du Colloque Africain sur la Recherche en Informatique (CARI).
L’ENI avait également signé un accord de coopération inter-universitaire avec l’Institut
de Recherche en Mathématiques et Informatique Appliquées (IREMIA) de l’Université de la
Réunion, l’Université de Rennes 1, l’INSA de Rennes, l’Institut National Polytechnique de
Grenoble (INPG).
A partir du mois de Juillet 2001, l’ENI avait abrité le Centre de Réseau Opérationnel
(Network Operating Center) du point d’accès à Internet de l’École ainsi que de l’Université de
Fianarantsoa. Grâce à ce projet américain qui a été financé par l’USAID Madagascar, l’ENI de
l’Université de Fianarantsoa avait été dotées d’une ligne spécialisée d’accès permanent au
réseau Internet.
L’ENI avait de même noué des relations de coopération avec l’Institut de Recherche
pour le Développement (IRD).
L’objet du projet de coopération avait porté sur la modélisation environnementale du
Corridor forestier de Fandriana jusqu’à Vondrozo (COFAV). Dans ce cadre, un atelier
scientifique international avait été organisé à l’ENI en Septembre 2008. Cet atelier scientifique
avait eu pour thème de modélisation des paysages.
11
Et dans le cadre du programme scientifique PARRUR, l’IRD avait financé depuis 2010
le projet intitulé « Forêts, Parcs et Pauvreté dans le Sud de Madagascar (FPPSM). Des étudiants
en DEA et des Doctorants issus de l’ENI avaient participé à ce Programme.
Par ailleurs, depuis toujours la même année 2010, l’ENI de Fianarantsoa avait été
sélectionnée pour faire partie des organismes partenaires de l’Université de Savoie dans le cadre
du projet TICEVAL relatif à la certification des compétences en TIC ;
Le projet TICEVAL avait été financé par le Fonds Francophone des Inforoutes pour la
période allant de 2010 à 2012, et il avait eu pour objectif de généraliser la certification des
compétences en Informatique et Internet du type C2i2e et C2imi.
Dans le cadre du projet TICEVAL, une convention de coopération avec l’Université de
Savoie avait été signée par les deux parties concernées. La mise en œuvre de la Convention de
Coopération avait permis d’envoyer des étudiants de l’ENI à Chambéry pour poursuivre des
études supérieures en Informatique.
Enfin et non des moindres, l’ENI avait signé en Septembre 2009 un protocole de
collaboration scientifique avec l’ESIROI – STIM de l’Université de la Réunion.
Comme l’ENI constitue une pépinière incubatrice de technologie de pointe, d’emplois
et d’entreprises, elle peut très bien servir d’instrument efficace pour renforcer la croissance
économique du pays, et pour lutter contre la Pauvreté.
De même que le statut de l’École devrait permettre de renforcer la position
concurrentielle de la Grande Ile sir l’orbite de la modélisation grâce au développement des
nouvelles technologies.
1.8. Débouches professionnels des diplômes
Le chômage des jeunes diplômés universitaires fait partie des maux qui gangrènent
Madagascar. L’environnement socio-politique du pays depuis 2008 jusqu’ à ce jour a fait que
le chômage des diplômés est devenu massif par rapport aux établissements de formation
supérieure existants.
Cependant, les formations proposées par l’École permettent aux diplômés d’être
immédiatement opérationnels sur le marché du travail avec la connaissance d’un métier complet
lié à l’informatique aux TIC.
L’École apporte à ses étudiants un savoir-faire et un savoir-être qui les accompagnent
tout au long de leur vie professionnelle. Elle a une vocation professionnalisant.
Les diplômés en LICENCE et en MASTER issus de l’ENI peuvent faire carrière dans
différents secteurs.
L’Ecole bénéficie aujourd’hui de 34 années d’expériences pédagogiques et de
reconnaissance
auprès des sociétés, des entreprises et des organismes. C’est une École Supérieure de référence
en matière informatique.
12
Par conséquent, en raison de fait que l’équipe pédagogique de l’École est expérimentée,
les enseignants – chercheurs et les autres formateurs de l’École sont dotés d’une grande
expérience dans l’enseignement et dans le milieu professionnel.
L’École est fière de collaborer de façon régulière avec un nombre croissant
d’entreprises, de sociétés et d’organismes publics et privés à travers les stages des étudiants.
Les formations dispensées à l’École sont ainsi orientées vers le besoin et les attentes des
entreprises et des sociétés.
L’École fournit à ses étudiants de niveau LICENCE et MASTER des compétences
professionnelles et métiers indispensables pour les intégrer sur le marché du travail.
L’École s’efforce de proposer à ses étudiants une double compétence à la fois technologique
et managériale combinant l’informatique de gestion ainsi que l’administration des réseaux et
systèmes.
D’une manière générale, les diplômés de l’ENI n’éprouvent pas de difficultés
particulières à être recrutées au terme de leurs études. Cependant, l’ENI recommande à ses
diplômés de promouvoir l’entrepreneuriat en TIC et de créer des cybercafés, des SSII ou des
bureaux d’études.
Tableau 4 montre les débouchés professionnels éventuels des diplômés
Tableau 4. Débouchés professionnels éventuels des diplômés
LICENCE MASTER
▪ Analyste
▪ Programmeur
▪ Administrateur de site web/de portail web
▪ Assistant Informatique et internet
▪ Chef de projet web ou multimédia
▪ Développeur Informatique ou multimédia
▪ Intégrateur web ou web designer
▪ Hot liner/Hébergeur Internet
▪ Agent de référencement
▪ Technicien/Supérieur de help desk sur
Informatique
▪ Responsable de sécurité web
▪ Administrateur de réseau
▪ Administrateur de cybercafé
▪ Administrateur de cybercafé
▪ Administrateur de réseau et système
▪ Architecture de système d’information
▪ Développeur d’application /web
/Java/Python/ IOS /Android
▪ Ingénieur réseau
▪ Webmaster /web designer
▪ Concepteur Réalisateur d’applications
▪ Directeur du système de formation
▪ Directeur de projet informatique
▪ Chef de projet informatique
▪ Responsable de sécurité informatique
▪ Consultant fonctionnel ou freelance
13
1.9. Ressources humaines
Les responsables administratifs et pédagogiques de l’ENI sont les suivants :
Directeur de l’École : Professeur Titulaire RAMAMONJISOA Andritiana Bertin Olivier
Responsable de Mention : RABETAFIKA Louis Haja, Assistant d’Enseignement
Supérieur et de la Recherche
Responsable de Parcours « Génie Logiciel et Base de Données » : RALAIVAO
Christian, Assistant d’enseignement supérieur et recherche
Responsable de Parcours « Administration Systèmes et Réseaux » : SIAKA, Assistant
d’Enseignement Supérieur et de la Recherche
Responsable de Parcours « Informatique Générale » : GESAZAFY Gilante, Assistant
d’Enseignement et de Recherche
Nombre d’Enseignants permanents : 13
Nombre d’Enseignants vacataires : 10
Personnel administratif : 23
14
Chapitre 2 : Présentation du Service de l’Intendance
Universitaires et de la Vie Etudiante (SIUVE)
2.1. Localisation
Le Service des Intendances Universitaires et de la Vie Etudiante de l’Université de
Fianarantsoa se trouve au sein de Campus Universitaire d’Andrainjato, sa boite postale est le
1264 avec le code postal 301.
2.2. Historique
Au début, le Service des Intendances Universitaires et de la Vie Etudiante de l’Université de
Fianarantsoa ont changé et évolué au fil du temps.
Du temps CUR (Centre Universitaire Régionale) le Service des Intendances Universitaires et
de la Vie Etudiante de l’Université de Fianarantsoa était COUM (Centre d’Œuvre
Universitaire Malgache).
Au temps de l’Université de Fianarantsoa, le service COUM a changé :
D’abord SAS (Service des Aides Sociale) ;
Puis SAE (Service des Aides aux Étudiants) ;
Enfin, SIUVE (Service des Intendances Universitaires et de la Vie Etudiante)
2.3. Objectif général
L’Université de Fianarantsoa a mis en place un service pour gérer les situations vis-à-
vis des logements et de la vie des étudiants en général.
SIUVE est un service qui est chargé des logements de l’Université de Fianarantsoa et de la vie
des étudiants. C’est le service qu’on doit consulter si on a besoin de faire une demande de
logements au sein de l’Université.
Le SIUVE est rattaché administrativement à la présidence de l’Université de Fianarantsoa.
Plus généralement à la vice-présidence.
15
2.4. Organigramme du Service des Intendance Universitaires
La figure 2 représente l’organigramme du SIUVE
Figure 2. Organigramme du SIUVE
16
Chapitre 3 : Description du projet
A travers ce chapitre dédié à la description du projet, nous passerons en revue,
de façon succincte, ses objectifs, les besoins des utilisateurs auxquels il cherche à répondre,
aussi bien que les moyens humains et matériels nécessaires à sa mise en œuvre et les résultats
qui sont à attendre de ce projet.
3.1. Formulation
Nous avons effectué notre stage au sein du SIUVE Fianarantsoa pendant 3 mois sous
l’encadrement du DASRE. Notre projet se consacre à la mise en place de l’application web qui
gère facilement tous les logements au campus universitaire de Fianarantsoa. Il s’agit de recevoir
les demandes des étudiants, de les inscrire dans un logement, de faire le renouvèlement, ainsi
les exclure aussi.
3.2. Objectif et besoin de l’utilisateur
Notre objectif principal est de concevoir et réaliser d’une application web pour la gestion
des logements.
Dans cet objectif, l’utilisateur a besoin d’une application :
Recevoir les demandes des étudiants et des stocker dans la base de données
Inscrire facilement dans un logement libre
Suivi de logement libre
Rechercher les étudiants avec les informations précises en un seul clic.
3.3. Moyens nécessaires pour la réalisation du projet
3.3.1. Moyens humains
D’abord pour l’aboutissement complet de ce projet, on a besoin :
➢ d’un concepteur : le stagiaire ;
➢ d’un chef de projet : l’encadreur professionnel ;
➢ d’un développeur : le stagiaire.
17
3.3.2. Moyens matériels
Les configurations d’un ordinateur qu’on a utilisée doit être assez puissantes pour
supporter les moyens logiciels nécessaires dans le projet.
Le tableau 5 représente la configuration de la machine qu’on a utilisée pendant la
réalisation de ce projet.
Tableau 5. Configuration de la machine qu’on a utilisée.
3.3.3. Moyens logiciels
➢ Un logiciel de modélisation : Visual Paradigm for UM 12.0
➢ Un logiciel éditeur de développement : Sublim Text 3.0
➢ Un système de gestion de base de données : WampServer 3.1.9
3.4. Résultats attendus
L’application doit être capable de :
Gérer tous les logements au campus universitaire de Fianarantsoa.
Recevoir les demandes des étudiants avec des conditions requises.
Faire l’inscription des étudiants au logement
Faire du renouvèlement.
Faire la recherche précise et rapide.
Vérifier les informations des étudiants irréguliers pour les exclure.
Voire les archives des étudiants exclus dans un logement entre deux dates.
Faire la permutation des étudiants.
18
3.5. Planning de stage
Pour représenter le planning prévisionnel, nous avons choisi le diagramme de GANTT.
Ce diagramme va permettre de planifier le projet et de rendre plus simple le suivi de
son avancement. Il va servir à atteindre les objectifs fixés dans l'arbre des objectifs. Ce type
de présentation permet représenter les liens qu’il y a entre chaque tâche et d’apercevoir
l’avancement par ordre chronologique de ces tâches. Les figures 3 et 4 présentent le planning
prévisionnel du projet.
Figure 3. Planning prévisionnel (a)
Figure 4. Planning prévisionnel (b)
19
Partie II : ANALYSE ET CONCEPTION
20
Chapitre 4 : Analyse préalable
Ce chapitre consacré à l’analyse préalable nous permettra de porter un regard critique sur
l’existant et de présenter la conception avant-projet. Le projet que nous soumettons ici ne
pourrait être conçu dans les normes requises sans passer par une analyse préalable, ce qui fera
l’objet du premier chapitre de cette seconde partie. Cette analyse préalable sera suivie d’une
analyse conceptuelle que nous verrons dans un autre chapitre.
4.1. Analyse et étude de l’existant
Le SIUVE est un service au niveau de l’Université de Fianarantsoa qui joue le premier
rôle sur la gestion de logement des étudiants et la surveillance de la vie des étudiants en général.
SIUVE permet à l’Université une organisation de logement pour que les étudiants les n’aient
pas de difficulté.
Chaque année universitaire, SIUVE demande à tous les étudiants logés de faire leur
renouvèlement, permet de bien surveiller celui qui l’occupe, et pour savoir le nombre des
étudiants qui sont logés.
Au sein de l’Université de Fianarantsoa, SIUVE surveille :
6 bâtiments ;
17 préfabriqués
Actuellement, 6 bâtiments et 17 préfabriqués sont disponibles pour loger 1 800 étudiants alors
que l’université a plus de 20 000 étudiants. Ce qui fait que les infrastructures ne sont pas
suffisantes. L’attribution de logement voit un problème majeur, vu la présence des associations
régionales. Ce qui permet au service SIUVE de prendre une autre mesure d’attribution pour ne
pas faire faute si non la guerre. Il applique des cahiers des associations régionaux pour inscrire
tous les natifs de ces régions et pour valoriser l’administration.
4.1.1. Organisation actuelle
Actuellement, pour gérer les logements de l’Université de Fianarantsoa, SIUVE n’a
aucune application pour cette tâche. Par contre, il utilise : des cahiers, Microsoft Office Word,
Microsoft Office Excel comme une base de données pour enregistrer les informations des
étudiants pour chaque association régionale. Cela, prendre beaucoup du temps pour effectuer.
Dans le SIUVE, seul, le personnel responsable de la gestion de logement a le droit
d’ajouter et de modifier les informations des étudiants dans le cahier d’enregistrement.
4.1.2. Inventaire des moyens matériels et logiciels
Désormais, le SIUVE au niveau matériel possède
Un ordinateur pour le premier responsable de la surveillance de
logement ;
Une imprimante
Et au niveau logiciel, on utilise :
Microsoft Office Word et Excel
21
4.2. Critique et diagnostic de l’existant
Après l’interview des postes, on a constaté que la gestion de logement s’effectue
manuellement. Le SIUVE utilisait des cahiers comme une base de données. Or, cela créer des
difficultés et prend beaucoup du temps en cas de la recherche d’un étudiant à partir de son nom,
pour la recherche de l’étudiant dans un logement.
4.3. Conception avant – projet
4.3.1. Proposition des solutions
Face à ces problèmes, nous avons donc proposé les deux solutions suivantes :
Solution 1 : Concevoir une application de gestion de logement sur mesure avec
les fonctionnalités citées dans le besoin de l’utilisateur.
Solution 2 : Acheter un logiciel de gestion de logement comme Immobilier
Loyer disponible sur le site http://www.Immobilierloyer.com/
Tableau 6 illustre la comparaison entre les deux solutions.
Tableau 6. Comparaison entre les deux solutions.
En tenant compte des critiques et des besoins des utilisateurs de l’application, la
solution à retenir est la solution 1.
Pour réaliser cette application, nous avons besoins d’une méthode de conception, d’un
SGBD, d’un langage de programmation et d’un IDE.
SOLUTIONS AVANTAGES INCONVÉNIENTS
Application sur mesure, donc adaptée au
secteur, coût minimum
Temps de conception important
Prêt à l’emploi ; Pas besoin de temps
Fonctionnalité manquante ou inutile,
coût très important (299 € TTC)
22
4.3.2. Justification des choix
Faire un choix équivaut à réaliser une comparaison entre plusieurs faits ou
choses en pesant le pour et le contre afin de trouver celui qui correspond le mieux aux
besoins. Le choix des outils utilisés durant le projet doit être basé sur des raisons
spécifiques.
4.3.2.1. Méthode de conception
Adopter une méthode de conception est primordial pour la mise en œuvre d’un projet
de développement de logiciel. Pour cela, plusieurs méthodes existent. Une étude comparative
de deux méthodes les plus utilisés doit être faite pour la conception des systèmes
d’information afin d’avoir un aperçu sur le choix de la méthode à adopte. Le tableau 7 illustre
la comparaison entre la méthode MERISE et Processus Unifié
Tableau 7. Comparaison entre la méthode MERISE et Processus Unifié
MERISE Processus Unifié
AVANTAGES
✓ Encadre largement les
projets de conception
✓ Indépendance des données
par rapport aux traitements
✓ Niveaux d’abstraction bien
définis avec des règles de
passage
✓ Cycle de vie itératif et
incrémental
✓ Méthode générique
✓ Méthode orientée objet
✓ Plus adaptée à la notation
UML
✓ Méthode itérative et
Incrémentale
✓ Séquentiel
INCONVENIENTS
✓ Pour un bon résultat les
étapes doivent être suivies
sans en manquer un.
✓ Séparation des cycles
d’abstraction pas très bien
précise
✓ Difficulté dans la conception de
la base de données
La méthode choisie à l’issue de la comparaison est la méthode Processus Unifié pour sa
compatibilité avec la notation UML.
Présentation d’UP
Le processus unifié est un processus de développement logiciel : il regroupe les
activités à mener pour transformer les besoins d’un utilisateur en système logiciel.
UP (Unified Process) est une méthode générique de développement de logiciel.
Générique signifie qu'il est nécessaire d'adapter UP au contexte du projet, de l'équipe, du
domaine et de l'organisation. C'est, entre parenthèses, plus ou moins vrai pour toute
méthode, qu'elle se définisse elle-même comme générique ou pas. Il existe donc un certain
nombre de méthodes issues de l’UP.
23
Il est basé sur des composants. Il utilise UML et est basé sur les cas d’utilisation,
l’architecture et le développement incrémental. Pour mettre en pratique ces idées il faut
recourir à un processus multi-facettes prenant en considération les cycles, les phases, les
enchaînements d’activités, la réduction des risques, le contrôle qualité, la gestion de projet et la
gestion de configuration. Le processus unifié a mis en place un cadre général (framework)
intégrant chacune de ces facettes.
Le processus unifié répète un certain nombre de fois une série de cycles. Tout cycle se
conclut par la livraison d’une version du produit aux clients et s’articule en 4 phases :
création, élaboration, construction et transition, chacune d’entre elles se subdivisant à son tour
en itérations.
Le processus unifié est un processus de développement logiciel : il regroupe les
activités à mener pour transformer les besoins d’un utilisateur en système logiciel.
Caractéristiques essentielles du processus unifié :
- Le processus unifié est à base de composants,
- Le processus unifié utilise le langage UML (ensemble d'outils et de diagramme),
- Le processus unifié est piloté par les cas d’utilisation,
- Centré sur l’architecture,
- Itératif et incrémental.
Chaque cycle se traduit par une nouvelle version du système. Ce produit se compose d’un corps
de code source réparti sur plusieurs composants pouvant être compilés et exécutés et
s’accompagne de manuels et de produits associés. Pour mener efficacement le cycle, les
développeurs ont besoin de construire toutes les représentations du produit logiciel :
Modèle des cas d’utilisation : Expose les cas d’utilisation et leurs relations avec les
utilisateurs
Modèle d’analyse : Détaille les cas d’utilisation et procède à une première répartition
du comportement du système entre divers objets
Modèle de conception : Définit la structure statique du système sous forme de sous-système,
classes et interfaces ; Définit les cas d’utilisation réalisés sous forme de collaborations entre les
sous-systèmes les classes et les interfaces
Modèle d’implémentation : Intègre les composants (code source) et la correspondance entre
les classes et les composants
Modèle de déploiement : Définit les nœuds physiques des ordinateurs et l’affectation de ces
composants sur ces nœuds.
Modèle de test : Décrit les cas de test vérifiant les cas d’utilisation
Représentation de l’architecture : Description de l’architecture
Tous ces modèles sont liés. Ensemble, ils représentent le système comme un tout. Les
éléments de chacun des modèles présentent des dépendances de traçabilité ; ce qui facilite la
compréhension et les modifications ultérieures.
24
Pour conclure, UP est basé sur des composants. Il utilise UML et est basé sur les cas
d’utilisation, l’architecture et le développement incrémental. Pour mettre en pratique ces
idées, il faut recourir à un processus multi-facettes prenant en considération les cycles,
les phases, les enchaînements d’activités, la réduction des risques, le contrôle qualité, la gestion
de projet et la gestion de configuration. Le processus unifié a mis en place un cadre général
(Framework) intégrant chacune de ces facettes.
La figure 5 représente le schéma d'ensemble de la méthode UP.
Figure 5. Schéma d'ensemble de la méthode UP
Présentation de la notation UML
La notation UML est la façon de représenter les différents diagrammes nécessaires lors
de la conception avec la méthode UP.
UML (Unified Modeling Language) est né de la fusion des 3 méthodes qui ont
le plus influencé la modélisation objet au milieu des années 90 : OMT (Object
Modeling Technique - James Rumbaugh), OOD (Object Oriented Design -
GradyBooch) et OOSE (Object Oriented Software Engineering - Ivar Jacobson).
Il permet d'exprimer et d'élaborer des modèles objet, indépendamment de tout
langage de programmation. Il sert de support à une analyse basée sur les concepts
objet. Sa notation graphique permet d'exprimer visuellement une solution objet, ce
qui facilite la comparaison et l'évaluation de solutions.
UML cadre l'analyse objet, il permet non seulement de représenter et de manipuler les
concepts objet, il sous-entend une démarche d'analyse qui permet de concevoir une solution
objet de manière itérative, grâce aux diagrammes, qui supportent l'abstraction.
UML est une représentation graphique, c'est une perspective du modèle.
25
Caractéristiques de la notation UML
UML : un standard incontournable
- Résultat d'un large consensus (industriels, météorologistes...).
- Fruit d'un travail d'experts reconnus.
- Issu du terrain.
- Riche (il couvre toutes les phases d'un cycle de développement).
- Ouvert (il est indépendant du domaine d'application et des langages d'implémentation).
UML évolue mais reste stable
- L'OMG RTF (nombreux acteurs industriels) centralise et normalise-les évolutions
d'UML au niveau international.
- Les groupes d'utilisateurs UML favorisent le partage des expériences.
- De version en version, UML gagne en maturité et précision, tout en restant stable.
- UML inclut des mécanismes standards d'auto-extension.
- La description du méta modèle d'UML est standardisée (OMG-MOF).
UML est un support de communication
- Sa notation graphique permet d'exprimer visuellement une solution objet.
- L'aspect formel de sa notation limite les ambiguïtés et les incompréhensions.
- Son aspect visuel facilite la comparaison et l'évaluation de solutions.
- Son indépendance (par rapport aux langages d'implémentation, domaine d'application,
processus...) en font un langage universel.
Les points forts d'UML
UML est un langage formel et normalisé
- Gain de précision
- Gage de stabilité
- Encourage l'utilisation d'outils
UML est un support de communication performant
- Il cadre l'analyse.
- Il facilite la compréhension de représentations abstraites complexes.
- Son caractère polyvalent et sa souplesse en font un langage universel.
Les points faibles d'UML
- La mise en pratique d'UML nécessite un apprentissage et passe par une période
d’adaptation.
- Le processus (non couvert par UML) est une autre clé de la réussite d'un projet.
26
4.3.2.2. Système de gestion de base de données (SGBD)
Un SGBD permet d’inscrire, de retrouver, de modifier, de trier, de transformer ou
d’imprimer les informations de la base de données. Il permet d’effectuer des comptes rendus
des informations enregistrées et comporte des mécanismes pour assurer la cohérence des
informations, éviter des pertes d’informations dues à des pannes, assurer la confidentialité et
permettre son utilisation par d’autres logiciels. Il existe plusieurs SGDB, mais les plus utilisés
sont MySQL et PostgreSQL, une comparaison de ces deux est présentée dans le tableau 8.
Tableau 8. Comparaison entre MySQL et PostgreSQL
SGBD Avantages Inconvénients
• MySQL est plus rapide que
PostgreSQL
• MySQL a une base
d’utilisateurs bien plus grande que
PostgreSQL
• MySQL a plus d’API avec
d’autres langages, et est supporté
par un plus grand nombre de
programmes que PostgreSQL
• Le support des transactions de
MySQL n’est pas aussi bien
testé que celui de PostgreSQL.
• Les modifications qui
s’effectuent sur plusieurs tables
sont bien plus difficiles à faire
avec MySQL
• L’utilisation standard de
PostgreSQL est parfois plus
proche de la norme ANSI SQL.
• Supporte les standards SQL92
avec peu de restriction
• L’optimiser PostgreSQL fait des
optimisations que l’optimiser de
MySQL ne peut faire
Les tables sont obligatoirement
transactionnelles. Les commandes
INSERT, UPDATE et DELETE
sont plus lentes.
D’après la comparaison des SGBD présentés précédemment, le choix s’est porté sur
MySQL à cause des avantages qu’il présente.
Présentation de MySQL
MySQL est un système de gestion de bases de données relationnelles. Le SQL dans
“MySQL” signifie “Structured Query Language” : le langage standard pour les traitements de
bases de données. MySQL est Open Source. Open Source (Standard Ouvert) signifie qu’il est
possible à chacun d’utiliser et de modifier le logiciel. Tout le monde peut le télécharger sur
Internet et l’utiliser sans payer aucun droit. Ce qui rend MySQL très intéressant pour
les Webmasters est le nombre d’API (application program interface) dont il dispose. On peut
en effet l’intégrer dans des applications écrites en : C, C++, Eiffel, Java, Perl,
PHP, Python, Ruby.
27
4.3.2.3. Langage de programmation et Framework
Il existe des nombreux langages de développement qu’on peut utiliser. On va
comparer de la manière la plus objective possible deux langages et technologies de
programmation pour la réalisation d’une application web avant d’établir notre choix.
Le tableau 9 nous montre la comparaison entre le langage PHP, Python et Ruby
Tableau 9. Tableaux comparatifs entre les différentes solutions web
Position
Avantages
Il est gratuit.
Il existe une grande variété
de projets open source.
Il ne nécessite pas beaucoup
de code pour un résultat
l’hébergement de PHP est
supporté presque partout.
Beaucoup de documentation
Il est gratuit.
Il n’y a pas beaucoup de
faille de sécurité.
Grande stabilité du code
à travers le temps.
Le langage est soutenu
par Google
Il est gratuit.
Le langage est littéraire
et simple à comprendre
La structure MVC est
très bien intégrée de
base
Inconvénient
Il n’a pas de structure
prédéfinie, il faut donc
ajouter des cadres
d’application (Framework)
pour atteindre des niveaux
comme MVC.
Les fonctions sont
biodégradables
Il faut passer par des
cadres d’application
pour développés du web
(Django, Grok, Pylons,
TurboGears,
web2py,…)
Il est extrêmement lent
par rapport aux autres
En nous basant sur ces différents critères, nous avons opté sur le langage PHP.
Présentation de PHP (Hypertext Preprocessor)
Parmi les nombreux langages de programmation, on a adopté le PHP pour le
développement. Il s’agit plus précisément du PHP5, étant donné que l’ancienne version
de ce dernier était longtemps considérée comme un langage de script pour page
personnelle. Le PHP5 entre dans la cour des grands et il supporte maintenant les concepts
de la programmation-objet ce qui l’ouvre à des réalisations complexes structurées et
performantes.
À l’origine, le PHP est un langage purement destiné au web,
contrairement à Java et Dot Net dont les codes sont d’abord
précompilés puis s’exécutent sur une machine virtuelle ; le PHP est
interprété par le serveur sur lequel il s’exécute [8]
.De plus, il parait que le PHP est bien plus performant que JAVA. Bertrand Bigay, PDG de
Cityvox, explique que le Monde et TF1 ont adopté le PHP. Comparant les applications
de contenu « ils ont calculé qu’une page s’affiche douze fois plus vite en PHP ».
28
PHP s’adapte très rapidement aux technologies émergentes et se voit de plus en plus utilisée
dans des développements web dynamiques professionnels et Open Source. Ses caractéristiques
principales sont citées ci-dessous:
Un très bon compromis entre fiabilité et rapidité d’exécution ;
Une plateforme avant tout spécialisée pour le développement de sites web
dynamiques de toute taille ;
Une plateforme pratique et complète adaptée aux applications en ligne de
commande
Une syntaxe complète, souple et permissive, qui ne rebute pas les développeurs
débutants et ne limite pas les utilisateurs confirmés ;
Un langage procédural et un langage orienté objet ;
Un outil très complet, doté de nombreuses fonctionnalités, extensions et
bibliothèques.
Présentation de PDO
PDO (PHP Data Objets) est un petit Framework PHP et servant de l’interface entre
le PHP et la base de données, extension définissant l'interface pour accéder à une base de
données depuis PHP. Elle est orientée objet, la classe s’appelant
PDO. Elle permet aussi de récupérer en une seule reprise tous les
enregistrements de la table sous forme d’une variable PHP de type
tableau à deux dimensions, ce qui réduit visiblement le temps de
traitement.
Présentation de CSS
Le principe des feuilles de style consiste à regrouper dans un même document des
caractéristiques de mise en forme associées à des groupes d'éléments.
Les feuilles de style permettent notamment :
D’obtenir une présentation homogène sur tout un site en faisant appel sur toutes
les pages à une même définition de style ;
De permettre le changement de l'aspect d'un site complet entier
par la seule modification de quelques lignes ;
Une plus grande lisibilité du HTML, car les styles sont définis à part ;
Des chargements de page plus rapides, pour les mêmes raisons
que précédemment ;Un positionnement plus rigoureux de l’élément.
29
Présentation du jQuery
JQuery est une bibliothèque JavaScript qui permet aux développeurs web d'ajouter des
fonctionnalités supplémentaires à leurs sites Web. Il est open source et fournit
gratuitement sous la licence MIT. Au cours des dernières années, jQuery est devenu la
bibliothèque JavaScript le plus populaire utilisée dans le développement web.
Pour mettre en œuvre jQuery, un développeur web a simplement besoin de référencer
le fichier JavaScript jQuery dans le code HTML d'une page Web. Certains sites Web hébergent
leur propre copie locale de jQuery, tandis que d'autres font référence à la bibliothèque tout
simplement hébergée par Google ou le serveur jQuery. Par exemple, une page Web
peut charger la bibliothèque jQuery en utilisant la ligne suivante dans la section <head>
du HTML :
<script type = "text / javascript" src = "//
ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"> </ script>
Une fois la bibliothèque jQuery est chargée, une page Web peut appeler une
fonction jQuery soutenu par la bibliothèque. Les exemples communs incluent
texte modifiant des données de formulaire de traitement, éléments sur une
page mobile, et en effectuant des animations. JQuery peut également travailler
avec le code et les scripts Ajax langues, telles que PHP et ASP pour accéder
aux données à partir d'une base de données. Depuis jQuery fonctionne sur
le côté client (plutôt que le serveur web), il peut mettre à jour les informations sur une page
Web en temps réel, sans avoir à recharger la page. Un exemple courant est "auto
complète", dans lequel un formulaire de recherche affiche automatiquement. Recherches les
plus courantes que vous tapez votre requête. En fait, voici comment TechTerms.com
fournit des suggestions de recherche lorsque vous tapez dans la boîte de recherche.
Outre sa licence gratuite, l'autre raison principale jQuery a gagné une telle popularité est sa
compatibilité cross-browser. Étant donné que chaque navigateur affiche HTML, CSS et
JavaScript différemment, il peut être difficile pour un développeur web pour faire un site web
semble le même dans tous les navigateurs. Au lieu d'avoir à écrire des fonctions
personnalisées pour chaque navigateur, un développeur web peut utiliser une fonction jQuery
unique qui fonctionnera dans Chrome, Safari, Firefox et Internet Explorer. Ce support multi
navigateur a conduit de nombreux développeurs de passer de JavaScript standard pour jQuery,
car il simplifie considérablement le processus de codage.
Vous pouvez en savoir plus sur jQuery et télécharger la dernière bibliothèque sur le
site officiel de jQuery http://jquery.com/.
30
Présentation de Sublime Text
Sublime Text est un éditeur de texte générique codé en C++ et Python, disponible sur
Windows et Linux. Le logiciel a été conçu tout d’abord comme une extension pour
Vim, riche en fonctionnalités. Depuis la version 3.0, l’éditeur prend en charge plus de
44 langages de programmation majeurs, tandis que des plugins sont souvent disponibles pour
des langages plus rares[10]
.
Sublime Text intègre la plupart des fonctionnalités de base d’un éditeur de texte, dont
la coloration syntaxique personnalisable avec divers thème de couleur, de l’auto complétion,
un système de plugins… L’éditeur propose cependant des fonctions plus avancées, dont :
Minimap : prévisualisation de tout le fichier dans une barre latérale
Sélection et édition dans plusieurs sections de code en parallèle
Marque-page au sein même des fichiers
Sauvegarde automatique
Recherche et remplacement par expression régulière
Support des macros et de plugins en Python
Personnalisation des raccourcis clavier
31
Chapitre 5 : ANALYSE CONCEPTUELLE
La conception permet l'étude des spécifications fonctionnelles exprimées
antérieurement afin de savoir ce que le système va réaliser réellement en termes de métier.
Elle préconise la représentation du système dans un modèle statique et un modèle dynamique.
5.1. Dictionnaire des données
Le dictionnaire de données permet de recenser toutes les informations
nécessaires à la création de la base de données relationnelle. Il précise le libellé
de la donnée, le nom du champ, le type et la dimension de la donnée. Le tableau 10
représente le dictionnaire des données de notre projet.
Tableau 10. Dictionnaire des données
CHAMPS DESCRIPTION FORMAT TAILLE
bloc_dispo Nombre de la place disponible dans une porte N 2
bloc_num Numéro du bloc N 2
bloc_place Nombre de place maximum d’une porte N 2
date_debut Date début du renouvèlement AN 10
date_exclusion Date d’exclusion AN 10
date_fin Date fin de renouvèlement AN 10
date_inscription Date d’inscription AN 10
date_permutation Date de permutation AN 10
lab_filiere Nom de filière A 50
nom Nom de l’étudiant A 50
nom_user Nom de l’administrateur A 50
num_inscription Numéro d’inscription de l’étudiant AN 10
password Mot de passe de l’administrateur AN 30
porte Identifiant de la porte A 2
prenom Prénom de l’étudiant A 50
profil Photo de profil d’un étudiant AN 50
situation_univ Observation de l’étudiant A 10
sexe Sexe d’étudiant A 10
username Login d’administrateur AN 30
A : Alphabétique, AN : Alphanumérique, N : Numérique
32
5.2. Règle des gestions
La spécification des règles de gestion, menée parallèlement avec le recueil des données,
permet la mise en place des relations entre objets. Dans la mise en place de ces liens, les règles
suivantes sont explicitées :
RG1 : Seul l’administrateur peut avoir l’accès dans l’application.
RG2 : Seul l’administrateur peut avoir le droit d’ajouter un étudiant dans le logement.
RG3 : Seul l’administrateur peut avoir le droit d’exclure un étudiant dans le logement.
RG4 : Un étudiant peut-être inscrit dans un seul logement.
RG5 : Un étudiant doit renouveler son logement chaque année.
RG6 : Tous les triplant ne peuvent pas avoir un logement.
RG7 : Un étudiant ne peut pas occuper un logement plus de 7ans d’année
pédagogique.
5.3. Représentation et spécifique des besoins
La modélisation des traitements considère la partie dynamique du système : la
traduction en actions des règles de gestion de l’entreprise. Pour cela, la notation UML va
être utilisée et certains diagrammes utiles seront associés à cette modélisation. Ce sont
les diagrammes de cas d’utilisation.
5.3.1. Diagrammes des cas d’utilisations
Le diagramme de cas d’utilisation a pour but de donner une vision globale sur les
interfaces de future application. C’est le premier diagramme UML constitué d’un ensemble
d’acteurs qui agit sur des cas d’utilisation et qui décrit sous la forme d’actions et des réactions,
le comportement d’un système du point de vue utilisateur. Pour effectuer ce genre de
diagramme, il faut commencer par définir et identifier l'acteur du système. La figure 6
représente le formalisme d'un cas d'utilisation
Figure 6. Formalisme d'un cas d'utilisation
Le diagramme de cas d'utilisation donne une vision globale des communications
acteurs / domaine. Il met en jeu les concepts suivants :
Acteur : Participant externe qui interagit avec le système, il représente les cas les
plus importants du système en cours d'utilisation.
33
Cas d’utilisation : Il modélise une interaction entre le système informatique à
développer et un utilisateur ou acteur interagissant avec le système. Plus précisément, un
cas d’utilisation décrit une séquence d’actions réalisées par le système qui produit un
résultat observable pour un acteur.
Relation entre cas d’utilisation : Il y a la relation utilisée (include) qui est
employée quand deux cas d’utilisation ont en commun une même fonctionnalité et que
l’on souhaite factoriser celle-ci en créant un cas intermédiaire, afin de marquer les
différences d’utilisation.
Et il y a la relation étend (extend) qui est utilisé quand un cas est globalement
similaire à un autre, tout en effectuant un peu plus de travail ou un travail plus
spécifique.
Cette notion permet d’identifier des cas particuliers dès le début ou lorsque l’attitude
face à un utilisateur spécifique du système doit être spécialisée ou adaptée.
Dans le cas de notre système, notre acteur est l’administrateur. La figure 7 représente
de diagramme de cas d’utilisation globale de notre projet.
Figure 7. Diagramme de cas d'utilisation globale
34
5.3.2. Priorisation des cas d’utilisation
Prioriser les cas d’utilisation et classer l’exécution de cas d’utilisation par ordre
chronologique.
Le tableau 11 montre la priorisation de cas d’utilisation.
Tableau 11. Priorisation de cas d'utilisation
Ordre de priorisation Cas d’utilisation
Haute S’authentifier
Haute Saisir nouveau demande
Haute Saisir logement
Haute Saisir filière
Haute Ajout étudiant dans un logement libre
Haute Renouvèlement
Moyen Exclure de l’étudiant
Faible Annulation demande d’un étudiant
Moyen Consulter information d’un étudiant
Faible Permutation
Description textuelle des cas d’utilisation
Tableau 12. Cas d'utilisation " Saisir nouveau demande "
Sommaire d’identification
Titre : Saisir demande
Résumé : Ce cas d’utilisation permet de créer de nouvelles demandes.
Acteur : Administrateur
Pré – condition Page principale de l’application.
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique sur le menu Demande.
2. Le système affiche la fenêtre de demande.
3. L’utilisateur remplie tous les informations et
valider les informations
4. Le système affiche le panel de confirmation.
5. Le système affiche la liste des demandes.
Scénarii alternatifs
3.1. Tous les champs obligatoires ne sont pas
remplis.
3.1.1. Le système informe l’utilisateur.
3.1.2. Reprise de l’enchaînement du
scénario nominal au point 3.
Scénarii d’exception 3.2. L’utilisateur annule l’opération.
Post – condition Liste des demandes faites par l’utilisateur.
35
Tableau 13. Cas d'utilisation " Saisir logement "
Sommaire d’identification
Titre : Saisir logement
Résumé : Ce cas d’utilisation permet d’ajouter le logement.
Acteur : Administrateur
Pré – condition Page principale de l’application
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique sur le menu Logement.
2. Le système affiche la fenêtre de logement.
3. L’utilisateur remplie tous les informations et
valider les informations
4. Le système affiche le panel de confirmation.
5. Le système affiche la liste des logements.
Scénarii alternatifs
3.1. Tous les champs obligatoires ne sont pas
remplis.
3.1.1. Le système informe l’utilisateur.
3.1.2. Reprise de l’enchaînement du
scénario nominal au point 3.
Scénarii d’exception 3.2. L’utilisateur annule l’opération.
Post – condition Liste des logements faire par l’utilisateur.
Tableau 14. Cas d'utilisation " Saisir filière "
Sommaire d’identification
Titre : Saisir filière
Résumé : Ce cas d’utilisation permet d’ajouter la filière.
Acteur : Administrateur
Pré – condition Page principale de l’application
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique sur le menu filière.
2. Le système affiche la fenêtre de filière.
3. L’utilisateur remplie le champ et valider la
saisie
4. Le système affiche le panel de confirmation.
5. Le système affiche la liste des filières.
Scénarii alternatifs
3.1. Tous les champs obligatoires ne sont pas
remplis.
3.1.1. Le système informe l’utilisateur.
3.1.2. Reprise de l’enchaînement du
scénario nominal au point 3.
Scénarii d’exception 3.2. L’utilisateur annule l’opération.
Post – condition Liste des logements faire par l’utilisateur.
36
Tableau 15. Cas d'utilisation "Validation demande d'un étudiant"
Sommaire d’identification
Titre : Validation demande
Résumé : Ce cas d’utilisation permet d’ajouter un étudiant dans un bloc
libre.
Acteur : Administrateur
Pré – condition Page principale de l’application
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique sur le menu demande.
2. Le système affiche la fenêtre de demande.
3. L’utilisateur clique le bouton valider sur la liste
4. Le système affiche le panel d’inscription.
5. L’utilisateur choisir le bloc libre et clique le
bouton inscrire.
6. Le système affiche le message de confirmation
7. Le système redirige à la liste des étudiants
inscrit dans les logements
Scénarii alternatifs
5.1. Le champ obligatoire ne sont pas
remplis.
5.1.1. Le système informe l’utilisateur.
5.1.2. Reprise de l’enchaînement du
scénario nominal au point 5.
Scénarii d’exception 5.2. L’utilisateur annule l’opération.
Post – condition Liste des étudiants inscrits dans les logements.
Tableau 16. Cas d'utilisation "Renouvèlement"
Sommaire d’identification
Titre : Renouvèlement
Résumé : Ce cas d’utilisation permet de renouveler le bloc d’un étudiant.
Acteur : Administrateur
Pré – condition Page principale de l’application
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique l’icône renouveler d’un
étudiant n’a pas encore renouvelé son bloc.
2. Le système affiche la fenêtre de renouvèlement.
3. L’utilisateur choisir la date de renouvèlement et
clique le bouton renouvelé pour faire la mise à
jour l’information d’un étudiant
4. Le système affiche le message de confirmation
5. Le système redirige à la liste des étudiants
inscrit dans les logements
Scénarii alternatifs
5.1. Le champ obligatoire ne sont pas
remplis.
5.1.1. Le système informe l’utilisateur.
5.1.2. Reprise de l’enchaînement du
scénario nominal au point 5.
Scénarii d’exception 5.2. L’utilisateur annule l’opération.
Post – condition Liste des étudiants inscrits dans les logements.
37
Tableau 17. Cas d'utilisation "Exclure étudiant"
Sommaire d’identification
Titre : Exclure étudiant
Résumé : Ce cas d’utilisation permet d’exclure un étudiant dans un
bloc.
Acteur : Administrateur
Pré – condition Page principale de l’application
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique l’icône exclure d’un
étudiant qui n’a pas le droit de loger.
2. Le système affiche le message de confirmation
3. L’utilisateur confirme l’exclusion.
4. Le système valide l’opération.
5. L’affichage des étudiants inscrits sont mise à
jour
Scénarii alternatifs
1.1. L’utilisateur s’est trompé d’étudiant.
1.1.1. Reprise de l’enchaînement du
scénario nominal au point 1.
4.1. L’utilisateur ne confirme pas l’exclusion.
4.1.1. Le système retire le panel de
Confirmation.
4.1.2. Reprise de l’enchaînement du
scénario nominal au point 1.
Scénarii d’exception 2.1. L’utilisateur annule l’opération.
Post – condition Liste des étudiants inscrits dans les logements.
Tableau 18. Cas d'utilisation "Annuler demande"
Sommaire d’identification
Titre : Annuler demande
Résumé : Ce cas d’utilisation permet d’annuler la demande d’un étudiant.
Acteur : Administrateur
Pré – condition Page principale de l’application
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique sur le menu demande.
2. Le système affiche la fenêtre de demande.
3. L’utilisateur clique le bouton annuler sur la liste
4. Le système affiche le message de confirmation
5. L’utilisateur confirme l’annulation.
6. Le système valide l’opération.
7. Le système reste à la liste des demandes.
Scénarii alternatifs
3.1. L’utilisateur s’est trompé d’étudiant.
3.1.1. Reprise de l’enchaînement du
scénario nominal au point 1.
5.1. L’utilisateur annule l’annulation.
5.1.1. Reprise de l’enchainement du
scénario nominal au point 2.
Scénarii d’exception 5.2. L’utilisateur clique le bouton valider.
Post – condition Liste des demandes faites par l’utilisateur.
38
Tableau 19. Cas d'utilisation "Consulter l'information d'un étudiant"
Sommaire d’identification
Titre : Consulter l'information d'un étudiant
Résumé : Ce cas d’utilisation permet de consulter l’information d’un
étudiant.
Acteur : Administrateur
Pré – condition Page principale de l’application
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique l’icône info d’un étudiant
dans la liste des étudiants inscrits dans les
logements.
2. Le système affiche la fenêtre d’information
d’un étudiant.
Scénarii d’exception
1.1. L’utilisateur sélectionne un autre étudiant.
1.2. L’utilisateur ferme la fenêtre.
Post – condition Liste des étudiants inscrits dans les logements.
Tableau 20. Cas d'utilisation "Permutation"
Sommaire d’identification
Titre : Permutation
Résumé : Ce cas d’utilisation permet de permuter le bloc entre deux
étudiants.
Acteur : Administrateur
Pré – condition Page principale de l’application
Description des scénarii
Scénarii nominaux
1. L’utilisateur clique le menu Permuter.
2. Le système affiche la fenêtre de permutation.
3. L’utilisateur choix les deux étudiants a besoin
de permutation et valide l’opération pour faire
la mise à jour l’information d’un étudiant.
4. Le système affiche le message de confirmation.
5. L’affichage des étudiants ont permuté.
Scénarii alternatifs
3.1. L’utilisateur choix les deux étudiants de
même bloc.
3.1.1. Affiche le message d’erreur et
retour au scénario nominal au point 3.
Scénarii d’exception 3.2. L’utilisateur annule l’opération.
Post – condition Liste des étudiants faits la permutation.
39
Figure 9. DSS de cas d'utilisation "Nouvelle demande"
5.3.3. Diagramme des séquences système pour chaque cas d’utilisation
Le diagramme de séquence système est une représentation graphique de la
chronologie des échanges de messages de l’acteur avec le système. Il met en jeu les éléments
suivants :
➢ Acteurs
➢ Objets (instances)
➢ Messages (cas d'utilisation, appels d’opération)
Pour chaque cas d’utilisation, nous avons un diagramme de séquence système
correspondant.
La figure 8 représente le diagramme de séquence système de cas d’utilisation « Authentification »
Figure 8. DSS de cas d'utilisation "Authentification"
La figure 9 représente le diagramme de séquence système de cas d’utilisation « Nouvelle demande »
40
La figure 10 représente le diagramme de séquence système de cas d’utilisation « Saisir logement »
Figure 10. DSS de cas d'utilisation "Saisir logement"
La figure 11 représente le diagramme de séquence système de cas d’utilisation « Saisir
filière »
Figure 11. DSS de cas d'utilisation "Saisir filière"
41
La figure 12 représente le diagramme de séquence système de cas d’utilisation « Valide demande »
Figure 12. DSS de cas d'utilisation "Valide demande"
La figure 13 représente le diagramme de séquence système de cas d’utilisation « Renouvèlement »
Figure 13. DSS de cas d'utilisation "Renouvèlement"
42
La figure 14 représente le diagramme de séquence système de cas d’utilisation « Exclure étudiant »
Figure 14. DSS de cas d'utilisation "Exclure étudiant"
La figure 15 représente le diagramme de séquence système de cas d’utilisation « Annuler demande »
Figure 15. DSS de cas d'utilisation "Annuler demande"
43
La figure 16 représente le diagramme de séquence système de cas d’utilisation « Permutation »
Figure 16. DSS de cas d'utilisation "Permutation "
5.4. Spécification des besoins techniques
Les besoins techniques décrivent toutes les contraintes techniques, ergonomiques et
esthétiques auxquelles est soumis le système pour sa réalisation et pour son bon
fonctionnement. Et en ce qui concerne notre application, nous avons dégagé les besoins
suivants :
 La disponibilité: l’application doit être disponible pour être utilisé par n’importe
quel utilisateur.
 La fiabilité: les données fournies par l’application doivent être fiables.
 La convivialité de l’interface graphique : l’application doit fournir une interface
conviviale et simple pour tout type d’utilisateur car elle présente le premier contact
de l’utilisateur avec l’application et par le biais de celle-ci on découvrira ses
fonctionnalités.
 Une solution ouverte et évoluée: l’application peut être améliorée par l’ajout
d’autres modules pour garantir la souplesse, l’évolutivité et l’ouverture de la
solution.
 La possibilité de retourner au menu principal de l’application à partir de n’importe
quelle fenêtre de celle-ci.
44
5.5. Modélisation du domaine
La modélisation du domaine est une visualisation des concepts d’un domaine du monde
réel représentée par un diagramme de classe simplifié. Elle met en évidence les propriétés
importantes. Les objets de ce modèle doivent être des objets métiers. La figure 17 représente la
modèle du domaine.
Figure 17. Modèle de domaine
45
Chapitre 6 : Conception détaillée (UML)
Après avoir achevé la phase d'analyse et spécifications, il nous faudra à présent
entamer la phase de conception. Cette étape s'avère primordiale pour le déroulement du projet
et a pour but de détailler les tâches à entreprendre ainsi que de préparer le terrain pour l'étape
de réalisation.
6.1. Architecture du système
Afin de structurer et fractionner le code du projet, nous n’avons estimé que le MVC
(Model-Vue-Contrôleur) est adéquat comme motif de conception (ou design pattern). En
utilisant MVC, on sépare l’application en trois couches principales :
La couche « Model »
La couche Model représente la partie de l’application qui exécute la logique
métier. Cela signifie qu’elle est responsable de récupérer les données, de les convertir selon
les concepts chargés de sens pour votre application, tels que le traitement, la validation,
l’association et beaucoup d’autres taches concernant la manipulation des données.
A première vue, l’objet Model peut être vu comme la première couche d’interaction
avec n’importe quelle base de données que vous pourriez utiliser pour votre application. Mais
plus globalement, il fait partie des concepts majeurs autour desquels vous allez exécuter
votre application.
Dans le cas d’un réseau social la couche Model s’occupe des tâches comme de sauvegarder
des données, de sauvegarder des associations d’amis, d’enregistrer et de récupérer les photos
des utilisateurs, de trouver des suggestions de nouveaux amis, etc.… Tandis que les
objets Model seront Ami, User, Commentaire, Photo.
La couche « Vue »
La Vue retourne une présentation des données venant du model. Étant séparée par
les Objets Model, elle est responsable de l’utilisation des informations dont elle dispose pour
produire une interface de présentation de votre application.
Par exemple, de la même manière que la couche Model retourne un ensemble de données, la
Vue utilise ces données pour fournir une page HTML les contenant. Ou un résultat
XML formaté pour que d’autres l’utilisent.
La couche Vue n’est pas seulement limitée au HTML ou à la représentation en texte
de données. Elle peut aussi être utilisée pour offrir une grande variété de formats en fonction
de vos besoins, comme les vidéos, la musique, les documents et tous autres formats auquel
vous pouvez penser.
La couche « Controller »
La couche Controller gère les requêtes des utilisateurs. Elle est responsable de
retourner une réponse avec l’aide mutuelle des couches Model et Vue.
46
Les Controller peuvent être imaginés comme des managers qui ont pour mission que toutes
les ressources souhaitées pour accomplir une tâche sont déléguées aux travailleurs corrects.
Il attend des requêtes des clients, vérifie leur validité selon l’authentification et les
règles d’autorisation, délègue les données récupérées et traitées par le Model, et
sélectionne les types de présentation correcte que le client accepte, pour finalement
déléguer le processus d’affichage à la couche Vue. La figure 18 illustre l’architecture du
modèle MVC.
Figure 18. Schéma de l’architecture du modèle MVC
6.2. Diagramme de séquence de conception pour chaque cas
d’utilisation
Avec le nombre de cas d’utilisation, mettre tous les diagrammes de séquence de
conception prendrait trop de place. Nous allons donc représenter quelques diagrammes
Figure 19. DSC de cas d'utilisation "Nouvelle demande"
47
seulement. La figure 19 représente le diagramme de séquence de conception du cas d’utilisation
« Nouvelle demande »
La figure 20 représente le diagramme de séquence de conception du cas d’utilisation « Saisir
logement »
Figure 20. DSC de cas d'utilisation "Saisir logement"
La figure 21 représente le diagramme de séquence de conception du cas d’utilisation « Saisir
filière »
Figure 21. DSC de cas d'utilisation "Saisir filière"
48
La figure 22 représente le diagramme de séquence de conception de cas d’utilisation « Valide
demande »
Figure 22. DSC de cas d'utilisation "Valide demande"
La figure 23 représente le diagramme de séquence de conception de cas d’utilisation
« Renouvèlement »
Figure 23. DSC de cas d'utilisation "Renouvèlement"
49
La figure 24 représente le diagramme de séquence de conception de cas d’utilisation
« Exclure d’un étudiant »
Figure 24. DSC de cas d'utilisation "Exclure d'étudiant"
La figure 25 représente le diagramme de séquence de conception de cas d’utilisation
« Permutation »
Figure 25. DSC de cas d'utilisation "Permutation"
50
6.3. Diagramme de classe de conception pour chaque cas d’utilisation
Dans cette partie, nous allons établir quelques diagrammes de classe de conception. La figure
26 nous montre le diagramme de classe de conception du cas d’utilisation « Saisir nouvelle
demande »
Figure 26. DCC de cas d'utilisation "Saisir nouvelle demande"
La figure 27 nous montre le diagramme de classe de conception du cas d’utilisation « Saisir
logement »
Figure 27. DCC de cas d'utilisation "Saisir logement"
La figure 28 nous montre le diagramme de classe de conception du cas d’utilisation « Valide
de la demande »
Figure 28. DCC de cas d'utilisation "Valide de la demande"
51
6.4. Diagramme de classe de conception global
La figure 29 présente le diagramme de classe de conception globale.
Figure 29. Diagramme de classe de conception globale du projet
6.5. Diagramme de paquetages
Un package est un conteneur logique permettant de regrouper et d'organiser les
éléments dans le modèle UML.
Un paquetage permet de regrouper sous une même appellation un ensemble d’élément de
modélisation UML tels que :
- Des classes, des composants, des nœuds, des collaborations, des cas
d’utilisation,…
- Des diagrammes de classes, de collaboration de séquence, de cas
d’utilisation,…
Le diagramme de packages permet de décomposer le système en catégories ou parties
plus facilement observables, appelés « packages ». Cela permet également d’indiquer les
acteurs qui interviennent dans chacun des packages. Celui de notre système se présente dans la
figure 30.
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf

Contenu connexe

Similaire à PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf

Mémoire lolcats
Mémoire lolcatsMémoire lolcats
Mémoire lolcats
Hugo Clery
 
rapport_stage_issame
rapport_stage_issamerapport_stage_issame
rapport_stage_issame
AMAL Issame
 
TFE. Conception et réalisation d'une application web mobile touristique. Marg...
TFE. Conception et réalisation d'une application web mobile touristique. Marg...TFE. Conception et réalisation d'une application web mobile touristique. Marg...
TFE. Conception et réalisation d'une application web mobile touristique. Marg...
Jonathan Margrève
 
Vf dossier de candidature moi 2012 2013
Vf dossier de candidature moi 2012 2013Vf dossier de candidature moi 2012 2013
Vf dossier de candidature moi 2012 2013
Master MOI
 

Similaire à PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf (20)

Le web sémantique pour mieux anticiper le futur
Le web sémantique pour mieux anticiper le futurLe web sémantique pour mieux anticiper le futur
Le web sémantique pour mieux anticiper le futur
 
Rapport de fin d'etude
Rapport  de fin d'etudeRapport  de fin d'etude
Rapport de fin d'etude
 
Mémoire lolcats
Mémoire lolcatsMémoire lolcats
Mémoire lolcats
 
Community manager et rédacteur web : convergence ou concurrence ?
Community manager et rédacteur web : convergence ou concurrence ?Community manager et rédacteur web : convergence ou concurrence ?
Community manager et rédacteur web : convergence ou concurrence ?
 
ROBOT à base d'Android - Rapport PFE
ROBOT à base d'Android - Rapport PFEROBOT à base d'Android - Rapport PFE
ROBOT à base d'Android - Rapport PFE
 
Table of contents copy
Table of contents   copyTable of contents   copy
Table of contents copy
 
rapport_stage_issame
rapport_stage_issamerapport_stage_issame
rapport_stage_issame
 
TFE. Conception et réalisation d'une application web mobile touristique. Marg...
TFE. Conception et réalisation d'une application web mobile touristique. Marg...TFE. Conception et réalisation d'une application web mobile touristique. Marg...
TFE. Conception et réalisation d'une application web mobile touristique. Marg...
 
Logo iphone
Logo iphoneLogo iphone
Logo iphone
 
Visio.nt
Visio.ntVisio.nt
Visio.nt
 
Eric pignon dessin_assiste_ordinateur_paysage
Eric pignon dessin_assiste_ordinateur_paysageEric pignon dessin_assiste_ordinateur_paysage
Eric pignon dessin_assiste_ordinateur_paysage
 
Mise en place de ftp au sufop
Mise en place de ftp au sufopMise en place de ftp au sufop
Mise en place de ftp au sufop
 
Étude et mise en place d'un serveur FTP au sufop
Étude et mise en place d'un serveur FTP au sufopÉtude et mise en place d'un serveur FTP au sufop
Étude et mise en place d'un serveur FTP au sufop
 
Vf dossier de candidature moi 2012 2013
Vf dossier de candidature moi 2012 2013Vf dossier de candidature moi 2012 2013
Vf dossier de candidature moi 2012 2013
 
Rapport de stage de fin d'etude l3 angelito & hasina
Rapport de stage de fin d'etude l3 angelito & hasinaRapport de stage de fin d'etude l3 angelito & hasina
Rapport de stage de fin d'etude l3 angelito & hasina
 
Rapport de stage de fin d'etude l3 angelito & hasina
Rapport de stage de fin d'etude l3 angelito & hasinaRapport de stage de fin d'etude l3 angelito & hasina
Rapport de stage de fin d'etude l3 angelito & hasina
 
Interconnectés : Tourisme et internet
Interconnectés : Tourisme et internetInterconnectés : Tourisme et internet
Interconnectés : Tourisme et internet
 
eQ Services PFE
eQ Services PFEeQ Services PFE
eQ Services PFE
 
BAYE_O_FALL-SAIDOU_MBODJI-LabUT.pdf
BAYE_O_FALL-SAIDOU_MBODJI-LabUT.pdfBAYE_O_FALL-SAIDOU_MBODJI-LabUT.pdf
BAYE_O_FALL-SAIDOU_MBODJI-LabUT.pdf
 
Mise en place d’une application mobile de géolocalisation
Mise en place d’une application mobile de géolocalisationMise en place d’une application mobile de géolocalisation
Mise en place d’une application mobile de géolocalisation
 

PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf

  • 1. Présenté le 09 mars 2020 Par Monsieur PÉPIN LISQUEUR Claudio Membres du Jury : Président : Monsieur RAFAMANTANANTSOA Fontaine, Professeur Examinateur : Monsieur SIAKA, Assistant d’Enseignement Supérieur et de Recherche - Monsieur RAKOTOASIMBAHOAKA Cyprien Robert, Maître des Conférences - Monsieur RAKOTONOMENJANAHARY Parfait, chef de service du SIUVE UNIVERSITE DE FIANARANTSOA ECOLE NATIONALE D’INFORMATIQUE MEMOIRE DE FIN D’ETUDES POUR L’OBTENTION DU DIPLÔME DE LICENCE PROFESSIONNELLE EN INFORMATIQUE Parcours : Informatique générale Intitulé Année Universitaire : 2018 - 2019 Rapporteurs :
  • 2. I CURRICULUM VITAE PEPIN LISQUEUR Claudio Célibataire, 25 ans Cité « U » N 04 Andrainjato FIANARANTSOA 301 (+261) 32 67 897 46 / 34 38 650 96 lisqueur1309@gmail.com FORMATION ET DIPLÔMES 2019 : Obtention du Diplôme d’Étude de Langue Française (DELF) niveau B1. 2018 – 2019 : Troisième année de la formation en Licence professionnelle en informatique 2013 – 2014 : Deuxième année de la formation en Licence professionnelle en informatique 2012 – 2013 : Première année de la formation en Licence professionnelle en informatique 2011 – 2012 : Terminale D au Lycée Laurent Botokeky Toliara, obtention du diplôme Baccalauréat série D avec mention Bien STAGES ET EXPÉRIENCES PROFESSIONNELLES 2019 – 2020 : Stage pratique au sein de la SIUVE Université de Fianarantsoa Thème : Conception et réalisation d’une application de gestion des logements du SIUVE Outils et langage utilisé : SulimeText, CSS, PHP, MySQL, UML Durée : 03 mois (04 novembre 2019 au 31 janvier 2020) 2018 – 2019 : Stage pratique au sein de la DRB Atsimo Andrefana Thème : Conception et réalisation d’une application suivie Outils et langage utilisé : PHP MySQL, CSS Durée : 03 mois Bureautiques : Microsoft Office (Word, Excel, PowerPoint, Publisher…) Système d’exploitation : Windows (7, 8, 10) et Linux (Ubuntu, Debian) Langage de programmation : C, C++, Visual Basic, Java, C#, VB NET Programmation web : DHTML, XHTML, XML, PHP, ASP, JSP, ASP.NET, ASP.NET MVC Méthode et langage de conception : Merise, Merise 2, UML SGBD: MS Access, MySQL, PostgreSQL, Oracle, SQL Server, SQLite Outils de conception: Visual Paradigm, Win’Design, Astah Community Framework: JSF, Code Igniter, Symfony, Laravel Développement d’application mobile : Androïd Script : CSS, Javascript, VB script, Ajax Outils de développement : NetBeans, Eclipse, Visual Studio, JDeveloper
  • 3. II CONNAISSANCE LINGUISTIQUE Grille d’évaluation : 1 : Médiocre 2 : Moyen 3 : Excellent 4 : Très excellent Ecrit Parlé Lecture Français 4 3 3 Anglais 2 2 2 DIVERS Sports : Football, Pratique d’art martial Kung Fu Loisirs : Écoute la musique Qualités : Sociable, Dynamique, Sens du travail en équipe
  • 4. III SOMMAIRE GÉNÉRAL CURRICULUM VITAE .............................................................................................................I SOMMAIRE GÉNÉRAL......................................................................................................... III REMERCIEMENTS ................................................................................................................. V LISTE DES FUGURES ...........................................................................................................VI LISTE DES TABLEAUX..................................................................................................... VIII LISTE DES ABREVIATIONS................................................................................................IX INTRODUCTION GÉNÉRALE................................................................................................ 1 PARTIE I : PRÉSENTATION................................................................................................... 2 CHAPITRE 1 : PRESENTATION DE L’ECOLE NATIONALE D’INFORMATIQUE (ENI) ..................... 3 1.1. Localisation et contact............................................................................................. 3 1.2. Missions et historique.............................................................................................. 3 1.3. Organigramme institution de l’ENI......................................................................... 4 1.4. Domaines de spécialisation ..................................................................................... 6 1.5. Architecture des formations pédagogiques ............................................................. 7 1.6. Relations de l’ENI avec les entreprises et les organismes ...................................... 9 1.7. Partenariat au niveau international........................................................................ 10 1.8. Débouches professionnels des diplômes ............................................................... 11 1.9. Ressources humaines............................................................................................. 13 CHAPITRE 2 : PRESENTATION DU SERVICE DE L’INTENDANCE UNIVERSITAIRES ET DE LA VIE ETUDIANTE (SIUVE)............................................................................................................. 14 2.1. Localisation ........................................................................................................... 14 2.2. Historique.............................................................................................................. 14 2.3. Objectif général ..................................................................................................... 14 2.4. Organigramme du Service des Intendance Universitaires .................................... 15 CHAPITRE 3 : DESCRIPTION DU PROJET .................................................................................. 16 3.1. Formulation ........................................................................................................... 16 3.2. Objectif et besoin de l’utilisateur .......................................................................... 16 3.3. Moyens nécessaires pour la réalisation du projet.................................................. 16 3.4. Résultats attendus.................................................................................................. 17 3.5. Planning de stage................................................................................................... 18 PARTIE II : ANALYSE ET CONCEPTION .......................................................................... 19 CHAPITRE 4 : ANALYSE PREALABLE ...................................................................................... 20 4.1. Analyse et étude de l’existant................................................................................ 20 4.2. Critique et diagnostic de l’existant........................................................................ 21 4.3. Conception avant – projet...................................................................................... 21 CHAPITRE 5 : ANALYSE CONCEPTUELLE...................................................................... 31 5.1. Dictionnaire des données....................................................................................... 31 5.2. Règle des gestions ................................................................................................. 32 5.3. Représentation et spécifique des besoins .............................................................. 32 5.4. Spécification des besoins techniques .................................................................... 43 5.5. Modélisation du domaine ...................................................................................... 44
  • 5. IV CHAPITRE 6 : CONCEPTION DETAILLEE (UML)...................................................................... 45 6.1. Architecture du système ........................................................................................ 45 6.2. Diagramme de séquence de conception pour chaque cas d’utilisation ................. 46 6.3. Diagramme de classe de conception pour chaque cas d’utilisation ...................... 50 6.4. Diagramme de classe de conception global .......................................................... 51 6.5. Diagramme de paquetages..................................................................................... 51 6.6. Diagramme de déploiement................................................................................... 52 PARTIE III : RÉALISATION ................................................................................................. 53 CHAPITRE 7 : MISE EN PLACE DE L’ENVIRONNEMENT DE DEVELOPPEMENT........................... 54 7.1. Installation et configuration des outils .................................................................. 54 7.2. Architecture de l’application................................................................................. 59 CHAPITRE 8 : DEVELOPPEMENT DE L’APPLICATION ............................................................... 60 8.1. Création de la base de données................................................................................ 60 8.2. Codage d’application ............................................................................................... 62 8.3. Présentation de l’application.................................................................................... 63 CONCLUSION GÉNÉRALE.................................................................................................. 69 REFERENCE BIBLIOGRAPHIE ...........................................................................................XI REFERENCE WEBOGRAPHIQUE ......................................................................................XII GLOSSAIRE......................................................................................................................... XIII TABLE DES MATIÈRES ....................................................................................................XIV RÉSUME...............................................................................................................................XVI ABSTRACT..........................................................................................................................XVI
  • 6. V REMERCIEMENTS Avant toute chose, nos sincères remerciements s’adressent à Dieu tout puissant de nous avoir la force, la santé et le courage qu’il nous a fourni tout au long de nos années d’études et qui nous a conduits à la concrétisation de ce présent mémoire. L’aboutissement de ce travail a vu la contribution de plusieurs personnes. Nous tenons à exprimer nos plus vives reconnaissances à tous ceux qui ont pris part à l’aboutissement de notre stage de mémoire à travers ces quelques lignes :  Professeur RAFAMANTANANTSOA Fontaine, Président de l’Université de Fianarantsoa qui a consenti à notre intégration au sein de l’Université de Fianarantsoa ;  Professeur RAMAMONJISOA Bertin Olivier Andriantiana, Directeur de l’École Nationale d’Informatique qui a sans cesse trouvé un moyen pour améliorer la formation des étudiants de l’ENI ;  Docteur RAKOTOASIMBAHOAKA Cyprien Robert, qui est mon encadreur pédagogique et aussi mon professeur, pour les attentions qu’il a fournis afin d’offrir le plus d’éventuel aide possible ;  Monsieur RAKOTONOMENJANAHARY Parfait, chef de service SIUVE, qui est mon encadreur professionnel qui m’a consacré son temps et prodigué son aide et ses différentes recommandations dans l’aboutissement de ce mémoire ;  Le corps professoral et administratif de l’ENI, pour avoir partagé les connaissances et conseils tout au long de ces trois années d’études ;  Tous les personnels du service SIUVE pour leur précieuse aide et leur collaboration ;  Un immense remerciement également à toute notre famille, nos proches ainsi que nos amis de nous avoir toujours soutenu et encouragé tout au long de notre période de stage et la réalisation de ce mémoire. À toutes les personnes qui ont contribué de près ou de loin à la concrétisation de ce travail, je vous remercie. Nos sincères gratitudes s’adressent également aux membres du jury pour leurs critiques et propositions dans le but d’améliorer notre travail.
  • 7. VI LISTE DES FUGURES Figure 1. Organigramme de l’ENI ............................................................................................. 5 Figure 2. Organigramme du SIUVE ........................................................................................ 15 Figure 3. Planning prévisionnel (a).......................................................................................... 18 Figure 4. Planning prévisionnel (b).......................................................................................... 18 Figure 5. Schéma d'ensemble de la méthode UP ..................................................................... 24 Figure 6. Formalisme d'un cas d'utilisation.............................................................................. 32 Figure 7. Diagramme de cas d'utilisation globale .................................................................... 33 Figure 8. DSS de cas d'utilisation "Authentification".............................................................. 39 Figure 9. DSS de cas d'utilisation "Nouvelle demande" .......................................................... 39 Figure 10. DSS de cas d'utilisation "Saisir logement" ............................................................. 40 Figure 11. DSS de cas d'utilisation "Saisir filière"................................................................... 40 Figure 12. DSS de cas d'utilisation "Valide demande" ............................................................ 41 Figure 13. DSS de cas d'utilisation "Renouvèlement"............................................................. 41 Figure 14. DSS de cas d'utilisation "Exclure étudiant"............................................................ 42 Figure 15. DSS de cas d'utilisation "Annuler demande".......................................................... 42 Figure 16. DSS de cas d'utilisation "Permutation ".................................................................. 43 Figure 17. Modèle de domaine................................................................................................. 44 Figure 18. Schéma de l’architecture du modèle MVC............................................................. 46 Figure 19. DSC de cas d'utilisation "Nouvelle demande"........................................................ 46 Figure 20. DSC de cas d'utilisation "Saisir logement"............................................................. 47 Figure 21. DSC de cas d'utilisation "Saisir filière" .................................................................. 47 Figure 22. DSC de cas d'utilisation "Valide demande"............................................................ 48 Figure 23. DSC de cas d'utilisation "Renouvèlement"............................................................. 48 Figure 24. DSC de cas d'utilisation "Exclure d'étudiant"......................................................... 49 Figure 25. DSC de cas d'utilisation "Permutation" .................................................................. 49 Figure 26. DCC de cas d'utilisation "Saisir nouvelle demande".............................................. 50 Figure 27. DCC de cas d'utilisation "Saisir logement" ............................................................ 50 Figure 28. DCC de cas d'utilisation "Valide de la demande"................................................... 50 Figure 29. Diagramme de classe de conception globale du projet........................................... 51 Figure 30. Diagramme des paquetages .................................................................................... 52 Figure 31. Diagramme de déploiement du projet..................................................................... 52 Figure 32. Installation du PHP sous Windows......................................................................... 54
  • 8. VII Figure 33. Début d’installation WampServer .......................................................................... 56 Figure 34. WampServer est prêt à installer.............................................................................. 56 Figure 35. Choix de dossier de destination .............................................................................. 57 Figure 36. Progression d’installation de WampServer............................................................. 57 Figure 37. Menu de lancement des services WampServer....................................................... 58 Figure 38. Page d’accueil WampServer................................................................................... 59 Figure 39. Architecture de l’application .................................................................................. 59 Figure 40. Création de la table "Logement "............................................................................ 60 Figure 41. Création de la table "Etudiant" ............................................................................... 60 Figure 42. Création de la table "Filière"................................................................................... 61 Figure 43. Code Controller "login.php"................................................................................... 62 Figure 44. Code Vue "login.php"............................................................................................. 62 Figure 45. Interface d’authentification de l’application........................................................... 63 Figure 46. Page contient la liste des étudiants occupe les logements ...................................... 64 Figure 47. Fenêtre de la demande ............................................................................................ 64 Figure 48. Fenêtre d’inscription dans un logement.................................................................. 65 Figure 49. Fenêtre de téléchargement photo d’un étudiant...................................................... 65 Figure 50. Fenêtre d'inscription avec photo de profil............................................................... 66 Figure 51. Inscription terminé.................................................................................................. 66 Figure 52. Fenêtre de renouvèlement....................................................................................... 67 Figure 53. Fenêtre de permutation ........................................................................................... 67 Figure 54. Liste des étudiants ont exclus dans les logements .................................................. 68
  • 9. VIII LISTE DES TABLEAUX Tableau 1. Organisation du système de formation pédagogique de l’École .............................. 6 Tableau 2. Architecture des études correspondant au système LMD ........................................ 7 Tableau 3. Liste des formations existantes à l’ENI.................................................................... 8 Tableau 4. Débouchés professionnels éventuels des diplômés................................................ 12 Tableau 5. Configuration de la machine qu’on a utilisée......................................................... 17 Tableau 6. Comparaison entre les deux solutions.................................................................... 21 Tableau 7. Comparaison entre la méthode MERISE et Processus Unifié ............................... 22 Tableau 8. Comparaison entre MySQL et PostgreSQL ........................................................... 26 Tableau 9. Tableaux comparatifs entre les différentes solutions web..................................... 27 Tableau 10. Dictionnaire des données...................................................................................... 31 Tableau 11. Priorisation de cas d'utilisation............................................................................. 34 Tableau 12. Cas d'utilisation " Saisir nouveau demande "....................................................... 34 Tableau 13. Cas d'utilisation " Saisir logement "..................................................................... 35 Tableau 14. Cas d'utilisation " Saisir filière " .......................................................................... 35 Tableau 15. Cas d'utilisation "Validation demande d'un étudiant" .......................................... 36 Tableau 16. Cas d'utilisation "Renouvèlement"....................................................................... 36 Tableau 17. Cas d'utilisation "Exclure étudiant"...................................................................... 37 Tableau 18. Cas d'utilisation "Annuler demande" ................................................................... 37 Tableau 19. Cas d'utilisation "Consulter l'information d'un étudiant" ..................................... 38 Tableau 20. Cas d'utilisation "Permutation" ............................................................................ 38
  • 10. IX LISTE DES ABREVIATIONS B BTS : Brevet de Technicien Supérieur C CCNA : CISCO Networking Academy CITEF : Conférence Internationale des Ecoles de Formation d’Ingénieurs et Techniciens d’Expression Française CSS : Cascade Style Sheet CNH : Commission National d’Habilitation COUM : Centre d’Œuvre Universitaire Malgache CPU : Central Processing Unit CUR : Centre Universitaire Régional D DASRE : Direction des Affaires Sociales et des Relations avec les Etudiants DTS : Diplôme de Technicien Supérieur DEA : Diplôme d’Etudes Approfondies DUT : Diplôme Universitaire de Technicien E ENI : École Nationale d’Informatique ESPA : École Supérieure Polytechnique d’Antananarivo G Go : Gigaoctet H HDD : Hard Driver Disk I IDE : Integrated Development Environment INPG : Institut National Polytechnique de Grenoble IRD : Institut de Recherche pour le Développement L LMD : Licence-Master-Doctorat M MD : Modèle du Domaine MESupRES : Ministère de l’Enseignement Supérieur et de la Recherche Scientifique MVC : Model-Vue-Contrôleur
  • 11. X O OOD : Object Oriented Design OMT : Object Modeling Technique OOSE : Object Oriented Software Engineering P PC : Personnal Computer PRESUP : Programme de Renforcement de l’Enseignement Supérieur. PDO : PHP Data Objets R RAM : Radom Access Memory S SE : Système d’Exploitation SQL : Structured Query Language SI : Système d’Information SGBD : Système de Gestion de Base de Données SAS : Service des Aides Sociales SAE : Service des Aides aux Etudiants SIUVE : Service des Intendances Universitaires et de la Vie Etudiante T TIC : Technologies de l’Information et de la Communication U UF : Université de Fianarantsoa UML : Unified Modeling Language UPST : Université Paul Sabatier de Toulouse
  • 12. 1 INTRODUCTION GÉNÉRALE Comme chaque année, l’École Nationale d’Informatique envoie ses étudiants dans les milieux professionnels pour appliquer tous ceux qu’ils ont appris durant les années passées. Pendant ces trois mois de stage du 04 novembre 2019 au 31 janvier 2020, j’ai effectué le mien au sein de SIUVE dans le Service INFORMATIQUE. Le SIUVE (Service des Intendances Universitaires et de la Vie Etudiante) de l’Université de Fianarantsoa gère tout ce qui est en rapport avec le service logement de l’UF (Université de Fianarantsoa), ainsi cela implique la gestion générale de tous les biens et matériel dans ces logements. Par ailleurs, le SIUVE à des obligations pour améliorer le bien- être de tous au niveau de la société de l’UF. Dans ce fait, il a aussi une importance capitale dans la sérénité et la surveillance de la vie entre les personnels et entre les étudiants eux-mêmes. Dans l’accomplissement de son travail, le SIUVE connait quelque problème qu’il empêche de mieux organiser ses tâches, cela se voit à plusieurs reprises. Auparavant, pour enregistrer les informations des étudiants qui adhèrent au logement de l’UF, il le fait manuscrit et avec des logiciels offices au lieu d’utiliser une application qui répond à leurs besoins. Le présent mémoire visant la restitution du travail portera sur la « conception et réalisation d’une application pour la gestion des logements ». Pour réaliser cette application, nous avons besoin de la méthode de conception, le langage de programmation, le système de gestion de base de données et l’outil de modélisation. Le présent travail de recherche est constitué de trois parties dont la première sera consacrée à la présentation de l’Ecole Nationale d’Informatique, du SIUVE et à la description du projet suivi de l’analyse et de la conception du projet et enfin, nous parlerons dans la partie de la réalisation du projet.
  • 13. 2 Partie I : PRÉSENTATION
  • 14. 3 Chapitre 1 : Présentation de l’école nationale d’informatique (ENI) 1.1. Localisation et contact L’École Nationale d’Informatique de Fianarantsoa comme sous le sigle ENI est localisée à Tanambao Fianarantsoa, sa boite postale est le 1487 avec le code postal 301. Son numéro de téléphone est le 020 75 508 01 et son adresse électronique est eni@univ-fianar.mg 1.2. Missions et historique L’École Nationale d’Informatique est rattachée administrativement et académiquement à l’Université de Fianarantsoa. Cette École Supérieure se positionne dans le système socioéducatif malgache comme étant le plus puissant vecteur de diffusion et de vulgarisation des connaissances et des technologies informatiques. On peut considérer aujourd’hui cette École Supérieure comme la vitrine et la pépinière des élites informaticiennes malgaches. L’ENI s’est constituée de façon progressive dans le Centre Universitaire Régional (CUR) de Fianarantsoa. De façon formelle, l’ENI fut constituée et créée au sein du CUR par le décret N° 83- 185 du 24 mai 1983, comme étant le seul établissement Universitaire Professionnalisé au niveau national, destiné à former des techniciens de haut niveau, aptes à répondre aux besoins et exigences d’informatisation des entreprises, des sociétés et des organismes implantés à Madagascar. L’ENI a donc comme missions de former des spécialistes informaticiens compétents et opérationnels de niveaux différents : • En leur fournissant des connaissances de base en informatique • En leur transmettant le savoir-faire requis, à travers la professionnalisation des formations dispensées • En les initiant aux activités de recherche L’implantation de cette École Supérieure de technologie de pointe dans un pays en voie de développement dans une province à tissu économique et industriel faiblement développé ne l’a pas empêchée de former des spécialistes informaticiens de bon niveau qui sont recherchés par les sociétés et les organismes. La filière de formation d’Analyste – programmeur a été mise en place à l’École en 1983, et a été gelée par la suite en 1996. Tandis que la filière de formation d’Ingénieurs a été ouverte à l’École en 1986. La filière de formation de Techniciens Supérieurs en Maintenance des Systèmes Informatiques a été mise en place à l’École en 1996 grâce à l’appui matériel et financier de la Mission Française de Coopération auprès de l’Ambassade de France dans le cadre du Programme de Renforcement de l’Enseignement Supérieur (PRESUP).
  • 15. 4 Une formation pour l’obtention de la certification CCNA et/ou NETWORK+, appelée «CISCO Networking Academy» a été créée à l’ENI en 2002-2003 grâce au partenariat avec SISCO SYSTEM et l’École Supérieure Polytechnique d’Antananarivo (ESPA). Cependant, cette formation n’a pas duré longtemps. Une formation doctorale a été ouverte à l’École depuis l’année 2003-2004 grâce à la coopération académique et scientifique entre l’Université de Fianarantsoa pour le compte de l’ENI et l’Université Paul Sabatier de Toulouse (UPST). Cette filière avait pour objectif de former certains étudiants de l’École à la recherche et par la recherche dans les différents domaines de l’Informatique, et notamment pour préparer la relève des Enseignants – Chercheurs actuellement en poste. Pendant l’année universitaire 2007-2008, la formation en vue de l’obtention du diplôme de Licence professionnelle en Informatique a été mise en place à l’École avec les deux parcours suivants : Génie logiciel et Base de données Administration des systèmes et des réseaux La mise en place à l’École de ces deux parcours répond au besoin du basculement vers le système Licence-Master-Doctorat (LMD). La filière de formation des Techniciens Supérieurs en Maintenance des Systèmes Informatiques a été gelée en 2008. En vue de surmonter les difficultés de limitation de l’effectif des étudiants accueillis à l’École, à cause du manque d’infrastructures, un système de « Formation Hybride » a été mise en place. Il s’agit d’un système de formation semi-présentielle et à distance. La formation hybride a été mise en place à partir de 2012 à Fianarantsoa ainsi qu’à Toliara. 1.3. Organigramme institution de l’ENI L’ENI constitue ainsi un Établissement de formation supérieure placé sous la tutelle administrative et académique de l’Université de Fianarantsoa. Cet organigramme de l’École est inspiré des dispositions du Décret N° 83-185 du 23 mai 1983. L’ENI est administrée par un Conseil d’École, et dirigée par un Directeur nommé par un Décret adopté en conseil des Ministres. Le Collège des Enseignants regroupant tous les Enseignants – Chercheurs de l’École est chargé de résoudre les problèmes liés à l’organisation pédagogique des enseignements ainsi qu’à l’élaboration des emplois du temps. Le Conseil Scientifique propose les orientations pédagogiques et scientifiques de l’Établissement, en tenant compte notamment de l’évolution du marché de travail et de l’adéquation des formations dispensées aux besoins des entreprises.
  • 16. 5 Trois Départements de formation caractérisent l’organigramme : Le département de formation théorique à l’intérieur de l’École ; Le département de formation pratique pour la coordination et la supervision des stages en entreprise et des voyages d’études ; Le département de formation doctorale pour l’organisation de la formation de 3e cycle. La figure 1 représente l’organigramme actuel de l’ENI. Figure 1. Organigramme de l’ENI Sur cet organigramme, l’École placée sous la tutelle académique et administrative de l’Université de Fianarantsoa, et dirigée par un Directeur élu par les Enseignants – Chercheurs permanents de l’Établissement et nommée par un décret pris en Conseil des ministres pour un mandat de 3 ans. Le Conseil de l’École est l’organe délibérant de l’École. Le Collège des Enseignants propose et coordonne les programmes d’activités pédagogiques. Le Conseil scientifique coordonne les programmes de recherche à mettre en œuvre à l’École. Le Secrétariat principal coordonne les activités des services administratifs (Scolarité, Comptabilité, et Intendance). Conformément aux textes en vigueur régissant les Établissements malgaches d’Enseignement Supérieur, qui sont barrés sur le système LMD, les Départements de Formation
  • 17. 6 pédagogique ont été ainsi remplacés par des Mentions et des parcours. Et les chefs des Départements ont été ainsi remplacés par des responsables des mentions et les responsables des parcours. Un administrateur des Réseaux et Systèmes gère le système d’information de l’École et celui de l’Université. 1.4. Domaines de spécialisation Les activités de formation et de recherche organisées à l’ENI portent sur les domaines suivants : Génie logiciel et Base de données ; Administration des Systèmes et Réseaux ; Informatique générale Modélisation informatique et mathématique des systèmes complexes. D’une manière plus générale, les programmes des formations sont basés sur l’informatique de gestion et sur l’informatique des Systèmes et Réseaux. Et les modules de formation intègrent aussi bien des éléments d’Informatique fondamentale que des éléments d’Informatique appliquée. Le tableau 1 décrit l’organisation du système de formation pédagogique de l’École. Tableau 1. Organisation du système de formation pédagogique de l’École Enseignement théorique Enseignement pratique Enseignement théorique Travaux dirigés Travaux pratiques Étude de cas Travaux de réalisation Projets / Projets tutoyés Voyage d’études Stages
  • 18. 7 1.5. Architecture des formations pédagogiques Le recrutement des étudiants à l’ENI se fait uniquement par voie de concours d’envergure nationale en première année. Les offres de formation organisées à l’Ecole ont été validées par la Commission Nationale d’Habilitation (CNH) auprès du Ministères de l’Enseignement Supérieur et de la Recherche Scientifique selon les dispositions de l’Arrêté N°31.174/2012-MENS en date du 05 Décembre 2012. Au sein de l’ENI, il existe une seule mention (INFORMATIQUE) et trois parcours : Génie logiciel et Base de données ; Administration des Systèmes et Réseaux ; Informatique générale. L’architecture des études à trois niveaux conforme au système Licence- Master- Doctoral (LMD) permet les comparaisons et les équivalences académiques des diplômes au niveau international. L = Licence (Bac + 3) = L1, L2, L3 = 6 semestres S1 à S6 M = Master (Bac + 5) = M1, M2 = 4 semestres S7 à S10 Le diplôme de licence est obtenu en 3 années des études après Baccalauréat. Et le diplôme de Master est obtenu en 2 ans après obtenu du diplôme de LICENCE. Le MASTER PROFESSIONNEL est un diplôme destiné à la recherche emploi au terme des études. Le MASTER RECHERCHE est un diplôme qui remplace l’ancien Diplôme d’Etudes Approfondies (DEA), et qui permet de s’inscrire directement dans une École Doctorale.au terme des études. D = Doctorat (Bac +8) Le Doctorat est un diplôme qu’on peut obtenir en 3 ans après l’obtention du diplôme de MASTER RECHERCHE. Le tableau 2 présente l’architecture des études correspondant au système LMD. Tableau 2. Architecture des études correspondant au système LMD
  • 19. 8 DTS : Diplôme de Technicien Supérieur BTS : Brevet de Technicien Supérieur DUT : Diplôme Universitaire de Technicien La licence peut avoir une vocation générale ou possessionnelle. Le master peut avoir une vocation professionnelle ou de recherche. Le tableau 3 présente liste des formations existantes à l’ENI Tableau 3. Liste des formations existantes à l’ENI FORMATION EN LICENCE PROFESSIONNELLE MASTER Condition d’admission Par voie de concours Formation Professionnelle : 100 candidats Formation Généraliste : 150 candidats Condition d’accès Bac de série C, D ou Technique Être titulaire de licence professionnelle Durée de formation 3 années 2 années Diplôme à délivrer Licence professionnelle en Informatique Master professionnel en Informatique Master Recherche en Informatique L’accès en première année de MASTER se fait automatiquement pour les étudiants de l’École qui ont obtenu le diplôme de Licence professionnelle. Le Master Recherche permet à son titulaire de poursuivre directement des études en doctorat et de s’inscrire directement dans une Ecole Doctorale. Les Ecoles Doctorales jouissent d’une autonomie de gestion par rapport aux Établissements de formation universitaire. Il convient de signaler que par arrêté ministériel N° 21.626/2012 – MESupRES publié le 9 Août 2012 par la Commission National d’habilitation (CNH), l’École Doctorale « Modélisation – Informatique » a été habilitée pour l’Université de Fianarantsoa. Depuis l’année universitaire 2010-2011, l’ENI s’est mise à organiser des formations hybrides en informatique dans les différentes Régions (Fianarantsoa, Toliara) en raison de l’insuffisance de la capacité d’accueil des infrastructures logistiques. En effet, le système de formation hybride semi - présentielle utilise la visioconférence pour la formation à distance.
  • 20. 9 Bien qu’il n’existe pas encore au niveau international de reconnaissance écrite et formelle des diplômes délivrés par l’ENI, les étudiants diplômés de l’École sont plutôt bien accueillis dans les instituts universitaires étrangers (CANADA, Suisse, France…) 1.6. Relations de l’ENI avec les entreprises et les organismes Les stages effectués chaque année par les étudiants mettent l’Ecole en rapport permanent avec plus de 300 entreprises et organismes publics, semi-publics et privés, nationaux et internationaux. L’Ecole dispose ainsi d’un réseau d’entreprises, de sociétés et d’organismes publics et privés qui sont des partenaires par l’accueil en stage de ses étudiants, et éventuellement pour le recrutement après l’obtention des diplômes par ces derniers. Les compétences que l’Ecole cherche à développer chez ses étudiants sont l’adaptabilité, le sens de la responsabilité, du travail en équipe, le goût de l’expérimentation et l’innovation. En effet, la vocation de l’ENI est de former des techniciens supérieurs de niveau LICENCE et des ingénieurs de type généraliste de niveau MASTER avec des qualités scientifiques, techniques et humaines reconnues, capables d’évoluer professionnellement dans des secteurs d’activité variés intégrant l’informatique. Les stages en milieu professionnel permettent de favoriser une meilleure adéquation entre les formations à l’École et les besoins évolutifs du marché de l’emploi. Les principaux débouchés professionnels des diplômés de l’École concernent les domaines suivants : L’informatique de gestion d’entreprise Les technologies de l’information et de la communication (TIC) La sécurité informatique des réseaux L’administration des réseaux et des systèmes Les services bancaires et financiers, notamment le Mobile Banking Les télécommunications et la téléphonie mobile Les Big Data Le commerce, la vente et l’achat, le Marketing L’ingénierie informatique appliquée L’écologie et le développement durable Parmi les sociétés, entreprises et organismes partenaires de l’École, on peut citer : ACCENTURE Mauritius, Air Madagascar, Ambre Associates, Airtel, Agence Universitaire de la Francophonie ( AUF) , B2B, Banque Centrale, BFG-SG, BIANCO, BLUELINE, Bureau national de gestion des Risques et des catastrophes (BNGRC), CEDII-Fianarantsoa, Data Consulting, Central Test, Centre National Antiacridien, CNRE, CHU, CNRIT, COLAS, Direction Générale des Douanes, DLC, DTS/Moov, FID, FTM, GNOSYS, IBONIA, INGENOSIA, INSTAT, IOGA, JIRAMA, JOUVE, MADADEV, MAEP, MEF, MEN, MESupRES, MFB, MIC, MNINTER, Min des postes/Télécommunications et du Développement Numérique, NEOV MAD, Ny Havana, Madagascar National Parks,
  • 21. 10 OMNITEC, ORANGE, OTME, PRACCESS, QMM Fort-Dauphin, SMMC, SNEDADRS Antsirabe, Sénat, Société d’Exploitation du Port de Toamasina (SEPT), SOFTWELL, Strategy Consulting, TELMA, VIVETEC, Société LAZAN’I BETSILEO, WWF … L’organisation de stage en entreprise continue non seulement à renforcer la professionnalisation des formations dispensées, mais elle continue surtout à accroître de façon exceptionnelle les opportunités d’embauche pour les diplômés de l’École. 1.7. Partenariat au niveau international Entre 1996 et 1999, l’ENI avait bénéficié de l’assistance technique et financière de la Mission Française de Coopération et d’action culturelle dans le cadre du Programme de Renforcement de l’Enseignement Supérieur (PRESUP) consacré à l’École a notamment porté sur : Une dotation en logiciels, micro-ordinateurs, équipements de laboratoire de maintenance et de matériels didactiques La réactualisation des programmes de formation assortie du renouvèlement du fonds de la bibliothèque L’appui à la formation des formateurs L’affectation à l’École d’Assistants techniques français De 2000 à 2004, l’ENI avait fait partie des membres du bureau de la Conférence Internationale des Ecoles de formation d’Ingénieurs et Technicien d’Expression Française (CITEF). Les Enseignants-Chercheurs de l’École participent régulièrement aux activités organisées dans le cadre du Colloque Africain sur la Recherche en Informatique (CARI). L’ENI avait également signé un accord de coopération inter-universitaire avec l’Institut de Recherche en Mathématiques et Informatique Appliquées (IREMIA) de l’Université de la Réunion, l’Université de Rennes 1, l’INSA de Rennes, l’Institut National Polytechnique de Grenoble (INPG). A partir du mois de Juillet 2001, l’ENI avait abrité le Centre de Réseau Opérationnel (Network Operating Center) du point d’accès à Internet de l’École ainsi que de l’Université de Fianarantsoa. Grâce à ce projet américain qui a été financé par l’USAID Madagascar, l’ENI de l’Université de Fianarantsoa avait été dotées d’une ligne spécialisée d’accès permanent au réseau Internet. L’ENI avait de même noué des relations de coopération avec l’Institut de Recherche pour le Développement (IRD). L’objet du projet de coopération avait porté sur la modélisation environnementale du Corridor forestier de Fandriana jusqu’à Vondrozo (COFAV). Dans ce cadre, un atelier scientifique international avait été organisé à l’ENI en Septembre 2008. Cet atelier scientifique avait eu pour thème de modélisation des paysages.
  • 22. 11 Et dans le cadre du programme scientifique PARRUR, l’IRD avait financé depuis 2010 le projet intitulé « Forêts, Parcs et Pauvreté dans le Sud de Madagascar (FPPSM). Des étudiants en DEA et des Doctorants issus de l’ENI avaient participé à ce Programme. Par ailleurs, depuis toujours la même année 2010, l’ENI de Fianarantsoa avait été sélectionnée pour faire partie des organismes partenaires de l’Université de Savoie dans le cadre du projet TICEVAL relatif à la certification des compétences en TIC ; Le projet TICEVAL avait été financé par le Fonds Francophone des Inforoutes pour la période allant de 2010 à 2012, et il avait eu pour objectif de généraliser la certification des compétences en Informatique et Internet du type C2i2e et C2imi. Dans le cadre du projet TICEVAL, une convention de coopération avec l’Université de Savoie avait été signée par les deux parties concernées. La mise en œuvre de la Convention de Coopération avait permis d’envoyer des étudiants de l’ENI à Chambéry pour poursuivre des études supérieures en Informatique. Enfin et non des moindres, l’ENI avait signé en Septembre 2009 un protocole de collaboration scientifique avec l’ESIROI – STIM de l’Université de la Réunion. Comme l’ENI constitue une pépinière incubatrice de technologie de pointe, d’emplois et d’entreprises, elle peut très bien servir d’instrument efficace pour renforcer la croissance économique du pays, et pour lutter contre la Pauvreté. De même que le statut de l’École devrait permettre de renforcer la position concurrentielle de la Grande Ile sir l’orbite de la modélisation grâce au développement des nouvelles technologies. 1.8. Débouches professionnels des diplômes Le chômage des jeunes diplômés universitaires fait partie des maux qui gangrènent Madagascar. L’environnement socio-politique du pays depuis 2008 jusqu’ à ce jour a fait que le chômage des diplômés est devenu massif par rapport aux établissements de formation supérieure existants. Cependant, les formations proposées par l’École permettent aux diplômés d’être immédiatement opérationnels sur le marché du travail avec la connaissance d’un métier complet lié à l’informatique aux TIC. L’École apporte à ses étudiants un savoir-faire et un savoir-être qui les accompagnent tout au long de leur vie professionnelle. Elle a une vocation professionnalisant. Les diplômés en LICENCE et en MASTER issus de l’ENI peuvent faire carrière dans différents secteurs. L’Ecole bénéficie aujourd’hui de 34 années d’expériences pédagogiques et de reconnaissance auprès des sociétés, des entreprises et des organismes. C’est une École Supérieure de référence en matière informatique.
  • 23. 12 Par conséquent, en raison de fait que l’équipe pédagogique de l’École est expérimentée, les enseignants – chercheurs et les autres formateurs de l’École sont dotés d’une grande expérience dans l’enseignement et dans le milieu professionnel. L’École est fière de collaborer de façon régulière avec un nombre croissant d’entreprises, de sociétés et d’organismes publics et privés à travers les stages des étudiants. Les formations dispensées à l’École sont ainsi orientées vers le besoin et les attentes des entreprises et des sociétés. L’École fournit à ses étudiants de niveau LICENCE et MASTER des compétences professionnelles et métiers indispensables pour les intégrer sur le marché du travail. L’École s’efforce de proposer à ses étudiants une double compétence à la fois technologique et managériale combinant l’informatique de gestion ainsi que l’administration des réseaux et systèmes. D’une manière générale, les diplômés de l’ENI n’éprouvent pas de difficultés particulières à être recrutées au terme de leurs études. Cependant, l’ENI recommande à ses diplômés de promouvoir l’entrepreneuriat en TIC et de créer des cybercafés, des SSII ou des bureaux d’études. Tableau 4 montre les débouchés professionnels éventuels des diplômés Tableau 4. Débouchés professionnels éventuels des diplômés LICENCE MASTER ▪ Analyste ▪ Programmeur ▪ Administrateur de site web/de portail web ▪ Assistant Informatique et internet ▪ Chef de projet web ou multimédia ▪ Développeur Informatique ou multimédia ▪ Intégrateur web ou web designer ▪ Hot liner/Hébergeur Internet ▪ Agent de référencement ▪ Technicien/Supérieur de help desk sur Informatique ▪ Responsable de sécurité web ▪ Administrateur de réseau ▪ Administrateur de cybercafé ▪ Administrateur de cybercafé ▪ Administrateur de réseau et système ▪ Architecture de système d’information ▪ Développeur d’application /web /Java/Python/ IOS /Android ▪ Ingénieur réseau ▪ Webmaster /web designer ▪ Concepteur Réalisateur d’applications ▪ Directeur du système de formation ▪ Directeur de projet informatique ▪ Chef de projet informatique ▪ Responsable de sécurité informatique ▪ Consultant fonctionnel ou freelance
  • 24. 13 1.9. Ressources humaines Les responsables administratifs et pédagogiques de l’ENI sont les suivants : Directeur de l’École : Professeur Titulaire RAMAMONJISOA Andritiana Bertin Olivier Responsable de Mention : RABETAFIKA Louis Haja, Assistant d’Enseignement Supérieur et de la Recherche Responsable de Parcours « Génie Logiciel et Base de Données » : RALAIVAO Christian, Assistant d’enseignement supérieur et recherche Responsable de Parcours « Administration Systèmes et Réseaux » : SIAKA, Assistant d’Enseignement Supérieur et de la Recherche Responsable de Parcours « Informatique Générale » : GESAZAFY Gilante, Assistant d’Enseignement et de Recherche Nombre d’Enseignants permanents : 13 Nombre d’Enseignants vacataires : 10 Personnel administratif : 23
  • 25. 14 Chapitre 2 : Présentation du Service de l’Intendance Universitaires et de la Vie Etudiante (SIUVE) 2.1. Localisation Le Service des Intendances Universitaires et de la Vie Etudiante de l’Université de Fianarantsoa se trouve au sein de Campus Universitaire d’Andrainjato, sa boite postale est le 1264 avec le code postal 301. 2.2. Historique Au début, le Service des Intendances Universitaires et de la Vie Etudiante de l’Université de Fianarantsoa ont changé et évolué au fil du temps. Du temps CUR (Centre Universitaire Régionale) le Service des Intendances Universitaires et de la Vie Etudiante de l’Université de Fianarantsoa était COUM (Centre d’Œuvre Universitaire Malgache). Au temps de l’Université de Fianarantsoa, le service COUM a changé : D’abord SAS (Service des Aides Sociale) ; Puis SAE (Service des Aides aux Étudiants) ; Enfin, SIUVE (Service des Intendances Universitaires et de la Vie Etudiante) 2.3. Objectif général L’Université de Fianarantsoa a mis en place un service pour gérer les situations vis-à- vis des logements et de la vie des étudiants en général. SIUVE est un service qui est chargé des logements de l’Université de Fianarantsoa et de la vie des étudiants. C’est le service qu’on doit consulter si on a besoin de faire une demande de logements au sein de l’Université. Le SIUVE est rattaché administrativement à la présidence de l’Université de Fianarantsoa. Plus généralement à la vice-présidence.
  • 26. 15 2.4. Organigramme du Service des Intendance Universitaires La figure 2 représente l’organigramme du SIUVE Figure 2. Organigramme du SIUVE
  • 27. 16 Chapitre 3 : Description du projet A travers ce chapitre dédié à la description du projet, nous passerons en revue, de façon succincte, ses objectifs, les besoins des utilisateurs auxquels il cherche à répondre, aussi bien que les moyens humains et matériels nécessaires à sa mise en œuvre et les résultats qui sont à attendre de ce projet. 3.1. Formulation Nous avons effectué notre stage au sein du SIUVE Fianarantsoa pendant 3 mois sous l’encadrement du DASRE. Notre projet se consacre à la mise en place de l’application web qui gère facilement tous les logements au campus universitaire de Fianarantsoa. Il s’agit de recevoir les demandes des étudiants, de les inscrire dans un logement, de faire le renouvèlement, ainsi les exclure aussi. 3.2. Objectif et besoin de l’utilisateur Notre objectif principal est de concevoir et réaliser d’une application web pour la gestion des logements. Dans cet objectif, l’utilisateur a besoin d’une application : Recevoir les demandes des étudiants et des stocker dans la base de données Inscrire facilement dans un logement libre Suivi de logement libre Rechercher les étudiants avec les informations précises en un seul clic. 3.3. Moyens nécessaires pour la réalisation du projet 3.3.1. Moyens humains D’abord pour l’aboutissement complet de ce projet, on a besoin : ➢ d’un concepteur : le stagiaire ; ➢ d’un chef de projet : l’encadreur professionnel ; ➢ d’un développeur : le stagiaire.
  • 28. 17 3.3.2. Moyens matériels Les configurations d’un ordinateur qu’on a utilisée doit être assez puissantes pour supporter les moyens logiciels nécessaires dans le projet. Le tableau 5 représente la configuration de la machine qu’on a utilisée pendant la réalisation de ce projet. Tableau 5. Configuration de la machine qu’on a utilisée. 3.3.3. Moyens logiciels ➢ Un logiciel de modélisation : Visual Paradigm for UM 12.0 ➢ Un logiciel éditeur de développement : Sublim Text 3.0 ➢ Un système de gestion de base de données : WampServer 3.1.9 3.4. Résultats attendus L’application doit être capable de : Gérer tous les logements au campus universitaire de Fianarantsoa. Recevoir les demandes des étudiants avec des conditions requises. Faire l’inscription des étudiants au logement Faire du renouvèlement. Faire la recherche précise et rapide. Vérifier les informations des étudiants irréguliers pour les exclure. Voire les archives des étudiants exclus dans un logement entre deux dates. Faire la permutation des étudiants.
  • 29. 18 3.5. Planning de stage Pour représenter le planning prévisionnel, nous avons choisi le diagramme de GANTT. Ce diagramme va permettre de planifier le projet et de rendre plus simple le suivi de son avancement. Il va servir à atteindre les objectifs fixés dans l'arbre des objectifs. Ce type de présentation permet représenter les liens qu’il y a entre chaque tâche et d’apercevoir l’avancement par ordre chronologique de ces tâches. Les figures 3 et 4 présentent le planning prévisionnel du projet. Figure 3. Planning prévisionnel (a) Figure 4. Planning prévisionnel (b)
  • 30. 19 Partie II : ANALYSE ET CONCEPTION
  • 31. 20 Chapitre 4 : Analyse préalable Ce chapitre consacré à l’analyse préalable nous permettra de porter un regard critique sur l’existant et de présenter la conception avant-projet. Le projet que nous soumettons ici ne pourrait être conçu dans les normes requises sans passer par une analyse préalable, ce qui fera l’objet du premier chapitre de cette seconde partie. Cette analyse préalable sera suivie d’une analyse conceptuelle que nous verrons dans un autre chapitre. 4.1. Analyse et étude de l’existant Le SIUVE est un service au niveau de l’Université de Fianarantsoa qui joue le premier rôle sur la gestion de logement des étudiants et la surveillance de la vie des étudiants en général. SIUVE permet à l’Université une organisation de logement pour que les étudiants les n’aient pas de difficulté. Chaque année universitaire, SIUVE demande à tous les étudiants logés de faire leur renouvèlement, permet de bien surveiller celui qui l’occupe, et pour savoir le nombre des étudiants qui sont logés. Au sein de l’Université de Fianarantsoa, SIUVE surveille : 6 bâtiments ; 17 préfabriqués Actuellement, 6 bâtiments et 17 préfabriqués sont disponibles pour loger 1 800 étudiants alors que l’université a plus de 20 000 étudiants. Ce qui fait que les infrastructures ne sont pas suffisantes. L’attribution de logement voit un problème majeur, vu la présence des associations régionales. Ce qui permet au service SIUVE de prendre une autre mesure d’attribution pour ne pas faire faute si non la guerre. Il applique des cahiers des associations régionaux pour inscrire tous les natifs de ces régions et pour valoriser l’administration. 4.1.1. Organisation actuelle Actuellement, pour gérer les logements de l’Université de Fianarantsoa, SIUVE n’a aucune application pour cette tâche. Par contre, il utilise : des cahiers, Microsoft Office Word, Microsoft Office Excel comme une base de données pour enregistrer les informations des étudiants pour chaque association régionale. Cela, prendre beaucoup du temps pour effectuer. Dans le SIUVE, seul, le personnel responsable de la gestion de logement a le droit d’ajouter et de modifier les informations des étudiants dans le cahier d’enregistrement. 4.1.2. Inventaire des moyens matériels et logiciels Désormais, le SIUVE au niveau matériel possède Un ordinateur pour le premier responsable de la surveillance de logement ; Une imprimante Et au niveau logiciel, on utilise : Microsoft Office Word et Excel
  • 32. 21 4.2. Critique et diagnostic de l’existant Après l’interview des postes, on a constaté que la gestion de logement s’effectue manuellement. Le SIUVE utilisait des cahiers comme une base de données. Or, cela créer des difficultés et prend beaucoup du temps en cas de la recherche d’un étudiant à partir de son nom, pour la recherche de l’étudiant dans un logement. 4.3. Conception avant – projet 4.3.1. Proposition des solutions Face à ces problèmes, nous avons donc proposé les deux solutions suivantes : Solution 1 : Concevoir une application de gestion de logement sur mesure avec les fonctionnalités citées dans le besoin de l’utilisateur. Solution 2 : Acheter un logiciel de gestion de logement comme Immobilier Loyer disponible sur le site http://www.Immobilierloyer.com/ Tableau 6 illustre la comparaison entre les deux solutions. Tableau 6. Comparaison entre les deux solutions. En tenant compte des critiques et des besoins des utilisateurs de l’application, la solution à retenir est la solution 1. Pour réaliser cette application, nous avons besoins d’une méthode de conception, d’un SGBD, d’un langage de programmation et d’un IDE. SOLUTIONS AVANTAGES INCONVÉNIENTS Application sur mesure, donc adaptée au secteur, coût minimum Temps de conception important Prêt à l’emploi ; Pas besoin de temps Fonctionnalité manquante ou inutile, coût très important (299 € TTC)
  • 33. 22 4.3.2. Justification des choix Faire un choix équivaut à réaliser une comparaison entre plusieurs faits ou choses en pesant le pour et le contre afin de trouver celui qui correspond le mieux aux besoins. Le choix des outils utilisés durant le projet doit être basé sur des raisons spécifiques. 4.3.2.1. Méthode de conception Adopter une méthode de conception est primordial pour la mise en œuvre d’un projet de développement de logiciel. Pour cela, plusieurs méthodes existent. Une étude comparative de deux méthodes les plus utilisés doit être faite pour la conception des systèmes d’information afin d’avoir un aperçu sur le choix de la méthode à adopte. Le tableau 7 illustre la comparaison entre la méthode MERISE et Processus Unifié Tableau 7. Comparaison entre la méthode MERISE et Processus Unifié MERISE Processus Unifié AVANTAGES ✓ Encadre largement les projets de conception ✓ Indépendance des données par rapport aux traitements ✓ Niveaux d’abstraction bien définis avec des règles de passage ✓ Cycle de vie itératif et incrémental ✓ Méthode générique ✓ Méthode orientée objet ✓ Plus adaptée à la notation UML ✓ Méthode itérative et Incrémentale ✓ Séquentiel INCONVENIENTS ✓ Pour un bon résultat les étapes doivent être suivies sans en manquer un. ✓ Séparation des cycles d’abstraction pas très bien précise ✓ Difficulté dans la conception de la base de données La méthode choisie à l’issue de la comparaison est la méthode Processus Unifié pour sa compatibilité avec la notation UML. Présentation d’UP Le processus unifié est un processus de développement logiciel : il regroupe les activités à mener pour transformer les besoins d’un utilisateur en système logiciel. UP (Unified Process) est une méthode générique de développement de logiciel. Générique signifie qu'il est nécessaire d'adapter UP au contexte du projet, de l'équipe, du domaine et de l'organisation. C'est, entre parenthèses, plus ou moins vrai pour toute méthode, qu'elle se définisse elle-même comme générique ou pas. Il existe donc un certain nombre de méthodes issues de l’UP.
  • 34. 23 Il est basé sur des composants. Il utilise UML et est basé sur les cas d’utilisation, l’architecture et le développement incrémental. Pour mettre en pratique ces idées il faut recourir à un processus multi-facettes prenant en considération les cycles, les phases, les enchaînements d’activités, la réduction des risques, le contrôle qualité, la gestion de projet et la gestion de configuration. Le processus unifié a mis en place un cadre général (framework) intégrant chacune de ces facettes. Le processus unifié répète un certain nombre de fois une série de cycles. Tout cycle se conclut par la livraison d’une version du produit aux clients et s’articule en 4 phases : création, élaboration, construction et transition, chacune d’entre elles se subdivisant à son tour en itérations. Le processus unifié est un processus de développement logiciel : il regroupe les activités à mener pour transformer les besoins d’un utilisateur en système logiciel. Caractéristiques essentielles du processus unifié : - Le processus unifié est à base de composants, - Le processus unifié utilise le langage UML (ensemble d'outils et de diagramme), - Le processus unifié est piloté par les cas d’utilisation, - Centré sur l’architecture, - Itératif et incrémental. Chaque cycle se traduit par une nouvelle version du système. Ce produit se compose d’un corps de code source réparti sur plusieurs composants pouvant être compilés et exécutés et s’accompagne de manuels et de produits associés. Pour mener efficacement le cycle, les développeurs ont besoin de construire toutes les représentations du produit logiciel : Modèle des cas d’utilisation : Expose les cas d’utilisation et leurs relations avec les utilisateurs Modèle d’analyse : Détaille les cas d’utilisation et procède à une première répartition du comportement du système entre divers objets Modèle de conception : Définit la structure statique du système sous forme de sous-système, classes et interfaces ; Définit les cas d’utilisation réalisés sous forme de collaborations entre les sous-systèmes les classes et les interfaces Modèle d’implémentation : Intègre les composants (code source) et la correspondance entre les classes et les composants Modèle de déploiement : Définit les nœuds physiques des ordinateurs et l’affectation de ces composants sur ces nœuds. Modèle de test : Décrit les cas de test vérifiant les cas d’utilisation Représentation de l’architecture : Description de l’architecture Tous ces modèles sont liés. Ensemble, ils représentent le système comme un tout. Les éléments de chacun des modèles présentent des dépendances de traçabilité ; ce qui facilite la compréhension et les modifications ultérieures.
  • 35. 24 Pour conclure, UP est basé sur des composants. Il utilise UML et est basé sur les cas d’utilisation, l’architecture et le développement incrémental. Pour mettre en pratique ces idées, il faut recourir à un processus multi-facettes prenant en considération les cycles, les phases, les enchaînements d’activités, la réduction des risques, le contrôle qualité, la gestion de projet et la gestion de configuration. Le processus unifié a mis en place un cadre général (Framework) intégrant chacune de ces facettes. La figure 5 représente le schéma d'ensemble de la méthode UP. Figure 5. Schéma d'ensemble de la méthode UP Présentation de la notation UML La notation UML est la façon de représenter les différents diagrammes nécessaires lors de la conception avec la méthode UP. UML (Unified Modeling Language) est né de la fusion des 3 méthodes qui ont le plus influencé la modélisation objet au milieu des années 90 : OMT (Object Modeling Technique - James Rumbaugh), OOD (Object Oriented Design - GradyBooch) et OOSE (Object Oriented Software Engineering - Ivar Jacobson). Il permet d'exprimer et d'élaborer des modèles objet, indépendamment de tout langage de programmation. Il sert de support à une analyse basée sur les concepts objet. Sa notation graphique permet d'exprimer visuellement une solution objet, ce qui facilite la comparaison et l'évaluation de solutions. UML cadre l'analyse objet, il permet non seulement de représenter et de manipuler les concepts objet, il sous-entend une démarche d'analyse qui permet de concevoir une solution objet de manière itérative, grâce aux diagrammes, qui supportent l'abstraction. UML est une représentation graphique, c'est une perspective du modèle.
  • 36. 25 Caractéristiques de la notation UML UML : un standard incontournable - Résultat d'un large consensus (industriels, météorologistes...). - Fruit d'un travail d'experts reconnus. - Issu du terrain. - Riche (il couvre toutes les phases d'un cycle de développement). - Ouvert (il est indépendant du domaine d'application et des langages d'implémentation). UML évolue mais reste stable - L'OMG RTF (nombreux acteurs industriels) centralise et normalise-les évolutions d'UML au niveau international. - Les groupes d'utilisateurs UML favorisent le partage des expériences. - De version en version, UML gagne en maturité et précision, tout en restant stable. - UML inclut des mécanismes standards d'auto-extension. - La description du méta modèle d'UML est standardisée (OMG-MOF). UML est un support de communication - Sa notation graphique permet d'exprimer visuellement une solution objet. - L'aspect formel de sa notation limite les ambiguïtés et les incompréhensions. - Son aspect visuel facilite la comparaison et l'évaluation de solutions. - Son indépendance (par rapport aux langages d'implémentation, domaine d'application, processus...) en font un langage universel. Les points forts d'UML UML est un langage formel et normalisé - Gain de précision - Gage de stabilité - Encourage l'utilisation d'outils UML est un support de communication performant - Il cadre l'analyse. - Il facilite la compréhension de représentations abstraites complexes. - Son caractère polyvalent et sa souplesse en font un langage universel. Les points faibles d'UML - La mise en pratique d'UML nécessite un apprentissage et passe par une période d’adaptation. - Le processus (non couvert par UML) est une autre clé de la réussite d'un projet.
  • 37. 26 4.3.2.2. Système de gestion de base de données (SGBD) Un SGBD permet d’inscrire, de retrouver, de modifier, de trier, de transformer ou d’imprimer les informations de la base de données. Il permet d’effectuer des comptes rendus des informations enregistrées et comporte des mécanismes pour assurer la cohérence des informations, éviter des pertes d’informations dues à des pannes, assurer la confidentialité et permettre son utilisation par d’autres logiciels. Il existe plusieurs SGDB, mais les plus utilisés sont MySQL et PostgreSQL, une comparaison de ces deux est présentée dans le tableau 8. Tableau 8. Comparaison entre MySQL et PostgreSQL SGBD Avantages Inconvénients • MySQL est plus rapide que PostgreSQL • MySQL a une base d’utilisateurs bien plus grande que PostgreSQL • MySQL a plus d’API avec d’autres langages, et est supporté par un plus grand nombre de programmes que PostgreSQL • Le support des transactions de MySQL n’est pas aussi bien testé que celui de PostgreSQL. • Les modifications qui s’effectuent sur plusieurs tables sont bien plus difficiles à faire avec MySQL • L’utilisation standard de PostgreSQL est parfois plus proche de la norme ANSI SQL. • Supporte les standards SQL92 avec peu de restriction • L’optimiser PostgreSQL fait des optimisations que l’optimiser de MySQL ne peut faire Les tables sont obligatoirement transactionnelles. Les commandes INSERT, UPDATE et DELETE sont plus lentes. D’après la comparaison des SGBD présentés précédemment, le choix s’est porté sur MySQL à cause des avantages qu’il présente. Présentation de MySQL MySQL est un système de gestion de bases de données relationnelles. Le SQL dans “MySQL” signifie “Structured Query Language” : le langage standard pour les traitements de bases de données. MySQL est Open Source. Open Source (Standard Ouvert) signifie qu’il est possible à chacun d’utiliser et de modifier le logiciel. Tout le monde peut le télécharger sur Internet et l’utiliser sans payer aucun droit. Ce qui rend MySQL très intéressant pour les Webmasters est le nombre d’API (application program interface) dont il dispose. On peut en effet l’intégrer dans des applications écrites en : C, C++, Eiffel, Java, Perl, PHP, Python, Ruby.
  • 38. 27 4.3.2.3. Langage de programmation et Framework Il existe des nombreux langages de développement qu’on peut utiliser. On va comparer de la manière la plus objective possible deux langages et technologies de programmation pour la réalisation d’une application web avant d’établir notre choix. Le tableau 9 nous montre la comparaison entre le langage PHP, Python et Ruby Tableau 9. Tableaux comparatifs entre les différentes solutions web Position Avantages Il est gratuit. Il existe une grande variété de projets open source. Il ne nécessite pas beaucoup de code pour un résultat l’hébergement de PHP est supporté presque partout. Beaucoup de documentation Il est gratuit. Il n’y a pas beaucoup de faille de sécurité. Grande stabilité du code à travers le temps. Le langage est soutenu par Google Il est gratuit. Le langage est littéraire et simple à comprendre La structure MVC est très bien intégrée de base Inconvénient Il n’a pas de structure prédéfinie, il faut donc ajouter des cadres d’application (Framework) pour atteindre des niveaux comme MVC. Les fonctions sont biodégradables Il faut passer par des cadres d’application pour développés du web (Django, Grok, Pylons, TurboGears, web2py,…) Il est extrêmement lent par rapport aux autres En nous basant sur ces différents critères, nous avons opté sur le langage PHP. Présentation de PHP (Hypertext Preprocessor) Parmi les nombreux langages de programmation, on a adopté le PHP pour le développement. Il s’agit plus précisément du PHP5, étant donné que l’ancienne version de ce dernier était longtemps considérée comme un langage de script pour page personnelle. Le PHP5 entre dans la cour des grands et il supporte maintenant les concepts de la programmation-objet ce qui l’ouvre à des réalisations complexes structurées et performantes. À l’origine, le PHP est un langage purement destiné au web, contrairement à Java et Dot Net dont les codes sont d’abord précompilés puis s’exécutent sur une machine virtuelle ; le PHP est interprété par le serveur sur lequel il s’exécute [8] .De plus, il parait que le PHP est bien plus performant que JAVA. Bertrand Bigay, PDG de Cityvox, explique que le Monde et TF1 ont adopté le PHP. Comparant les applications de contenu « ils ont calculé qu’une page s’affiche douze fois plus vite en PHP ».
  • 39. 28 PHP s’adapte très rapidement aux technologies émergentes et se voit de plus en plus utilisée dans des développements web dynamiques professionnels et Open Source. Ses caractéristiques principales sont citées ci-dessous: Un très bon compromis entre fiabilité et rapidité d’exécution ; Une plateforme avant tout spécialisée pour le développement de sites web dynamiques de toute taille ; Une plateforme pratique et complète adaptée aux applications en ligne de commande Une syntaxe complète, souple et permissive, qui ne rebute pas les développeurs débutants et ne limite pas les utilisateurs confirmés ; Un langage procédural et un langage orienté objet ; Un outil très complet, doté de nombreuses fonctionnalités, extensions et bibliothèques. Présentation de PDO PDO (PHP Data Objets) est un petit Framework PHP et servant de l’interface entre le PHP et la base de données, extension définissant l'interface pour accéder à une base de données depuis PHP. Elle est orientée objet, la classe s’appelant PDO. Elle permet aussi de récupérer en une seule reprise tous les enregistrements de la table sous forme d’une variable PHP de type tableau à deux dimensions, ce qui réduit visiblement le temps de traitement. Présentation de CSS Le principe des feuilles de style consiste à regrouper dans un même document des caractéristiques de mise en forme associées à des groupes d'éléments. Les feuilles de style permettent notamment : D’obtenir une présentation homogène sur tout un site en faisant appel sur toutes les pages à une même définition de style ; De permettre le changement de l'aspect d'un site complet entier par la seule modification de quelques lignes ; Une plus grande lisibilité du HTML, car les styles sont définis à part ; Des chargements de page plus rapides, pour les mêmes raisons que précédemment ;Un positionnement plus rigoureux de l’élément.
  • 40. 29 Présentation du jQuery JQuery est une bibliothèque JavaScript qui permet aux développeurs web d'ajouter des fonctionnalités supplémentaires à leurs sites Web. Il est open source et fournit gratuitement sous la licence MIT. Au cours des dernières années, jQuery est devenu la bibliothèque JavaScript le plus populaire utilisée dans le développement web. Pour mettre en œuvre jQuery, un développeur web a simplement besoin de référencer le fichier JavaScript jQuery dans le code HTML d'une page Web. Certains sites Web hébergent leur propre copie locale de jQuery, tandis que d'autres font référence à la bibliothèque tout simplement hébergée par Google ou le serveur jQuery. Par exemple, une page Web peut charger la bibliothèque jQuery en utilisant la ligne suivante dans la section <head> du HTML : <script type = "text / javascript" src = "// ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"> </ script> Une fois la bibliothèque jQuery est chargée, une page Web peut appeler une fonction jQuery soutenu par la bibliothèque. Les exemples communs incluent texte modifiant des données de formulaire de traitement, éléments sur une page mobile, et en effectuant des animations. JQuery peut également travailler avec le code et les scripts Ajax langues, telles que PHP et ASP pour accéder aux données à partir d'une base de données. Depuis jQuery fonctionne sur le côté client (plutôt que le serveur web), il peut mettre à jour les informations sur une page Web en temps réel, sans avoir à recharger la page. Un exemple courant est "auto complète", dans lequel un formulaire de recherche affiche automatiquement. Recherches les plus courantes que vous tapez votre requête. En fait, voici comment TechTerms.com fournit des suggestions de recherche lorsque vous tapez dans la boîte de recherche. Outre sa licence gratuite, l'autre raison principale jQuery a gagné une telle popularité est sa compatibilité cross-browser. Étant donné que chaque navigateur affiche HTML, CSS et JavaScript différemment, il peut être difficile pour un développeur web pour faire un site web semble le même dans tous les navigateurs. Au lieu d'avoir à écrire des fonctions personnalisées pour chaque navigateur, un développeur web peut utiliser une fonction jQuery unique qui fonctionnera dans Chrome, Safari, Firefox et Internet Explorer. Ce support multi navigateur a conduit de nombreux développeurs de passer de JavaScript standard pour jQuery, car il simplifie considérablement le processus de codage. Vous pouvez en savoir plus sur jQuery et télécharger la dernière bibliothèque sur le site officiel de jQuery http://jquery.com/.
  • 41. 30 Présentation de Sublime Text Sublime Text est un éditeur de texte générique codé en C++ et Python, disponible sur Windows et Linux. Le logiciel a été conçu tout d’abord comme une extension pour Vim, riche en fonctionnalités. Depuis la version 3.0, l’éditeur prend en charge plus de 44 langages de programmation majeurs, tandis que des plugins sont souvent disponibles pour des langages plus rares[10] . Sublime Text intègre la plupart des fonctionnalités de base d’un éditeur de texte, dont la coloration syntaxique personnalisable avec divers thème de couleur, de l’auto complétion, un système de plugins… L’éditeur propose cependant des fonctions plus avancées, dont : Minimap : prévisualisation de tout le fichier dans une barre latérale Sélection et édition dans plusieurs sections de code en parallèle Marque-page au sein même des fichiers Sauvegarde automatique Recherche et remplacement par expression régulière Support des macros et de plugins en Python Personnalisation des raccourcis clavier
  • 42. 31 Chapitre 5 : ANALYSE CONCEPTUELLE La conception permet l'étude des spécifications fonctionnelles exprimées antérieurement afin de savoir ce que le système va réaliser réellement en termes de métier. Elle préconise la représentation du système dans un modèle statique et un modèle dynamique. 5.1. Dictionnaire des données Le dictionnaire de données permet de recenser toutes les informations nécessaires à la création de la base de données relationnelle. Il précise le libellé de la donnée, le nom du champ, le type et la dimension de la donnée. Le tableau 10 représente le dictionnaire des données de notre projet. Tableau 10. Dictionnaire des données CHAMPS DESCRIPTION FORMAT TAILLE bloc_dispo Nombre de la place disponible dans une porte N 2 bloc_num Numéro du bloc N 2 bloc_place Nombre de place maximum d’une porte N 2 date_debut Date début du renouvèlement AN 10 date_exclusion Date d’exclusion AN 10 date_fin Date fin de renouvèlement AN 10 date_inscription Date d’inscription AN 10 date_permutation Date de permutation AN 10 lab_filiere Nom de filière A 50 nom Nom de l’étudiant A 50 nom_user Nom de l’administrateur A 50 num_inscription Numéro d’inscription de l’étudiant AN 10 password Mot de passe de l’administrateur AN 30 porte Identifiant de la porte A 2 prenom Prénom de l’étudiant A 50 profil Photo de profil d’un étudiant AN 50 situation_univ Observation de l’étudiant A 10 sexe Sexe d’étudiant A 10 username Login d’administrateur AN 30 A : Alphabétique, AN : Alphanumérique, N : Numérique
  • 43. 32 5.2. Règle des gestions La spécification des règles de gestion, menée parallèlement avec le recueil des données, permet la mise en place des relations entre objets. Dans la mise en place de ces liens, les règles suivantes sont explicitées : RG1 : Seul l’administrateur peut avoir l’accès dans l’application. RG2 : Seul l’administrateur peut avoir le droit d’ajouter un étudiant dans le logement. RG3 : Seul l’administrateur peut avoir le droit d’exclure un étudiant dans le logement. RG4 : Un étudiant peut-être inscrit dans un seul logement. RG5 : Un étudiant doit renouveler son logement chaque année. RG6 : Tous les triplant ne peuvent pas avoir un logement. RG7 : Un étudiant ne peut pas occuper un logement plus de 7ans d’année pédagogique. 5.3. Représentation et spécifique des besoins La modélisation des traitements considère la partie dynamique du système : la traduction en actions des règles de gestion de l’entreprise. Pour cela, la notation UML va être utilisée et certains diagrammes utiles seront associés à cette modélisation. Ce sont les diagrammes de cas d’utilisation. 5.3.1. Diagrammes des cas d’utilisations Le diagramme de cas d’utilisation a pour but de donner une vision globale sur les interfaces de future application. C’est le premier diagramme UML constitué d’un ensemble d’acteurs qui agit sur des cas d’utilisation et qui décrit sous la forme d’actions et des réactions, le comportement d’un système du point de vue utilisateur. Pour effectuer ce genre de diagramme, il faut commencer par définir et identifier l'acteur du système. La figure 6 représente le formalisme d'un cas d'utilisation Figure 6. Formalisme d'un cas d'utilisation Le diagramme de cas d'utilisation donne une vision globale des communications acteurs / domaine. Il met en jeu les concepts suivants : Acteur : Participant externe qui interagit avec le système, il représente les cas les plus importants du système en cours d'utilisation.
  • 44. 33 Cas d’utilisation : Il modélise une interaction entre le système informatique à développer et un utilisateur ou acteur interagissant avec le système. Plus précisément, un cas d’utilisation décrit une séquence d’actions réalisées par le système qui produit un résultat observable pour un acteur. Relation entre cas d’utilisation : Il y a la relation utilisée (include) qui est employée quand deux cas d’utilisation ont en commun une même fonctionnalité et que l’on souhaite factoriser celle-ci en créant un cas intermédiaire, afin de marquer les différences d’utilisation. Et il y a la relation étend (extend) qui est utilisé quand un cas est globalement similaire à un autre, tout en effectuant un peu plus de travail ou un travail plus spécifique. Cette notion permet d’identifier des cas particuliers dès le début ou lorsque l’attitude face à un utilisateur spécifique du système doit être spécialisée ou adaptée. Dans le cas de notre système, notre acteur est l’administrateur. La figure 7 représente de diagramme de cas d’utilisation globale de notre projet. Figure 7. Diagramme de cas d'utilisation globale
  • 45. 34 5.3.2. Priorisation des cas d’utilisation Prioriser les cas d’utilisation et classer l’exécution de cas d’utilisation par ordre chronologique. Le tableau 11 montre la priorisation de cas d’utilisation. Tableau 11. Priorisation de cas d'utilisation Ordre de priorisation Cas d’utilisation Haute S’authentifier Haute Saisir nouveau demande Haute Saisir logement Haute Saisir filière Haute Ajout étudiant dans un logement libre Haute Renouvèlement Moyen Exclure de l’étudiant Faible Annulation demande d’un étudiant Moyen Consulter information d’un étudiant Faible Permutation Description textuelle des cas d’utilisation Tableau 12. Cas d'utilisation " Saisir nouveau demande " Sommaire d’identification Titre : Saisir demande Résumé : Ce cas d’utilisation permet de créer de nouvelles demandes. Acteur : Administrateur Pré – condition Page principale de l’application. Description des scénarii Scénarii nominaux 1. L’utilisateur clique sur le menu Demande. 2. Le système affiche la fenêtre de demande. 3. L’utilisateur remplie tous les informations et valider les informations 4. Le système affiche le panel de confirmation. 5. Le système affiche la liste des demandes. Scénarii alternatifs 3.1. Tous les champs obligatoires ne sont pas remplis. 3.1.1. Le système informe l’utilisateur. 3.1.2. Reprise de l’enchaînement du scénario nominal au point 3. Scénarii d’exception 3.2. L’utilisateur annule l’opération. Post – condition Liste des demandes faites par l’utilisateur.
  • 46. 35 Tableau 13. Cas d'utilisation " Saisir logement " Sommaire d’identification Titre : Saisir logement Résumé : Ce cas d’utilisation permet d’ajouter le logement. Acteur : Administrateur Pré – condition Page principale de l’application Description des scénarii Scénarii nominaux 1. L’utilisateur clique sur le menu Logement. 2. Le système affiche la fenêtre de logement. 3. L’utilisateur remplie tous les informations et valider les informations 4. Le système affiche le panel de confirmation. 5. Le système affiche la liste des logements. Scénarii alternatifs 3.1. Tous les champs obligatoires ne sont pas remplis. 3.1.1. Le système informe l’utilisateur. 3.1.2. Reprise de l’enchaînement du scénario nominal au point 3. Scénarii d’exception 3.2. L’utilisateur annule l’opération. Post – condition Liste des logements faire par l’utilisateur. Tableau 14. Cas d'utilisation " Saisir filière " Sommaire d’identification Titre : Saisir filière Résumé : Ce cas d’utilisation permet d’ajouter la filière. Acteur : Administrateur Pré – condition Page principale de l’application Description des scénarii Scénarii nominaux 1. L’utilisateur clique sur le menu filière. 2. Le système affiche la fenêtre de filière. 3. L’utilisateur remplie le champ et valider la saisie 4. Le système affiche le panel de confirmation. 5. Le système affiche la liste des filières. Scénarii alternatifs 3.1. Tous les champs obligatoires ne sont pas remplis. 3.1.1. Le système informe l’utilisateur. 3.1.2. Reprise de l’enchaînement du scénario nominal au point 3. Scénarii d’exception 3.2. L’utilisateur annule l’opération. Post – condition Liste des logements faire par l’utilisateur.
  • 47. 36 Tableau 15. Cas d'utilisation "Validation demande d'un étudiant" Sommaire d’identification Titre : Validation demande Résumé : Ce cas d’utilisation permet d’ajouter un étudiant dans un bloc libre. Acteur : Administrateur Pré – condition Page principale de l’application Description des scénarii Scénarii nominaux 1. L’utilisateur clique sur le menu demande. 2. Le système affiche la fenêtre de demande. 3. L’utilisateur clique le bouton valider sur la liste 4. Le système affiche le panel d’inscription. 5. L’utilisateur choisir le bloc libre et clique le bouton inscrire. 6. Le système affiche le message de confirmation 7. Le système redirige à la liste des étudiants inscrit dans les logements Scénarii alternatifs 5.1. Le champ obligatoire ne sont pas remplis. 5.1.1. Le système informe l’utilisateur. 5.1.2. Reprise de l’enchaînement du scénario nominal au point 5. Scénarii d’exception 5.2. L’utilisateur annule l’opération. Post – condition Liste des étudiants inscrits dans les logements. Tableau 16. Cas d'utilisation "Renouvèlement" Sommaire d’identification Titre : Renouvèlement Résumé : Ce cas d’utilisation permet de renouveler le bloc d’un étudiant. Acteur : Administrateur Pré – condition Page principale de l’application Description des scénarii Scénarii nominaux 1. L’utilisateur clique l’icône renouveler d’un étudiant n’a pas encore renouvelé son bloc. 2. Le système affiche la fenêtre de renouvèlement. 3. L’utilisateur choisir la date de renouvèlement et clique le bouton renouvelé pour faire la mise à jour l’information d’un étudiant 4. Le système affiche le message de confirmation 5. Le système redirige à la liste des étudiants inscrit dans les logements Scénarii alternatifs 5.1. Le champ obligatoire ne sont pas remplis. 5.1.1. Le système informe l’utilisateur. 5.1.2. Reprise de l’enchaînement du scénario nominal au point 5. Scénarii d’exception 5.2. L’utilisateur annule l’opération. Post – condition Liste des étudiants inscrits dans les logements.
  • 48. 37 Tableau 17. Cas d'utilisation "Exclure étudiant" Sommaire d’identification Titre : Exclure étudiant Résumé : Ce cas d’utilisation permet d’exclure un étudiant dans un bloc. Acteur : Administrateur Pré – condition Page principale de l’application Description des scénarii Scénarii nominaux 1. L’utilisateur clique l’icône exclure d’un étudiant qui n’a pas le droit de loger. 2. Le système affiche le message de confirmation 3. L’utilisateur confirme l’exclusion. 4. Le système valide l’opération. 5. L’affichage des étudiants inscrits sont mise à jour Scénarii alternatifs 1.1. L’utilisateur s’est trompé d’étudiant. 1.1.1. Reprise de l’enchaînement du scénario nominal au point 1. 4.1. L’utilisateur ne confirme pas l’exclusion. 4.1.1. Le système retire le panel de Confirmation. 4.1.2. Reprise de l’enchaînement du scénario nominal au point 1. Scénarii d’exception 2.1. L’utilisateur annule l’opération. Post – condition Liste des étudiants inscrits dans les logements. Tableau 18. Cas d'utilisation "Annuler demande" Sommaire d’identification Titre : Annuler demande Résumé : Ce cas d’utilisation permet d’annuler la demande d’un étudiant. Acteur : Administrateur Pré – condition Page principale de l’application Description des scénarii Scénarii nominaux 1. L’utilisateur clique sur le menu demande. 2. Le système affiche la fenêtre de demande. 3. L’utilisateur clique le bouton annuler sur la liste 4. Le système affiche le message de confirmation 5. L’utilisateur confirme l’annulation. 6. Le système valide l’opération. 7. Le système reste à la liste des demandes. Scénarii alternatifs 3.1. L’utilisateur s’est trompé d’étudiant. 3.1.1. Reprise de l’enchaînement du scénario nominal au point 1. 5.1. L’utilisateur annule l’annulation. 5.1.1. Reprise de l’enchainement du scénario nominal au point 2. Scénarii d’exception 5.2. L’utilisateur clique le bouton valider. Post – condition Liste des demandes faites par l’utilisateur.
  • 49. 38 Tableau 19. Cas d'utilisation "Consulter l'information d'un étudiant" Sommaire d’identification Titre : Consulter l'information d'un étudiant Résumé : Ce cas d’utilisation permet de consulter l’information d’un étudiant. Acteur : Administrateur Pré – condition Page principale de l’application Description des scénarii Scénarii nominaux 1. L’utilisateur clique l’icône info d’un étudiant dans la liste des étudiants inscrits dans les logements. 2. Le système affiche la fenêtre d’information d’un étudiant. Scénarii d’exception 1.1. L’utilisateur sélectionne un autre étudiant. 1.2. L’utilisateur ferme la fenêtre. Post – condition Liste des étudiants inscrits dans les logements. Tableau 20. Cas d'utilisation "Permutation" Sommaire d’identification Titre : Permutation Résumé : Ce cas d’utilisation permet de permuter le bloc entre deux étudiants. Acteur : Administrateur Pré – condition Page principale de l’application Description des scénarii Scénarii nominaux 1. L’utilisateur clique le menu Permuter. 2. Le système affiche la fenêtre de permutation. 3. L’utilisateur choix les deux étudiants a besoin de permutation et valide l’opération pour faire la mise à jour l’information d’un étudiant. 4. Le système affiche le message de confirmation. 5. L’affichage des étudiants ont permuté. Scénarii alternatifs 3.1. L’utilisateur choix les deux étudiants de même bloc. 3.1.1. Affiche le message d’erreur et retour au scénario nominal au point 3. Scénarii d’exception 3.2. L’utilisateur annule l’opération. Post – condition Liste des étudiants faits la permutation.
  • 50. 39 Figure 9. DSS de cas d'utilisation "Nouvelle demande" 5.3.3. Diagramme des séquences système pour chaque cas d’utilisation Le diagramme de séquence système est une représentation graphique de la chronologie des échanges de messages de l’acteur avec le système. Il met en jeu les éléments suivants : ➢ Acteurs ➢ Objets (instances) ➢ Messages (cas d'utilisation, appels d’opération) Pour chaque cas d’utilisation, nous avons un diagramme de séquence système correspondant. La figure 8 représente le diagramme de séquence système de cas d’utilisation « Authentification » Figure 8. DSS de cas d'utilisation "Authentification" La figure 9 représente le diagramme de séquence système de cas d’utilisation « Nouvelle demande »
  • 51. 40 La figure 10 représente le diagramme de séquence système de cas d’utilisation « Saisir logement » Figure 10. DSS de cas d'utilisation "Saisir logement" La figure 11 représente le diagramme de séquence système de cas d’utilisation « Saisir filière » Figure 11. DSS de cas d'utilisation "Saisir filière"
  • 52. 41 La figure 12 représente le diagramme de séquence système de cas d’utilisation « Valide demande » Figure 12. DSS de cas d'utilisation "Valide demande" La figure 13 représente le diagramme de séquence système de cas d’utilisation « Renouvèlement » Figure 13. DSS de cas d'utilisation "Renouvèlement"
  • 53. 42 La figure 14 représente le diagramme de séquence système de cas d’utilisation « Exclure étudiant » Figure 14. DSS de cas d'utilisation "Exclure étudiant" La figure 15 représente le diagramme de séquence système de cas d’utilisation « Annuler demande » Figure 15. DSS de cas d'utilisation "Annuler demande"
  • 54. 43 La figure 16 représente le diagramme de séquence système de cas d’utilisation « Permutation » Figure 16. DSS de cas d'utilisation "Permutation " 5.4. Spécification des besoins techniques Les besoins techniques décrivent toutes les contraintes techniques, ergonomiques et esthétiques auxquelles est soumis le système pour sa réalisation et pour son bon fonctionnement. Et en ce qui concerne notre application, nous avons dégagé les besoins suivants :  La disponibilité: l’application doit être disponible pour être utilisé par n’importe quel utilisateur.  La fiabilité: les données fournies par l’application doivent être fiables.  La convivialité de l’interface graphique : l’application doit fournir une interface conviviale et simple pour tout type d’utilisateur car elle présente le premier contact de l’utilisateur avec l’application et par le biais de celle-ci on découvrira ses fonctionnalités.  Une solution ouverte et évoluée: l’application peut être améliorée par l’ajout d’autres modules pour garantir la souplesse, l’évolutivité et l’ouverture de la solution.  La possibilité de retourner au menu principal de l’application à partir de n’importe quelle fenêtre de celle-ci.
  • 55. 44 5.5. Modélisation du domaine La modélisation du domaine est une visualisation des concepts d’un domaine du monde réel représentée par un diagramme de classe simplifié. Elle met en évidence les propriétés importantes. Les objets de ce modèle doivent être des objets métiers. La figure 17 représente la modèle du domaine. Figure 17. Modèle de domaine
  • 56. 45 Chapitre 6 : Conception détaillée (UML) Après avoir achevé la phase d'analyse et spécifications, il nous faudra à présent entamer la phase de conception. Cette étape s'avère primordiale pour le déroulement du projet et a pour but de détailler les tâches à entreprendre ainsi que de préparer le terrain pour l'étape de réalisation. 6.1. Architecture du système Afin de structurer et fractionner le code du projet, nous n’avons estimé que le MVC (Model-Vue-Contrôleur) est adéquat comme motif de conception (ou design pattern). En utilisant MVC, on sépare l’application en trois couches principales : La couche « Model » La couche Model représente la partie de l’application qui exécute la logique métier. Cela signifie qu’elle est responsable de récupérer les données, de les convertir selon les concepts chargés de sens pour votre application, tels que le traitement, la validation, l’association et beaucoup d’autres taches concernant la manipulation des données. A première vue, l’objet Model peut être vu comme la première couche d’interaction avec n’importe quelle base de données que vous pourriez utiliser pour votre application. Mais plus globalement, il fait partie des concepts majeurs autour desquels vous allez exécuter votre application. Dans le cas d’un réseau social la couche Model s’occupe des tâches comme de sauvegarder des données, de sauvegarder des associations d’amis, d’enregistrer et de récupérer les photos des utilisateurs, de trouver des suggestions de nouveaux amis, etc.… Tandis que les objets Model seront Ami, User, Commentaire, Photo. La couche « Vue » La Vue retourne une présentation des données venant du model. Étant séparée par les Objets Model, elle est responsable de l’utilisation des informations dont elle dispose pour produire une interface de présentation de votre application. Par exemple, de la même manière que la couche Model retourne un ensemble de données, la Vue utilise ces données pour fournir une page HTML les contenant. Ou un résultat XML formaté pour que d’autres l’utilisent. La couche Vue n’est pas seulement limitée au HTML ou à la représentation en texte de données. Elle peut aussi être utilisée pour offrir une grande variété de formats en fonction de vos besoins, comme les vidéos, la musique, les documents et tous autres formats auquel vous pouvez penser. La couche « Controller » La couche Controller gère les requêtes des utilisateurs. Elle est responsable de retourner une réponse avec l’aide mutuelle des couches Model et Vue.
  • 57. 46 Les Controller peuvent être imaginés comme des managers qui ont pour mission que toutes les ressources souhaitées pour accomplir une tâche sont déléguées aux travailleurs corrects. Il attend des requêtes des clients, vérifie leur validité selon l’authentification et les règles d’autorisation, délègue les données récupérées et traitées par le Model, et sélectionne les types de présentation correcte que le client accepte, pour finalement déléguer le processus d’affichage à la couche Vue. La figure 18 illustre l’architecture du modèle MVC. Figure 18. Schéma de l’architecture du modèle MVC 6.2. Diagramme de séquence de conception pour chaque cas d’utilisation Avec le nombre de cas d’utilisation, mettre tous les diagrammes de séquence de conception prendrait trop de place. Nous allons donc représenter quelques diagrammes Figure 19. DSC de cas d'utilisation "Nouvelle demande"
  • 58. 47 seulement. La figure 19 représente le diagramme de séquence de conception du cas d’utilisation « Nouvelle demande » La figure 20 représente le diagramme de séquence de conception du cas d’utilisation « Saisir logement » Figure 20. DSC de cas d'utilisation "Saisir logement" La figure 21 représente le diagramme de séquence de conception du cas d’utilisation « Saisir filière » Figure 21. DSC de cas d'utilisation "Saisir filière"
  • 59. 48 La figure 22 représente le diagramme de séquence de conception de cas d’utilisation « Valide demande » Figure 22. DSC de cas d'utilisation "Valide demande" La figure 23 représente le diagramme de séquence de conception de cas d’utilisation « Renouvèlement » Figure 23. DSC de cas d'utilisation "Renouvèlement"
  • 60. 49 La figure 24 représente le diagramme de séquence de conception de cas d’utilisation « Exclure d’un étudiant » Figure 24. DSC de cas d'utilisation "Exclure d'étudiant" La figure 25 représente le diagramme de séquence de conception de cas d’utilisation « Permutation » Figure 25. DSC de cas d'utilisation "Permutation"
  • 61. 50 6.3. Diagramme de classe de conception pour chaque cas d’utilisation Dans cette partie, nous allons établir quelques diagrammes de classe de conception. La figure 26 nous montre le diagramme de classe de conception du cas d’utilisation « Saisir nouvelle demande » Figure 26. DCC de cas d'utilisation "Saisir nouvelle demande" La figure 27 nous montre le diagramme de classe de conception du cas d’utilisation « Saisir logement » Figure 27. DCC de cas d'utilisation "Saisir logement" La figure 28 nous montre le diagramme de classe de conception du cas d’utilisation « Valide de la demande » Figure 28. DCC de cas d'utilisation "Valide de la demande"
  • 62. 51 6.4. Diagramme de classe de conception global La figure 29 présente le diagramme de classe de conception globale. Figure 29. Diagramme de classe de conception globale du projet 6.5. Diagramme de paquetages Un package est un conteneur logique permettant de regrouper et d'organiser les éléments dans le modèle UML. Un paquetage permet de regrouper sous une même appellation un ensemble d’élément de modélisation UML tels que : - Des classes, des composants, des nœuds, des collaborations, des cas d’utilisation,… - Des diagrammes de classes, de collaboration de séquence, de cas d’utilisation,… Le diagramme de packages permet de décomposer le système en catégories ou parties plus facilement observables, appelés « packages ». Cela permet également d’indiquer les acteurs qui interviennent dans chacun des packages. Celui de notre système se présente dans la figure 30.