SlideShare une entreprise Scribd logo
1  sur  119
UNIVERSITE DE FIANARANTSOA
ECOLE NATIONALE D’INFORMATIQUE
MEMOIRE DE FIN D’ETUDES POUR L’OBTENTION DU DIPLOME
DE LICENCE PROFESSIONNELLE
Mention : INFORMATIQUE
Parcours : Informatique Générale
Intitulé :
Présenté le 17 Mars 2020
par RAZAFINDRAZAKA Vatosoa
Membres du Jury :
 Président : Monsieur RAMAMONJISOA Andriantiana Bertin Olivier, ProfesseurTitulaire
 Examinateur : Mademoiselle RATIANANTITRA Volatiana Marielle, Doctorante en
Informatique
 Rapporteurs : Monsieur RALAIVAO Jean Christian, Assistant d’Enseignement Supérieur et
de Recherche
Monsieur GILANTE Gesazafy, Encadreur Professionnel
Année Universitaire 2018-2019
CONCEPTION ET REALISATION D’UNE
APPLICATION POUR LA GESTION DES
SOUTENANCES
I
CURRICULUM VITAE
RAZAFINDRAZAKA Vatosoa
Née le 22 Février à Ambalataretra - Ambalavao
Lot 28KIV/3605 Isada Fianarantsoa
Tél: 034 63 017 07 / 032 81 785 12
E-mail : razafindrazakav@gmail.com
FORMATIONS ET DIPLÔME
2018-2019 : Troisième année en Licence Professionnelle - École Nationale d’Informatique
Université de Fianarantsoa
Parcours : Informatique Générale
2017-2018 : Deuxième année en Licence Professionnelle - École Nationale d’Informatique
Université de Fianarantsoa
Parcours : Informatique Générale
2016-2017 : Première année de Licence Professionnelle - École Nationale d’Informatique
Université de Fianarantsoa
Parcours : Informatique Générale
2015-2016 : Élève de la classe Terminale de Série D au Lycée Rakotoarisoa Ambositra
Diplôme Obtenu : Baccalauréat Série D
STAGES ET EXPÉRIENCES PROFESSIONNELLES
2019 : Stage au sein de l’école nationale d’informatique Fianarantsoa
Thème : Conception et réalisation d’une application pour la gestion des
soutenances
Langage de programmation utilisé : Java Server Page, JavaScript
Framework: Spring Boot, Hibernate et AngularJS
SGBD : PostgreSQL
Système d’exploitation : Windows 8.1
Projet au sein de l’École Nationale d’Informatique :
- « Développement d’une application pour la gestion de location de voiture »
Langage de programmation : Java, ASP.net, Java Server Page
- « Développement d’une application hybride pour la réservation dans un
restaurant »
Framework : Ionic
II
- « Mise en œuvre d’un partage de fichier sous NFS et développement d’une
calculatrice exploitant le protocole RPC »
Système d’exploitation : Debian 9.5
Langage de programmation : C
2018 : Stage au sein de la société Socolait à Ivandry Antananarivo
Thème : Conception et réalisation d’une application pour la mise en vente des
produits
Langage de programmation utilisé : Python
Méthode : Agile
Framework : Django
SGBD : SQLite
Système d’exploitation : Windows 10
Projet au sein de l’Ecole Nationale d’Informatique :
- « Mise en œuvre de supervision à l’aide du protocole SNMP »
Logiciel utilisé : Cacti
- Développement d’une application web pour la gestion de location des
appartements
Langage de programmation utilisé : PHP5
2017 : Projet au sein de l’École Nationale d’Informatique
- « Création d’un site web »
Langage utilisé : HTML et CSS
Langage de Script : JavaScript
-Projet de fin d’année en première année de formation en licence
professionnelle au sein de l’Ecole Nationale d’Informatique
Thème : Développement d’une interface de configuration de réseau LAN
Langage utilisé : C et C++
Outils : Qt Creator
COMPÉTENCES EN INFORMATIQUE
Systèmes d’exploitation : Windows XP/7/8/10, Linux
Familles de distribution Linux : Ubuntu, Debian
Systèmes de gestion de base de données : MySQL, PostgreSQL, SQLite
Méthode de conception : MERISE, UP
Langage de modélisation : UML
Langages de programmation : C et C++, Python, Java, Visual Basic
Technologies web: HTML, CSS, PHP, ASP.net, JSP
Frameworks: Django, Ionic
Langages de Script : JavaScript, SQL
Routage : Cisco
Routage réseaux : routage par défaut, routage statique, RIP, OSPF
III
Supervision: Cacti
Protocol: TCI/IP, SNMP, SSH, SMTP, HTTP/HTPPS, FTP, MPLS
Administration système et réseaux : Serveur DNS, FTP, WEB, Pare-feu
CONNAISSANCES LINGUISTIQUES
Aptitude à :
Comprendre à
l’audition
Lire Écrire et à rédiger Communiquer
oralement et à
parler
TB B AB P TB B AB P TB B AB P TB B AB P
Malagasy X X X X
Français X X X X
Anglais X X X X
Grille d’évaluation : TB : Très Bien B : Bien AB : Assez Bien P : Passable
DIVERS
Loisirs : Lire, Basket, Piscine, Guitare.
II
DEDICACES
Je dédie ce travail à mes chers parents jamais je ne saurais m'exprimé quant aux sacrifices et
aux dévouements que vous avez consacrés à mon éducation et mes études. Les mots expressifs
soient-ils restent faibles pour énoncer ma gratitude hautement profonde.
III
SOMMAIRE
CURRICULUM VITAE .............................................................................................................I
DEDICACES..............................................................................................................................II
SOMMAIRE............................................................................................................................. III
REMECIEMENTS.................................................................................................................... V
LISTE DES FIGURES .............................................................................................................VI
LISTE DES TABLEAUX ........................................................................................................IX
NOMENCLATURE.................................................................................................................. X
INTRODUCTION GENERALE................................................................................................1
PARTIE I : INTRODUCTION
Chapitre 1. Présentation de l’Ecole Nationale d’Informatique ..............................................2
1.1. Information d’ordre général .......................................................................................2
1.2. Missions et historique.................................................................................................2
1.3. Organigramme institutionnel de l’ENI.......................................................................3
1.4. Domaine de spécialisation..........................................................................................5
1.5. Architecture des formations pédagogiques ................................................................6
1.6. Relations de l’ENI avec les entreprises et les organismes .........................................8
1.7. Partenariat au niveau international.............................................................................9
1.8. Débouchés professionnels avec des diplômés..........................................................10
1.9. Ressources humaines................................................................................................12
Chapitre 2. DESCRIPTION DU PROJET ...........................................................................13
2.1. Formulation ...............................................................................................................13
2.2. Objectif et besoins d’utilisateur.................................................................................13
2.3. Moyens nécessaires à la réalisation du projet...........................................................13
2.4. Résultats attendus .....................................................................................................14
PARTIE II : ANALYSE ET CONCEPTION
Chapitre 3. ANALYSE PREALABLE.................................................................................16
3.1. Analyse de l’existant ................................................................................................16
3.2. Critique de l’existant ................................................................................................18
3.3. Proposition des solutions....................................................................................18
3.4. Conception avant-projet ...........................................................................................19
Chapitre 4. ANALYSE CONCEPTUELLE.........................................................................34
4.1. Dictionnaire des données..........................................................................................34
IV
4.2. Règles de gestion......................................................................................................35
4.3. Représentation et spécification des besoins .............................................................36
4.4. Modélisation du domaine .........................................................................................43
Chapitre 5. CONCEPTION DETAILLEE ...........................................................................45
5.1. Architecture du système ...........................................................................................45
5.2. Diagramme de séquence de conception ...................................................................45
5.3. Diagramme de classe de conception pour chaque cas d’utilisation .........................48
5.4. Diagramme de classe de conception global..............................................................50
5.5. Diagramme de paquetages........................................................................................51
5.6. Diagramme de déploiement......................................................................................52
PARTIE III : REALISATION
Chapitre 6. MISE EN PLACE DE L’ENVIRONNEMENT DE DEVELOPPEMENT ...54
6.1. Installation et configuration des outils .....................................................................54
6.2. Architecture de l’application ..............................................................................61
Chapitre 7. DEVELOPPEMENT DE L’APPLICATION....................................................64
7.1. Création de la base de données.................................................................................64
7.2. Codage de l’application............................................................................................71
7.3. Présentation de l’application ....................................................................................84
CONCLUSION ET PERSPECTIVES .....................................................................................88
REFERENCES BIBLIOGRAPHIQUES .............................................................................. XIV
REFERENCES WEBOGRAPHIQUES ..................................................................................XV
GLOSSAIRE ......................................................................................................................... XVI
ANNEXES ..........................................................................................................................XVIII
TABLE DE MATIERES ....................................................................................................... XXI
RESUME.............................................................................................................................XXIV
ABSTRACT........................................................................................................................XXIV
V
REMECIEMENTS
Je tiens particulièrement à remercier :
 Monsieur RAFAMANTANANTSOA Fontaine, Professeur à l’Université de
Fianarantsoa, Président de l’Université de Fianarantsoa, pour la bonne organisation de
l’année universitaire ;
 Monsieur RAMAMONJISOA Andriantiana Bertin Olivier, Professeur Titulaire à
l’Université de Fianarantsoa, Directeur de l’Ecole Nationale d’Informatique, pour tous
ses efforts à garder à tout prix l’honneur de l’Ecole en tant que pépinière des élites
informaticiennes malgaches ;
 Monsieur RALAIVAO Jean Christian, Responsable de Parcours « Génie Logiciel et
Base de Données », en tant qu’encadreur pédagogique.
 Monsieur GILANTE Gesazafy, Responsable de Parcours « Informatique Générale » en
tant qu’encadreur professionnel ;
 Monsieur RABETAFIKA Louis Haja, Chef du département de la formation théorique
de Ecole Nationale d’Informatique pour son agréable accueil et précieux conseils ;
 Monsieur ANDRIAMAMPANDRY Ranaivoson Tina et Madame RAMANITRA Rosa,
secrétaires de la mention Informatique à l’Ecole Nationale d’Informatique pour leur
agréable accueil.
Je profite de cette occasion pour remercier :
 Les membres du jury, tous les enseignants de l’Ecole Nationale d’Informatique, pour
m’avoir enseigné et donné des cours intéressants ;
 L’ensemble du personnel administrative et technique de l’Ecole Nationale
d’Informatique, pour leur aimable collaboration et leurs diverses contributions ;
 Ma famille et à tous ceux qui ont participé à la réalisation de ce stage, pour leur soutien
et leur aide.
VI
LISTE DES FIGURES
Figure 1: Organigramme de l’Ecole Nationale d’Informatique. ................................................4
Figure 2: Diagramme de flux de la société...............................................................................17
Figure 3: Caractéristiques de J2EE...........................................................................................26
Figure 4: Caractéristiques de Javascript. ..................................................................................28
Figure 5: Caractéristiques de Spring Boot................................................................................29
Figure 6: Caractéristiques de Hibernate. ..................................................................................30
Figure 7; Caractéristiques de JAVA. ........................................................................................31
Figure 8: Diagramme de cas d’utilisation globale....................................................................38
Figure 9: Diagramme de séquence pour le cas d’utilisation « s’authentifier ». .......................40
Figure 10: Diagramme de séquence pour le cas d’utilisation « ajouter service ». ...................41
Figure 11: Diagramme de séquence pour le cas d’utilisation « modifier service ». ................41
Figure 12: Diagramme de séquence pour le cas d’utilisation « supprimer service ». ..............42
Figure 13: Diagramme de séquence pour le cas d’utilisation « gérer calendrier ». .................43
Figure 14: Modèle de domaine.................................................................................................44
Figure 15: modèle MVC...........................................................................................................45
Figure 16: Diagramme de séquence conception pour le cas d’utilisation « s’authentifier »....46
Figure 17: Diagramme de séquence conception pour le cas d’utilisation « Ajouter service ». 46
Figure 18: Diagramme de séquence conception pour le cas d’utilisation « Modifier service ».
..................................................................................................................................................47
Figure 19: Diagramme de séquence conception pour le cas d’utilisation « supprimer service ».
..................................................................................................................................................48
Figure 20: Diagramme de classe conception « s’authentifier ». ..............................................48
Figure 21: Diagramme de classe conception « gérer étudiant »...............................................49
Figure 22: Diagramme de classe conception « gérer enseignant ». .........................................49
Figure 23: Diagramme de classe conception « gérer jury ». ....................................................49
Figure 24: Diagramme de classe conception « gérer calendrier »............................................50
Figure 25: Diagramme de classe conception global. ................................................................51
Figure 26: Diagramme de paquetage........................................................................................52
Figure 27: Diagramme de déploiement. ...................................................................................53
Figure 28: Installation de Visual Paradigm. .............................................................................54
Figure 29: Installation de Visual Paradigm setup.....................................................................55
Figure 30: Fin de réglage de l'installation de Visual Paradigm................................................55
Figure 31: Fin de l'installation de Visual Paradigm. ................................................................56
Figure 32: Début de l’installation de XAMPP. ........................................................................56
Figure 33: Fin de l’installation de XAMPP..............................................................................57
Figure 34: Configuration de l’installation de XAMPP.............................................................57
Figure 35: Interface du control panel de XAMPP....................................................................58
Figure 36: Installation de JDK. ................................................................................................58
Figure 37: Progression de l'installation de JAVA. ...................................................................59
Figure 38: Configuration de l'installation de JRE. ...................................................................59
Figure 39: Fin de l'installation de JAVA SE. ...........................................................................60
Figure 40: Dossier d'installation de Spring Tool Suite.............................................................60
VII
Figure 41: Lancement de Spring Tool Suite.............................................................................61
Figure 42: Architecture de l’application...................................................................................62
Figure 43: Architecture de l'application partie Backend. .........................................................62
Figure 44: Architecture de l'application partie Frontend..........................................................63
Figure 45: Interface de PgAdmin. ............................................................................................64
Figure 46: Demande de mot de passe d'authentification de PgAdmin4. ..................................64
Figure 47: Authentification du PgAdmin. ................................................................................65
Figure 48: Interface d'option de création de base de données. .................................................65
Figure 49; Création de la base de données « gestionapi »........................................................66
Figure 50: Création de la table « jury ». ...................................................................................67
Figure 51: Création de la table « étudiant ». ............................................................................67
Figure 52: Création de la table « enseignant ». ........................................................................68
Figure 53: Création de la table « theme ».................................................................................68
Figure 54: Création de la table « niveau »................................................................................68
Figure 55: Création de la table « parcours ».............................................................................69
Figure 56: Création de la table « etablissement ».....................................................................69
Figure 57: Création de la table « annee ». ................................................................................69
Figure 58: Création de la table « service ». ..............................................................................70
Figure 59: Création de la table « utilisateur ». .........................................................................70
Figure 60: Création de la table « calendrier ». .........................................................................71
Figure 61: Code du modèle d'une table «jury »........................................................................72
Figure 62: Code de « repository annee »..................................................................................73
Figure 63: Code liste de table « jury ». ....................................................................................73
Figure 64: Code pour créer un jury. .........................................................................................73
Figure 65: Code de modification du jury. ................................................................................74
Figure 66: Code de suppression du jury. ..................................................................................74
Figure 67: Code d’exécution de partie Backend. .....................................................................74
Figure 68: Création de la table jury partie affichage. ...............................................................75
Figure 69: Code de service de table jury. .................................................................................76
Figure 70: Code de création de lien de table jury.....................................................................77
Figure 71: Code de routing module de création du jury...........................................................77
Figure 72: Code de module de création de jury. ......................................................................78
Figure 73: Code de component généré automatiquement. .......................................................78
Figure 74: Code component de création de jury. .....................................................................79
Figure 75: Code html de l'authentification de l'application......................................................80
Figure 76: Code html de l'accueil de l'application. ..................................................................80
Figure 77: Code html du jury ...................................................................................................81
Figure 78: Code html de l'étudiant. ..........................................................................................82
Figure 79: Code html de l'enseignant. ......................................................................................83
Figure 80: Authentification. .....................................................................................................84
Figure 81: Page d’accueil. ........................................................................................................85
Figure 82: Interface du menu jury. ...........................................................................................85
Figure 83: Interface du menu étudiant......................................................................................86
Figure 84: Interface du menu enseignant. ................................................................................86
VII
I
Figure 85: Interface du menu calendrier ..................................................................................87
Figure 86: Procès-verbal......................................................................................................XVIII
Figure 87: Fiche Technique................................................................................................... XIX
Figure 88: Grille d'évaluation..................................................................................................XX
IX
LISTE DES TABLEAUX
Tableau 1: Organisation du système de formation pédagogique de l’Ecole. .............................6
Tableau 2: Architecture des études correspondant au système LMD. .......................................7
Tableau 3: Liste des formations existantes à l’ENI....................................................................7
Tableau 4: Débouchés professionnels éventuels des diplômés. ...............................................11
Tableau 5: Caractéristiques de l’ordinateur utilisé...................................................................14
Tableau 6: Caractéristiques des logiciels utilisés. ....................................................................14
Tableau 7: les moyens matériels...............................................................................................17
Tableau 8: les moyens logiciels................................................................................................18
Tableau 9: Avantages et inconvénients des solutions proposées. ............................................19
Tableau 10: Comparaison entre MERISE et XP. .....................................................................19
Tableau 11: comparaison entre Win ‘Design et Visual Paradigm. ..........................................22
Tableau 12: Comparaison des SGBD. ......................................................................................24
Tableau 13: Comparaison entre PHP et J2EE. .........................................................................25
Tableau 14: Comparaison entre JavaScript et Java ..................................................................27
Tableau 15: Comparaison entre Spring Boot, Hibernate et Struts. ..........................................28
Tableau 16: Comparaison entre AngularJS et ReactJS. ...........................................................30
Tableau 17: Comparaison entre Spring Tool Suite et NetBeans. .............................................32
Tableau 18: Comparaison entre VS Code et Sublime Text......................................................33
Tableau 19: Dictionnaire des données......................................................................................34
Tableau 20: Besoins fonctionnels des acteurs. .........................................................................37
Tableau 21: priorisation des cas d’utilisations. ........................................................................38
X
NOMENCLATURE
API Application Programming Interface
AUF Agence Universitaire de la Francophonie
B2B Business to Business
BFV-SG Bankin’ny Fampandrosoana sy ny Varotra –
Société Générale
BIANCO Bureau Indépendant Anti-Corruption
BNGRC Bureau National de Gestion des Risques et
des catastrophes CEDII-Fianarantsoa
BTS Brevet de Technicien Supérieur
CARI Colloque Africain sur la Recherche en
Informatique
CITEF Conférence Internationale des Ecoles de
formation d’Ingénieurs et Techniciens
d’Expression Française
CHU Centre Hospitalier Universitaire
CNH Commission Nationale d’Habilitation
CNRE Centre National de Recherche sur
l’Environnement
CNRIT Centre National de Recherches Industrielles
et Technologiques
COFAV Corridor forestier de Fandriana jusqu’à
Vondrozo
CUR Centre Universitaire Régional
DB2 DataBase 2
DTS Diplôme de Technicien Supérieur
DLC Development Learning Center
DUT Diplôme Universitaire de Technicien
ENI Ecole Nationale d’informatique
XI
FID Fonds d’Intervention pour le
Développement
FPPSM Forêts, Parcs et Pauvreté dans le Sud de
Madagascar
FTM Foiben’ny Taontsaritanin’i Madagasikara
GV Grille d’évaluation
HACCP Hazard Analysis Critical Control Point
HDD Hard Disk Drive
HTML HyperText Markup Language
HTTP HyperText Transfert Protocol
IDE Investissements directs à l’étranger
IDE Integrated Development Environment
INSTAT Institut National de la Statistique
INPG Institut National Polytechnique de Grenoble
IOGA Institut et Observatoire Géophysique
d’Antananarivo
IREMIA Institut de Recherche en Mathématiques et
Informatique Appliquées
IRD Institut de Recherche pour le
Développement
ISO International Organization for Standard
J2EE Java 2 Enterprise Edition
JIRAMA Jiro sy Rano Malagasy
JS JavaScript
JVM Java Virtual Machine
LMD Licence- Master- Doctorat
MAEP Mécanisme africain d’évaluation par les
pairs
XII
MEF Metro Ethernet Forum
MESupRES Ministère de l’Enseignement Supérieur et de
la REcherche Scientifique
MFB Ministère des Finances et du Budget
MIC Madagascar Informatique Corporation
MVC Modèle-Vue-Contrôleur
MySQL My Structured Query Language
ORM Object Relational Mapping
POO Programmation Orientée Objet
PostgreSQL Postgres Structured Query Language
PRESUP Programme de renforcement en
l’Enseignement Supérieur
PV Procès-verbal
RG Règle de Gestion
Sap DB Sap DataBase
SEPT Société d’Exploitation du Port de Toamasina
SGBD Système de Gestion de Base de Données
SMMC Société de Manutention des Marchandises
Conventionnelles
Spring JMS Spring Java Message Service
Spring WS Spring Web Service
STS Spring Tool Suite
SQL Structured Query Language
TELMA Telecom Madagascar
TIC Technologies de l’Information et de la
communication
UML Unified Modeling Language
UP Unified Process
XII
I
UPST Université Paul Sabatier de Toulouse
WWF Fonds Mondial pour la Nature
XAMPP X Apache, MySQL, PHP and Perl
XP eXtreme Programming
1
INTRODUCTION GENERALE
Dans le cadre de la formation à l’Ecole Nationale d’Informatique, les étudiants ont été amenés
à finaliser leur formation de Licence professionnelle par un stage de trois mois. Ce stage permet
de confronter l’enseignement théorique reçu pendant les cours et les connaissances acquises
lors des précédentes expériences professionnels et des problématiques plus générales propres
au fonctionnement d’une organisation.
Pour notre part, le stage de fin d’études s’est déroulé au sein de l’Ecole Nationale
d’Informatique même, plus précisément dans le bureau du Responsable de Mention. L’objectif
de ce stage est la conception et la réalisation d’une application pour la gestion de la soutenance.
Pour ce faire, on utilise une méthode pour la conception, un langage pour le développement de
l’application et le SGBD pour la base de données.
Ces éléments qui peuvent paraîtres évidents d’un point de vue théorique, sont en pratique,
difficiles à mettre en place et à exploiter. Ce projet a donc débuté par une phase de
compréhension et de formulation pour ensuite s’appuyer sur l’analyse. Cette méthodologie a
été dictée par des contraintes et des objectifs de réalisation. La conception du système s’est
ensuite faite, formellement, sur la base des résultats de l’analyse validée par les personnels du
Responsable de Mention.
Ce mémoire propose, dans la première partie, la présentation du cadre de stage en présentant
l’Ecole Nationale d’Informatique. Ensuite, dans la seconde partie, l’analyse préalable composée
de l’analyse de l’existant suivi de la conception avant-projet et l’analyse conceptuelle en
effectuant la synthèse des besoins suivant les étapes de la méthode utilisée. Et enfin, dans la
dernière partie, la réalisation tout en exposant la présentation, suivi ensuite du développement.
PARTIE I : PRESENTATIONS
2
Chapitre 1. Présentation de l’Ecole Nationale d’Informatique
1.1.Information d’ordre général
L’Ecole Nationale d’Informatique, en abrégé ENI, est un établissement d’enseignement
supérieur rattaché académiquement et administrativement à l’Université de Fianarantsoa.
Le siège de l’Ecole se trouve à Tanambao- Antaninarenina à Fianarantsoa.
L’adresse pour la prise de contact avec l’Ecole est la suivante : Ecole Nationale
d’Informatique (ENI) Tanambao, Fianarantsoa. Le numéro de sa boîte postale est 1487 avec le
code postal 301. Téléphone : 034 05 733 36. Son adresse électronique est la suivante :
eni@univ-fianar.mg. Site Web : www.univ-fianar.mg/eni
1.2.Missions et historique
L’ENI se positionne sur l’échiquier socio-éducatif malgache comme étant le plus
puissant secteur de diffusion et de vulgarisation des connaissances et des technologies
informatiques.
Cette Ecole Supérieure peut être considérée aujourd’hui comme la vitrine et la pépinière
des élites informaticiennes du pays.
L’Ecole s’est constituée de façon progressive au sein du Centre Universitaire Régional
(CUR) de Fianarantsoa.
De façon formelle, l’ENI était 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 et des Ingénieurs de haut niveau, aptes à
répondre aux besoins et exigences d’Informatisation des entreprises, des sociétés et des organes
implantés à Madagascar.
L’ENI a pour conséquent pour mission de former des spécialistes informaticiens
compétents et opérationnels de différents niveaux notamment :
 En fournissant à des étudiants des connaissances de base en informatique ;
 En leur transmettant le savoir-faire requis, à travers la professionnalisation des
formations dispensées et en essayant une meilleure adéquation des formations par
rapport aux besoins évolutifs des sociétés et des entreprises.
 En initiant les étudiants aux activités de recherche dans les différents domaines des
Technologies de l’information et de la communication (TIC).
L’implantation de cette Ecole Supérieure de technologie de pointe dans un pays en
développement et dans une Province (ou Faritany) à tissu économique et industriel faiblement
développé ne l’a pourtant pas défavorisée, ni empêchée de former des spécialistes
informaticiens de bon niveau, qui sont recherchés par les entreprises, les sociétés et les
organismes publics et privés sur le marché de l’emploi.
3
La filière de formation d’Analystes Programmeurs a été mise en place à l’Ecole 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’Ecole en 1986.
Dans le cadre du Programme de renforcement en l’Enseignement Supérieur (PRESUP),
la filière de formation des Techniciens Supérieurs en Maintenance des Systèmes des
informatiques a été mise en place en 1986 grâce à l’appui matériel et financier de la Mission
Française de coopération auprès de l’Ambassade de France à Madagascar.
Une formation pour l’obtention de la certification CCNA et / ou NETWORK +.appelée«
CISCO Networking Academy » a été créée à l’Ecole en 2002-2003 grâce au partenariat avec
CISCO SYSTEM et l’Ecole Supérieure Polytechnique d’Antananarivo (ESPA). Cependant,
cette formation n’avait pas duré longtemps.
Une formation de troisième cycle a été ouverte à l’Ecole a été ouverte à l’Ecole 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 à la recherche dans les différents
domaines de l’Informatique, et notamment pour préparer la relève des Enseignants-Chercheurs
qui étaient en poste.
Pendant l’année 2007-2008, la formation en vue de l’obtention du diplôme de Licence
Professionnelle en Informatique a été mise en place à l’ENI avec les deux options suivantes de
formation :
- Génie Logiciel et base de Données
- Administration des Système et réseaux.
La mise en place à l’Ecole de ces deux options de formation devait répondre au besoin de
basculement vers le système Licence – Master – Doctorat (LMD). Mais la filière de formation
des Techniciens Supérieurs en Maintenance des Systèmes Informatiques a été gelée en 2009.
En vue de surmonter les difficultés de limitation de l’effectif des étudiants accueillis à
l’Ecole, notamment à cause du manque d’infrastructures, un système de « Formation Hybride
» a été mise en place à partir de l’année 2010. Il s’agit en effet d’un système de formation semi
présentielle et à distance avec l’utilisation de la visioconférence pour la formation à distance.
Le système de formation hybride a été ainsi créé à Fianarantsoa ainsi qu’Université de Toliara.
1.3.Organigramme institutionnel de l’ENI
Cet organigramme de l’Ecole est inspiré des dispositions du décret N° 83-185 du 23 Mai 1983.
4
L’ENI est administrée par un conseil d’Ecole, 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’Ecole est chargé
de résoudre les problèmes liés à l’organisation pédagogique des enseignements ainsi que à
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 par rapport aux besoins des entreprises.
La figure 1 présente l’organigramme actuel de l’Ecole.
Figure 1: Organigramme de l’Ecole Nationale d’Informatique.
Sur cet organigramme, l’Ecole 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’Etablissement et nommé par un décret pris en Conseil des ministres pour un
mandat de 3 ans.
5
Le Conseil de l’Ecole est l’organe délibérant de l’Ecole.
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’Ecole.
Le Secrétariat principal coordonne les activités des services administratifs (Scolarité,
Comptabilité, et Intendance).
Conformément aux textes en vigueur régissant les Etablissements malgaches d’Enseignement
Supérieur, qui sont barrés sur le système LMD, les Départements de Formation 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’Ecole et celui
de l’Université.
1.4.Domaine 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’Ecole.
6
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 :
o Génie logiciel et Base de Données ;
o Administration des Systèmes et Réseaux ;
o Informatique Générale
L’architecture des études à trois niveaux conforment 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 Ecole 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 1: Organisation du système de formation pédagogique de l’Ecole.
7
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
professionnelle. Le master peut avoir une vocation professionnelle ou de recherche.
Tableau 3: Liste des formations existantes à l’ENI.
L’accès en première année de MASTER se fait automatiquement pour les étudiants de l’Ecole
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 Etablissements de
formation universitaire.
Tableau 2: Architecture des études correspondant au système LMD.
8
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’Ecole 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.
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’Ecole sont plutôt bien accueillis dans
les instituts universitaires étrangères (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’Ecole et les besoins évolutifs du marché de l’emploi.
Les principaux débouchés professionnels des diplômés de l’Ecole 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
9
 L’ingénierie informatique appliquée
 L’écologie et le développement durable
Parmi les sociétés, entreprises et organismes partenaires de l’Ecole, on peut citer :
ACCENTURE Mauritius, Air Madagascar, Ambre Associates, Airtel, Agence Universitaire de
la Francophonie ( AUF) , B2B, Banque Centrale, BFG-SG, BIANCO, BLUELINE, CNaPS,
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,
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’Ecole.
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’Ecole 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 renouvellement du fonds
de la bibliothèque
 L’appui à la formation des formateurs
 L’affectation à l’Ecole 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’Ecole 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).
10
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’Ecole 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.
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’Ecole 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ébouchés professionnels avec des diplômés
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.
11
Cependant, les formations proposées par l’Ecole 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’Ecole apporte à ses étudiants un savoir-faire et un savoir-être qui les accompagnent tout au
long de leur vie professionnelle. Elle a une vocation professionnalisante.
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 Ecole Supérieure de référence en matière informatique. Par conséquent, en raison de
fait que l’équipe pédagogique de l’Ecole est expérimentée, les enseignants-chercheurs et les
autres formateurs de l’Ecole sont dotés d’une grande expérience dans l’enseignement et dans le
milieu professionnel.
L’Ecole 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’Ecole sont ainsi orientées vers le besoin et les attentes des entreprises et des
sociétés.
L’Ecole 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’Ecole 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és 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: Débouchés professionnels éventuels des diplômés.
12
1.9.Ressources humaines
 Directeur de l’Ecole : Monsieur RAMAMONJISOA Bertin Olivier, Professeur
Titulaire
 Chef de Mention : Monsieur RABETAFIKA Louis Haja
 Responsable de Parcours « Génie Logiciel et Base de Données » : Monsieur
RALAIVAO Jean Christian
 Responsable de Parcours « Administration Systèmes et Réseaux » : Monsieur SIAKA
 Responsable de Parcours « Informatique Générale » : Monsieur GILANTE Gesazafy
 Nombre d’Enseignants permanents : 13 dont deux (02) Professeurs Titulaires, un (01)
Professeur, cinq (05) Maîtres de Conférences et cinq (05) Assistants d’Enseignement
Supérieur et de Recherche
 Nombre d’Enseignants vacataires : 10
 Personnel Administratif : 23
13
Chapitre 2. DESCRIPTION DU PROJET
Après avoir évoqué la présentation de l’Ecole Nationale d’informatique dans le chapitre
précédent, nous allons voir la description du projet de façons détaillé : sa formulation, ses
objectifs, les moyens en personnel et matériels nécessaires, les besoins des utilisateurs ainsi que
les résultats attendus.
2.1. Formulation
Ce stage a été effectué à l’Ecole Nationale d’Informatique au sein du département responsable
de mention, Cette partie tienne une grande place dans l’Ecole, qui s’occupe à la fois la gestion
du calendrier pédagogique, de la disponibilité des enseignants, du partage des sujets, de
l’emploi du temps, du stage ainsi que la gestion de la soutenance. Ces activités sont aussi
importantes l’une que l’autre. Mais ce projet ne concerne que la gestion de soutenance, pour
suivre et faciliter le contrôle de cette dernière.
2.2. Objectif et besoins d’utilisateur
2.2.1. Objectif
Le principal objectif du projet est de concevoir et réaliser une application pour la gestion des
soutenances.
2.2.2. Besoins d’utilisateur
Les besoins des utilisateurs sont :
 Faire une recherche de nom de l’enseignant avec les impétrants ;
 Vérification des membres du jury en cas de soutenances en parallèle ;
 Etablir automatiquement les calendriers des soutenances ;
 Affecter d’une manière équilibrée les impétrants aux enseignants ;
 Imprimer le procès-verbal.
2.3.Moyens nécessaires à la réalisation du projet
Pour réaliser un projet, nous avons besoin de quelques moyens :
- Moyens humains
- Moyens matériels
- Moyens logiciels
2.3.1. Moyens humains
- Interlocuteurs en charge du projet :
Les services de l’école
- Concepteur/développeur :
Le stagiaire
2.3.2. Moyens matériels
Le tableau 5 représente les caractéristiques de machine utilisée pour ce projet.
14
Tableau 5: Caractéristiques de l’ordinateur utilisé.
Type Processeur Système
d’exploitation
RAM Disque Dure
Ordinateur
portable
Core i5 Windows 8.1
64bits
8Go 500Go
2.3.3. Moyens logiciels
Pour la bonne réalisation du projet quelques logiciels et outils ont été nécessaire, comme le
tableau 6 les décrivent.
Tableau 6: Caractéristiques des logiciels utilisés.
N° Type Description Commentaire
1 Logiciel de
modélisation
Visual Paradigm Pour la modélisation des données
2 Modélisation de
données
UML Pour modéliser la base de
données
3 Méthode de
conception
XP Pour la méthode de
développement de logiciel
4 Serveur Xampp Pour la gestion de la base de
données
5 IDE - Spring Tool
Suite (Sts)
pour eclipse
- Vs Code
Pour le développement du projet
6 Gestion de code
source
Git Pour la gestionnaire des versions
decentralisés
7 Gestionnaire de
base de données
PgAdmin v4 Pour l’édition visuel de base de
données
8 Base de données PostgreSQL Pour la gestion de données
9 Langage de
programmation
J2EE et Javascript Pour le développement de la
partie serveur et client
10 Framework Spring Boot et
AngularJS
Pour le développement de
l’application
2.4.Résultats attendus
A la fin de ce projet, le service au sein du responsable du mention aura une application
permettant de visualiser :
- les procédures effectués durant la préparation de soutenance
- la répartition des salles et les membres de jury
15
- le procès-verbal et la grille d’évaluation
- l’équilibre des élèves soutenus des membres du jury avec la variation des fonctions de ces
derniers
PARTIE II : ANALYSE ET
CONCEPTION
16
Chapitre 3. ANALYSE PREALABLE
Ce chapitre se repose sur l’analyse de la situation existante de l’Ecole et propose des solutions
afin de résoudre le manque lors de la critique de l’existante.
3.1.Analyse de l’existant
L’analyse de l’existant est une étape de compréhension qui est indispensable dans la conception
d’un système d’information dans une organisation. Il a pour objectifs de :
 Comprendre le système d’information actuel de l’entreprise, et prendre
connaissance dans les détails les domaines pour lesquels la société souhaite
apporter des améliorations,
 Déceler les anomalies, pouvant représenter un réel handicap pour le
développement de l’entreprise,
 Proposer des améliorations concrètes et réalisables, en se référant aux objectifs
de la société et en fixant comme plan de travail le ou les domaines pour lesquels
elle souhaite améliorer son revenu.
3.1.1. Organisation actuelle
Actuellement, au sein du responsable de mention, les secrétaires sont en service de tous les
enseignants. Ils sont donc soumis au contrôle et au suivi de la soutenance. Au niveau
d’obtention de thème, la répartition de la salle et la date de soutenance, les procédures effectués
dépendent du niveau des étudiants (les premières années en licence et les premières années en
master sont dans le même cas, les deuxièmes années en licences sont différentes, les troisièmes
années en licence avec les deuxièmes années en master). Une fois ces informations sont remises
aux responsables de mention, ils vont partitionner les membres de jury, cela se fait
manuellement avec la vérification de ces derniers. Le calendrier sera rempli avec ces
informations en utilisant le Microsoft Word et Excel et sera affiché aux étudiants. Les étudiants
commenceront à déposer le livre du rapport avec la grille d’évaluation et le rapport de lecture
et pourront faire la soutenance, si non la soutenance sera pour la prochaine rattrapages. A la fin
de la soutenance, le procès-verbal saisi et la grille d’évaluation dans la mention seront apportés
à la scolarité.
Le diagramme de flux est une représentation graphique destinée à présenter la demande de
procès-verbal.
La figure 2 représente le diagramme de flux actuel dans le service.
17
Figure 2: Diagramme de flux de la société.
3.1.2. Moyens matériels et logiciels
Le tableau 7 représente les moyens matériels pour la réalisation du projet.
Tableau 7: les moyens matériels.
N° Désignation Caractéristiques Quantité
1 Poste de travail PC CPU AMD E1-120APU 4Go
RAM4Go
HD500Go
Windows7
32bits
1
2 Poste de travail PC CPU AMD E1-120APU 4Go
RAM4Go
HD500Go
Windows10
64bits
1
3 Imprimante HP LaserJet 1320 1
Le tableau 8 illustre les moyens logiciels.
18
Tableau 8: les moyens logiciels.
N° Désignation Description
1 Microsoft WORD Pour la saisie des données
2 Microsoft EXCEL Pour la saisie des données
3.2.Critique de l’existant
La critique de l’existant est un moyen qui tente de faire apparaître les défauts et les qualités de
ce qui existe déjà.
Point fort : Une fois les données conservées, ils sont toujours récupérables.
Points faibles :
- Inégalité de nombre d’étudiants soutenus des enseignants
- Perte du temps pour les traitements de données
- Perte de certains fichiers
- Difficulté pour une recherche des enseignants et les étudiants soutenus
- Occupation de place pour la conservation des fichiers
Éventuellement, aucun logiciel n’est destiné à la gestion de soutenance, le service utilise Excel
et Word, cela dépend du fichier à traiter. Ce dernier est facile d’utilisation, il traite les calculs
et saisie des informations mais il a ses limites quand il s’agit de sérieuses gestions comme la
recherche de nombre des étudiants soutenus de chaque enseignants ou comparaison de ces
informations. Utiliser Excel et Word n’est pas fiable et entraîne une perte de temps, de données
vu le nombre des étudiants.
3.3.Proposition des solutions
Pour répondre à la demande du personnel, on a proposé les solutions suivantes :
Solution 1 : Concevoir et réaliser une application pour gérer la soutenance
Solution 2 : Télécharger une application de gestion de soutenance
La solution 2 qui est de télécharger une application et est déjà sur le marché comme les sites
Toucharger, Madagascar-design et Net-univers.
Solution 3 : Acheter une application de gestion de soutenance
Nous pouvons proposer d’acheter une application chez une agence comme Newman’s
technology, Mpiketrika company et Sortlist.
Le tableau 9 présente les avantages et les inconvénients des solutions proposées.
19
Tableau 9: Avantages et inconvénients des solutions proposées.
Avantages de la solution Inconvénients
Solution 1 -Application sur mesure : l’utilisation de
l’application répond aux besoins réels de
l’utilisateur
-Application fiable
-Application facile à utiliser
-Le développement prend de temps
pour la mise en place
Solution 2 -Application prête à utiliser
-Application gratuite
-Besoin de formation pour
l’utilisateur
Solution 3 -Application prête à utiliser -Difficulté de paiement
-Difficulté de la livraison
-Mal adaptation parce que cette
application est bien foutue
La deuxième solution consiste à télécharger un logiciel prêt à utiliser comme « GESTION DES
SOUTENANCES » et la troisième solution est d’acheter un logiciel mais qui ne répond pas
l’intégralité des besoins réels de la société.
Donc, la solution 1 de développer une application sur mesure répond aux besoins réels de la
société sera bénéfique.
3.4.Conception avant-projet
Pour concevoir et réaliser une application, on a besoin d’utiliser une méthode de conception,
un langage de développement, un SGBD et un outil de modélisation.
3.4.1. Méthode de conception
Il existe beaucoup de méthode de conception telle que :
 Les méthodes classiques comme le MERISE
 Les méthodes d’agiles comme le XP
Avant de faire un choix, comparons deux méthodes différentes.
Le tableau 10 représente la comparaison entre merise et XP.
Tableau 10: Comparaison entre MERISE et XP.
MERISE XP
Méthode
d’approche
Séquence de spécification, conception,
réalisation, validation
Itération, incrémentation
Avantage Sépare clairement les données et le
traitement
S’intéresse à la satisfaction
de client
Inconvénient Changement très dure en cas de
modification de spécification
Documentation très réduites
20
Choix et justification
On a choisi la méthode XP parce qu’elle satisfait les besoins du client, ainsi que les petits ou
moyens projets. On associera cette méthode avec la notation UML.
Présentation de XP
Extrem programming XP
L’eXtrem Programming appartient à la famille de la méthode d’agile. C’est un ensemble de
pratiques qui couvre une grande partie des activités de la réalisation d’un logiciel :
 Planification
 Organisation de l’équipe de développement
 Echanges avec le client
 Programmation
XP est une méthode destinée au petit projet dont le nombre de participant est réduit. Il considère
que la satisfaction de 4 variables va contribuer au développement efficace d’un produit
fonctionnel. Ces variables sont :
 Le coût : le développement se fait par petits modules, cela permet de suivre de près les
dépenses pour ne pas dépasser les budgets.
 Le temps : le développement par modules permet de suivre l’évolution du
développement en fonction du temps passé.
 La qualité : pour XP, la qualité doit toujours être maximum. C’est la seule variable qui
ne peut pas varier.
 L’étendue : le nombre de fonctionnalité va dépendre du temps et du budget à
disposition. C’est le client qui va décider de ce qui sera développé ou pas afin de garder
la plus grande qualité possible, en restant dans les délais et les budgets.
Afin de satisfaire les quatre (4) variables, XP met en évidence 4 valeurs essentielles au travers
de la méthode : la communication, la simplicité, le feed-back et le courage.
 La communication : c’est le moyen fondamental pour éviter les problèmes. Les
pratiques que préconise l’XP imposent une communication intense. Les tests, la
programmation en binôme et le jeu du planning obligent les développeurs, et les clients
à communiquer.
 La simplicité : la façon la plus simple d’arriver au résultat est la meilleure. Anticiper
les extensions futures est une perte de temps. Une application simple sera plus facile à
faire évoluer.
 Le feedback : le retour d’information est primordial pour le programmeur et le client.
Les tests unitaires indiquent si le code fonctionne. Les tests fonctionnels donnent
l’avancement du projet. Les livraisons fréquentes permettent de tester les fonctionnalités
rapidement.
 Le courage : certains changements demandent beaucoup de courage. Il faut parfois
changer l’architecture d’un projet, jeter du code pou en produire un meilleur ou essayer
une nouvelle technique. Le courage permet de sortir d’une situation inadaptée. C’est
21
difficile, mais la simplicité, le feedback et la communication rendent les taches
accessibles.
Unified Modeling Language (UML)
UML est une notation permettant de modéliser un problème de façon standard. C’est un langage
qui permet de représenter des modèles, mais il ne définit pas le processus d’élaboration de ces
modèles. Cependant, dans le cadre de la modélisation application informatique, les auteurs
d’UML préconisent d’utiliser une démarche.
 Itérative et incrémentale
L’idée est simple : pour modéliser (comprendre et représenter) un système complexe, il
vaut mieux s’y prendre en plusieurs fois, en affirmant son analyse par étapes. Cette
démarche devrait aussi s’appliquer au cycle de développement dans son ensemble, en
favorisant le prototype. Le but est de mieux maîtriser la part d’inconnu et d’incertitudes
qui caractérisent les systèmes complexes.
 Guidée par les besoins des utilisateurs du système
Ce sont les utilisateurs qui guident la définition des modèles : le périmètre du système
à modéliser est défini par les besoins de ses utilisateurs. Le but du système à modéliser
est de répondre aux besoins de ses utilisateurs (les utilisateurs sont les clients du
système). A chaque itération de la phase de conception et de réalisation, on veille à la
prise en compte des besoins des utilisateurs. A chaque itération de la phase de test, on
vérifie que les besoins des utilisateurs sont satisfaits.
 Centrée sur l’architecture logicielle
Une architecture adaptée est la clé de voûte du succès d’un développement. Elle décrit
des choix stratégiques qui déterminent en grande partie les qualités du logiciel
(adaptabilité, performance, fiabilité…)
D’après les auteurs d’UML, un processus de développement qui possède ces qualités devrait
favoriser la réussite d’un projet.
La modélisation consiste à créer une représentation simplifiée d’un problème : le modèle. Grâce
au modèle, il est possible de représenter simplement un problème, un concept et le simuler. La
modélisation comporte deux composantes :
 L’analyse, c’est-à-dire l’étude du problème
 La conception, soit la mise au point d’une solution au problème
Le modèle constitue ainsi une représentation possible du système pour un point de vue donné.
UML fournit un moyen astucieux permettant de représenter diverses projections d’une même
représentation grâce aux vues. Une vue est constituée d’un ou plusieurs diagrammes comme :
 Le diagramme de cas d’utilisation
Le diagramme de cas d’utilisation permet de représenter le fonctionnement du système vis-à-
vis de l’utilisateur, c’est donc une vue du système dans son environnement extérieur. Un cas
22
d’utilisation est une manière spécifique d’utiliser un système. C’est l’image d’une
fonctionnalité du système, déclenchée en réponse à la stimulation d’un acteur externe.
2. Les diagrammes des séquences
Les diagrammes de séquences permettent de représenter la succession chronologique des
opérations réalisées par un acteur et la réponse du système, ils font passer d’un objet à un autre
pour représenter un scénario.
 Les diagrammes de classes
Les diagrammes de classes représentent les entités significatives du domaine. Ils expriment
aussi de manière générale la structure statique d’un système, en termes de classes et de relations
entre ces classes. Une classe permet de décrire un ensemble d’objets (attributs et
comportements), tandis qu’une relation ou association permet de faire apparaitre des liens entre
ces objets.
Le diagramme de classe est un modèle permettant de décrire de manière abstraite et générale
les liens entre objets.
 Le diagramme de paquetage
Dans le diagramme de paquetage, on trouve des paquets qui sont des éléments d’organisation
des modèles du fait que, non seulement, ils regroupent les éléments de modélisation, selon des
critères purement logiques mais aussi ils permettent d’encapsuler des éléments de modélisation
car ils possèdent une interface. Après, ils permettent de structurer un système en catégories (vue
logique) et sous-système (vue des composants). Ils servent aussi de « briques » de base dans la
construction d’une architecture. Et surtout, ils représentent le bon niveau de granularité pour la
réutilisation. Enfin, les paquetages sont aussi des espaces de noms.
 Le diagramme de déploiement
Le diagramme de déploiement décrit la disposition physique des ressources matérielles qui
composent le système et montre la répartition des composants sur ces matériels. Chaque
ressource étant matérialisée par un nœud, le diagramme de déploiement précise comment les
composants sont repartis sur les nœuds et quelles sont les connexions entre les composants et
les nœuds.
3.4.2. Outil de modélisation
Un outil de modélisation est utilisé pour ne pas gaspiller trop de temps sur la représentation
graphique de la modélisation.
Le tableau 11 compare l’outil Win ’Design et l’outil Visual Paradigm.
Tableau 11: comparaison entre Win ‘Design et Visual Paradigm.
Outil Avantages Inconvénients
Win ‘Design Destiné au Merise, facile à
utiliser
Manque de fonctionnalités pour
représenter UML
Visual Paradigm Destiné à la notation UML Un peu difficile à utiliser, nécessite
un temps d’apprentissage
Choix et justification
23
On a choisi Visual Paradigm parce qu’il s’adapte bien à la notation UML qu’on va utiliser.
Présentation de Visual Paradigm
Le logiciel présenté dans cette partie était déjà connu des étudiants qui ont suivi le cursus en
informatique de gestion durant le cycle 2009-2012, car plusieurs professeurs ont eu recours à
son utilisation pour pratiquer différents exercices dans diverses unités d’enseignements.
La présentation de Visual Paradigm n’a pas été placée dans la partie théorique, car il n’expose
ainsi pas des connaissances supplémentaires acquises, mais sert exclusivement à décrire
sommairement l’outil et son interface au lecteur. Ce dernier aura alors une meilleure
compréhension des différentes explications et références faites dans les parties théoriques et
pratiques.
Visual Paradigm est un éditeur qui propose une suite logicielle, constituée des outils suivants :
Visual Paradigm For UML : permet la création des diagrammes UML et des modèles qui en
sont à l’origine.
Ceux-ci peuvent alors générer du code dans un langage de programmation déterminé. Il
propose également la création d’autres types de diagrammes, comme celui qui permet la
modélisation des bases de données pouvant, lui aussi, générer des canevas d’applications basés
sur des Framework et Pattern mais en plus, générer du code SQL qu’il peut ensuite déployer
automatiquement dans différents environnements.
Business Process Visual Architect : permet la modélisation de processus normalisés par le
langage BPMN, ainsi que la génération des modèles en processus exécutables.
Agilian : offre les fonctionnalités nécessaires pour gérer l’architecture de l’entreprise autour
des processus, et le développement agile de logiciels. Il permet la réalisation de maquettes, la
gestion des exigences, le travail collaboratif, la gestion des règles métiers ou encore la définition
d’un vocabulaire commun.
Platform : gère les projets de développement en équipe, de même que la maintenance,
respectivement en se basant sur des propositions de la méthodologie UnifiedProcess et en
offrant des solutions de gestion des problèmes et des tests.
Teamwork Server : fournit un référentiel permettant le stockage des spécifications réalisées
par tous les autres outils de la suite. Il assure le travail en équipe, notamment par la prise en
charge des technologies de versionnions.
3.4.3. SGBD
Le SGBD est un ensemble de services (application logiciel) permettant de gérer les bases de
données, c’est-à-dire :
 Permettre l’accès aux données de façon simple
24
 Gérer les droits d’accès aux informations
 Manipuler les données présentes dans la base de données (insertion, modification,
suppression…)
Un SGBD est donc nécessaire pour stocker les données.
Le tableau 12 représente la comparaison des SGBD
Tableau 12: Comparaison des SGBD.
SGBD Points forts Points faible
MySQL Plus rapide sur les requêtes
simples
Stable, rapide
Riche en documentation
Faciliter de déploiement et de
prise en main,
Léger,
Multi-plateforme,
Open source,
Gratuit
Système de gestion de base de
données de modèle relationnel
Pas de vue matérialisée,
Support incomplet des triggers et
procédures stockées,
Ne supporte pas une énorme quantité
de données
ORACLE Disposition de requêtes
sophistiqué
Assistants performants,
Accès aux données système via
vue, réglages fins : tout est
paramétrable,
Supporte une énorme quantité de
données,
Multi-plateforme
Administration complexe,
Fort demandeur de ressources : la
connexion utilisateur nécessite par
exemple près de 700Ko/utilisateur,
contre une petite centaine sur le
serveur MS-SQL,
Payant (très cher)
PostgreSQL Disposition de requêtes
sophistiqués et d’un optimiseur de
requêtes
Plus Performant, fiable
Riche en documentation
Plusieurs fonctionnalités
Supporte une grande quantité de
données
Multi-plateforme,
Open source,
Gratuit,
Administration complexe,
Sauvegarde peu évolué
25
Système de gestion de base de
données de modèle relationnel et
objet
Choix et justification
On a choisi d’utiliser le SGBD PostgreSQL vu qu’il est plus performant, fiable, riche en
documentation, supporte une énorme quantité de données et supporte la fonctionnalité de
l’oracle, système de gestion de base de données de modèle relationnel et objet et dispose de
requêtes sophistiquées et d’un optimiseur de requêtes.
Présentation de PostgreSQL
PostgreSQL est un système de gestion de base de données relationnel et objet (SGBDRO).
Selon le type d’application, sa licence est libre ou propriétaire. Il fait partie des logiciels de
gestion de base de données les plus appréciés au monde pour les données de grandes quantités,
autant par le grand public (application web principalement) que par des professionnels, en
concurrence avec Oracle et MySQL.
C’est un logiciel libre développé sous double licence en fonction de l’utilisation qui en fait :
dans un produit libre ou dans un produit propriétaire.
3.4.4. Langage de programmation
3.4.4.1.Partie Serveur
Le tableau 13 montre la comparaison entre PHP et J2EE.
Tableau 13: Comparaison entre PHP et J2EE.
Critère J2EE PHP
Paradigme Orientée objet, structurée,
impérative
Impératif, procédural, réflexif,
langage interprété
Typage Dynamique, fort, sûr Dynamique, faible
Type d’application Web Web
Environnement de
développement
Eclipse, intellij, NetBeans,
JDeveloper
Simple éditeur de texte, ou IDE
intégré
Avantages Langage typé, facile à utiliser et à
maintenir
Serveur léger, facile à héberger
Inconvénients Serveur lourde, nécessite une
importance ressource
Ecriture de code gênante, variable
non typée
26
Changement de base de données,
changement de code
Choix et justification
Après avoir fait la comparaison, on a retenu J2EE comme langage de programmation parce que
c’est un langage orienté objet et simple à utiliser.
Présentation de J2EE
J2EE (Java 2 Enterprise Edition) est une norme proposée par la société Sun, portée par un
consortium de sociétés internationales, visant à définir un standard de développement
d'applications d'entreprises multi-niveaux, basées sur des composants.
La figure 3 montre les caractéristiques de J2EE.
Figure 3: Caractéristiques de J2EE.
27
Une caractéristique particulière de J2EE est de réaliser une portabilité totale et maintenabilité
du code : une application, une fois compilé fonctionnera aussi sous des stations Windows que
sus Unix et autre. Cette portabilité est dû au fait que la compilation fournit un code machine
intermédiaire appelé BYTECODE exécuté par son interpréteur dite une machine dite virtuelle
(JVM : Java Virtual Machine) et qui, lors de l’exécution compréhensible par le microprocesseur
utilisé.
3.4.4.2.Partie Client
Le tableau 14 indique la comparaison entre JavaScript et J2EE.
Tableau 14: Comparaison entre JavaScript et Java
Critère JavaScript Java
Paradigme Orientée objet, structurée,
impérative
Langage interprété, compilé,
orienté objet
Typage Dynamique, fort, sûr Statique, faible
Type d’application Web Web
Environnement de
développement
VS code, Sublime Text, Simple
éditeur de texte.
Eclipse, intellij, NetBeans,
JDeveloper
Avantages Seule option de langage de script
côté client sur un navigateur sans
plug-in et sécurisation
Plusieurs documentation, facile à
prendre
Inconvénients Compatibilité limitée entre les
navigateurs
Temps de chargement et problème
de sécurité
Choix et justification
Après avoir fait la comparaison, on a retenu JavaScript comme langage de programmation de
la partie cliente parce que c’est un langage simple à utiliser et intégré directement au HTML.
Présentation de Javascript
Le Javascript est un langage de script basé sur la norme ECMAScript.
Il s'insère dans le code HTML d'une page web, et permet d'en augmenter le spectre des
possibilités. Ce langage de POO (Programmation Orientée Objet), faiblement typé, est
exécuté côté client.
La figure 4 montre les caractéristiques de Javascript.
28
Figure 4: Caractéristiques de Javascript.
3.4.5. Framework utilisés
3.4.5.1.Partie Backend
Le tableau 15 montre la comparaison entre Spring Boot, Hibernate et Struts.
Tableau 15: Comparaison entre Spring Boot, Hibernate et Struts.
Critère Spring Boot Hibernate Struts
Dernière version 2.2.3 2.1.2 2.5.22
Facilité
d’apprentissage
Facile Facile Moyen
Environnement
de
développement
Eclipse, IntelliJ,
NetBeans, JDeveloper,
Spring Tool Suite
Eclipse, IntelliJ,
NetBeans,
JDeveloper, Spring
Tool suite
Eclipse, IntelliJ,
NetBeans, JDeveloper,
Spring Tool Suite
Open source Oui Oui Oui
Générateur de
CRUD
Oui Oui Oui
Simplicité Oui Oui Non
Sécurité Oui Oui Moyen
Economie espace Oui Oui Moyen
Ouverture de
page
Très rapide Rapide Normal
Choix et justification
Chacun de ces Framework possède ses avantages et ses inconvénients. En tenant compte de ces
études comparatives, surtout sur le temps d’apprentissage des trois Framework, nous avons
optés pour le Spring Boot, Hibernate.
29
Présentation de Spring Boot et Hibernate
- Spring Boot
Spring Boot est fondamentalement une extension du cadre Spring, qui élimine les
configurations standard requises pour la configuration d’une application Spring.
 Il adopte une vision avisée de la plateforme Spring, qui a ouvert la voie à un écosystème
de développement plus rapide et plus efficace.
Voici quelques-unes des fonctionnalités de Spring Boot :
 Dépendances de type "starter" pour simplifier la construction et l’application
Configuration :
 Métriques, vérification d’hélicoptère et configuration externalisée
 Configuration automatique pour la fonctionnalité Spring - autant que possible
 Serveur intégré pour éviter la complexité lors du déploiement d’applications
La figure 5 montre caractéristique de Spring Boot.
Figure 5: Caractéristiques de Spring Boot.
- Hibernate
Hibernate est une solution open source de type ORM (Object Relational Mapping) qui permet
de faciliter le développement de la couche persistance d'une application. Hibernate permet donc
de représenter une base de données en objets Java et vice versa.
Hibernate facilite la persistance et la recherche de données dans une base de données en
réalisant lui-même la création des objets et les traitements de remplissage de ceux-ci en
30
accédant à la base de données. La quantité de code ainsi épargnée est très importante d'autant
que ce code est généralement fastidieux et redondant.
Hibernate est très populaire notamment à cause de ses bonnes performances et de son ouverture
à de nombreuses bases de données.
Les bases de données supportées sont les principales du marché : DB2, Oracle, MySQL,
PostgreSQL, Sybase, SQL Server, Sap DB, Interbase, et autres bases de données.
La figure 6 suivante montre caractéristique de Hibernate.
Figure 6: Caractéristiques de Hibernate.
3.4.5.2. Partie Frontend
Le tableau 16 montre la comparaison entre AngularJS et ReactJS.
Tableau 16: Comparaison entre AngularJS et ReactJS.
Critère AngularJS ReactJS
Dernière version 9. 16.12.0
Facilité
d’apprentissage
Facile Moyen
Open source Oui Oui
Web 2.0 HTML4, full jquery,
ajsx, json
HTML4, full jquery
Générateur de
CRUD
Oui Non
Simplicité Oui Moyen
Sécurité Oui Oui
Economie espace Oui Non
Ouverture de
page
Très rapide Rapide
Choix et justification
31
Chacun de ces Framework possède ses avantages et ses inconvénients. En tenant compte de ces
études comparatives, surtout sur le temps d’apprentissage des deux Framework, nous avons
optés pour l’AngularJS.
Présentation d’AngularJS
AngularJS est fondé sur l'idée que la programmation déclarative doit être utilisée pour
construire les interfaces utilisateurs et les composants logiciels de câblage, tandis que
la programmation impérative excelle pour exprimer la logique métier.
Une page web conçue avec AngularJS suit le patron d'architecture MVC (modèle-vue-
contrôleur). Ce patron a pour avantage de proposer un couplage faible entre la présentation, les
données, et les composants métier. Dans un langage web, cette séparation permet de diminuer
l'importance des manipulations DOM et d'améliorer la testabilité du code.
Dans AngularJS, la partie « vue » est déclarée dans une version étendue du HTML traditionnel,
qui comporte de nouvelles balises (tags) et attributs. Cet HTML étendu est utilisé pour déclarer
une liaison de données bidirectionnelle entre les modèles et les vues. Ainsi, les données sont
synchronisées automatiquement, et moins d'éléments ont besoin d'être définis en Javascript. Les
modèles sont composés de plusieurs couches appelés « scopes ». Les contrôleurs dans
AngularJS permettent de prototyper des actions en code JavaScript natif.
La figure 7 montre caractéristique de AngularJS.
Figure 7; Caractéristiques de JAVA.
32
3.4.6. Environnement de développement
3.4.6.1.Partie Backend
Il nous faut un environnement de développement pour réaliser ce projet au niveau de serveur.
Le tableau 17 représente la comparaison entre Spring Tool Suite et NetBeans.
Tableau 17: Comparaison entre Spring Tool Suite et NetBeans.
Spring Tool Suite NetBeans
Graphique Tout Seulement l’essentielle,
claire
Serveur et compilateur
Java intégré
A installer et à configurer A télécharger
Ressources Moyenne Elevée (besoin de machine à
fréquence élevé)
Choix et justification
Graphiquement Spring Tool Suite plus léger que NetBeans, son interface est meilleure que
NetBeans et c’est le logiciel conçu pour le langage spring boot, facile d’intégration donc on a
choisi Spring Tool Suite.
Présentation de Spring Tool Suite
Spring Tool Suite, ensemble de logiciels édités par la société SpringSource, contient
un environnement de développement contribuant à une meilleure productivité du développeur
Spring.
STS est une pièce de la stratégie "Build - Run - Manage" de SpringSource. Cette stratégie vise
à nous rassurer sur la capacité de SpringSource à accompagner efficacement les différentes
étapes du cycle de vie (Développement - déploiement - monitoring) d'une application Java
Entreprise basée non pas sur les spécifications JEE (jugées complexes), mais sur le modèle de
développement et les différentes briques proposées par Spring (Core, Spring MVC, Spring
JMS, Spring WS).
Une stratégie qui amène des choix tactiques d'acquisition de sociétés et technologies comme
le langage de script Groovy, le Framework Grails (au-dessus de Spring MVC + Hibernate) ou
encore plus récemment d'Hyperic (outil de monitoring), désormais dans le giron SpringSource.
Compilé en Java, Spring Tool Suite est disponible sous Windows, Linux, Mac OS X ou sous
une version indépendante des systèmes d’exploitation (requérant une machine virtuelle Java).
Un environnement Java Développement Kit JDK est requis pour le développement en J2ee.
Spring Tool Suite constitue par ailleurs une plateforme qui permet le développement
d’application spécifique (bibliothèque Swing). L’IDE Spring Tool Suite s’appuie sur cette
plateforme.
33
3.4.6.2.Partie Frontend
Dans la partie client, nous avons d’un IDE pour le développement du projet.
Le tableau 18 illustre la comparaison entre le VS Code et Sublime Text.
Tableau 18: Comparaison entre VS Code et Sublime Text.
VS Code Sublime Text
Temps de lancement Très rapide Lent
Usage de RAM Beaucoup Un peu
Apprentissage de
raccourcis
Facile à apprendre Beaucoup de temps et
difficile
Fonctionnalités Plusieurs Moyen
Choix et justification
Visual Studio Code a une interface utilisateur très conviviale et beaucoup d’option pour éditer
le code et a plusieurs fonctionnalités, installable partout, multi-configurable, agréable et rapide
par rapport au Sublime Text, donc on a choisi le VS Code.
Présentation de Visual Studio Code
Visual Studio Code (VSC) est un éditeur de code open-source, gratuit et multi-plateforme
(Windows, Mac et Linux), développé par Microsoft, à ne pas confondre avec Visual Studio,
l'IDE propriétaire de Microsoft. VSC est développé avec Electron et exploite des fonctionnalités
d'édition avancées du projet Monaco Editor. Principalement conçu pour le développement
d'application avec JavaScript, TypeScript et Node.js, l'éditeur peut s'adapter à d'autres types de
langages grâce à un système d'extension bien fourni.
Visual Studio Code intègre plusieurs outils facilitant la saisie de code par les développeurs
comme la coloration syntaxique ou encore le système d’auto-complétions IntelliSense. En
outre, l'outil permet aux développeurs de corriger leur code et de gérer les différentes versions
de leurs fichiers de travail puisqu'un module de débogage est aussi de la partie.
34
Chapitre 4. ANALYSE CONCEPTUELLE
Ce projet concerne le domaine de la gestion de soutenance. Au début de soutenance, le
responsable de ce domaine récolte toutes les informations sur le calendrier de soutenance. Pour
cela, nous allons utiliser la méthode XP avec la notation UML, l’outil Visual Paradigm,
PostgreSQL, le langage de programmation J2EE et le Framework Spring Boot, Hibernate, Jpa,
Spring Security et AngularJS.
4.1.Dictionnaire des données
Un dictionnaire des données est une collection de métadonnées ou de données de référence
nécessaire à la conception d'une base de données relationnelle.
Le dictionnaire des données du système est représenté dans la figure 19.
Tableau 19: Dictionnaire des données.
Nom de la rubrique Description Type Taille
annee_univ Année universitaire AN 9
cal_date_sout Date de calendrier de soutenance AN 8
cal_heure_sout Heure de soutenance AN 3
cal_lieu_sout Lieu de soutenance AN 35
cal_lieu_stage Lieu de stage AN 35
cal_note_sout Note de soutenance AN 5
cal_sale_sout Sale de soutenance N 2
cal_type_memoire Type de mémoire AN 50
enseig_adr Adresse de l’enseignant AN 50
enseig_email Email de l’enseignant AN 50
enseig_grade Grade de l’enseignant AN 50
enseig_nom Nom de l’enseignant AN 50
enseig_prenom Prénoms de l’enseignant AN 50
enseig_sexe Sexe de l’enseignant A 1
enseig_tel Numéro téléphone de l’enseignant AN 13
etabli_adr Adresse de l’établissement AN 50
etabli_code_post Code postale de l’établissement N 7
etabli_nom Nom de l’établissement AN 35
etud_adr Adresse de l’étudiant AN 50
etud_email Email de l’étudiant AN 50
etud_matricule Matricule de l’étudiant AN 6
etud_nom Nom de l’étudiant AN 50
etud_num Numéro d’appel de l’étudiant N 3
etud_prenom Prénoms de l’étudiant AN 50
etud_sexe Sexe de l’étudiant A 1
etud_tel Numéro téléphone de l’étudiant AN 13
id_enseig Identifiant de l’enseignant N 2
id_annee Identifiant de l’année universitaire N 2
35
id_cal Identifiant de calendrier N 4
id_etabli Identifiant de l’établissement N 1
id_etud Identifiant de l’étudiant N 5
id_jury Identifiant du jury N 2
id_login Identifiant de l’utilisateur de
l’application
N 25
id_niveau Identifiant de niveau de l’étudiant N 1
id_parcours Identifiant de parcours N 1
id_service Identifiant de service N 1
id_theme Identifiant de thème de l’étudiant N 5
jury_nom Nom du jury AN 50
jury_prenom Prénoms du jury AN 50
jury_role Rôle du jury AN 11
niveau_nom Nom de niveau de l’étudiant AN 20
parcours_nom Nom du parcours de l’étudiant AN 15
service_adr Adresse du service AN 50
service_email Email du service AN 50
service_nom Nom du service AN 50
service_prenom Prénoms du service AN 50
service_resp Responsable du service AN 50
service_sexe Sexe du service AN 1
service_tel Numéro téléphone du service AN 13
theme_nom Nom du thème de l’étudiant AN 200
A : Alphabétique AN : alphanumérique N : numérique
4.2.Règles de gestion
Les règles de gestion indiquent l’ensemble des liens existants sur les données manipulées, les
actions effectuées par les postes de travail impliqués et les différentes formules de calcul. Les
règles de gestion associées au domaine d’études sont :
RG1 : Un étudiant doit avoir un thème
RG2 : Un étudiant se trouve dans un niveau
RG3 : Un étudiant appartient à un parcours
RG4 : Plusieurs étudiants appartiennent à un établissement
RG5 : Plusieurs enseignants enseignent dans un établissement
RG6 : Un enseignant peut être un jury
RG7 : Un étudiant passe la soutenance dans une année
RG8 : Un calendrier est constitué plusieurs étudiants
36
RG9 : Un calendrier présente un ou plusieurs thèmes de l’étudiant
RG10 : Un calendrier constitue un parcours de l’étudiant
RG11 : Un calendrier présente un niveau de l’étudiant
RG12 : Un calendrier doit avoir un établissement
RG13 : Un calendrier constitue plusieurs jurys
RG14 : Un calendrier a plusieurs enseignants
RG15 : Un calendrier a une année
4.3.Représentation et spécification des besoins
4.3.1. Diagrammes de cas d’utilisation
D’abord nous allons réunir les différents éléments pour construire le diagramme de cas
d’utilisation et commençons par l’identification des acteurs, puis l’identification des cas
d’utilisations et entamons par les diagrammes de cas d’utilisation proprement dit.
4.3.1.1.Identification des acteurs
Ils sont des entités externes qui interagissent avec le système, comme une personne humaine
ou un robot. Une même personne (ou robot) peut être plusieurs acteurs pour un système, c'est
pourquoi les acteurs doivent surtout être décrits par leur rôle, ce rôle décrit les besoins et les
capacités de l'acteur. Un acteur agit sur le système.
L'activité du système a pour objectif de satisfaire les besoins de l'acteur. Les acteurs sont
représentés par un pictogramme humanoïde (stick man) sous-titré par le nom de l'acteur.
 Les catégories d’acteur :
Un acteur peut avoir différents rôles et est amené à intervenir dans une ou plusieurs situations.
Miller (2001) en identifie quatre.
 Initiateur : acteur qui active le système et déclenche le cas.
 Serveur : acteur aidant le système à assumer ses responsabilités.
 Receveur : acteur recevant les informations du système (système de backup)
 Facilitateur : acteur dont les actions sont effectuées au bénéfice d'un autre acteur
Un acteur est un rôle joué par une personne ou par une chose qui interagit avec le système. Il
n’est pas toujours facile de déterminer la limite du système. Par définition, les acteurs sont à
37
l’extérieur du système Lés acteurs agissant sur notre système sont regroupés en une seule
catégorie : l’utilisateur
4.3.1.2.Identification des cas d’utilisation
Les catégories des besoins fonctionnels des acteurs peuvent être arrangées de la manière dans
le tableau 20.
Tableau 20: Besoins fonctionnels des acteurs.
Acteur Cas d’utilisation
Utilisateur S’authentifier Se connecter
Se déconnecter
Gérer étudiant Ajouter
Modifier
Supprimer
Consulter liste étudiante
Imprimer
Gérer enseignant Ajouter
Modifier
Supprimer
Consulter liste enseignant
Consulter liste étudiante, thème
et enseignant
Ajouter
Modifier
Supprimer
Consulter
Imprimer
Gérer jury Ajouter
Modifier
Supprimer
Consulter liste jury
Gérer calendrier Ajouter
Modifier
Supprimer
Consulter calendrier
Imprimer
4.3.1.3.Diagrammes de cas d’utilisation
Après ces précédentes étapes, nous avons réunis les différents éléments pour construire le
diagramme de cas d’utilisation.
38
Voici dans la figure 8 le diagramme de cas d’utilisation globale de gestion de tableau de bord.
Figure 8: Diagramme de cas d’utilisation globale.
4.3.2. Priorisation des cas d’utilisations
La priorisation des cas d’utilisations est représentée par le tableau 21.
Tableau 21: priorisation des cas d’utilisations.
Cas d’utilisation Acteur
principale
Messages reçus/ émis
1) S’authentifier Utilisateur -demande de s’authentifier
-résultat d’authentification
2) Gérer étudiant -demande de gérer étudiant
-résultat de la demande de gérer étudiant
3) Gérer enseignant -demande de gérer enseignant
-résultat de la demande de gérer enseignant
4) Gérer jury -demande de gérer jury
-résultat de la demande de gérer jury
5) Gérer calendrier -demande de gérer calendrier
-résultat de la demande de gérer calendrier
4.3.3. Description textuelle de certains cas d’utilisation
 Cas d’utilisation « s’authentifier »
 Objectif : pour avoir une session pour utiliser l’application.
 Acteur : utilisateur
39
 Pré condition : l’utilisateur doit avoir un compte.
 Post condition : l’utilisateur obtient une session
 Scenario nominale :
1. Saisir identifiant
2. Cliquer sur le bouton se connecter
3. Obtention d’une session
 Scenario d’exception :
1. Identifiant ou mot de passe incorrect
2. Serveur inaccessible
 Cas d’utilisation « ajouter service »
 Objectif : pour enregistrer l’information concernant un service.
 Acteur : utilisateur
 Pré condition : l’enseignant et le service existent.
 Post condition : création service avec succès
 Scenario nominale :
1. L’utilisateur doit s’authentifier
2. Il obtient un formulaire d’ajout service
3. Il remplit le formulaire et l’envoie
4. Ajout service effectué
 Scenario d’exception :
1. Formulaire vide
2. Le code service existe déjà
 Cas d’utilisation « modifier service »
 Objectif : pour éditer l’information concernant un service.
 Acteur : utilisateur
 Pré condition : il existe une liste de service.
 Post condition : modification de service avec succès
 Scenario nominale :
1. L’utilisateur consulte la liste des services
2. Il obtient un formulaire de modification service
3. Il remplit le formulaire et l’envoie
4. Modification service effectué
 Scenario d’exception :
1. Formulaire vide
2. Le code service existe déjà
 Cas d’utilisation « supprimer service »
 Objectif : pour effacer un service.
 Acteur : utilisateur
 Pré condition : il existe une liste de service.
 Post condition : suppression de service avec succès
40
 Scenario nominale :
1. L’utilisateur consulte la liste des services
2. Il obtient une confirmation de supprimer un service
3. Il confirme
4. Suppression service effectué
 Cas d’utilisation « gérer calendrier »
 Objectif : pour enregistrer les informations concernant le calendrier.
 Acteur : utilisateur
 Pré condition : l’étudiant, le thème, l’enseignant, le niveau, le parcours,
le jury, la date, la salle existent.
 Post condition : création de calendrier avec succès
 Scenario nominale :
1. L’utilisateur demande à gérer un tableau de bord
2. Il obtient un formulaire
3. Il remplit le formulaire et l’envoie
4. Création du calendrier effectué
 Scenario d’exception :
1. Formulaire vide
4.3.4. Diagrammes de séquence système pour les cas d’utilisation
Les diagrammes de séquence représentent les messages échangés entre les objets. Il donne une
notion temporelle aux messages.
La figure 9 représente le diagramme de séquence pour le cas d’utilisation « s’authentifier ».
Figure 9: Diagramme de séquence pour le cas d’utilisation « s’authentifier ».
41
La figure 10 représente le diagramme de séquence pour le cas d’utilisation « ajouter service ».
Figure 10: Diagramme de séquence pour le cas d’utilisation « ajouter service ».
La figure 11 représente le diagramme de séquence pour le cas d’utilisation « modifier service ».
Figure 11: Diagramme de séquence pour le cas d’utilisation « modifier service ».
42
La figure 12 montre le diagramme de séquence pour le cas d’utilisation « supprimer service ».
Figure 12: Diagramme de séquence pour le cas d’utilisation « supprimer service ».
La figure 13 illustre le diagramme de séquence pour le cas d’utilisation « gérer calendrier ».
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance
Gestion de-soutenance

Contenu connexe

Tendances

Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)Ghali Rahma
 
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webRapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webSalma Gouia
 
Plateforme e-learning PHP
Plateforme e-learning PHP Plateforme e-learning PHP
Plateforme e-learning PHP Saâd Zerhouni
 
Soutenance de Mon PFE de Stage (DUT)
Soutenance de Mon PFE de Stage (DUT) Soutenance de Mon PFE de Stage (DUT)
Soutenance de Mon PFE de Stage (DUT) Mohammed JAITI
 
Conception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSConception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSFaissoilMkavavo
 
Rapport projet c : Logiciel de gestion des ressources humaines
Rapport projet c : Logiciel de gestion des ressources humainesRapport projet c : Logiciel de gestion des ressources humaines
Rapport projet c : Logiciel de gestion des ressources humainesHosni Mansour
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Riadh K.
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATSiwar GUEMRI
 
Pfe master fst_final_decembre2015
Pfe master fst_final_decembre2015Pfe master fst_final_decembre2015
Pfe master fst_final_decembre2015Ghali Rahma
 
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Ayoub Rouzi
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...Ramzi Noumairi
 
Développement d’une application Web et mobile d’un annuaire médical
Développement d’une application Web et mobile d’un annuaire médicalDéveloppement d’une application Web et mobile d’un annuaire médical
Développement d’une application Web et mobile d’un annuaire médicallitayem bechir
 
Rapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRouâa Ben Hammouda
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Ilyas CHAOUA
 
Rapport projet fin d'étude
Rapport projet fin d'étudeRapport projet fin d'étude
Rapport projet fin d'étudeHibaFarhat3
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITLina Meddeb
 
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti MohammedRapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti MohammedMohammed JAITI
 

Tendances (20)

Rapport PFE - B.Sc IT
Rapport PFE -  B.Sc ITRapport PFE -  B.Sc IT
Rapport PFE - B.Sc IT
 
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
 
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webRapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
 
Plateforme e-learning PHP
Plateforme e-learning PHP Plateforme e-learning PHP
Plateforme e-learning PHP
 
Soutenance de Mon PFE de Stage (DUT)
Soutenance de Mon PFE de Stage (DUT) Soutenance de Mon PFE de Stage (DUT)
Soutenance de Mon PFE de Stage (DUT)
 
Conception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSConception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTS
 
Rapport pfe
Rapport pfeRapport pfe
Rapport pfe
 
Rapport projet c : Logiciel de gestion des ressources humaines
Rapport projet c : Logiciel de gestion des ressources humainesRapport projet c : Logiciel de gestion des ressources humaines
Rapport projet c : Logiciel de gestion des ressources humaines
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
 
Pfe master fst_final_decembre2015
Pfe master fst_final_decembre2015Pfe master fst_final_decembre2015
Pfe master fst_final_decembre2015
 
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
 
Développement d’une application Web et mobile d’un annuaire médical
Développement d’une application Web et mobile d’un annuaire médicalDéveloppement d’une application Web et mobile d’un annuaire médical
Développement d’une application Web et mobile d’un annuaire médical
 
Rapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learning
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...
 
Rapport projet fin d'étude
Rapport projet fin d'étudeRapport projet fin d'étude
Rapport projet fin d'étude
 
Gestion de-soutenance
Gestion de-soutenanceGestion de-soutenance
Gestion de-soutenance
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
 
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti MohammedRapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
 

Similaire à Gestion de-soutenance

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 & hasinaAngelito Mandimbihasina
 
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 & hasinaAngelito Mandimbihasina
 
PEPIN LISQUEUR - Gestion de logement
PEPIN LISQUEUR - Gestion de logementPEPIN LISQUEUR - Gestion de logement
PEPIN LISQUEUR - Gestion de logementLisqueurPEPIN
 
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdfPEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdfLisqueurPEPIN
 
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...tayebbousfiha1
 
Mémoire de fin de cycle présenté en vue de L’Obtention du Diplôme de Master P...
Mémoire de fin de cycle présenté en vue de L’Obtention du Diplôme de Master P...Mémoire de fin de cycle présenté en vue de L’Obtention du Diplôme de Master P...
Mémoire de fin de cycle présenté en vue de L’Obtention du Diplôme de Master P...Abdallah YACOUBA
 
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...Bassirou Dime
 
Fadi hchifa CV
Fadi hchifa CVFadi hchifa CV
Fadi hchifa CVFadiHchifa
 
SophiaConf 2017 - Bilan
SophiaConf 2017 - BilanSophiaConf 2017 - Bilan
SophiaConf 2017 - BilanTelecomValley
 
Support du cours : Programmation Web 2
Support du cours : Programmation Web 2Support du cours : Programmation Web 2
Support du cours : Programmation Web 2Faycel Chaoua
 
Catalogue de stage
Catalogue de stageCatalogue de stage
Catalogue de stagemzoughi Anis
 
De la numérisation à la diffusion en ligne de thèses et mémoires africains : ...
De la numérisation à la diffusion en ligne de thèses et mémoires africains : ...De la numérisation à la diffusion en ligne de thèses et mémoires africains : ...
De la numérisation à la diffusion en ligne de thèses et mémoires africains : ...IAALD Community
 
Rapport version finale kouakou aboua pokou alexis
Rapport version finale kouakou aboua pokou alexis Rapport version finale kouakou aboua pokou alexis
Rapport version finale kouakou aboua pokou alexis abouaalexis
 
Cvnadirnew 110211085144-phpapp01
Cvnadirnew 110211085144-phpapp01Cvnadirnew 110211085144-phpapp01
Cvnadirnew 110211085144-phpapp01May Saghira
 
IBM Bluemix Nice Meetup #2 - CEEI NCA - 20161011 -
IBM Bluemix Nice Meetup #2 - CEEI NCA - 20161011 - IBM Bluemix Nice Meetup #2 - CEEI NCA - 20161011 -
IBM Bluemix Nice Meetup #2 - CEEI NCA - 20161011 - IBM France Lab
 

Similaire à Gestion de-soutenance (20)

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
 
PEPIN LISQUEUR - Gestion de logement
PEPIN LISQUEUR - Gestion de logementPEPIN LISQUEUR - Gestion de logement
PEPIN LISQUEUR - Gestion de logement
 
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdfPEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
PEPIN LISQUEUR - Memoire L3 IG 2019 Vrai.pdf
 
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
 
présentation licence lycée
présentation licence lycéeprésentation licence lycée
présentation licence lycée
 
Cv
CvCv
Cv
 
Cv dridi-lotfi
Cv dridi-lotfiCv dridi-lotfi
Cv dridi-lotfi
 
Mémoire de fin de cycle présenté en vue de L’Obtention du Diplôme de Master P...
Mémoire de fin de cycle présenté en vue de L’Obtention du Diplôme de Master P...Mémoire de fin de cycle présenté en vue de L’Obtention du Diplôme de Master P...
Mémoire de fin de cycle présenté en vue de L’Obtention du Diplôme de Master P...
 
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
 
Fadi hchifa CV
Fadi hchifa CVFadi hchifa CV
Fadi hchifa CV
 
SophiaConf 2017 - Bilan
SophiaConf 2017 - BilanSophiaConf 2017 - Bilan
SophiaConf 2017 - Bilan
 
Visite des lycées
Visite des lycéesVisite des lycées
Visite des lycées
 
Support du cours : Programmation Web 2
Support du cours : Programmation Web 2Support du cours : Programmation Web 2
Support du cours : Programmation Web 2
 
Catalogue de stage
Catalogue de stageCatalogue de stage
Catalogue de stage
 
De la numérisation à la diffusion en ligne de thèses et mémoires africains : ...
De la numérisation à la diffusion en ligne de thèses et mémoires africains : ...De la numérisation à la diffusion en ligne de thèses et mémoires africains : ...
De la numérisation à la diffusion en ligne de thèses et mémoires africains : ...
 
Rapport version finale kouakou aboua pokou alexis
Rapport version finale kouakou aboua pokou alexis Rapport version finale kouakou aboua pokou alexis
Rapport version finale kouakou aboua pokou alexis
 
AntoineLambertCV
AntoineLambertCVAntoineLambertCV
AntoineLambertCV
 
Cvnadirnew 110211085144-phpapp01
Cvnadirnew 110211085144-phpapp01Cvnadirnew 110211085144-phpapp01
Cvnadirnew 110211085144-phpapp01
 
IBM Bluemix Nice Meetup #2 - CEEI NCA - 20161011 -
IBM Bluemix Nice Meetup #2 - CEEI NCA - 20161011 - IBM Bluemix Nice Meetup #2 - CEEI NCA - 20161011 -
IBM Bluemix Nice Meetup #2 - CEEI NCA - 20161011 -
 

Dernier

JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...Institut de l'Elevage - Idele
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestionyakinekaidouchi1
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfmia884611
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...Institut de l'Elevage - Idele
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...Institut de l'Elevage - Idele
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageInstitut de l'Elevage - Idele
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéInstitut de l'Elevage - Idele
 
Algo II : les piles ( cours + exercices)
Algo II :  les piles ( cours + exercices)Algo II :  les piles ( cours + exercices)
Algo II : les piles ( cours + exercices)Sana REFAI
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusInstitut de l'Elevage - Idele
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfInstitut de l'Elevage - Idele
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfInstitut de l'Elevage - Idele
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesInstitut de l'Elevage - Idele
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfInstitut de l'Elevage - Idele
 

Dernier (15)

JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestion
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdf
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversité
 
CAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptxCAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptx
 
Algo II : les piles ( cours + exercices)
Algo II :  les piles ( cours + exercices)Algo II :  les piles ( cours + exercices)
Algo II : les piles ( cours + exercices)
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdf
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentes
 
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdfJTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdf
 

Gestion de-soutenance

  • 1. UNIVERSITE DE FIANARANTSOA ECOLE NATIONALE D’INFORMATIQUE MEMOIRE DE FIN D’ETUDES POUR L’OBTENTION DU DIPLOME DE LICENCE PROFESSIONNELLE Mention : INFORMATIQUE Parcours : Informatique Générale Intitulé : Présenté le 17 Mars 2020 par RAZAFINDRAZAKA Vatosoa Membres du Jury :  Président : Monsieur RAMAMONJISOA Andriantiana Bertin Olivier, ProfesseurTitulaire  Examinateur : Mademoiselle RATIANANTITRA Volatiana Marielle, Doctorante en Informatique  Rapporteurs : Monsieur RALAIVAO Jean Christian, Assistant d’Enseignement Supérieur et de Recherche Monsieur GILANTE Gesazafy, Encadreur Professionnel Année Universitaire 2018-2019 CONCEPTION ET REALISATION D’UNE APPLICATION POUR LA GESTION DES SOUTENANCES
  • 2.
  • 3. I CURRICULUM VITAE RAZAFINDRAZAKA Vatosoa Née le 22 Février à Ambalataretra - Ambalavao Lot 28KIV/3605 Isada Fianarantsoa Tél: 034 63 017 07 / 032 81 785 12 E-mail : razafindrazakav@gmail.com FORMATIONS ET DIPLÔME 2018-2019 : Troisième année en Licence Professionnelle - École Nationale d’Informatique Université de Fianarantsoa Parcours : Informatique Générale 2017-2018 : Deuxième année en Licence Professionnelle - École Nationale d’Informatique Université de Fianarantsoa Parcours : Informatique Générale 2016-2017 : Première année de Licence Professionnelle - École Nationale d’Informatique Université de Fianarantsoa Parcours : Informatique Générale 2015-2016 : Élève de la classe Terminale de Série D au Lycée Rakotoarisoa Ambositra Diplôme Obtenu : Baccalauréat Série D STAGES ET EXPÉRIENCES PROFESSIONNELLES 2019 : Stage au sein de l’école nationale d’informatique Fianarantsoa Thème : Conception et réalisation d’une application pour la gestion des soutenances Langage de programmation utilisé : Java Server Page, JavaScript Framework: Spring Boot, Hibernate et AngularJS SGBD : PostgreSQL Système d’exploitation : Windows 8.1 Projet au sein de l’École Nationale d’Informatique : - « Développement d’une application pour la gestion de location de voiture » Langage de programmation : Java, ASP.net, Java Server Page - « Développement d’une application hybride pour la réservation dans un restaurant » Framework : Ionic
  • 4. II - « Mise en œuvre d’un partage de fichier sous NFS et développement d’une calculatrice exploitant le protocole RPC » Système d’exploitation : Debian 9.5 Langage de programmation : C 2018 : Stage au sein de la société Socolait à Ivandry Antananarivo Thème : Conception et réalisation d’une application pour la mise en vente des produits Langage de programmation utilisé : Python Méthode : Agile Framework : Django SGBD : SQLite Système d’exploitation : Windows 10 Projet au sein de l’Ecole Nationale d’Informatique : - « Mise en œuvre de supervision à l’aide du protocole SNMP » Logiciel utilisé : Cacti - Développement d’une application web pour la gestion de location des appartements Langage de programmation utilisé : PHP5 2017 : Projet au sein de l’École Nationale d’Informatique - « Création d’un site web » Langage utilisé : HTML et CSS Langage de Script : JavaScript -Projet de fin d’année en première année de formation en licence professionnelle au sein de l’Ecole Nationale d’Informatique Thème : Développement d’une interface de configuration de réseau LAN Langage utilisé : C et C++ Outils : Qt Creator COMPÉTENCES EN INFORMATIQUE Systèmes d’exploitation : Windows XP/7/8/10, Linux Familles de distribution Linux : Ubuntu, Debian Systèmes de gestion de base de données : MySQL, PostgreSQL, SQLite Méthode de conception : MERISE, UP Langage de modélisation : UML Langages de programmation : C et C++, Python, Java, Visual Basic Technologies web: HTML, CSS, PHP, ASP.net, JSP Frameworks: Django, Ionic Langages de Script : JavaScript, SQL Routage : Cisco Routage réseaux : routage par défaut, routage statique, RIP, OSPF
  • 5. III Supervision: Cacti Protocol: TCI/IP, SNMP, SSH, SMTP, HTTP/HTPPS, FTP, MPLS Administration système et réseaux : Serveur DNS, FTP, WEB, Pare-feu CONNAISSANCES LINGUISTIQUES Aptitude à : Comprendre à l’audition Lire Écrire et à rédiger Communiquer oralement et à parler TB B AB P TB B AB P TB B AB P TB B AB P Malagasy X X X X Français X X X X Anglais X X X X Grille d’évaluation : TB : Très Bien B : Bien AB : Assez Bien P : Passable DIVERS Loisirs : Lire, Basket, Piscine, Guitare.
  • 6. II DEDICACES Je dédie ce travail à mes chers parents jamais je ne saurais m'exprimé quant aux sacrifices et aux dévouements que vous avez consacrés à mon éducation et mes études. Les mots expressifs soient-ils restent faibles pour énoncer ma gratitude hautement profonde.
  • 7. III SOMMAIRE CURRICULUM VITAE .............................................................................................................I DEDICACES..............................................................................................................................II SOMMAIRE............................................................................................................................. III REMECIEMENTS.................................................................................................................... V LISTE DES FIGURES .............................................................................................................VI LISTE DES TABLEAUX ........................................................................................................IX NOMENCLATURE.................................................................................................................. X INTRODUCTION GENERALE................................................................................................1 PARTIE I : INTRODUCTION Chapitre 1. Présentation de l’Ecole Nationale d’Informatique ..............................................2 1.1. Information d’ordre général .......................................................................................2 1.2. Missions et historique.................................................................................................2 1.3. Organigramme institutionnel de l’ENI.......................................................................3 1.4. Domaine de spécialisation..........................................................................................5 1.5. Architecture des formations pédagogiques ................................................................6 1.6. Relations de l’ENI avec les entreprises et les organismes .........................................8 1.7. Partenariat au niveau international.............................................................................9 1.8. Débouchés professionnels avec des diplômés..........................................................10 1.9. Ressources humaines................................................................................................12 Chapitre 2. DESCRIPTION DU PROJET ...........................................................................13 2.1. Formulation ...............................................................................................................13 2.2. Objectif et besoins d’utilisateur.................................................................................13 2.3. Moyens nécessaires à la réalisation du projet...........................................................13 2.4. Résultats attendus .....................................................................................................14 PARTIE II : ANALYSE ET CONCEPTION Chapitre 3. ANALYSE PREALABLE.................................................................................16 3.1. Analyse de l’existant ................................................................................................16 3.2. Critique de l’existant ................................................................................................18 3.3. Proposition des solutions....................................................................................18 3.4. Conception avant-projet ...........................................................................................19 Chapitre 4. ANALYSE CONCEPTUELLE.........................................................................34 4.1. Dictionnaire des données..........................................................................................34
  • 8. IV 4.2. Règles de gestion......................................................................................................35 4.3. Représentation et spécification des besoins .............................................................36 4.4. Modélisation du domaine .........................................................................................43 Chapitre 5. CONCEPTION DETAILLEE ...........................................................................45 5.1. Architecture du système ...........................................................................................45 5.2. Diagramme de séquence de conception ...................................................................45 5.3. Diagramme de classe de conception pour chaque cas d’utilisation .........................48 5.4. Diagramme de classe de conception global..............................................................50 5.5. Diagramme de paquetages........................................................................................51 5.6. Diagramme de déploiement......................................................................................52 PARTIE III : REALISATION Chapitre 6. MISE EN PLACE DE L’ENVIRONNEMENT DE DEVELOPPEMENT ...54 6.1. Installation et configuration des outils .....................................................................54 6.2. Architecture de l’application ..............................................................................61 Chapitre 7. DEVELOPPEMENT DE L’APPLICATION....................................................64 7.1. Création de la base de données.................................................................................64 7.2. Codage de l’application............................................................................................71 7.3. Présentation de l’application ....................................................................................84 CONCLUSION ET PERSPECTIVES .....................................................................................88 REFERENCES BIBLIOGRAPHIQUES .............................................................................. XIV REFERENCES WEBOGRAPHIQUES ..................................................................................XV GLOSSAIRE ......................................................................................................................... XVI ANNEXES ..........................................................................................................................XVIII TABLE DE MATIERES ....................................................................................................... XXI RESUME.............................................................................................................................XXIV ABSTRACT........................................................................................................................XXIV
  • 9. V REMECIEMENTS Je tiens particulièrement à remercier :  Monsieur RAFAMANTANANTSOA Fontaine, Professeur à l’Université de Fianarantsoa, Président de l’Université de Fianarantsoa, pour la bonne organisation de l’année universitaire ;  Monsieur RAMAMONJISOA Andriantiana Bertin Olivier, Professeur Titulaire à l’Université de Fianarantsoa, Directeur de l’Ecole Nationale d’Informatique, pour tous ses efforts à garder à tout prix l’honneur de l’Ecole en tant que pépinière des élites informaticiennes malgaches ;  Monsieur RALAIVAO Jean Christian, Responsable de Parcours « Génie Logiciel et Base de Données », en tant qu’encadreur pédagogique.  Monsieur GILANTE Gesazafy, Responsable de Parcours « Informatique Générale » en tant qu’encadreur professionnel ;  Monsieur RABETAFIKA Louis Haja, Chef du département de la formation théorique de Ecole Nationale d’Informatique pour son agréable accueil et précieux conseils ;  Monsieur ANDRIAMAMPANDRY Ranaivoson Tina et Madame RAMANITRA Rosa, secrétaires de la mention Informatique à l’Ecole Nationale d’Informatique pour leur agréable accueil. Je profite de cette occasion pour remercier :  Les membres du jury, tous les enseignants de l’Ecole Nationale d’Informatique, pour m’avoir enseigné et donné des cours intéressants ;  L’ensemble du personnel administrative et technique de l’Ecole Nationale d’Informatique, pour leur aimable collaboration et leurs diverses contributions ;  Ma famille et à tous ceux qui ont participé à la réalisation de ce stage, pour leur soutien et leur aide.
  • 10. VI LISTE DES FIGURES Figure 1: Organigramme de l’Ecole Nationale d’Informatique. ................................................4 Figure 2: Diagramme de flux de la société...............................................................................17 Figure 3: Caractéristiques de J2EE...........................................................................................26 Figure 4: Caractéristiques de Javascript. ..................................................................................28 Figure 5: Caractéristiques de Spring Boot................................................................................29 Figure 6: Caractéristiques de Hibernate. ..................................................................................30 Figure 7; Caractéristiques de JAVA. ........................................................................................31 Figure 8: Diagramme de cas d’utilisation globale....................................................................38 Figure 9: Diagramme de séquence pour le cas d’utilisation « s’authentifier ». .......................40 Figure 10: Diagramme de séquence pour le cas d’utilisation « ajouter service ». ...................41 Figure 11: Diagramme de séquence pour le cas d’utilisation « modifier service ». ................41 Figure 12: Diagramme de séquence pour le cas d’utilisation « supprimer service ». ..............42 Figure 13: Diagramme de séquence pour le cas d’utilisation « gérer calendrier ». .................43 Figure 14: Modèle de domaine.................................................................................................44 Figure 15: modèle MVC...........................................................................................................45 Figure 16: Diagramme de séquence conception pour le cas d’utilisation « s’authentifier »....46 Figure 17: Diagramme de séquence conception pour le cas d’utilisation « Ajouter service ». 46 Figure 18: Diagramme de séquence conception pour le cas d’utilisation « Modifier service ». ..................................................................................................................................................47 Figure 19: Diagramme de séquence conception pour le cas d’utilisation « supprimer service ». ..................................................................................................................................................48 Figure 20: Diagramme de classe conception « s’authentifier ». ..............................................48 Figure 21: Diagramme de classe conception « gérer étudiant »...............................................49 Figure 22: Diagramme de classe conception « gérer enseignant ». .........................................49 Figure 23: Diagramme de classe conception « gérer jury ». ....................................................49 Figure 24: Diagramme de classe conception « gérer calendrier »............................................50 Figure 25: Diagramme de classe conception global. ................................................................51 Figure 26: Diagramme de paquetage........................................................................................52 Figure 27: Diagramme de déploiement. ...................................................................................53 Figure 28: Installation de Visual Paradigm. .............................................................................54 Figure 29: Installation de Visual Paradigm setup.....................................................................55 Figure 30: Fin de réglage de l'installation de Visual Paradigm................................................55 Figure 31: Fin de l'installation de Visual Paradigm. ................................................................56 Figure 32: Début de l’installation de XAMPP. ........................................................................56 Figure 33: Fin de l’installation de XAMPP..............................................................................57 Figure 34: Configuration de l’installation de XAMPP.............................................................57 Figure 35: Interface du control panel de XAMPP....................................................................58 Figure 36: Installation de JDK. ................................................................................................58 Figure 37: Progression de l'installation de JAVA. ...................................................................59 Figure 38: Configuration de l'installation de JRE. ...................................................................59 Figure 39: Fin de l'installation de JAVA SE. ...........................................................................60 Figure 40: Dossier d'installation de Spring Tool Suite.............................................................60
  • 11. VII Figure 41: Lancement de Spring Tool Suite.............................................................................61 Figure 42: Architecture de l’application...................................................................................62 Figure 43: Architecture de l'application partie Backend. .........................................................62 Figure 44: Architecture de l'application partie Frontend..........................................................63 Figure 45: Interface de PgAdmin. ............................................................................................64 Figure 46: Demande de mot de passe d'authentification de PgAdmin4. ..................................64 Figure 47: Authentification du PgAdmin. ................................................................................65 Figure 48: Interface d'option de création de base de données. .................................................65 Figure 49; Création de la base de données « gestionapi »........................................................66 Figure 50: Création de la table « jury ». ...................................................................................67 Figure 51: Création de la table « étudiant ». ............................................................................67 Figure 52: Création de la table « enseignant ». ........................................................................68 Figure 53: Création de la table « theme ».................................................................................68 Figure 54: Création de la table « niveau »................................................................................68 Figure 55: Création de la table « parcours ».............................................................................69 Figure 56: Création de la table « etablissement ».....................................................................69 Figure 57: Création de la table « annee ». ................................................................................69 Figure 58: Création de la table « service ». ..............................................................................70 Figure 59: Création de la table « utilisateur ». .........................................................................70 Figure 60: Création de la table « calendrier ». .........................................................................71 Figure 61: Code du modèle d'une table «jury »........................................................................72 Figure 62: Code de « repository annee »..................................................................................73 Figure 63: Code liste de table « jury ». ....................................................................................73 Figure 64: Code pour créer un jury. .........................................................................................73 Figure 65: Code de modification du jury. ................................................................................74 Figure 66: Code de suppression du jury. ..................................................................................74 Figure 67: Code d’exécution de partie Backend. .....................................................................74 Figure 68: Création de la table jury partie affichage. ...............................................................75 Figure 69: Code de service de table jury. .................................................................................76 Figure 70: Code de création de lien de table jury.....................................................................77 Figure 71: Code de routing module de création du jury...........................................................77 Figure 72: Code de module de création de jury. ......................................................................78 Figure 73: Code de component généré automatiquement. .......................................................78 Figure 74: Code component de création de jury. .....................................................................79 Figure 75: Code html de l'authentification de l'application......................................................80 Figure 76: Code html de l'accueil de l'application. ..................................................................80 Figure 77: Code html du jury ...................................................................................................81 Figure 78: Code html de l'étudiant. ..........................................................................................82 Figure 79: Code html de l'enseignant. ......................................................................................83 Figure 80: Authentification. .....................................................................................................84 Figure 81: Page d’accueil. ........................................................................................................85 Figure 82: Interface du menu jury. ...........................................................................................85 Figure 83: Interface du menu étudiant......................................................................................86 Figure 84: Interface du menu enseignant. ................................................................................86
  • 12. VII I Figure 85: Interface du menu calendrier ..................................................................................87 Figure 86: Procès-verbal......................................................................................................XVIII Figure 87: Fiche Technique................................................................................................... XIX Figure 88: Grille d'évaluation..................................................................................................XX
  • 13. IX LISTE DES TABLEAUX Tableau 1: Organisation du système de formation pédagogique de l’Ecole. .............................6 Tableau 2: Architecture des études correspondant au système LMD. .......................................7 Tableau 3: Liste des formations existantes à l’ENI....................................................................7 Tableau 4: Débouchés professionnels éventuels des diplômés. ...............................................11 Tableau 5: Caractéristiques de l’ordinateur utilisé...................................................................14 Tableau 6: Caractéristiques des logiciels utilisés. ....................................................................14 Tableau 7: les moyens matériels...............................................................................................17 Tableau 8: les moyens logiciels................................................................................................18 Tableau 9: Avantages et inconvénients des solutions proposées. ............................................19 Tableau 10: Comparaison entre MERISE et XP. .....................................................................19 Tableau 11: comparaison entre Win ‘Design et Visual Paradigm. ..........................................22 Tableau 12: Comparaison des SGBD. ......................................................................................24 Tableau 13: Comparaison entre PHP et J2EE. .........................................................................25 Tableau 14: Comparaison entre JavaScript et Java ..................................................................27 Tableau 15: Comparaison entre Spring Boot, Hibernate et Struts. ..........................................28 Tableau 16: Comparaison entre AngularJS et ReactJS. ...........................................................30 Tableau 17: Comparaison entre Spring Tool Suite et NetBeans. .............................................32 Tableau 18: Comparaison entre VS Code et Sublime Text......................................................33 Tableau 19: Dictionnaire des données......................................................................................34 Tableau 20: Besoins fonctionnels des acteurs. .........................................................................37 Tableau 21: priorisation des cas d’utilisations. ........................................................................38
  • 14. X NOMENCLATURE API Application Programming Interface AUF Agence Universitaire de la Francophonie B2B Business to Business BFV-SG Bankin’ny Fampandrosoana sy ny Varotra – Société Générale BIANCO Bureau Indépendant Anti-Corruption BNGRC Bureau National de Gestion des Risques et des catastrophes CEDII-Fianarantsoa BTS Brevet de Technicien Supérieur CARI Colloque Africain sur la Recherche en Informatique CITEF Conférence Internationale des Ecoles de formation d’Ingénieurs et Techniciens d’Expression Française CHU Centre Hospitalier Universitaire CNH Commission Nationale d’Habilitation CNRE Centre National de Recherche sur l’Environnement CNRIT Centre National de Recherches Industrielles et Technologiques COFAV Corridor forestier de Fandriana jusqu’à Vondrozo CUR Centre Universitaire Régional DB2 DataBase 2 DTS Diplôme de Technicien Supérieur DLC Development Learning Center DUT Diplôme Universitaire de Technicien ENI Ecole Nationale d’informatique
  • 15. XI FID Fonds d’Intervention pour le Développement FPPSM Forêts, Parcs et Pauvreté dans le Sud de Madagascar FTM Foiben’ny Taontsaritanin’i Madagasikara GV Grille d’évaluation HACCP Hazard Analysis Critical Control Point HDD Hard Disk Drive HTML HyperText Markup Language HTTP HyperText Transfert Protocol IDE Investissements directs à l’étranger IDE Integrated Development Environment INSTAT Institut National de la Statistique INPG Institut National Polytechnique de Grenoble IOGA Institut et Observatoire Géophysique d’Antananarivo IREMIA Institut de Recherche en Mathématiques et Informatique Appliquées IRD Institut de Recherche pour le Développement ISO International Organization for Standard J2EE Java 2 Enterprise Edition JIRAMA Jiro sy Rano Malagasy JS JavaScript JVM Java Virtual Machine LMD Licence- Master- Doctorat MAEP Mécanisme africain d’évaluation par les pairs
  • 16. XII MEF Metro Ethernet Forum MESupRES Ministère de l’Enseignement Supérieur et de la REcherche Scientifique MFB Ministère des Finances et du Budget MIC Madagascar Informatique Corporation MVC Modèle-Vue-Contrôleur MySQL My Structured Query Language ORM Object Relational Mapping POO Programmation Orientée Objet PostgreSQL Postgres Structured Query Language PRESUP Programme de renforcement en l’Enseignement Supérieur PV Procès-verbal RG Règle de Gestion Sap DB Sap DataBase SEPT Société d’Exploitation du Port de Toamasina SGBD Système de Gestion de Base de Données SMMC Société de Manutention des Marchandises Conventionnelles Spring JMS Spring Java Message Service Spring WS Spring Web Service STS Spring Tool Suite SQL Structured Query Language TELMA Telecom Madagascar TIC Technologies de l’Information et de la communication UML Unified Modeling Language UP Unified Process
  • 17. XII I UPST Université Paul Sabatier de Toulouse WWF Fonds Mondial pour la Nature XAMPP X Apache, MySQL, PHP and Perl XP eXtreme Programming
  • 18. 1 INTRODUCTION GENERALE Dans le cadre de la formation à l’Ecole Nationale d’Informatique, les étudiants ont été amenés à finaliser leur formation de Licence professionnelle par un stage de trois mois. Ce stage permet de confronter l’enseignement théorique reçu pendant les cours et les connaissances acquises lors des précédentes expériences professionnels et des problématiques plus générales propres au fonctionnement d’une organisation. Pour notre part, le stage de fin d’études s’est déroulé au sein de l’Ecole Nationale d’Informatique même, plus précisément dans le bureau du Responsable de Mention. L’objectif de ce stage est la conception et la réalisation d’une application pour la gestion de la soutenance. Pour ce faire, on utilise une méthode pour la conception, un langage pour le développement de l’application et le SGBD pour la base de données. Ces éléments qui peuvent paraîtres évidents d’un point de vue théorique, sont en pratique, difficiles à mettre en place et à exploiter. Ce projet a donc débuté par une phase de compréhension et de formulation pour ensuite s’appuyer sur l’analyse. Cette méthodologie a été dictée par des contraintes et des objectifs de réalisation. La conception du système s’est ensuite faite, formellement, sur la base des résultats de l’analyse validée par les personnels du Responsable de Mention. Ce mémoire propose, dans la première partie, la présentation du cadre de stage en présentant l’Ecole Nationale d’Informatique. Ensuite, dans la seconde partie, l’analyse préalable composée de l’analyse de l’existant suivi de la conception avant-projet et l’analyse conceptuelle en effectuant la synthèse des besoins suivant les étapes de la méthode utilisée. Et enfin, dans la dernière partie, la réalisation tout en exposant la présentation, suivi ensuite du développement.
  • 19. PARTIE I : PRESENTATIONS
  • 20. 2 Chapitre 1. Présentation de l’Ecole Nationale d’Informatique 1.1.Information d’ordre général L’Ecole Nationale d’Informatique, en abrégé ENI, est un établissement d’enseignement supérieur rattaché académiquement et administrativement à l’Université de Fianarantsoa. Le siège de l’Ecole se trouve à Tanambao- Antaninarenina à Fianarantsoa. L’adresse pour la prise de contact avec l’Ecole est la suivante : Ecole Nationale d’Informatique (ENI) Tanambao, Fianarantsoa. Le numéro de sa boîte postale est 1487 avec le code postal 301. Téléphone : 034 05 733 36. Son adresse électronique est la suivante : eni@univ-fianar.mg. Site Web : www.univ-fianar.mg/eni 1.2.Missions et historique L’ENI se positionne sur l’échiquier socio-éducatif malgache comme étant le plus puissant secteur de diffusion et de vulgarisation des connaissances et des technologies informatiques. Cette Ecole Supérieure peut être considérée aujourd’hui comme la vitrine et la pépinière des élites informaticiennes du pays. L’Ecole s’est constituée de façon progressive au sein du Centre Universitaire Régional (CUR) de Fianarantsoa. De façon formelle, l’ENI était 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 et des Ingénieurs de haut niveau, aptes à répondre aux besoins et exigences d’Informatisation des entreprises, des sociétés et des organes implantés à Madagascar. L’ENI a pour conséquent pour mission de former des spécialistes informaticiens compétents et opérationnels de différents niveaux notamment :  En fournissant à des étudiants des connaissances de base en informatique ;  En leur transmettant le savoir-faire requis, à travers la professionnalisation des formations dispensées et en essayant une meilleure adéquation des formations par rapport aux besoins évolutifs des sociétés et des entreprises.  En initiant les étudiants aux activités de recherche dans les différents domaines des Technologies de l’information et de la communication (TIC). L’implantation de cette Ecole Supérieure de technologie de pointe dans un pays en développement et dans une Province (ou Faritany) à tissu économique et industriel faiblement développé ne l’a pourtant pas défavorisée, ni empêchée de former des spécialistes informaticiens de bon niveau, qui sont recherchés par les entreprises, les sociétés et les organismes publics et privés sur le marché de l’emploi.
  • 21. 3 La filière de formation d’Analystes Programmeurs a été mise en place à l’Ecole 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’Ecole en 1986. Dans le cadre du Programme de renforcement en l’Enseignement Supérieur (PRESUP), la filière de formation des Techniciens Supérieurs en Maintenance des Systèmes des informatiques a été mise en place en 1986 grâce à l’appui matériel et financier de la Mission Française de coopération auprès de l’Ambassade de France à Madagascar. Une formation pour l’obtention de la certification CCNA et / ou NETWORK +.appelée« CISCO Networking Academy » a été créée à l’Ecole en 2002-2003 grâce au partenariat avec CISCO SYSTEM et l’Ecole Supérieure Polytechnique d’Antananarivo (ESPA). Cependant, cette formation n’avait pas duré longtemps. Une formation de troisième cycle a été ouverte à l’Ecole a été ouverte à l’Ecole 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 à la recherche dans les différents domaines de l’Informatique, et notamment pour préparer la relève des Enseignants-Chercheurs qui étaient en poste. Pendant l’année 2007-2008, la formation en vue de l’obtention du diplôme de Licence Professionnelle en Informatique a été mise en place à l’ENI avec les deux options suivantes de formation : - Génie Logiciel et base de Données - Administration des Système et réseaux. La mise en place à l’Ecole de ces deux options de formation devait répondre au besoin de basculement vers le système Licence – Master – Doctorat (LMD). Mais la filière de formation des Techniciens Supérieurs en Maintenance des Systèmes Informatiques a été gelée en 2009. En vue de surmonter les difficultés de limitation de l’effectif des étudiants accueillis à l’Ecole, notamment à cause du manque d’infrastructures, un système de « Formation Hybride » a été mise en place à partir de l’année 2010. Il s’agit en effet d’un système de formation semi présentielle et à distance avec l’utilisation de la visioconférence pour la formation à distance. Le système de formation hybride a été ainsi créé à Fianarantsoa ainsi qu’Université de Toliara. 1.3.Organigramme institutionnel de l’ENI Cet organigramme de l’Ecole est inspiré des dispositions du décret N° 83-185 du 23 Mai 1983.
  • 22. 4 L’ENI est administrée par un conseil d’Ecole, 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’Ecole est chargé de résoudre les problèmes liés à l’organisation pédagogique des enseignements ainsi que à 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 par rapport aux besoins des entreprises. La figure 1 présente l’organigramme actuel de l’Ecole. Figure 1: Organigramme de l’Ecole Nationale d’Informatique. Sur cet organigramme, l’Ecole 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’Etablissement et nommé par un décret pris en Conseil des ministres pour un mandat de 3 ans.
  • 23. 5 Le Conseil de l’Ecole est l’organe délibérant de l’Ecole. 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’Ecole. Le Secrétariat principal coordonne les activités des services administratifs (Scolarité, Comptabilité, et Intendance). Conformément aux textes en vigueur régissant les Etablissements malgaches d’Enseignement Supérieur, qui sont barrés sur le système LMD, les Départements de Formation 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’Ecole et celui de l’Université. 1.4.Domaine 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’Ecole.
  • 24. 6 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 : o Génie logiciel et Base de Données ; o Administration des Systèmes et Réseaux ; o Informatique Générale L’architecture des études à trois niveaux conforment 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 Ecole 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 1: Organisation du système de formation pédagogique de l’Ecole.
  • 25. 7 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 professionnelle. Le master peut avoir une vocation professionnelle ou de recherche. Tableau 3: Liste des formations existantes à l’ENI. L’accès en première année de MASTER se fait automatiquement pour les étudiants de l’Ecole 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 Etablissements de formation universitaire. Tableau 2: Architecture des études correspondant au système LMD.
  • 26. 8 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’Ecole 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. 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’Ecole sont plutôt bien accueillis dans les instituts universitaires étrangères (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’Ecole et les besoins évolutifs du marché de l’emploi. Les principaux débouchés professionnels des diplômés de l’Ecole 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
  • 27. 9  L’ingénierie informatique appliquée  L’écologie et le développement durable Parmi les sociétés, entreprises et organismes partenaires de l’Ecole, on peut citer : ACCENTURE Mauritius, Air Madagascar, Ambre Associates, Airtel, Agence Universitaire de la Francophonie ( AUF) , B2B, Banque Centrale, BFG-SG, BIANCO, BLUELINE, CNaPS, 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, 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’Ecole. 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’Ecole 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 renouvellement du fonds de la bibliothèque  L’appui à la formation des formateurs  L’affectation à l’Ecole 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’Ecole 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).
  • 28. 10 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’Ecole 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. 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’Ecole 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ébouchés professionnels avec des diplômés 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.
  • 29. 11 Cependant, les formations proposées par l’Ecole 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’Ecole apporte à ses étudiants un savoir-faire et un savoir-être qui les accompagnent tout au long de leur vie professionnelle. Elle a une vocation professionnalisante. 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 Ecole Supérieure de référence en matière informatique. Par conséquent, en raison de fait que l’équipe pédagogique de l’Ecole est expérimentée, les enseignants-chercheurs et les autres formateurs de l’Ecole sont dotés d’une grande expérience dans l’enseignement et dans le milieu professionnel. L’Ecole 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’Ecole sont ainsi orientées vers le besoin et les attentes des entreprises et des sociétés. L’Ecole 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’Ecole 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és 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: Débouchés professionnels éventuels des diplômés.
  • 30. 12 1.9.Ressources humaines  Directeur de l’Ecole : Monsieur RAMAMONJISOA Bertin Olivier, Professeur Titulaire  Chef de Mention : Monsieur RABETAFIKA Louis Haja  Responsable de Parcours « Génie Logiciel et Base de Données » : Monsieur RALAIVAO Jean Christian  Responsable de Parcours « Administration Systèmes et Réseaux » : Monsieur SIAKA  Responsable de Parcours « Informatique Générale » : Monsieur GILANTE Gesazafy  Nombre d’Enseignants permanents : 13 dont deux (02) Professeurs Titulaires, un (01) Professeur, cinq (05) Maîtres de Conférences et cinq (05) Assistants d’Enseignement Supérieur et de Recherche  Nombre d’Enseignants vacataires : 10  Personnel Administratif : 23
  • 31. 13 Chapitre 2. DESCRIPTION DU PROJET Après avoir évoqué la présentation de l’Ecole Nationale d’informatique dans le chapitre précédent, nous allons voir la description du projet de façons détaillé : sa formulation, ses objectifs, les moyens en personnel et matériels nécessaires, les besoins des utilisateurs ainsi que les résultats attendus. 2.1. Formulation Ce stage a été effectué à l’Ecole Nationale d’Informatique au sein du département responsable de mention, Cette partie tienne une grande place dans l’Ecole, qui s’occupe à la fois la gestion du calendrier pédagogique, de la disponibilité des enseignants, du partage des sujets, de l’emploi du temps, du stage ainsi que la gestion de la soutenance. Ces activités sont aussi importantes l’une que l’autre. Mais ce projet ne concerne que la gestion de soutenance, pour suivre et faciliter le contrôle de cette dernière. 2.2. Objectif et besoins d’utilisateur 2.2.1. Objectif Le principal objectif du projet est de concevoir et réaliser une application pour la gestion des soutenances. 2.2.2. Besoins d’utilisateur Les besoins des utilisateurs sont :  Faire une recherche de nom de l’enseignant avec les impétrants ;  Vérification des membres du jury en cas de soutenances en parallèle ;  Etablir automatiquement les calendriers des soutenances ;  Affecter d’une manière équilibrée les impétrants aux enseignants ;  Imprimer le procès-verbal. 2.3.Moyens nécessaires à la réalisation du projet Pour réaliser un projet, nous avons besoin de quelques moyens : - Moyens humains - Moyens matériels - Moyens logiciels 2.3.1. Moyens humains - Interlocuteurs en charge du projet : Les services de l’école - Concepteur/développeur : Le stagiaire 2.3.2. Moyens matériels Le tableau 5 représente les caractéristiques de machine utilisée pour ce projet.
  • 32. 14 Tableau 5: Caractéristiques de l’ordinateur utilisé. Type Processeur Système d’exploitation RAM Disque Dure Ordinateur portable Core i5 Windows 8.1 64bits 8Go 500Go 2.3.3. Moyens logiciels Pour la bonne réalisation du projet quelques logiciels et outils ont été nécessaire, comme le tableau 6 les décrivent. Tableau 6: Caractéristiques des logiciels utilisés. N° Type Description Commentaire 1 Logiciel de modélisation Visual Paradigm Pour la modélisation des données 2 Modélisation de données UML Pour modéliser la base de données 3 Méthode de conception XP Pour la méthode de développement de logiciel 4 Serveur Xampp Pour la gestion de la base de données 5 IDE - Spring Tool Suite (Sts) pour eclipse - Vs Code Pour le développement du projet 6 Gestion de code source Git Pour la gestionnaire des versions decentralisés 7 Gestionnaire de base de données PgAdmin v4 Pour l’édition visuel de base de données 8 Base de données PostgreSQL Pour la gestion de données 9 Langage de programmation J2EE et Javascript Pour le développement de la partie serveur et client 10 Framework Spring Boot et AngularJS Pour le développement de l’application 2.4.Résultats attendus A la fin de ce projet, le service au sein du responsable du mention aura une application permettant de visualiser : - les procédures effectués durant la préparation de soutenance - la répartition des salles et les membres de jury
  • 33. 15 - le procès-verbal et la grille d’évaluation - l’équilibre des élèves soutenus des membres du jury avec la variation des fonctions de ces derniers
  • 34. PARTIE II : ANALYSE ET CONCEPTION
  • 35. 16 Chapitre 3. ANALYSE PREALABLE Ce chapitre se repose sur l’analyse de la situation existante de l’Ecole et propose des solutions afin de résoudre le manque lors de la critique de l’existante. 3.1.Analyse de l’existant L’analyse de l’existant est une étape de compréhension qui est indispensable dans la conception d’un système d’information dans une organisation. Il a pour objectifs de :  Comprendre le système d’information actuel de l’entreprise, et prendre connaissance dans les détails les domaines pour lesquels la société souhaite apporter des améliorations,  Déceler les anomalies, pouvant représenter un réel handicap pour le développement de l’entreprise,  Proposer des améliorations concrètes et réalisables, en se référant aux objectifs de la société et en fixant comme plan de travail le ou les domaines pour lesquels elle souhaite améliorer son revenu. 3.1.1. Organisation actuelle Actuellement, au sein du responsable de mention, les secrétaires sont en service de tous les enseignants. Ils sont donc soumis au contrôle et au suivi de la soutenance. Au niveau d’obtention de thème, la répartition de la salle et la date de soutenance, les procédures effectués dépendent du niveau des étudiants (les premières années en licence et les premières années en master sont dans le même cas, les deuxièmes années en licences sont différentes, les troisièmes années en licence avec les deuxièmes années en master). Une fois ces informations sont remises aux responsables de mention, ils vont partitionner les membres de jury, cela se fait manuellement avec la vérification de ces derniers. Le calendrier sera rempli avec ces informations en utilisant le Microsoft Word et Excel et sera affiché aux étudiants. Les étudiants commenceront à déposer le livre du rapport avec la grille d’évaluation et le rapport de lecture et pourront faire la soutenance, si non la soutenance sera pour la prochaine rattrapages. A la fin de la soutenance, le procès-verbal saisi et la grille d’évaluation dans la mention seront apportés à la scolarité. Le diagramme de flux est une représentation graphique destinée à présenter la demande de procès-verbal. La figure 2 représente le diagramme de flux actuel dans le service.
  • 36. 17 Figure 2: Diagramme de flux de la société. 3.1.2. Moyens matériels et logiciels Le tableau 7 représente les moyens matériels pour la réalisation du projet. Tableau 7: les moyens matériels. N° Désignation Caractéristiques Quantité 1 Poste de travail PC CPU AMD E1-120APU 4Go RAM4Go HD500Go Windows7 32bits 1 2 Poste de travail PC CPU AMD E1-120APU 4Go RAM4Go HD500Go Windows10 64bits 1 3 Imprimante HP LaserJet 1320 1 Le tableau 8 illustre les moyens logiciels.
  • 37. 18 Tableau 8: les moyens logiciels. N° Désignation Description 1 Microsoft WORD Pour la saisie des données 2 Microsoft EXCEL Pour la saisie des données 3.2.Critique de l’existant La critique de l’existant est un moyen qui tente de faire apparaître les défauts et les qualités de ce qui existe déjà. Point fort : Une fois les données conservées, ils sont toujours récupérables. Points faibles : - Inégalité de nombre d’étudiants soutenus des enseignants - Perte du temps pour les traitements de données - Perte de certains fichiers - Difficulté pour une recherche des enseignants et les étudiants soutenus - Occupation de place pour la conservation des fichiers Éventuellement, aucun logiciel n’est destiné à la gestion de soutenance, le service utilise Excel et Word, cela dépend du fichier à traiter. Ce dernier est facile d’utilisation, il traite les calculs et saisie des informations mais il a ses limites quand il s’agit de sérieuses gestions comme la recherche de nombre des étudiants soutenus de chaque enseignants ou comparaison de ces informations. Utiliser Excel et Word n’est pas fiable et entraîne une perte de temps, de données vu le nombre des étudiants. 3.3.Proposition des solutions Pour répondre à la demande du personnel, on a proposé les solutions suivantes : Solution 1 : Concevoir et réaliser une application pour gérer la soutenance Solution 2 : Télécharger une application de gestion de soutenance La solution 2 qui est de télécharger une application et est déjà sur le marché comme les sites Toucharger, Madagascar-design et Net-univers. Solution 3 : Acheter une application de gestion de soutenance Nous pouvons proposer d’acheter une application chez une agence comme Newman’s technology, Mpiketrika company et Sortlist. Le tableau 9 présente les avantages et les inconvénients des solutions proposées.
  • 38. 19 Tableau 9: Avantages et inconvénients des solutions proposées. Avantages de la solution Inconvénients Solution 1 -Application sur mesure : l’utilisation de l’application répond aux besoins réels de l’utilisateur -Application fiable -Application facile à utiliser -Le développement prend de temps pour la mise en place Solution 2 -Application prête à utiliser -Application gratuite -Besoin de formation pour l’utilisateur Solution 3 -Application prête à utiliser -Difficulté de paiement -Difficulté de la livraison -Mal adaptation parce que cette application est bien foutue La deuxième solution consiste à télécharger un logiciel prêt à utiliser comme « GESTION DES SOUTENANCES » et la troisième solution est d’acheter un logiciel mais qui ne répond pas l’intégralité des besoins réels de la société. Donc, la solution 1 de développer une application sur mesure répond aux besoins réels de la société sera bénéfique. 3.4.Conception avant-projet Pour concevoir et réaliser une application, on a besoin d’utiliser une méthode de conception, un langage de développement, un SGBD et un outil de modélisation. 3.4.1. Méthode de conception Il existe beaucoup de méthode de conception telle que :  Les méthodes classiques comme le MERISE  Les méthodes d’agiles comme le XP Avant de faire un choix, comparons deux méthodes différentes. Le tableau 10 représente la comparaison entre merise et XP. Tableau 10: Comparaison entre MERISE et XP. MERISE XP Méthode d’approche Séquence de spécification, conception, réalisation, validation Itération, incrémentation Avantage Sépare clairement les données et le traitement S’intéresse à la satisfaction de client Inconvénient Changement très dure en cas de modification de spécification Documentation très réduites
  • 39. 20 Choix et justification On a choisi la méthode XP parce qu’elle satisfait les besoins du client, ainsi que les petits ou moyens projets. On associera cette méthode avec la notation UML. Présentation de XP Extrem programming XP L’eXtrem Programming appartient à la famille de la méthode d’agile. C’est un ensemble de pratiques qui couvre une grande partie des activités de la réalisation d’un logiciel :  Planification  Organisation de l’équipe de développement  Echanges avec le client  Programmation XP est une méthode destinée au petit projet dont le nombre de participant est réduit. Il considère que la satisfaction de 4 variables va contribuer au développement efficace d’un produit fonctionnel. Ces variables sont :  Le coût : le développement se fait par petits modules, cela permet de suivre de près les dépenses pour ne pas dépasser les budgets.  Le temps : le développement par modules permet de suivre l’évolution du développement en fonction du temps passé.  La qualité : pour XP, la qualité doit toujours être maximum. C’est la seule variable qui ne peut pas varier.  L’étendue : le nombre de fonctionnalité va dépendre du temps et du budget à disposition. C’est le client qui va décider de ce qui sera développé ou pas afin de garder la plus grande qualité possible, en restant dans les délais et les budgets. Afin de satisfaire les quatre (4) variables, XP met en évidence 4 valeurs essentielles au travers de la méthode : la communication, la simplicité, le feed-back et le courage.  La communication : c’est le moyen fondamental pour éviter les problèmes. Les pratiques que préconise l’XP imposent une communication intense. Les tests, la programmation en binôme et le jeu du planning obligent les développeurs, et les clients à communiquer.  La simplicité : la façon la plus simple d’arriver au résultat est la meilleure. Anticiper les extensions futures est une perte de temps. Une application simple sera plus facile à faire évoluer.  Le feedback : le retour d’information est primordial pour le programmeur et le client. Les tests unitaires indiquent si le code fonctionne. Les tests fonctionnels donnent l’avancement du projet. Les livraisons fréquentes permettent de tester les fonctionnalités rapidement.  Le courage : certains changements demandent beaucoup de courage. Il faut parfois changer l’architecture d’un projet, jeter du code pou en produire un meilleur ou essayer une nouvelle technique. Le courage permet de sortir d’une situation inadaptée. C’est
  • 40. 21 difficile, mais la simplicité, le feedback et la communication rendent les taches accessibles. Unified Modeling Language (UML) UML est une notation permettant de modéliser un problème de façon standard. C’est un langage qui permet de représenter des modèles, mais il ne définit pas le processus d’élaboration de ces modèles. Cependant, dans le cadre de la modélisation application informatique, les auteurs d’UML préconisent d’utiliser une démarche.  Itérative et incrémentale L’idée est simple : pour modéliser (comprendre et représenter) un système complexe, il vaut mieux s’y prendre en plusieurs fois, en affirmant son analyse par étapes. Cette démarche devrait aussi s’appliquer au cycle de développement dans son ensemble, en favorisant le prototype. Le but est de mieux maîtriser la part d’inconnu et d’incertitudes qui caractérisent les systèmes complexes.  Guidée par les besoins des utilisateurs du système Ce sont les utilisateurs qui guident la définition des modèles : le périmètre du système à modéliser est défini par les besoins de ses utilisateurs. Le but du système à modéliser est de répondre aux besoins de ses utilisateurs (les utilisateurs sont les clients du système). A chaque itération de la phase de conception et de réalisation, on veille à la prise en compte des besoins des utilisateurs. A chaque itération de la phase de test, on vérifie que les besoins des utilisateurs sont satisfaits.  Centrée sur l’architecture logicielle Une architecture adaptée est la clé de voûte du succès d’un développement. Elle décrit des choix stratégiques qui déterminent en grande partie les qualités du logiciel (adaptabilité, performance, fiabilité…) D’après les auteurs d’UML, un processus de développement qui possède ces qualités devrait favoriser la réussite d’un projet. La modélisation consiste à créer une représentation simplifiée d’un problème : le modèle. Grâce au modèle, il est possible de représenter simplement un problème, un concept et le simuler. La modélisation comporte deux composantes :  L’analyse, c’est-à-dire l’étude du problème  La conception, soit la mise au point d’une solution au problème Le modèle constitue ainsi une représentation possible du système pour un point de vue donné. UML fournit un moyen astucieux permettant de représenter diverses projections d’une même représentation grâce aux vues. Une vue est constituée d’un ou plusieurs diagrammes comme :  Le diagramme de cas d’utilisation Le diagramme de cas d’utilisation permet de représenter le fonctionnement du système vis-à- vis de l’utilisateur, c’est donc une vue du système dans son environnement extérieur. Un cas
  • 41. 22 d’utilisation est une manière spécifique d’utiliser un système. C’est l’image d’une fonctionnalité du système, déclenchée en réponse à la stimulation d’un acteur externe. 2. Les diagrammes des séquences Les diagrammes de séquences permettent de représenter la succession chronologique des opérations réalisées par un acteur et la réponse du système, ils font passer d’un objet à un autre pour représenter un scénario.  Les diagrammes de classes Les diagrammes de classes représentent les entités significatives du domaine. Ils expriment aussi de manière générale la structure statique d’un système, en termes de classes et de relations entre ces classes. Une classe permet de décrire un ensemble d’objets (attributs et comportements), tandis qu’une relation ou association permet de faire apparaitre des liens entre ces objets. Le diagramme de classe est un modèle permettant de décrire de manière abstraite et générale les liens entre objets.  Le diagramme de paquetage Dans le diagramme de paquetage, on trouve des paquets qui sont des éléments d’organisation des modèles du fait que, non seulement, ils regroupent les éléments de modélisation, selon des critères purement logiques mais aussi ils permettent d’encapsuler des éléments de modélisation car ils possèdent une interface. Après, ils permettent de structurer un système en catégories (vue logique) et sous-système (vue des composants). Ils servent aussi de « briques » de base dans la construction d’une architecture. Et surtout, ils représentent le bon niveau de granularité pour la réutilisation. Enfin, les paquetages sont aussi des espaces de noms.  Le diagramme de déploiement Le diagramme de déploiement décrit la disposition physique des ressources matérielles qui composent le système et montre la répartition des composants sur ces matériels. Chaque ressource étant matérialisée par un nœud, le diagramme de déploiement précise comment les composants sont repartis sur les nœuds et quelles sont les connexions entre les composants et les nœuds. 3.4.2. Outil de modélisation Un outil de modélisation est utilisé pour ne pas gaspiller trop de temps sur la représentation graphique de la modélisation. Le tableau 11 compare l’outil Win ’Design et l’outil Visual Paradigm. Tableau 11: comparaison entre Win ‘Design et Visual Paradigm. Outil Avantages Inconvénients Win ‘Design Destiné au Merise, facile à utiliser Manque de fonctionnalités pour représenter UML Visual Paradigm Destiné à la notation UML Un peu difficile à utiliser, nécessite un temps d’apprentissage Choix et justification
  • 42. 23 On a choisi Visual Paradigm parce qu’il s’adapte bien à la notation UML qu’on va utiliser. Présentation de Visual Paradigm Le logiciel présenté dans cette partie était déjà connu des étudiants qui ont suivi le cursus en informatique de gestion durant le cycle 2009-2012, car plusieurs professeurs ont eu recours à son utilisation pour pratiquer différents exercices dans diverses unités d’enseignements. La présentation de Visual Paradigm n’a pas été placée dans la partie théorique, car il n’expose ainsi pas des connaissances supplémentaires acquises, mais sert exclusivement à décrire sommairement l’outil et son interface au lecteur. Ce dernier aura alors une meilleure compréhension des différentes explications et références faites dans les parties théoriques et pratiques. Visual Paradigm est un éditeur qui propose une suite logicielle, constituée des outils suivants : Visual Paradigm For UML : permet la création des diagrammes UML et des modèles qui en sont à l’origine. Ceux-ci peuvent alors générer du code dans un langage de programmation déterminé. Il propose également la création d’autres types de diagrammes, comme celui qui permet la modélisation des bases de données pouvant, lui aussi, générer des canevas d’applications basés sur des Framework et Pattern mais en plus, générer du code SQL qu’il peut ensuite déployer automatiquement dans différents environnements. Business Process Visual Architect : permet la modélisation de processus normalisés par le langage BPMN, ainsi que la génération des modèles en processus exécutables. Agilian : offre les fonctionnalités nécessaires pour gérer l’architecture de l’entreprise autour des processus, et le développement agile de logiciels. Il permet la réalisation de maquettes, la gestion des exigences, le travail collaboratif, la gestion des règles métiers ou encore la définition d’un vocabulaire commun. Platform : gère les projets de développement en équipe, de même que la maintenance, respectivement en se basant sur des propositions de la méthodologie UnifiedProcess et en offrant des solutions de gestion des problèmes et des tests. Teamwork Server : fournit un référentiel permettant le stockage des spécifications réalisées par tous les autres outils de la suite. Il assure le travail en équipe, notamment par la prise en charge des technologies de versionnions. 3.4.3. SGBD Le SGBD est un ensemble de services (application logiciel) permettant de gérer les bases de données, c’est-à-dire :  Permettre l’accès aux données de façon simple
  • 43. 24  Gérer les droits d’accès aux informations  Manipuler les données présentes dans la base de données (insertion, modification, suppression…) Un SGBD est donc nécessaire pour stocker les données. Le tableau 12 représente la comparaison des SGBD Tableau 12: Comparaison des SGBD. SGBD Points forts Points faible MySQL Plus rapide sur les requêtes simples Stable, rapide Riche en documentation Faciliter de déploiement et de prise en main, Léger, Multi-plateforme, Open source, Gratuit Système de gestion de base de données de modèle relationnel Pas de vue matérialisée, Support incomplet des triggers et procédures stockées, Ne supporte pas une énorme quantité de données ORACLE Disposition de requêtes sophistiqué Assistants performants, Accès aux données système via vue, réglages fins : tout est paramétrable, Supporte une énorme quantité de données, Multi-plateforme Administration complexe, Fort demandeur de ressources : la connexion utilisateur nécessite par exemple près de 700Ko/utilisateur, contre une petite centaine sur le serveur MS-SQL, Payant (très cher) PostgreSQL Disposition de requêtes sophistiqués et d’un optimiseur de requêtes Plus Performant, fiable Riche en documentation Plusieurs fonctionnalités Supporte une grande quantité de données Multi-plateforme, Open source, Gratuit, Administration complexe, Sauvegarde peu évolué
  • 44. 25 Système de gestion de base de données de modèle relationnel et objet Choix et justification On a choisi d’utiliser le SGBD PostgreSQL vu qu’il est plus performant, fiable, riche en documentation, supporte une énorme quantité de données et supporte la fonctionnalité de l’oracle, système de gestion de base de données de modèle relationnel et objet et dispose de requêtes sophistiquées et d’un optimiseur de requêtes. Présentation de PostgreSQL PostgreSQL est un système de gestion de base de données relationnel et objet (SGBDRO). Selon le type d’application, sa licence est libre ou propriétaire. Il fait partie des logiciels de gestion de base de données les plus appréciés au monde pour les données de grandes quantités, autant par le grand public (application web principalement) que par des professionnels, en concurrence avec Oracle et MySQL. C’est un logiciel libre développé sous double licence en fonction de l’utilisation qui en fait : dans un produit libre ou dans un produit propriétaire. 3.4.4. Langage de programmation 3.4.4.1.Partie Serveur Le tableau 13 montre la comparaison entre PHP et J2EE. Tableau 13: Comparaison entre PHP et J2EE. Critère J2EE PHP Paradigme Orientée objet, structurée, impérative Impératif, procédural, réflexif, langage interprété Typage Dynamique, fort, sûr Dynamique, faible Type d’application Web Web Environnement de développement Eclipse, intellij, NetBeans, JDeveloper Simple éditeur de texte, ou IDE intégré Avantages Langage typé, facile à utiliser et à maintenir Serveur léger, facile à héberger Inconvénients Serveur lourde, nécessite une importance ressource Ecriture de code gênante, variable non typée
  • 45. 26 Changement de base de données, changement de code Choix et justification Après avoir fait la comparaison, on a retenu J2EE comme langage de programmation parce que c’est un langage orienté objet et simple à utiliser. Présentation de J2EE J2EE (Java 2 Enterprise Edition) est une norme proposée par la société Sun, portée par un consortium de sociétés internationales, visant à définir un standard de développement d'applications d'entreprises multi-niveaux, basées sur des composants. La figure 3 montre les caractéristiques de J2EE. Figure 3: Caractéristiques de J2EE.
  • 46. 27 Une caractéristique particulière de J2EE est de réaliser une portabilité totale et maintenabilité du code : une application, une fois compilé fonctionnera aussi sous des stations Windows que sus Unix et autre. Cette portabilité est dû au fait que la compilation fournit un code machine intermédiaire appelé BYTECODE exécuté par son interpréteur dite une machine dite virtuelle (JVM : Java Virtual Machine) et qui, lors de l’exécution compréhensible par le microprocesseur utilisé. 3.4.4.2.Partie Client Le tableau 14 indique la comparaison entre JavaScript et J2EE. Tableau 14: Comparaison entre JavaScript et Java Critère JavaScript Java Paradigme Orientée objet, structurée, impérative Langage interprété, compilé, orienté objet Typage Dynamique, fort, sûr Statique, faible Type d’application Web Web Environnement de développement VS code, Sublime Text, Simple éditeur de texte. Eclipse, intellij, NetBeans, JDeveloper Avantages Seule option de langage de script côté client sur un navigateur sans plug-in et sécurisation Plusieurs documentation, facile à prendre Inconvénients Compatibilité limitée entre les navigateurs Temps de chargement et problème de sécurité Choix et justification Après avoir fait la comparaison, on a retenu JavaScript comme langage de programmation de la partie cliente parce que c’est un langage simple à utiliser et intégré directement au HTML. Présentation de Javascript Le Javascript est un langage de script basé sur la norme ECMAScript. Il s'insère dans le code HTML d'une page web, et permet d'en augmenter le spectre des possibilités. Ce langage de POO (Programmation Orientée Objet), faiblement typé, est exécuté côté client. La figure 4 montre les caractéristiques de Javascript.
  • 47. 28 Figure 4: Caractéristiques de Javascript. 3.4.5. Framework utilisés 3.4.5.1.Partie Backend Le tableau 15 montre la comparaison entre Spring Boot, Hibernate et Struts. Tableau 15: Comparaison entre Spring Boot, Hibernate et Struts. Critère Spring Boot Hibernate Struts Dernière version 2.2.3 2.1.2 2.5.22 Facilité d’apprentissage Facile Facile Moyen Environnement de développement Eclipse, IntelliJ, NetBeans, JDeveloper, Spring Tool Suite Eclipse, IntelliJ, NetBeans, JDeveloper, Spring Tool suite Eclipse, IntelliJ, NetBeans, JDeveloper, Spring Tool Suite Open source Oui Oui Oui Générateur de CRUD Oui Oui Oui Simplicité Oui Oui Non Sécurité Oui Oui Moyen Economie espace Oui Oui Moyen Ouverture de page Très rapide Rapide Normal Choix et justification Chacun de ces Framework possède ses avantages et ses inconvénients. En tenant compte de ces études comparatives, surtout sur le temps d’apprentissage des trois Framework, nous avons optés pour le Spring Boot, Hibernate.
  • 48. 29 Présentation de Spring Boot et Hibernate - Spring Boot Spring Boot est fondamentalement une extension du cadre Spring, qui élimine les configurations standard requises pour la configuration d’une application Spring.  Il adopte une vision avisée de la plateforme Spring, qui a ouvert la voie à un écosystème de développement plus rapide et plus efficace. Voici quelques-unes des fonctionnalités de Spring Boot :  Dépendances de type "starter" pour simplifier la construction et l’application Configuration :  Métriques, vérification d’hélicoptère et configuration externalisée  Configuration automatique pour la fonctionnalité Spring - autant que possible  Serveur intégré pour éviter la complexité lors du déploiement d’applications La figure 5 montre caractéristique de Spring Boot. Figure 5: Caractéristiques de Spring Boot. - Hibernate Hibernate est une solution open source de type ORM (Object Relational Mapping) qui permet de faciliter le développement de la couche persistance d'une application. Hibernate permet donc de représenter une base de données en objets Java et vice versa. Hibernate facilite la persistance et la recherche de données dans une base de données en réalisant lui-même la création des objets et les traitements de remplissage de ceux-ci en
  • 49. 30 accédant à la base de données. La quantité de code ainsi épargnée est très importante d'autant que ce code est généralement fastidieux et redondant. Hibernate est très populaire notamment à cause de ses bonnes performances et de son ouverture à de nombreuses bases de données. Les bases de données supportées sont les principales du marché : DB2, Oracle, MySQL, PostgreSQL, Sybase, SQL Server, Sap DB, Interbase, et autres bases de données. La figure 6 suivante montre caractéristique de Hibernate. Figure 6: Caractéristiques de Hibernate. 3.4.5.2. Partie Frontend Le tableau 16 montre la comparaison entre AngularJS et ReactJS. Tableau 16: Comparaison entre AngularJS et ReactJS. Critère AngularJS ReactJS Dernière version 9. 16.12.0 Facilité d’apprentissage Facile Moyen Open source Oui Oui Web 2.0 HTML4, full jquery, ajsx, json HTML4, full jquery Générateur de CRUD Oui Non Simplicité Oui Moyen Sécurité Oui Oui Economie espace Oui Non Ouverture de page Très rapide Rapide Choix et justification
  • 50. 31 Chacun de ces Framework possède ses avantages et ses inconvénients. En tenant compte de ces études comparatives, surtout sur le temps d’apprentissage des deux Framework, nous avons optés pour l’AngularJS. Présentation d’AngularJS AngularJS est fondé sur l'idée que la programmation déclarative doit être utilisée pour construire les interfaces utilisateurs et les composants logiciels de câblage, tandis que la programmation impérative excelle pour exprimer la logique métier. Une page web conçue avec AngularJS suit le patron d'architecture MVC (modèle-vue- contrôleur). Ce patron a pour avantage de proposer un couplage faible entre la présentation, les données, et les composants métier. Dans un langage web, cette séparation permet de diminuer l'importance des manipulations DOM et d'améliorer la testabilité du code. Dans AngularJS, la partie « vue » est déclarée dans une version étendue du HTML traditionnel, qui comporte de nouvelles balises (tags) et attributs. Cet HTML étendu est utilisé pour déclarer une liaison de données bidirectionnelle entre les modèles et les vues. Ainsi, les données sont synchronisées automatiquement, et moins d'éléments ont besoin d'être définis en Javascript. Les modèles sont composés de plusieurs couches appelés « scopes ». Les contrôleurs dans AngularJS permettent de prototyper des actions en code JavaScript natif. La figure 7 montre caractéristique de AngularJS. Figure 7; Caractéristiques de JAVA.
  • 51. 32 3.4.6. Environnement de développement 3.4.6.1.Partie Backend Il nous faut un environnement de développement pour réaliser ce projet au niveau de serveur. Le tableau 17 représente la comparaison entre Spring Tool Suite et NetBeans. Tableau 17: Comparaison entre Spring Tool Suite et NetBeans. Spring Tool Suite NetBeans Graphique Tout Seulement l’essentielle, claire Serveur et compilateur Java intégré A installer et à configurer A télécharger Ressources Moyenne Elevée (besoin de machine à fréquence élevé) Choix et justification Graphiquement Spring Tool Suite plus léger que NetBeans, son interface est meilleure que NetBeans et c’est le logiciel conçu pour le langage spring boot, facile d’intégration donc on a choisi Spring Tool Suite. Présentation de Spring Tool Suite Spring Tool Suite, ensemble de logiciels édités par la société SpringSource, contient un environnement de développement contribuant à une meilleure productivité du développeur Spring. STS est une pièce de la stratégie "Build - Run - Manage" de SpringSource. Cette stratégie vise à nous rassurer sur la capacité de SpringSource à accompagner efficacement les différentes étapes du cycle de vie (Développement - déploiement - monitoring) d'une application Java Entreprise basée non pas sur les spécifications JEE (jugées complexes), mais sur le modèle de développement et les différentes briques proposées par Spring (Core, Spring MVC, Spring JMS, Spring WS). Une stratégie qui amène des choix tactiques d'acquisition de sociétés et technologies comme le langage de script Groovy, le Framework Grails (au-dessus de Spring MVC + Hibernate) ou encore plus récemment d'Hyperic (outil de monitoring), désormais dans le giron SpringSource. Compilé en Java, Spring Tool Suite est disponible sous Windows, Linux, Mac OS X ou sous une version indépendante des systèmes d’exploitation (requérant une machine virtuelle Java). Un environnement Java Développement Kit JDK est requis pour le développement en J2ee. Spring Tool Suite constitue par ailleurs une plateforme qui permet le développement d’application spécifique (bibliothèque Swing). L’IDE Spring Tool Suite s’appuie sur cette plateforme.
  • 52. 33 3.4.6.2.Partie Frontend Dans la partie client, nous avons d’un IDE pour le développement du projet. Le tableau 18 illustre la comparaison entre le VS Code et Sublime Text. Tableau 18: Comparaison entre VS Code et Sublime Text. VS Code Sublime Text Temps de lancement Très rapide Lent Usage de RAM Beaucoup Un peu Apprentissage de raccourcis Facile à apprendre Beaucoup de temps et difficile Fonctionnalités Plusieurs Moyen Choix et justification Visual Studio Code a une interface utilisateur très conviviale et beaucoup d’option pour éditer le code et a plusieurs fonctionnalités, installable partout, multi-configurable, agréable et rapide par rapport au Sublime Text, donc on a choisi le VS Code. Présentation de Visual Studio Code Visual Studio Code (VSC) est un éditeur de code open-source, gratuit et multi-plateforme (Windows, Mac et Linux), développé par Microsoft, à ne pas confondre avec Visual Studio, l'IDE propriétaire de Microsoft. VSC est développé avec Electron et exploite des fonctionnalités d'édition avancées du projet Monaco Editor. Principalement conçu pour le développement d'application avec JavaScript, TypeScript et Node.js, l'éditeur peut s'adapter à d'autres types de langages grâce à un système d'extension bien fourni. Visual Studio Code intègre plusieurs outils facilitant la saisie de code par les développeurs comme la coloration syntaxique ou encore le système d’auto-complétions IntelliSense. En outre, l'outil permet aux développeurs de corriger leur code et de gérer les différentes versions de leurs fichiers de travail puisqu'un module de débogage est aussi de la partie.
  • 53. 34 Chapitre 4. ANALYSE CONCEPTUELLE Ce projet concerne le domaine de la gestion de soutenance. Au début de soutenance, le responsable de ce domaine récolte toutes les informations sur le calendrier de soutenance. Pour cela, nous allons utiliser la méthode XP avec la notation UML, l’outil Visual Paradigm, PostgreSQL, le langage de programmation J2EE et le Framework Spring Boot, Hibernate, Jpa, Spring Security et AngularJS. 4.1.Dictionnaire des données Un dictionnaire des données est une collection de métadonnées ou de données de référence nécessaire à la conception d'une base de données relationnelle. Le dictionnaire des données du système est représenté dans la figure 19. Tableau 19: Dictionnaire des données. Nom de la rubrique Description Type Taille annee_univ Année universitaire AN 9 cal_date_sout Date de calendrier de soutenance AN 8 cal_heure_sout Heure de soutenance AN 3 cal_lieu_sout Lieu de soutenance AN 35 cal_lieu_stage Lieu de stage AN 35 cal_note_sout Note de soutenance AN 5 cal_sale_sout Sale de soutenance N 2 cal_type_memoire Type de mémoire AN 50 enseig_adr Adresse de l’enseignant AN 50 enseig_email Email de l’enseignant AN 50 enseig_grade Grade de l’enseignant AN 50 enseig_nom Nom de l’enseignant AN 50 enseig_prenom Prénoms de l’enseignant AN 50 enseig_sexe Sexe de l’enseignant A 1 enseig_tel Numéro téléphone de l’enseignant AN 13 etabli_adr Adresse de l’établissement AN 50 etabli_code_post Code postale de l’établissement N 7 etabli_nom Nom de l’établissement AN 35 etud_adr Adresse de l’étudiant AN 50 etud_email Email de l’étudiant AN 50 etud_matricule Matricule de l’étudiant AN 6 etud_nom Nom de l’étudiant AN 50 etud_num Numéro d’appel de l’étudiant N 3 etud_prenom Prénoms de l’étudiant AN 50 etud_sexe Sexe de l’étudiant A 1 etud_tel Numéro téléphone de l’étudiant AN 13 id_enseig Identifiant de l’enseignant N 2 id_annee Identifiant de l’année universitaire N 2
  • 54. 35 id_cal Identifiant de calendrier N 4 id_etabli Identifiant de l’établissement N 1 id_etud Identifiant de l’étudiant N 5 id_jury Identifiant du jury N 2 id_login Identifiant de l’utilisateur de l’application N 25 id_niveau Identifiant de niveau de l’étudiant N 1 id_parcours Identifiant de parcours N 1 id_service Identifiant de service N 1 id_theme Identifiant de thème de l’étudiant N 5 jury_nom Nom du jury AN 50 jury_prenom Prénoms du jury AN 50 jury_role Rôle du jury AN 11 niveau_nom Nom de niveau de l’étudiant AN 20 parcours_nom Nom du parcours de l’étudiant AN 15 service_adr Adresse du service AN 50 service_email Email du service AN 50 service_nom Nom du service AN 50 service_prenom Prénoms du service AN 50 service_resp Responsable du service AN 50 service_sexe Sexe du service AN 1 service_tel Numéro téléphone du service AN 13 theme_nom Nom du thème de l’étudiant AN 200 A : Alphabétique AN : alphanumérique N : numérique 4.2.Règles de gestion Les règles de gestion indiquent l’ensemble des liens existants sur les données manipulées, les actions effectuées par les postes de travail impliqués et les différentes formules de calcul. Les règles de gestion associées au domaine d’études sont : RG1 : Un étudiant doit avoir un thème RG2 : Un étudiant se trouve dans un niveau RG3 : Un étudiant appartient à un parcours RG4 : Plusieurs étudiants appartiennent à un établissement RG5 : Plusieurs enseignants enseignent dans un établissement RG6 : Un enseignant peut être un jury RG7 : Un étudiant passe la soutenance dans une année RG8 : Un calendrier est constitué plusieurs étudiants
  • 55. 36 RG9 : Un calendrier présente un ou plusieurs thèmes de l’étudiant RG10 : Un calendrier constitue un parcours de l’étudiant RG11 : Un calendrier présente un niveau de l’étudiant RG12 : Un calendrier doit avoir un établissement RG13 : Un calendrier constitue plusieurs jurys RG14 : Un calendrier a plusieurs enseignants RG15 : Un calendrier a une année 4.3.Représentation et spécification des besoins 4.3.1. Diagrammes de cas d’utilisation D’abord nous allons réunir les différents éléments pour construire le diagramme de cas d’utilisation et commençons par l’identification des acteurs, puis l’identification des cas d’utilisations et entamons par les diagrammes de cas d’utilisation proprement dit. 4.3.1.1.Identification des acteurs Ils sont des entités externes qui interagissent avec le système, comme une personne humaine ou un robot. Une même personne (ou robot) peut être plusieurs acteurs pour un système, c'est pourquoi les acteurs doivent surtout être décrits par leur rôle, ce rôle décrit les besoins et les capacités de l'acteur. Un acteur agit sur le système. L'activité du système a pour objectif de satisfaire les besoins de l'acteur. Les acteurs sont représentés par un pictogramme humanoïde (stick man) sous-titré par le nom de l'acteur.  Les catégories d’acteur : Un acteur peut avoir différents rôles et est amené à intervenir dans une ou plusieurs situations. Miller (2001) en identifie quatre.  Initiateur : acteur qui active le système et déclenche le cas.  Serveur : acteur aidant le système à assumer ses responsabilités.  Receveur : acteur recevant les informations du système (système de backup)  Facilitateur : acteur dont les actions sont effectuées au bénéfice d'un autre acteur Un acteur est un rôle joué par une personne ou par une chose qui interagit avec le système. Il n’est pas toujours facile de déterminer la limite du système. Par définition, les acteurs sont à
  • 56. 37 l’extérieur du système Lés acteurs agissant sur notre système sont regroupés en une seule catégorie : l’utilisateur 4.3.1.2.Identification des cas d’utilisation Les catégories des besoins fonctionnels des acteurs peuvent être arrangées de la manière dans le tableau 20. Tableau 20: Besoins fonctionnels des acteurs. Acteur Cas d’utilisation Utilisateur S’authentifier Se connecter Se déconnecter Gérer étudiant Ajouter Modifier Supprimer Consulter liste étudiante Imprimer Gérer enseignant Ajouter Modifier Supprimer Consulter liste enseignant Consulter liste étudiante, thème et enseignant Ajouter Modifier Supprimer Consulter Imprimer Gérer jury Ajouter Modifier Supprimer Consulter liste jury Gérer calendrier Ajouter Modifier Supprimer Consulter calendrier Imprimer 4.3.1.3.Diagrammes de cas d’utilisation Après ces précédentes étapes, nous avons réunis les différents éléments pour construire le diagramme de cas d’utilisation.
  • 57. 38 Voici dans la figure 8 le diagramme de cas d’utilisation globale de gestion de tableau de bord. Figure 8: Diagramme de cas d’utilisation globale. 4.3.2. Priorisation des cas d’utilisations La priorisation des cas d’utilisations est représentée par le tableau 21. Tableau 21: priorisation des cas d’utilisations. Cas d’utilisation Acteur principale Messages reçus/ émis 1) S’authentifier Utilisateur -demande de s’authentifier -résultat d’authentification 2) Gérer étudiant -demande de gérer étudiant -résultat de la demande de gérer étudiant 3) Gérer enseignant -demande de gérer enseignant -résultat de la demande de gérer enseignant 4) Gérer jury -demande de gérer jury -résultat de la demande de gérer jury 5) Gérer calendrier -demande de gérer calendrier -résultat de la demande de gérer calendrier 4.3.3. Description textuelle de certains cas d’utilisation  Cas d’utilisation « s’authentifier »  Objectif : pour avoir une session pour utiliser l’application.  Acteur : utilisateur
  • 58. 39  Pré condition : l’utilisateur doit avoir un compte.  Post condition : l’utilisateur obtient une session  Scenario nominale : 1. Saisir identifiant 2. Cliquer sur le bouton se connecter 3. Obtention d’une session  Scenario d’exception : 1. Identifiant ou mot de passe incorrect 2. Serveur inaccessible  Cas d’utilisation « ajouter service »  Objectif : pour enregistrer l’information concernant un service.  Acteur : utilisateur  Pré condition : l’enseignant et le service existent.  Post condition : création service avec succès  Scenario nominale : 1. L’utilisateur doit s’authentifier 2. Il obtient un formulaire d’ajout service 3. Il remplit le formulaire et l’envoie 4. Ajout service effectué  Scenario d’exception : 1. Formulaire vide 2. Le code service existe déjà  Cas d’utilisation « modifier service »  Objectif : pour éditer l’information concernant un service.  Acteur : utilisateur  Pré condition : il existe une liste de service.  Post condition : modification de service avec succès  Scenario nominale : 1. L’utilisateur consulte la liste des services 2. Il obtient un formulaire de modification service 3. Il remplit le formulaire et l’envoie 4. Modification service effectué  Scenario d’exception : 1. Formulaire vide 2. Le code service existe déjà  Cas d’utilisation « supprimer service »  Objectif : pour effacer un service.  Acteur : utilisateur  Pré condition : il existe une liste de service.  Post condition : suppression de service avec succès
  • 59. 40  Scenario nominale : 1. L’utilisateur consulte la liste des services 2. Il obtient une confirmation de supprimer un service 3. Il confirme 4. Suppression service effectué  Cas d’utilisation « gérer calendrier »  Objectif : pour enregistrer les informations concernant le calendrier.  Acteur : utilisateur  Pré condition : l’étudiant, le thème, l’enseignant, le niveau, le parcours, le jury, la date, la salle existent.  Post condition : création de calendrier avec succès  Scenario nominale : 1. L’utilisateur demande à gérer un tableau de bord 2. Il obtient un formulaire 3. Il remplit le formulaire et l’envoie 4. Création du calendrier effectué  Scenario d’exception : 1. Formulaire vide 4.3.4. Diagrammes de séquence système pour les cas d’utilisation Les diagrammes de séquence représentent les messages échangés entre les objets. Il donne une notion temporelle aux messages. La figure 9 représente le diagramme de séquence pour le cas d’utilisation « s’authentifier ». Figure 9: Diagramme de séquence pour le cas d’utilisation « s’authentifier ».
  • 60. 41 La figure 10 représente le diagramme de séquence pour le cas d’utilisation « ajouter service ». Figure 10: Diagramme de séquence pour le cas d’utilisation « ajouter service ». La figure 11 représente le diagramme de séquence pour le cas d’utilisation « modifier service ». Figure 11: Diagramme de séquence pour le cas d’utilisation « modifier service ».
  • 61. 42 La figure 12 montre le diagramme de séquence pour le cas d’utilisation « supprimer service ». Figure 12: Diagramme de séquence pour le cas d’utilisation « supprimer service ». La figure 13 illustre le diagramme de séquence pour le cas d’utilisation « gérer calendrier ».