0% ont trouvé ce document utile (0 vote)
1K vues97 pages

Memoire Master Assemien Serge20182

Ce document présente une étude conceptuelle pour le développement d'une application web de gestion des absences des étudiants pour l'entreprise PIGIER Côte d'Ivoire. L'étude comprend une analyse des besoins, la modélisation avec UML, le choix des technologies (PHP, MySQL, Bootstrap) et la présentation de quelques fonctionnalités clés de l'application.

Transféré par

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

Memoire Master Assemien Serge20182

Ce document présente une étude conceptuelle pour le développement d'une application web de gestion des absences des étudiants pour l'entreprise PIGIER Côte d'Ivoire. L'étude comprend une analyse des besoins, la modélisation avec UML, le choix des technologies (PHP, MySQL, Bootstrap) et la présentation de quelques fonctionnalités clés de l'application.

Transféré par

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

SOMMAIRE

DEDICACE.................................................................................................................................................III
REMERCIEMENTS....................................................................................................................................IV
AVANT – PROPOS.....................................................................................................................................V
RESUME...................................................................................................................................................VI
ABSTRACT...............................................................................................................................................VII
FIGURES ET IMAGES..............................................................................................................................VIII
TABLEAUX................................................................................................................................................IX
SIGLES ET ABBREVIATIONS.......................................................................................................................X
INTRODUCTION........................................................................................................................................1
PREMIERE PARTIE : CADRE DE REFERENCE ....................................................................2
I. PRESENTATION DE L’ENTREPRISE.....................................................................................................3
II. PRESENTATION DU PROJET..............................................................................................................6
III. CHOIX DE LA METHODE D’ANALYSE.............................................................................................8
DEUXIEME PARTIE : ETUDE PREALABLE ...........................................................................18
I. ETUDE DE L’EXISTANT.....................................................................................................................19
II. PROPOSITIONS DE SOLUTIONS POSSIBLES....................................................................................20
TROISIEME PARTIE : ETUDE DETAILLEE DE LA SOLUTION ......................................22
I. DIAGRAMME ET DESCRIPTION DES CAS D’UTILISATION LES PLUS IMPORTANTS........................23
II. IDENTIFICATION DES CLASSES ET DIAGRAMME DES CLASSES......................................................31
III. DIAGRAMMES DE SEQUENCE.....................................................................................................36
IV. DU MODELE OBJET AU MODELE RELATIONNEL.........................................................................42
V. MODELISATION PHYSIQUE DE DONNEES.......................................................................................43
QUATRIEME PARTIE : REALISATION .....................................................................................49
I. CAPTURE DES BESOINS TECHNIQUES.............................................................................................50
II. ENVIRONNEMENT DE DEVELOPPEMENT.......................................................................................52
III. CHOIX DU LANGAGES DE PROGRAMMATION............................................................................60
IV. SERVEUR WEB..............................................................................................................................64
V. PRESENTATION DE QUELQUES FONCTIONALITES..........................................................................67
VI. DEPLOIEMENT DE L’APPLICATION..............................................................................................71

|Page Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge
CONCLUSION..........................................................................................................................................80
BIBLIOGRAPHIE – WEBOGRAPHIE..........................................................................................................81
ANNEXES.............................................................................................................................................82
ANNEXE 1 : EXTRAIT DE CODES DE L’APPLICATION........................................................................................................................83
ANNEXE 2 : DOCUMENTS UTILISÉS............................................................................................................................................87

|Page Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge
DEDICACE
Je dédie ce mémoire à mon père AKANI ASSEMIEN et à ma mère AHULE TANO YABA
AGNES.

Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge III | P a g e
REMERCIEMENTS
La réalisation de ce mémoire a été possible grâce au concours de plusieurs personnes à
qui nous voudrions témoigner toute notre reconnaissance. Nous adressons, tout
d’abord, notre gratitude à Monsieur N’GOUAN Jérémie Directeur général de PIGIER CI
à qui, je suis redevable, d’une formation de qualité dont je suis fier et qui est d’un
apport considérable dans ma vie professionnelle.
Nous désirons aussi remercier tous ceux qui nous ont fournis les outils nécessaires à la
réussite de notre formation académique, à savoir :

 Madame TRAZIE Caroline, Directrice des études et Directeur du parcours


informatique ;
 Tous les membres du personnel et la surveillance générale car c’est grâce à leur
patience et à leur dévouement que nous avons pu acquérir le savoir-faire dans
notre domaine d’activité ;
 Monsieur AKEBOUE Herve, notre encadreur pédagogique, qui s’est toujours
montré à l’écoute et très disponible tout au long de la réalisation de ce
mémoire.

Nous adressons également nos sincères remerciements aux personnes avec lesquelles
nous avons pu échanger et qui nous ont aidé pour la rédaction de ce mémoire :

 Dr YAO Akpessi Yao, ...


 M. DEGOUA Djehi Aubin, …
 M. ESSAN Ebrin Ignace, …

Enfin, nous adressons nos plus sincères remerciements à notre famille : nos parents,
nos sœurs, et tous nos proches et amis, qui nous ont accompagné, aidé, soutenu et
encouragé tout au long de la réalisation de ce mémoire.

Qu’ils trouvent en cette œuvre toute notre gratitude pour les efforts consentis à notre
égard.

Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge IV | P a g e


AVANT – PROPOS
Autant le problème de formation se pose avec acuité, autant les efforts pour le
résoudre se multiplient. Ainsi, de nombreux établissements de l’enseignement
professionnel ont vu le jour ces dernières décennies dans le fichier du ministère de
tutelle. Cependant, ces nouveaux établissements n’ont pas la maestria des
établissements traditionnellement reconnus dans le domaine tel que PIGIER Côte
d’Ivoire. Cette école, par son travail et son sérieux a réussi, à mettre d’accord tout le
monde sur la qualité de ses formations. La reconnaissance africaine de ses diplômes,
par leurs certifications CAMES n’est donc pas fortuite. A PIGIER Côte d’ivoire, la
formation est donnée dans divers parcours parmi lesquels le parcours informatique qui
nous concerne.

Tout comme les autres parcours, il a un cycle LICENCE et un cycle MASTER dont le
quatrième semestre comprend une Unité d’Enseignement (UE) nommée Travail de Fin
d’Etudes (TFE). La validation de cette UE s’obtient suite à une soutenance de mémoire
de stage élaboré en entreprise lors d’un stage d’au moins trois mois. C’est dans ce
contexte de stage que nous avons réalisé ce travail.

Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge V|Page
RESUME
Pour améliorer sa performance, toute entreprise moderne a besoin d’automatiser la
gestion interne de ses activités en faisant appel à des technologies informatiques.
D’ailleurs c’est le cas de l’entreprise PIGIER Côte d’Ivoire qui souhaite optimiser la
totalité de sa gestion.

Ce projet vise à développer une application web de gestion et de suivi des absences
des étudiants. Mais, pour aboutir à cette fin, nous allons tout d’abord effectué une
étude conceptuelle de l’application. Cette dernière nous permettra, en effet,
d’accéder facilement à la réalisation de l’application en organisant les idées et en
structurant le processus de codage suivant des diagrammes.

L’application a été implémentée par diverses technologies en se basant sur l’étude


conceptuelle. Le système de base de données choisi est MySQL, la méthode de
conception utilisée est le langage UML (Unified Modeling Language). Au cours de la
phase de développement du système, nous avons utilisé SUBLIME TEXT pour l’écriture
de code PHP et HTML.
L’application a été implémentée avec BOOSTRAP, qui est un Framework permettant de
créer rapidement et efficacement un site web complexe et flexible.

Mots clés: UML, PHP, HTML, BOOSTRAP, MYSQL, SUBLIME TEXT

Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge VI | P a g e


ABSTRACT
To improve the business performance, any modern company needs to the automation
of the internal management of its activities, through computing technologies. That’s
the case of PIGIER Côte d’Ivoire, a company aiming to optimize its entire management
system.

This project aims at developing a web application for the management and monitoring
of students’ absence. In order to reach such a goal, we first dealt with the conceptual
study of the application that could allow an easy implementation and data
organization by structuring the encoding process according to charts.

The application has been implemented by various technologies based on the


conceptual study. The database system chosen is MySQL. The design method
used is Unified Modeling Language (UML).
During the development phase of the system, we used SUBLIM TEXT for PHP and
HTML code entries.

The whole application has been carried out with BOOSTRAP, a framework that allows a
quick and efficient authoring of a complex and flexible website.

Keywords: UML, PHP, HTML, BOOSTRAP, MYSQL, SUBLIM TEXT

Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge VII | P a g e
FIGURES ET IMAGES
Figure 1 : Représentation d’un acteur
Figure 2 : Représentation d’un cas d’utilisation
Figure 3 : Représentation de relation
Figure 4 : Diagramme de cas d’utilisation
Figure 5 : Composition d’une classe
Figure 6 : Composition d’une association
Figure 7 : Diagramme de séquences « s’authentifier »
Figure 8 : Diagramme de séquences « consulter absence »
Figure 9 : Diagramme de séquences « modifier absence »
Figure 10 : Diagramme de séquences « ajouter absence »
Figure 11 : Diagramme de séquences « imprimer liste, fiche de bordereaux et de
convocation
Figure 12 : Diagramme de séquences « générer graphe »
Figure 13 : Couches organisationnelle d’une application
Figure 14 : Diagramme de déploiement
Image 1 : Interface de connexion
Image 2 : Interface de connexion erreur compte utilisateur pas encore activé
Image 3 : Interface d’inscription
Image 4 : Erreur login utilisateur existe
Image 5 : Interface d’accueil de l’administrateur

Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge VIII | P a g e
TABLEAUX
Tableau 1 : Synthèse d’une étude conceptuelle de MERISE
Tableau 2 : Comparatif UML – MERISE
Tableau 3 : Choix du système d’exploitation (Windows vs GNU/LINUX vs MacOs)
Tableau 4 : Comparaison des SGBD
Tableau 5 : Comparaison des langages de programmation
Tableau 6 : Comparaison Apache vs Nginx

Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge IX | P a g e


SIGLES ET ABBREVIATIONS
MySQL : My Structured Query Language
SGBDR : Système de Gestion de Bases de Données Relationnelles
SQL: Structured Query Language
UML: Unified Modeling Language
MERISE : Méthode d’Etude et de Réalisation Informatique par Sous Ensemble
PU: Unified Process
UC: Use Case
MCT : Modèle Conceptuel des Traitements
MCD : Modèle Conceptuel des Données
MLD : Modèle Logique des Données
MPD : Modèle Physique des Données
MOT : Modèle Organisationnel des Traitements
M. Op. T : Modèle Opérationnel des Traitements
SI : Système d’Information
HTTPS: Hypertext Transport Protocol Secure
HTTP: Hypertext Transport Protocol
CLR: Common Language Runtime
RLSS: Row Level Storage Security
T-SQL: Transact – SQL
HTML: Hypertext Markup Language
PHP: Hypertext Preprocessor

Diplôme Master Génie Informatique & Réseaux Assemien Ouake Serge X|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

INTRODUCTION
L’informatique est l’une des technologies qui a révolutionné le monde contemporain.
Ainsi, l’Afrique qui ne peut continuer d’être à la traine se doit de s’intégrer de façon
efficace et stratégique afin de rattraper son retard dans l’ère informatique. Des
moyens de travail, en passant par les outils de conception sans oublier la formation,
bon nombre d’efforts sont faits pour ne pas rester en marge de l’avancée fulgurante
des NTIC.
Aujourd’hui le monde s’accorde à donner du crédit à la formation. L’Afrique le doit
plus encore car la qualité des ressources humaines constitue un pari plus que vital
pour les défis à relever. Des écoles se sont créées et s’y sont dévouées. Tel est le cas de
PIGIER côte d’ivoire.
Pendant ces dernières années, la gestion des absences des étudiants au sein de PIGIER
Côte d’Ivoire devient de plus en plus complexe, d’où l’informatisation de tel système
est indispensable. C’est dans ce contexte que le responsable du service surveillance
général nous a confié une tâche afin de mieux contrôler les absences des étudiants.
D’où le thème de notre étude : « CONCEPTION ET REALISATION D’UNE APPLICATION
WEB DE GESTION ET DE SUIVI DES ABSENCES ETUDIANTS : CAS DE PIGIER COTE
D’IVOIRE ».
Notre application comprendra les fonctionnalités suivantes :

gestion des fiches de bordereaux de présence ;


gestion des absences ;
gestion d’alerte (notification) ;
gestion d’absence excusée et convocation ;
gestion d’authentification ;
gestion des parcours ;
gestion des matières ;
gestion d’annuaire de recherche par année universitaire ;
gestion d’année universitaire ;
gestion des rapports statistiques des absences.
Ainsi, pour la réalisation de notre étude, nous optons pour le plan ci-dessous :
première partie : Cadre de référence

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 1|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

deuxième partie : Etude préalable


troisième partie : Etude détaillée de la solution
quatrième partie : Réalisation

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 2|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

PREMIERE PARTIE :

CADRE DE REFERENCE

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 3|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

I. PRESENTATION DE L’ENTREPRISE

1. Historique

En 1850, à Paris, Monsieur Gervais PIGIER ouvre l’école pratique de commerce,


premier établissement d’une longue lignée. Cette école devient le GROUPE PIGIER,
réseau international de 93 sites et établissements dans le monde. Le GROUPE PIGIER
crée en 1877 des cours par correspondance et en 1904 se constitue en anonyme. Le
GROUPE PIGIER en 1928, s’implante en Afrique précisément au Maroc (Casablanca)
avec à son actif un total de 46 établissements. Première école d’Afrique de l’ouest en
1956, implanté au cœur d’Abidjan, PIGIER COTE D’IVOIRE est le premier établissement
du réseau international tant par l’importance de ses effectifs que par celui de l’éventail
de ses formations.
En effet, pour répondre aux besoins évolutifs des entreprises, l’école a
progressivement étoffé son catalogue de formations en passant des préparations aux
diplômes de type BEPC et BAC technologiques des années 70, aux BTS à compter de
1987 et développe depuis 1994 des formations de niveau : BAC +3 et BAC +5.
L’évolution de son panel de formations est la résultante des actions menées auprès
des entreprises par le cabinet de placement et la direction commerciale qui, à travers
l’analyse du marché du travail (offre d’emploi – demandes de formations et de
perfectionnement), orientent en conséquence l’offre de formation. PIGIER Côte
d’Ivoire a ainsi, d’année en année, apporté des solutions aux préoccupations des
entreprises. L’école est déjà ouverte sur les entreprises et a célébré en 2006 ses 50
années d’existence en Côte d’Ivoire. Il a soumis des diplômes BAC +3 et BAC +5 à la
certification du conseil Africain et Malgache pour l’enseignement Supérieur en vue de
faciliter la poursuite des études dans le cycle Supérieur (2 ème et 3ème) des universités
africaines dans la mesure où l’on recense une vingtaine de nationalités dans l’effectif
des étudiants de l’école.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 4|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

2. Missions

Les missions que cet établissement s’est assignées résident en ces points :

former à la pratique de plusieurs métiers d’actualité ;


proposer un cursus et une formation de qualité allant du BTS au Master
professionnel ;
offrir un cadre propice à l’insertion dans la vie active par le biais du cabinet de
formation.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 5|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

3. Organisation

L’organisation administrative de PIGIER Côte d’Ivoire se présente à travers


l’organigramme suivant :

DIRECTION GENERALE

COMITE DE DIRECTION

DIRECTION DIRECTION DU VIE


DIRECTION DES DIRECTION
ADMINISTRATIV CABINET DE ASSOCIATIVE
ETUDES COMMERCIALE
E PLACEMENT ET RELATION
SERVICE GESTION DU PARC INFORMATIQUE

SERVICE DE RECHERCHE DE MISSION ET DE


ATELIER AUDIOVISUEL ET SERVICE DE
CENTRE DE DOCUMENTATION

ADMINISTRATEUR RESEAUX
SURVEILLANCE GENERALE
SERVICE REPROGRAPHIE

SERVICE COMMERCIALE
SERVICE DES EXAMENS

SERVICE PLACEMENT
SERVICE SCOLARITE

COMMUNICATION
COMPTABILITE

STAGES

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 6|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

4. Présentation du service d’accueil : Surveillance générale de PIGIER

La surveillance générale de PIGIER Côte d’Ivoire abrite le même bloc que le cabinet
médical, le service examen, le service informatique et le service note. La surveillance
générale est située au deuxième (2ème) étage du bâtiment A au siège de PIGIER Côte
d’ivoire.
Elle gère :

 Le contrôle physique des étudiants


 Les emplois du temps étudiants, salles et professeurs
 Les techniciens de surface
 Le matériel didactique etc….

II. PRESENTATION DU PROJET

1. Contexte

La gestion administrative des étudiants inscrits à PIGIER Côte d’Ivoire est actuellement
assurée par la surveillance générale. Cette dernière a la responsabilité de permettre le
suivi des étudiants et de leurs absences au cours des différents enseignements.
En parallèle, elle s’occupe plus particulièrement des éventuelles convocations,
disciplines, fiches de bordereaux d’absences, des salles.
En harmonie donc avec cette vision, nous sommes emmenés à travailler sur le projet
ayant pour thème : « CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE
GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER COTE
D’IVOIRE ».
Ce thème soumis à notre étude doit nous conduire à faire des choix techniques en vue
de mettre en place un système d’information (SI) qui pourrait répondre aux nouveaux
besoins de ladite entreprise.

2. Mot clés

Plateforme : est un environnement permettant la gestion et/ou l’utilisation de services


applicatifs.
Système d’information (SI) : est un ensemble organisé de ressources qui permet de
collecter, stocker, traiter et distribuer de l’information, en général grâce à un
ordinateur.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 7|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

3. Problèmes

La portée de cette plateforme est d’offrir au service surveillance générale une


meilleure gestion de suivi des absences des étudiants. Mais il ressort les problèmes
suivants :

Problème de gestion : l’ajout et la modification des absences se fait avec Access


2003. Chaque liste est dans un fichier Access à part ; ce qui conduit à une perte
de temps et une mauvaise organisation de travail.
Difficulté d’accès à l’information : chaque liste d’étudiants est stockée par filière
dans un fichier Access indépendant ; ce qui impose le parcours de plusieurs
fichiers pour consulter les absences des étudiants.
Problème de sécurité : n’importe quelle personne peut accéder aux
informations et les modifier.

4. Problématique

Au vu des différents problèmes énoncés ci-dessus, notre problématique sera axée sur
les deux (2) points suivants :

- comment gérer de façon efficience le contrôle des absences des


étudiants ?
- quelles sont les procédures et les outils à mettre en œuvre pour
optimiser le contrôle des absences des étudiants ?

5. Objectifs du projet

L’objectif principal est de fournir à PIGIER Côte d’Ivoire une application capable de
permettre un suivi sur les absences de chaque étudiant.

Objectifs spécifiques :
La réalisation de cette application web dynamique permettra d’assurer la bonne
gestion des absences des étudiants à travers diverses fonctionnalités :

gestion des fiches de bordereaux de présence ;


gestion des absences ;

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 8|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

gestion d’alerte (notification) ;


gestion d’absence excusée et convocation ;
gestion d’authentification ;
gestion des parcours ;
gestion d’annuaire de recherche par année universitaire ;
gestion d’année universitaire ;
gestion des rapports statistiques des absences.

III. CHOIX DE LA METHODE D’ANALYSE

1. Méthode MERISE

MERISE (Méthode d’Etude et de Réalisation Informatique des Systèmes d’Entreprise),


est une méthode d’analyse informatique née vers 1978 en France.
Elle est très répandue de nos jours et est beaucoup utilisée dans la conduite et la
conception de projets informatiques.

Les principes généraux

MERISE est une méthode qui a une double vocation. C’est d’abord une méthode de
conception du système informatique (SI) à savoir :

 une approche globale du SI menée parallèlement sur les données et sur les
traitements.
 une description du SI par niveaux :
 le niveau conceptuel
 le niveau logique ou organisationnel
 le niveau physique ou opérationnel
 une description du SI utilisant un formalisme de représentation précis,
simple rigoureux pour la description des données
 une représentation visuelle de modèles conceptuels.

Ensuite, MERISE propose une démarche de développement de ce SI à travers :

 un découpage du processus de développement en quatre étapes


 étude préalable
 étude détaillée
 réalisation
Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 9|Page
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 mise en œuvre
 une description de la structure de travail à mettre en place pour mener à bien
le développement du SI.

Présentation des niveaux de conception

MERISE distingue trois niveaux de conception de système d’informations :

Niveau conceptuel
A ce niveau, il est établi une description des finalités de l’entreprise en précisant le
« QUOI » tout en faisant abstraction des contraintes organisationnelles et techniques.
Il sera fait une description des données stables ou données invariantes du SI et de
l’ensembles des règles de gestion qui y sont appliquées au niveau des concepts par le
biais d’un formalisme qui peut se traduire en termes de :

 Modelé conceptuel des données (MCD)

La description des données et des relations est réalisée à partir du formalisme


individuel suivant : Objet, Relation, Propriété.

 Modelé conceptuel des traitements (MCT)

Ces concepts sont : Processus, Opération, Evènement, Résultat, Synchronisation

Niveau organisationnel ou logique

Ce niveau définit l’organisation qu’il est souhaitable de mettre en place dans


l’entreprise pour atteindre les objectifs souhaités. Il faut préciser les choix
d’organisation qui seront pris en compte :

 la répartition des tâches entre l’homme et la machine


 le mode de fonctionnement : temps réel (conversationnel), temps différé (batch)
 la répartition géographique des données et des traitements.

En un mot, ce niveau décrit le « qui fait quoi et où ».

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 10 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Les modèles associés à ce niveau de description sont :

 Modèle logique des données (MLD), qui peut être selon le cas Codasyl,
Relationnel, Fichier classique
 Modèle organisationnel des traitements (MOT), qui permet de représenter par
phases les taches exécutées et les postes de travail correspondants.

Niveau opérationnel ou physique

Il définit les organisations physiques des données au travers du Modèle Physique des
Données (MPD) et la description des traitements effectués par unités de traitements
au travers du Modèle Opérationnel des Traitements (MOT).
A ce niveau, le MOPT, décrit « LE COMMENT FAIRE ».
La méthode de conception proposée par MERISE nous a présenté une vue globale des
différents niveaux applicables par cette méthode pour mener à bien un projet.
Cependant, ces concepts ne pouvant être pris en compte qu’après une analyse
détaillée du SI et une délimitation précise du domaine d’activités à partir de la
démarche du développement.

TABLEAU DE SYNTHESE D’UNE ETUDE CONCEPTUELLE DE MERISE

NIVEAU
D’ABSTRACTION DONNEES TRAITEMENTS

CONCEPTUEL
Modèle Conceptuel des Modèle Conceptuel des
Données (MCD) Traitements (MCT)

ORGANISATION ou
Modèle Logique des Modèle Organisationnel
LOGIQUE
Données (MLD) des Traitements (MOT)

OPERATIONNEL ou
Modèle Physique des Modèle Opérationnel des
PHYSIQUE
Données (M.P.D) Traitements (M.Op.T)

Tableau 1 : Synthèse d’une étude conceptuelle de MERISE

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 11 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

1.1 Les avantages du méthode MERISE


Contrairement aux approches objets, celles dites systémiques présentent une vision plus
globale de l’entreprise indépendante de la technologie utilisée. La technologie, étant sujet à
évolution, fera des systèmes d’information un objet en perpétuel renouvellement.
L’informatique se caractérise de plus en plus par une forte évolutivité des besoins et des
techniques qui conduisent à une visibilité restreinte sur l’avenir. Il faut donc absolument
prendre en compte les points clés :

 les demandes des utilisateurs se renouvellent et s’accroissent en quantité


comme en qualité ;
 les matériels et les logiciels de base sont en mutation permanente et rapide ;
 les ressources pour satisfaire les demandes diminuent plus qu’elles
n’augmentent ;
 la mise en place d’un système informatique ne peut être efficace que si elle est
dirigée du début jusqu’à la fin par les différents acteurs qui interviennent tout le
long de la vie d’un projet ;
 par définition d’une certaine règle stricte, la modélisation du système à l’aide de
la méthode MERISE garantit la cohérence des données, des traitements et donc
de la validité d’une application. La vocation de cette méthode est double :
 représenter une méthode de conception de systèmes d’informations
 proposer une démarche méthodologie des systèmes d’informations.

1.2 Les inconvénients de la méthode MERISE


MERISE a un côté très administratif et on lui a ainsi reproché d’utiliser un formalisme
jugé complexe surtout pour les modèles de données.
 il faut consacrer énormément de temps à réfléchir et à pré documenter avant
de commencer à coder.
 la lourdeur des démarches à remis en cause MERISE dans les années 90.

2. Méthode processus unifie (UML)

Unified Modeling Language (UML) est un langage de modélisation-objet. L’approche


objet est une solution technologique incontournable, dès lors que l’on cherche à
concevoir des logiciels complexes qui doivent être évolutifs. Cette approche est moins
intuitive que l’approche fonctionnelle. Cependant, l’application des concepts objet

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 12 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

nécessite une très grande rigueur, car ceux-ci fournissent les fondements pour
spécifier, construire, visualiser, et décrire les artéfacts d’un système logiciel.

De plus, ils facilitent l’expression et la communication de modèles en fournissant un


ensemble de symboles et de règles qui régissent l’assemblage de ces symboles (la
syntaxe et la sémantique).

Aussi, l’approche-objet tire sa source de sa capacité à regrouper ce qui a été séparé, à


construire le complexe partir de l’élémentaire, et surtout à intégrer statiquement et
dynamiquement les constituants d’un système.

L’un des avantages est donc de bénéficier d’une panoplie d’outils et de langages
performants pour la programmation orientée objet.

Unified Modeling Language (UML) fournit un moyen 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.

On distingue trois (3) types de vue :

Les vues statiques, représentant physiquement le système


 Diagramme d’objet

Un diagramme d'objets est un diagramme de structure qui montre un ensemble


d'objets et les relations entre eux, à un point particulier du temps pendant l'exécution
du système modélisé. On peut considérer un diagramme d'objets comme étant
une instance d'un diagramme de classe.
 Diagramme de classes

Le diagramme de classes est un schéma utilisé en génie logiciel pour présenter


les classes et les interfaces des systèmes ainsi que les différentes relations entre celles-
ci. Ce diagramme fait partie de la partie statique d'UML car il fait abstraction des
aspects temporels et dynamiques.
Une classe est un ensemble de fonctions et de données (attributs) qui sont liées
ensemble par un champ sémantique. Les classes sont utilisées dans la programmation
orientée-objet. Elles permettent de modéliser un programme et ainsi de découper une
tâche complexe en plusieurs petits travaux simples.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 13 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 Diagramme de composants

Le diagramme de composants décrit l'organisation du système du point de vue des


éléments logiciels comme les modules (paquetages, fichiers sources, bibliothèques,
exécutables), des données (fichiers, bases de données) ou encore d'éléments de
configuration (paramètres, scripts, fichiers de commandes). Ce diagramme permet de
mettre en évidence les dépendances entre les composants (qui utilise quoi).

 Diagramme de déploiement

En UML, un diagramme de déploiement est une vue statique qui sert à représenter


l'utilisation de l'infrastructure physique par le système et la manière dont
les composants du système sont répartis ainsi que leurs relations entre eux. Les
éléments utilisés par un diagramme de déploiement sont principalement les nœuds,
les composants, les associations et les artefacts. Les caractéristiques des ressources
matérielles physiques et des supports de communication peuvent être précisées par
stéréotype.
 Diagramme de paquetages

Les diagrammes de paquetages sont la représentation graphique des relations existant


entre les paquetages (ou espaces de noms) composant un système, dans le
langage Unified Modeling Language (UML).

 Diagramme structure composite

Dans le langage UML, le diagramme de structure composite expose la structure interne


d'une classe ainsi que les collaborations que cette dernière rend possible. Les éléments
de ce diagramme sont les parties (en anglais parts), les ports par le biais desquels les
parties interagissent entre elles, avec différentes instances de la classe ou encore avec
le monde extérieur, et enfin les connecteurs reliant les parties et les ports.
Une structure composite est un ensemble d'éléments interconnectés collaborant dans
un but commun lors de l'exécution d'une tâche. Chaque élément se voit attribuer
un rôle dans la collaboration.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 14 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Les vues dynamiques, qui décrivent le fonctionnement du système


 Diagramme de séquence

Les diagrammes de séquences sont la représentation graphique des interactions entre


les acteurs et le système selon un ordre chronologique dans la formulation Unified
Modeling Language (UML).

 L'utilité du diagramme de séquence

Le diagramme de séquence permet de montrer les interactions d'objets dans le cadre


d'un scénario d'un Diagramme des cas d'utilisation. Dans un souci de simplification, on
représente l'acteur principal à gauche du diagramme, et les acteurs secondaires
éventuels à droite du système. Le but étant de décrire comment se déroulent les
actions entre les acteurs ou objets.
La dimension verticale du diagramme représente le temps, permettant de visualiser
l'enchaînement des actions dans le temps, et de spécifier la naissance et la mort
d'objets. Les périodes d'activité des objets sont symbolisées par des rectangles, et ces
objets dialoguent à l'aide de messages.
 Diagramme de collaboration

Un diagramme de collaboration est un diagramme d'interactions UML 1, représentation


simplifiée d'un diagramme de séquence se concentrant sur les échanges de messages entre
les objets, et où la chronologie n'intervient que de façon annexe.
Il consiste en un graphe dont les nœuds sont des objets et les arcs (numérotés selon la
chronologie) les échanges entre ces objets.
Les diagrammes de collaboration ont été remplacés en UML 2. par les diagrammes de
communication.
 Diagramme de temps

Un diagramme de temps est un diagramme d'interaction où l'attention est portée sur


les contraintes temporelles dans le langage UML 2.

 Diagramme de communication

Un diagramme de communication est un diagramme d'interactions UML 2.0


(appelé diagramme de collaboration en UML 1), représentation simplifiée d'un diagramme
de séquence se concentrant sur les échanges de messages entre les objets.
Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 15 | P a g e
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

En fait, le diagramme de séquence et le diagramme de communication sont deux vues


différentes mais logiquement équivalentes (on peut construire l'une à partir de l'autre)
d'une même chronologie. Ils sont dits isomorphes.
C'est une combinaison entre le diagramme de classes, celui de séquence et celui des cas
d'utilisation. Il rend compte à la fois de l'organisation des acteurs aux interactions et de la
dynamique du système.
C'est un graphe dont les nœuds sont des objets et les arcs (numérotés selon la chronologie)
les échanges entre objets.
Les vues comportementales
 Diagramme de cas d’utilisation

Les diagrammes de cas d'utilisation sont des diagrammes UML utilisés pour donner


une vision globale du comportement fonctionnel d'un système logiciel. Ils sont utiles
pour des présentations auprès de la direction ou des acteurs d'un projet, mais pour le
développement, les cas d'utilisation sont plus appropriés.

Un cas d'utilisation représente une unité discrète d'interaction entre un utilisateur


(humain ou machine) et un système. Il est une unité significative de travail. Dans un
diagramme de cas d'utilisation, les utilisateurs sont appelés acteurs (actors), ils
interagissent avec les cas d'utilisation (use cases).

 Diagramme d’états-transition

Un diagramme états-transitions est un schéma utilisé en génie logiciel pour


représenter des automates déterministes. Il fait partie du modèle UML et s'inspire
principalement du formalisme des statecharts et rappelle les grafcets des automates.
S'ils ne permettent pas de comprendre globalement le fonctionnement du système, ils
sont directement transposables en algorithme. Tous les automates d'un système
s'exécutent parallèlement et peuvent donc changer d'état de façon indépendante.

 Diagramme d’activité

Le diagramme d'activité est un diagramme comportemental d'UML, permettant de


représenter le déclenchement d'événements en fonction des états du système et
de modéliser des comportements parallélisables (multi-threads ou multi-processus). Le
diagramme d'activité est également utilisé pour décrire un flux de travail (workflow).

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 16 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

2.1 Les avantages du langage Unified Modeling Language (UML)

UML est un langage formel et normalisé : il permet un gain de précision, encourage


l’utilisation d’outils et constitue à cet effet un gage de stabilité.
UML est un support de communication performant : il cadre l’analyse et facilite la
compréhension de représentations abstraites complexes. Son caractère polyvalent et
sa souplesse en font un langage universel.

2.2 Les inconvénients du langage Unified Modeling Language (UML)

La mise en pratique d’UML nécessite un apprentissage et passe par une période


d’adaptation. Même si l’Espéranto est une utopie, la nécessité de s’accorder sur des
modes d’expression communs est vitale en informatique. UML n’est pas à l’origine des
concepts objets, mais en constitue une étape majeure, car il unifie les différentes
approches et en donne une définition plus formelle.
Le processus (non couvert par UML) est une autre clé de la réussite d’un projet. Or,
l’intégration d’UML dans un processus n’est pas triviale et améliorer un processus est
une tâche complexe et longue. Les auteurs d’UML sont tout à fait conscients de
l’importance du processus, mais l’acceptabilité industrielle de la modélisation objet
passe d’abord par la disponibilité d’un langage d’analyse.

3. Analyse et justification du choix

MERISE UML
Méthode d’analyse et de conception de Langage de représentation d’un système
système d’information d’information
Méthode de modélisation de données et Système de notation orienté objet
traitements orienté bases de données
relationnelles
Relationnel Objet
Schéma directeur, étude préalable, étude Langage de modélisation des systèmes
détaillée et la réalisation standard, qui utilise des diagrammes pour
représenter chaque aspect d’un système :
statique, dynamique, en s’appuyant sur la
notion d’orienté objet
Plus adapté à une approche théorique Plus orienté vers la conception
Du « bottom up » de la base de données Du « top down » du modèle vers la base de
vers le code données

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 17 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Une autre approche sera de comparer UML et MERISE par un système de pointage.
Effet les points attribués seront fait selon les besoins du projet :

MERISE UML

Objectif Analyse et conception de Langage de représentation


système d’un système d’information

Principe de construction 7 7

Formalisme 5 8

Type d’approche 7 7

Cycle de vie 4 9

Niveau d’analyse 4 8

Découpage 6 6

Point de vue 4 8

Notion du temps 5 7

Type de système 4 8

Application 5 8

Apprentissage 8 5

Support logiciel 7 7

Niveau conception 7 4

Totaux 73 92

Tableau 2  : comparatif UML – MERISE


Pondération

 1 à 3 correspond à une réponse faible de la solution


 4 à 6 correspond à une réponse moyenne de la solution
 7 à 10 correspond à une bonne réponse de la solution

En conclusion, avec 92 points, UML est largement supérieur à MERISE pour l’exécution
de notre projet. Si l’on considère que le SI est modélisable comme deux sous-systèmes

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 18 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

inclus l’un dans l’autre : le SIO (Système d’Information Organisationnel) représentant le


métier, englobant le SII (Système d’Information Informatisé) représentant l’application
informatique associée.
MERISE est adaptée au SIO, UML au SII. En effet, notre système d’information à mettre
en place prend beaucoup plus en compte l’aspect organisationnel. Nous retenons donc
la méthode d’analyse de PROCESSUS UNIFIE (UP).

DEUXIEME PARTIE :

ETUDE PREALABLE

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 19 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

I. ETUDE DE L’EXISTANT

1. Présentation de l’existant

Le service surveillance générale dispose d’un logiciel informatique développé sous


Access 2003 permettant la gestion des absences. Le service surveillance générale reçoit
chaque jour un grand nombre de fiches d’absences notées par les professeurs, ce
service accomplit ses tâches de gestion d’une manière presque manuelle en utilisant
des logiciels de bureautique. Afin de mieux répondre aux besoins des utilisateurs de
notre application, la deuxième partie de notre étude portera sur les méthodes
actuelles de gestion et de suivi des absences, les applications disponibles et leurs
principales fonctionnalités. Cette partie nous sera d’une utilité lors de la conception de
l’application.

2. Analyse de l’existant

2.1. Objectifs et besoin des utilisateurs

2.1.1. Présentation

Ce point nous permettra de recueillir les besoins fonctionnels et techniques des


utilisateurs du système.
Les fonctionnalités et les techniques des besoins du système sont basés sur différents
aspects. Nous partons depuis les utilisateurs jusqu’au fonctionnement du système en
passant par l’authentification, la base de données etc.

2.1.2. Besoins

Le service surveillance général de PIGIER Côte d’Ivoire est en attente d’une application
permettant d’assurer :

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 20 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

d’assurer le suivi des absences des étudiants ;


l’identification des différents utilisateurs de l’application ;
la consultation des absences enregistrées par une classe ou un étudiant donné ;
la génération des fiches de convocation, billets d’absence etc.;
la génération de graphe, statistique du taux d’absentéisme ;
le pointage des absences automatisés .

2.2.Critique de l’existant

Cette partie a pour but de dégager les insuffisances et les défaillances du système
actuel. Concernant la gestion et le suivi des absences, on peut noter les travaux
manuels élèves, lourds et pénibles qui se présentent d’une façon répétitive à savoir
l’archivage, la mise en œuvre et la consultation des fiches d’absences.
Le service surveillance générale présente en son sein une application standard
développée sous Access 2003. Cette application gère la saisie des absences, mais
présente beaucoup de défaillances à savoir :

l’implémentation de plusieurs fonctionnalités sur une même interface ;


système de sécurité non pris en compte ;
absence d’un système d’annuaire de recherche ;
difficulté d’accès à l’information.

II. PROPOSITIONS DE SOLUTIONS POSSIBLES

Après l’analyse de l’existant nous proposons une application web de gestion de suivi
des absences des étudiants pour améliorer le mode de fonctionnement du service
surveillance générale.
Les responsables de la surveillance générale de PIGIER Côte d’Ivoire ont opté pour la
réalisation d’une nouvelle application web dynamique automatisant la gestion et le
suivi des absences des étudiants et permettant d’optimiser le temps d’accès aux
différentes données, puis d’éviter les tâches pénibles et ennuyeuses. Cette application
aidera à mettre en place une nouvelle circulation de l’information grâce à un réseau de
communication pour diffuser les informations entre les responsables du service
surveillance générale.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 21 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Par ailleurs, elle permettra de mettre en place un système qui gère toute une liste des
absences, des convocations, des fiches de bordereaux de présence de façon détaillée
et rapide pour avoir des informations à temps réel, etc. En outre, elle diminuera la
gestion des droits d’accès afin de permettre un accès sélectif aux différents menus et
attribuer des responsabilités à chaque utilisateur.

En somme, l’application doit nous permettre de :

faciliter la consultation des absences des étudiants ;


faciliter l’ajout des nouvelles absences ;
diminuer les risques d’erreur ;
faciliter la génération des fiches d’absences ;
garder trace sur toutes les activités effectuées par chaque utilisateur ;
garder l’archive des absences par année universitaire ;
garantir la sécurité (authentification) ;
rendre le travail plus structuré et dynamique.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 22 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

TROISIEME PARTIE :

ETUDE DETAILLEE DE LA
SOLUTION

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 23 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

I. DIAGRAMME ET DESCRIPTION DES CAS D’UTILISATION LES PLUS


IMPORTANTS

On définit les différents acteurs du futur système et leurs rôles. En faisant le


diagramme de cas d’utilisation. Les acteurs sont : Educateur, Chef surveillant ou
administrateur.
Pour chacun des acteurs cités, notre application doit donc offrir un ensemble de
fonctionnalités.

1. Diagramme de cas d’utilisation


1.1. Définition

Les rôles du diagramme de cas d’utilisation sont de recueillir, d’analyser et d’organiser


les besoins, ainsi que de recenser les grandes fonctionnalités d’un système.
Un diagramme de cas d’utilisation capture le comportement d’un système, d’un sous-
système, d’une classe ou d’un composant tel qu’un utilisateur extérieur le voit. Il
scinde la fonctionnalité du système en unités cohérentes, les cas d’utilisations, ayant
un sens pour les acteurs. Ainsi, ces cas d’utilisation permettent d’exprimer le besoin
des utilisateurs d’un système. Ils sont donc une vision orientée utilisateur de ce besoin
au contraire d’une vision informatique.

1.2. Composition du diagramme de cas d’utilisation

Le diagramme de cas se compose de trois éléments principaux :

 Un acteur : c’est l’idéalisation d’un rôle joué par une personne externe, un
processus ou une chose qui interagit avec un système. Il se représente par un
petit bonhomme avec un nom inscrit dessous.

Acto
Figure 1 : Représentationrd’un acteur

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 24 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 Un cas d’utilisation : c’est une unité cohérente représentant une fonctionnalité


visible de l’extérieur. Il réalise un service de bout en bout, avec un déclenchement, un
déroulement et une fin, pour l’acteur qui l’initie.

Use Case

Figure 2  : Représentation d’un cas d’utilisation

 Les relations : Trois types de relations sont pris en charge par la norme UML et
sont graphiquement représentés par des types particuliers de ces relations. Les
relations indiquent que le cas d’utilisation source présente les mêmes conditions
d’exécution. Une relation simple entre un acteur et une utilisation est un trait
simple.

Logi <<include>> Captch


n a
<<extend >>

User Reminde
Logou r
t

Figure 3 : Représentation de relation

2. Les acteurs de notre


application

 L’éducateur : s’occupe de la gestion des absences, gestion des


fiches de bordereaux ;
 L’administrateur ou le service d’absence : accède au tableau de
bord de l’application, gère les utilisateurs.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 25 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

3. Présentation du diagramme de cas d’utilisation

Cette représentation nous permet d’avoir une vue globale sur les fonctionnalités du
système ainsi que les catégories d’utilisateurs.

Diagramme du cas d’utilisation éducateur(s)

Ajouter absence

<<extend>>
<<include>>

<<extend>> Generer graphe

Gerer absence

<<include>>

<<extend>>
S'authentifier

Modifier absence
educateur
<<include>>

Gerer fiche

<<include>>
<<extend>> <<extend>>

<<extend>>
Imprimer fiche
Imprimer liste convo
absence
Imprimer fiche BP

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 26 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Diagramme du cas d’utilisation administrateur ou chef surveillant

Consultation
tableau de bord <<include>>

Administrateur
<<extend>> Activer ou desactiver s'authentifier
compte utilisateur <<include>>
Gerer utilisateur

<<extend>>

<<include>>

Consulter liste utilisateur

Figure 4  : Diagramme de cas d’utilisation

Description textuelle des cas d’utilisation


Nous allons maintenant décrire textuellement les différents cas d’utilisation de notre
diagramme ci-dessus :

4. Cas d’utilisation : S’authentifier

Scénario « S’authentifier »

 Objectif : permettre à l’utilisateur de s’identifier et d’accéder à l’application.


 Acteurs concernés : tous les utilisateurs de l’application.
 Pré-conditions :
 Bases de données crées, structurées et contenant les données
d’authentification
 Scénario nominal :
1-N.1.1. L’utilisateur introduit son login et son mot de passe dans les champs
appropriés.
1-N.1.2. L’utilisateur valide ses entrées en appuyant sur se connecter.
1-N.1.3. L’application vérifie l’authenticité des informations introduites par
l’utilisateur.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 27 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

1-N.1.4. L’application affiche la fenêtre principale de l’utilisateur concerné.


 Scénario alternatifs :

Deux scénarios alternatifs se présentent pour ce cas d’utilisation :

Scénario alternatif 1 : « Ne pas remplir les données d’identifications »

1-A.1.1. L’utilisateur clique sur le bouton Se connecter sans avoir introduit son
nom d’utilisateur et / ou son mot de passe.
1-A.1.2. L’application indique le champ vide et qu’il faut le remplir.
1-A.1.3. Le cas d’utilisation reprend à l’action 1-N.1.1 du scénario nominal.

Scénario alternatif 2 : « Fournir des données d’identification erronées »

Ce scénario débute avec l’échec de la comparaison des données d’identification


fournis par l’utilisateur avec elles stockées sur la base de données, soit à l’étape 1-
N.1.3.

5. Cas d’utilisation : Consulter absence

Scénario « Consulter absence »

 Objectif : permettre la consultation des absences enregistrés.


 Acteurs concernés : tous les utilisateurs de l’application
 Pré-conditions :
 Utilisateur authentifié
 Scénario nominal :
2-N.1.1 L’utilisateur entre les paramètres demandés pour l’affichage de la liste
des étudiants (classe, matière et filière).
2-N.1.2. L’application affiche une liste d’absence selon les paramètres entrés
(pour le cas du parent la liste de ses absences et notifications s’affiche
directement après son authentification).
2-N.1.3. L’utilisateur clique sur une absence de la liste afin d’afficher les détails.
2-N.1.4. Détails affichés.
 Scénario alternatif :

Ce cas d’utilisation n’a aucun scénario alternatif.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 28 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

6. Cas d’utilisation : Gérer les absences

Scénario « Gérer absences »

 Objectif : permettre la gestion des absences.


 Acteur concerné : Educateur(s).
 Pré-conditions :
 Utilisateur authentifié
 Scénario nominal :
3-N.1.1. L’éducateur(s) sélectionne un des cas d’utilisations imbriqués.
3-N.1.2. L’éducateur(s) effectue les actions voulues puis revient à l’interface de
l’application.

7. Cas d’utilisation : Modifier absence

Scénario « Modifier absence »

 Objectif : Permettre la modification d’une absence après une justification de


l’étudiant concerné.
 Acteurs concerné : Educateur(s).
 Pré-conditions :
 Utilisateur authentifié
 Liste d’absence affichée selon les paramètres entrés
 Scénario nominal :
4-N.1.1. L’utilisateur sélectionne le ou les absences à modifier
4-N.1.2. L’application demande la validation de la modification
4-N.1.3. L’utilisateur valide la modification
4-N.1.4. L’application demande la confirmation de la modification
4-N.1.5. L’utilisateur confirme la modification
4-N.1.6. L’application modifie le ou les absences sélectionnées de la base de
données
4-N.1.7. L’application donne l’état de la modification.
 Scénario alternatif :

Ce cas d’utilisation n’a aucun scénario alternatif.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 29 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

8. Cas d’utilisation : Ajouter absence

Scénario « Ajouter absence »

 Objectif : Permettre l’ajout d’une absence de l’étudiant concerné.


 Acteurs concerné : Educateur(s).
 Pré-conditions :
 Utilisateur authentifié
 Scénario nominal :
5-N.1.1. L’utilisateur sélectionne le ou les absences à ajouter
5-N.1.2. L’application demande la validation de l’ajout
5-N.1.3. L’utilisateur valide l’ajout
5-N.1.4. L’application demande la confirmation de l’ajout
5-N.1.5. L’utilisateur confirme l’ajout

Scénario alternatif :

Ce cas d’utilisation n’a aucun scénario alternatif.

9. Cas d’utilisation : Imprimer liste d’absence, fiche de convocation, fiche de bordereau de


présence

Scénario « Imprimer liste d’absence, fiche de convocation, fiche de bordereau


de présence »

 Objectif : permettre l’impression d’une liste d’absence, une fiche de


convocation, une fiche de bordereau de présence ou d’une liste d’étudiants
absents si le besoin se présente.
 Acteurs concernés : Educateur(s)
 Pré-conditions :
 Utilisateur authentifié
 La liste d’absences ou de présence des étudiants affichés selon les
paramètres (classe, matière).
 Scénario nominal :
6-N.1.1 L’utilisateur clique sur le bouton imprimer selon les critères
6-N.1.2. L’application lance la fenêtre d’impression
6-N.1.3. L’utilisateur modifie les paramètres d’impression (s’il veut) et lance
l’impression de la liste.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 30 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Scénario alternatif :

Ce cas d’utilisation n’a aucun scénario alternatif.

10.Cas d’utilisation : Générer un graphe

Scénario « Générer un graphe »

 Objectif : permettre l’utilisateur de générer des graphiques suivant le taux


d’absentéisme
 Acteurs concernés : Educateur(s)
 Pré-conditions :
 Utilisateur authentifié
 Scénario nominal :
7-N.1.1 L’éducateur clique sur l’onglet graphe
7-N.1.2. L’application lance l’interface de génération de graphe
7-N.1.3. L’utilisateur paramètre le graphe à générer (données de type)
7-N.1.2. L’utilisateur valide sa demande de graphe
7-N.1.3. L’application collecte les données sélectionnées et génère le graphe
dans une nouvelle fenêtre.

Scénario alternatif :

Ce cas d’utilisation n’a aucun scénario alternatif.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 31 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

II. IDENTIFICATION DES CLASSES ET DIAGRAMME DES CLASSES

1. Identification des classes

Le modèle d’analyse nous permet de faire une représentation transitoire entre


l’expression des besoins d’une part et le modèle de conception d’autre part ; le
modèle d’analyse permet de reformuler les besoins sous une forme proche de ce que
sera la conception et la réalisation mais tout en s’abstrayant de leurs contraintes
techniques.

Classe Attribut Description

id_user
login login utilisateur
email email utilisateur
utilisateur password password utilisateur
etat etat utilisateur
rôle rôle utilisateur
date_creation date création utilisateur
id_absence
periode_debut periode debut
periode_fin periode fin
Absence nbreabsence nombre absence
date_absence date absence
absence_just absence justifié
id_convo
code_generique code generique
heure_debut heure debut
type_convo type convocation
Convocation antenne antenne
date_saisie_convo date saisie convocation
nom_educateur nom éducateur
motif motif
id_annee_acad
Année académique nom_annee_acad nom année académique
date_annee_acad date année académique
id_absence_excusee
date_debut date début
Absence excusée date_fin date fin
motif motif
nbrejours nombre de jours
id_clas
Classe nom_clas nom classe
date_crea_clas date creation classe

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 32 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

id_parcours
parcours nom_parcours nom parcours
date_saisie_parcours date saisie parcours
id_fil
Filière nom_fil nom filière
date_fil date filière
id_etud
Etudiant matricule matricule étudiant
nom nom étudiant
prenom prénom étudiant

Matière id_mat
nom_mat nom matière
date_mat date matière

2. Diagramme de classe

2.1 Définition

Le diagramme de classes est considéré comme le plus important de la modélisation


orientée objet, il est le seul obligatoire lors d’une telle modélisation. Alors que le
diagramme de cas d’utilisation montre un système du point de vue des acteurs ; le
diagramme de classes en montre la structure interne. Il permet de fournir une
représentation abstraite des objets du système qui vont interagir pour réaliser les cas
d’utilisation. Il est important de noter qu’un même objet peut très bien intervenir dans
la réalisation de plusieurs cas d’utilisation. Le cas d’utilisation ne réalise donc pas une
partition des classes du diagramme de classes.
Un diagramme de classes n’est donc pas adapté (sauf cas particulier) pour détailler,
décomposer, ou illustrer la réalisation d’un cas d’utilisation particulier.
Les principaux éléments de cette vue statique sont les classes et leurs relations :
association, généralisation et plusieurs types de dépendances, telles que la réalisation
et l’utilisation.

2.2 Composition du diagramme de classe

Le diagramme de classe se compose des éléments suivants :

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 33 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 Classe : c’est la déclaration de l’ensemble des entités qui composeront un objet.


Un objet est donc issu d’une classe, c’est la raison pour laquelle on pourra parler
indifféremment d’objet ou d’instance (éventuellement d’occurrence).

Une classe se représente avec UML sous forme d’un rectangle divisé en trois sections.
Le premier contient le nom donné à la classe (non souligné).

Les attributs d’une classe sont définis par un nom, un type (éventuellement une valeur
par défaut, c’est-à-dire une valeur affectée à la propriété lors de l’instanciation) dans le
second compartiment. Les opérations sont répertoriées dans le troisième volet du
rectangle.

Classe
X
-attribut_1 : int
-attribut_2 : string

+set_attribut_1(int):
void
+get_attribut_1(): int
+set_attribut_2(string):
void
Figure 5 +get_attribut_2():
: Composition d’unestring
classe

 Association : une association est une relation entre deux classes (association
binaire) ou plus (association n-aire), qui décrit les connexions structurelles entre
leurs instances. Une association indique donc qu’il peut y avoir des liens entre
des instances des classes associées.

Personne Entrepr
ise
nom : String employé travailler pour employeur Raison
Prénom : String * 1 sociale :
String
Salaire () : float Chiffre_d_a
ffaires () :
float

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 34 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Etudiant
*

* *
Matière Professeur

Cours

Figure 6 : Composition d’une association

 Attribut : est une propriété élémentaire d’une classe. Pour chaque objet d’une
classe, l’attribut prend une valeur (sauf cas d’attributs multivalués).
 Opération : est une fonction applicable aux objets d’une classe. Une opération
permet de décrire le comportement d’un objet. Une méthode est
l’implémentation d’une opération.
 Rôle : nom donné à chaque extrémité d’une association ; par extension, c’est la
manière dont les instances d’une classe voient les instances d’une autre classe
au travers d’une association.
 Multiplicité : le nombre d’objet (min… max) qui peuvent participer à une
relation avec un autre objet dans le cadre d’une association.
 Agrégation : cas particulier d’association non symétrique exprimant une relation
de contenance.
 Généralisation : est la relation entre une classe et deux autres classes ou plus
partageant un sous-ensemble commun d’attributs et/ou d’opérations.
 Super-classe : classe générale reliée à d’autre classe plus spécialisées (sous-
classe) par la relation de généralisation
 Classe d’association : permet de décrire soit les attributs soit des opérations
propres à l’association. Cette classe-association est elle-même reliée par un trait

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 35 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Annee academique Classe


- id_annee_acad : int - id_clas : int
+ nom_annee_acad : varchar
affecter + nom_clas : varchar
+ date_annee_acad : date + date_crea_clas : date
1..1
# Ajouter () + parcours : varchar
# Afficher () # Ajouter ()
# Modifier () Etudiant attribuer # Afficher ()
1..* - id_etud : int # Modifer ()
1..1
+ matrcule : int 1..*
Convocation + nom : varchar
- id_convo : int concerner3 + prenom : varchar
+ heure_debut : varchar 1..*
# Ajouter ()
+ type_convo : varchar 1..1 # Afficher ()
1..* Parcours
+ antenne : varchar # Modifier ()
+ date_saisie_convo : date - id_parcours : int
+ nom_educateur : varchar 1..1 + nom_parcours : varchar
+ motif : varchar 1..1 + date_saisie_parcours : date
# Ajouter () appartenir2 # Ajouter ()
# Afficher () 1..* 1..* # Afficher ()
# Modifier () # Modifier ()
concerner2

concerner1 Filière
- id_fil : int
1..* avoir + nom_fil : varchar
+ date_fil : date
Absence excusee # Ajouter ()
- id_absence_excusee : int 1..1 # Afficher ()
+ date_debut : date 1..1 # Modifier ()
+ date_fin : date
Absence
+ motif : varchar
+ nbre_jours : varchar - id_abs : int
+ periode_debut : date
# Ajouter ()
+ periode_fin : date
# Afficher ()
+ nbreabsence : varchar
# Modifier () Matière
+ date_absence : date
+ absence_just : varchar - id_mat : int
+ semaine : varchar concerner4 + nom_mat : varchar
# Ajouter () + date_mat : date
1..1
# Afficher () 1..* # Ajouter ()
# Modifier () # Afficher ()
Utilisateur # Modifier ()
- id_user : int
+ login : varchar
+ email : varchar gerer
+ role : varchar
+ etat : int
+ date_creation : date
# s'authentifier () 1..* Service absence
+ ajouterclasse() : void
+ ajouterdepartement() : void
1..1 + ajouteretudiant() : void
appartenir1 + ajoutermatiere() : void
+ activer_desactiver_user() : void
+ ajouterfiliere() : void
+ ajouterconvocation() : void
+ ajouterannee_academique() : void
+ ajouterabsence() : void
+ consulterabsence() : void
+ consulterliste_user() : void
+ imprimer_fiche_absence() : void
+ modifier_absence() : void

en pointillé au losange de connexion. Une classe-association peut être reliée à


d’autres classes d’un diagramme de classes.

3. Présentation du diagramme de classe

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 36 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

III. DIAGRAMMES DE SEQUENCE

Le diagramme de séquence représente la succession chronologique des opérations


réalisées par un acteur pour l’analyse des mesures et l’étude de différentes
statistiques. Ce diagramme montre les étapes qu’ils doivent faire l’utilisateur pour
pouvoir accéder à l’application.

1. Diagramme de séquences du CU « S’authentifier »

Description :

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 37 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

L’authentification permet à l’utilisateur d’accéder à l’application en saisissant le login


et le mot de passe, si tous les champs sont bien remplis et les informations saisies sont
correctes, elle se redirige vers la page d’accueil de l’application, sinon elle est redirigée
vers la page d’authentification.

2. Diagrammes de séquences du CU « Consulter absences »

Description  :

Après authentification, l’éducateur accède à son espace de travail pour pourvoir


effectuer ses fonctions. L’une de ces fonctions est d’afficher les détails d’une absence.
Une fois les détails affichés, il est redirigé vers l’interface de l’application.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 38 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

3. Diagrammes de séquences du CU « Modifier absence »

Description :

Après
authentification, l’éducateur(s) accède à son espace de travail pour pourvoir effectuer
ses fonctions, l’une de ces fonctions est de sélectionner le ou les absences à modifier.
Un message de demande de validation de la modification s’affiche, il est redirigé à
l’interface de l’application.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 39 | P a g e


REALISATION
Figure 12  : Diagramme de séquences « Générer graphe »

CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

4. Diagrammes de séquence du CU « Ajouter absence »

5. Diagramme de séquence du CU « Imprimer liste, Fiche de bordereaux et fiche de


convocation »

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 40 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Les
trois

Figure 13 : Couches organisationnelle d’une application


logicielle couches
précédentes sont reparties de différentes manières sur les postes de déploiement du
système. Cette répartition permet de distinguer aujourd’hui plusieurs architectures de
déploiement aux nombres desquelles :

L’architecture un tiers

Avec cette architecture, les trois couches s’exécutent sur la même machine, on parle
d’informatique centralisée.

L’architecture deux tiers

Cette architecture est constituée d’un côté, du client qui envoie des requetés au
serveur et récupère les réponses de celui-ci, il prend en charge la couche présentation
et de l’autre, du serveur qui est à l’écoute, prêt à répondre aux requêtes envoyées par
les clients. Il se charge de la couche applicative et de la couche d’accès aux données.

L’architecture trois tiers

Les trois couches s’exécutent chacune sur une machine différente. La couche
présentation s’exécute sur le client (par exemple un navigateur web), la couche
applicative sur un serveur d’application et la couche accès aux données sur un serveur
de base de données.

L’architecture n-tiers

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 41 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

L’architecture N-tiers (anglais tiers : étage, niveau), ou encore appelée multi-tiers, est
une architecture client-serveur dans laquelle une application est exécutée par
plusieurs composants logiciels distincts.

Choix des architectures

Nous avons opté pour l’architecture trois tiers composée de trois niveaux physiques :

 un poste client : interprète et affiche le code de présentation de


l’interface ;
 un serveur intermédiaire : interroge le serveur de base de données et
génère le code présentation, suivant la logique du métier ;
 un serveur de base de données : héberge la base de données, les
procédures stockées, les fonctions de la base de données.

Cette architecture est très flexible, évolutive et nous permet de mieux repartir nos
composants logiciels. Nous pouvons compter aussi au nombre des motivations de ce
choix, la possibilité d’appliquer une sécurité à tous les niveaux de manière
indépendante, la réduction des charges du poste client, ce qui rend le plus simple à
manipuler et une expérience utilisateur plus agréable.

II. ENVIRONNEMENT DE DEVELOPPEMENT

1. Systèmes d’exploitation

Un système d’exploitation, abrégé parfois SE, (ou Operating System en anglais, que
l’on rencontre souvent sous l’abréviation OS) repente l’ensemble des programmes qui
pilote les différents composants (disque dur, écran, processeur, mémoire etc…) de
l’appareil informatique et lui permet donc de fonctionner.
Il permet donc de faire l’interface entre l’utilisateur et le matériel informatique. Il est
d’ailleurs chargé en premier lors du démarrage de l’appareil.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 42 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

1.1 Présentation des systèmes d’exploitation

1.1.1 Windows

Windows est le système d’exploitation de Microsoft. Windows a succédé à MS-DOS.


Il s’agit du système d’exploitation le plus répandu. Il équipe les ordinateurs de la
gamme PC. Il est en effet préinstallé sur plus de 90% des ordinateurs personnels
vendus dans le monde. Ce qui n’est pas sans soulever quelques questions au niveau du
droit de la concurrence.
Ce système d’exploitation doit son nom au principe de « fenêtres » qu’il a introduit dès
sa première version.
A chaque nouvelle version, Microsoft apporte des améliorations et fonctionnalités
supplémentaires à l’ordinateur Windows, avec à chaque fois un nouvel environnement
graphique. Les différentes versions de Windows ont également suivi les évolutions des
ordinateurs.
De nombreuses versions de Windows ont été développées (dont Windows 2000,
Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10) et se sont succédé
au cours des années.

Avantages
 système d’exploitation le plus populaire ;
 compatible avec presque tous les logiciels et périphériques ;
 système d’exploitation complet.
Inconvénients
 victime de nombreuses attaques de virus, logiciels malveillants.

1.1.2 GNU/Linux

GNU est né en 1983, il s’agit d’un système d’exploitation. En 1991, il est complété par
le noyau Linux. Les outils de GNU permettent de faire fonctionner la machine alors que
Linux contrôle le matériel et gère les pilotes. Certains périphériques ne disposent pas
de pilote pour Linux et ne pourront pas faire fonctionner celui-ci.
Il utilise son propre système de fichiers et, contrairement à Windows, n’utilise pas de
lettre de partition.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 43 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Il peut être utilisé sur un ordinateur personnel mais demande un minimum de


connaissance et d’expérience. Même si cela s’est beaucoup simplifié avec les années :
il est maintenant possible d’installer une version de Linux grand public, clé en main.
Et sans avoir forcément besoin d’ouvrir une console. Linux est également très présent
et utilisé pour les serveurs.
Il existe de nombreuses distributions Linux (Ubuntu, Debian, Fedora, CentOs,
OpenSuse, etc…) qui n’ont pas la même interface graphique, sont gratuites ou
payantes, avec un but commercial ou non mais qui ont en commun le noyau linux.

Avantages
 tous les logiciels conçus pour Linux-Ubuntu sont gratuits ;
 système d’exploitation fiable ;
 très peu d’attaques virus ;
 possibilité de modifier et ajoute des applications en toute liberté.
Inconvénients
 peu répandu : presque seulement utilisé par les informaticiens
 certains périphériques ne fonctionnent pas sous Linux.

1.1.3 MAC OS

C’est le nom du système d’exploitation développé par Apple pour ses ordinateurs
personnels. Macintosh a été l’un des premiers à posséder une interface graphique
(avec des menus, des fenêtres etc…).
On distingue deux grandes familles de système d’exploitation pour l’ordinateur Mac :

 mac OS dont la première version a vu le jour en 1984 ;


 mac OS X qui lui a ensuite succédé.

L’ordinateur Mac à la particularité de ne pouvoir fonctionner que sur des machines


conçues par Apple.

Avantages
 système d’exploitation complet ;
 peu d’attaques virus.
Inconvénients
 ne fonctionne qu’avec les ordinateurs Mac d’Apple ;
 compatible avec moins de logiciels et jeux que Windows ou Linux Ubuntu.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 44 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

1.2 Choix du système d’exploitation

L’étude comparative des trois systèmes les plus répandus dans le monde effectuée
dans le tableau ci-dessous nous permettra de faire notre choix.

Système Installation ? Rapide Léger ? Pratique ? Sécurisé ? Licence Total


d’exploitation
Installation et Interface Nombreux
Microsoft
prise en main Oui Oui facile à Virus et Payante
Windows
simplifiées appréhender malware
4 3 3 4 1 1 16/24
Installation et Nécessite un
MAC OS prise en main Oui Oui certain Oui Payante
simplifiées temps
4 4 2 2 3 1 16/24
Nécessite un
Installation et certain
Distribution
prise en main Oui Non temps (ligne Oui Libre
GNU/Linux
difficiles de
commande)
1 3 3 1 3 4 15/24

Tableau 3  : Windows Vs GNU/Linux vs MAC OS

1 = insuffisant 2 = assez bien 3 = bien 4 = très bien

A la suite de notre tableau de comparaison de système notre choix s’est porté sur le
système d’exploitation Windows qui possède les atouts d’un bon système
d’exploitation malgré certains points encore négatifs qui suscitent des réticences à son
utilisation. Mais, ce système d’exploitation possède une simplicité de fonctionnement
et est idéal pour un informaticien.

2. SGBD
2.1 Définition

Une base de données est un ensemble d’informations, connexes de manière directe ou


indirecte, enregistrées dans un dispositif informatique. Dans une base de données
relationnelles, les informations sont stockées sous forme de groupe de valeurs : les
enregistrements. Un ensemble d’enregistrements relatif à un sujet forme une relation
et est stocké dans une table. La base de données comporte une ou plusieurs tables.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 45 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

La fonction première d’un système de Gestion de Base de Données (SGBD) est d’être
un outil de stockage d’informations offrant des fonctions simples de manipulation de
grands volumes de données. L’un des avantages de ces SGBD est que l’interrogation de
ces informations s’effectue d’une manière indépendante de l’architecture physique de
stockage.

2.2 Présentation
2.2.1 SQL SERVER

Produit par Microsoft, SQL Server est un système de gestion de base de données
relationnelles. Le stockage, la manipulation et l’analyse de ces données se font au sein
de son moteur de bases de données. Ce service permet la réalisation de nombreuses
applications, requêtes, et transactions, notamment grâce au langage T-SQL (Transact-
SQL).

Avantages
 administration aisée ;
 fonction d’audit évoluée ;
 indépendance entre les diverses bases, facilitant l’intégration de plusieurs
applicatifs dans une même instance ;
 une des bases les plus performantes sous Windows en configuration par
défaut ;
 langage T-SQL très convivial, intégration de CLR (Common Language
Runtime)
 gestion de l’indexation textuelle ;
 services Web et support XML ;
 ordonnanceur intégré ;
 compression des données et de sauvegardes.
Inconvénients
 distributions fortement liées au système d’exploitation ;
 mono-plateforme (MS Windows) ;
 pas de contraintes d’unicité multi null.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 46 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

2.2.2 Oracle DB

Oracle, édité par Oracle Corporation (qui édite également MySQL) est un SGBDR
payant.
Son coût élevé fait qu’il est principalement utilisé par des entreprises. Oracle gère très
bien de grands volumes de données. Il est inutile d’acheter une licence Oracle pour un
projet de petite taille, car les performances ne seront pas différentes de celles de
MySQL ou d’un autre SGBDR. Par contre, pour des projets conséquents (plusieurs
centaines de Go de données), Oracle sera bien plus performant. Par ailleurs, Oracle
dispose d’un langage procédural très puissant (du moins plus puissant que le langage
procédural de MySQL).

Avantages
 richesse fonctionnelle ;
 fonction d’audit évolué ;
 row Level Storage Security (RLSS) : permet de ne faire apparaître que
certaines lignes des tables pour un utilisateur/une application donnée.
 parallélisme, caches nommés, haute disponibilité ;
 gestion centralisée de plusieurs instances ;
 assistants performants via Oracle Manager Server, possibilité de gérer en
interne des tâches et des alarmes ;
 services web, support XML ;
 ordonnanceur intégré ;
 compression des données et des sauvegardes ;
 support technique Orion extrêmement riche et fourni.
Inconvénients
 administration complexe, liée à la richesse fonctionnelle ;
 méta-modèle propriétaire, loin de la norme ;
 prix élevé, tant au point de vue de licences que des composants matériels
(RAM, CPU) à fournir pour de bonnes performances ;
 gestion des verrous mortels mal conçue (suppression d’une commande
bloquante sans rollback) ;
 une quantité des bugs proportionnels à la richesse fonctionnelle, surtout
sur les dernières versions.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 47 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

2.2.3 MySQL

MySQL est un SGBDR qui utilise le langage SQL (Structured Query Language), et fait
partie des plus utilisés. Sa popularité est due en grande partie au fait qu’il s’agit d’un
logiciel Open Source, ce qui signifie que son code source est librement disponible et
que quiconque qui en ressent l’envie et/ou le besoin peut modifier MySQL pour
l’améliorer ou l’adapter à ses besoins. Une version gratuite de MySQL est par
conséquent disponible.

Avantages
 solution très courante en hébergement public ;
 très bonne intégration dans l’environnement Apache/PHP ;
 open Source, bien que les critères de licence soient de plus en plus
difficiles à supporter ;
 ordonnanceur et partitionnement dès la version 5.1 ;
 facilité de déploiement et de prise en main ;
 plusieurs moteurs de stockage adaptés aux différentes problématiques,
configurable au niveau table ;
 multi plate-forme Linux, Windows, OSX, Unix.
Inconvénients
 ne supporte qu’une faible partie des standards SQL-92 ;
 support incomplet des triggers et procédures stockées ;
 assez peu de richesse fonctionnelle ;
 pas d’héritage de table ;
 pas de vue matérialisée ;
 manque de robustesse avec fortes volumétries.

2.2.4 MS Access

MS Access ou Microsoft Access est un logiciel édité par Microsoft (comme son nom
l’indique…). Par conséquent, c’est un logiciel payant qui ne fonctionne que sous
Windows. Il n’est pas du tout adapté pour gérer un grand volume de données et a
beaucoup moins de fonctionnalités que les autres SGBDR. Son avantage principal est
l’interface graphique intuitive qui vient avec le logiciel.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 48 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Avantages
 grâce à son interface graphique complète, MS Access est idéal pour créer,
gérer et analyser rapidement des bases de données, mais aussi pour créer
facilement des rapports ;
 le programme est conçu pour tous les niveaux : débutants comme
utilisateurs avancés peuvent travailler sur MS Access. Grâce aux macros, il
est possible de combiner plusieurs commandes, comme automatiser
certaines tâches, sans connaissance en programmation ;
 manipulation facile et simple à apprendre ; l’assistance permet de
comprendre de nombreuses fonctionnalités ;
 il est possible de réaliser des bases de données sous forme d’application
en utilisant une application SharePoint Web ;
 nombreuses options d’export et d’import vers d’autres systèmes de
banques de données et vers MS Office grâce à ODBC ;
 très utilisé comme composant de Microsoft Office.

Inconvénients
 par rapport à un système de base de données fonctionnant sur le modèle
client-serveur, MS Access est plus instable, conçu pour traiter seulement
un certain volume de données et des requêtes spécifiques, et offre
beaucoup moins de fonctionnalités ;
 comme les informations d’une base de données sont enregistrées sur un
seul et même fichier, MS Access présente des capacités et des
performances limitées. Le traitement de gros fichiers ralentit
considérablement le programme et le rend assez instable (surtout à partir
de fichiers d’environ 1 GB). De plus, les fichiers ne peuvent excéder un
poids de 2 GB ;
 l’utilisation simultanée par plusieurs personnes n’est possible qu’avec un
programme additionnel, et assez limitée ;
 la performance baisse considérablement lorsque plusieurs utilisateurs ont
un accès simultané à la même base de données ;
 payant et disponible seulement sous Windows.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 49 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

2.3 Choix du SGBD

SGBD ORACLE SQL SERVER MySQL MS Access


Administration 4 3 2 1
Prix 2 1 4 2
Stockage 4 4 1 1
Performance 3 3 3 2
Total
Tableau 13/16
4 : Comparaison des SGBD 10/16 10/16 6/16

1 = insuffisant 2 = assez bien 3 = bien 4 = très bien

Le SGBD choisi est MySQL qui est un système de gestion de base de données en
langage SQL incorporant entre autres un SGBDR Libre. Il fonctionne sous les systèmes
d’exploitation Windows, Linux, Mac OS.
MySQL se distingue de la concurrence par une grande communauté contribuant à son
évolution et à faire aux défis fonctionnels de plus en plus évolutifs.
C’est aussi le plus populaire au monde avec sa vitesse supérieure, sa fiabilité et facilité
d’utilisation. Son point fort est d’être gratuit et peut être utilisé même par les
débutants du domaine.

III. CHOIX DU LANGAGES DE PROGRAMMATION

1. Définition

En informatique, un langage de programmation est une notation conventionnelle


destinée à formuler des algorithmes et produire des programmes informatiques qui les
appliquent. D’une manière similaire à une langue naturelle, un langage de
programmation est composé d’un alphabet, d’un vocabulaire, de règles de grammaire
et de significations.
Les langes de programmation permettent de décrire d’une part les structures des
données qui seront manipulées par l’appareil informatique, et d’autre part d’indiquer
comment sont effectuées les manipulations, selon quels algorithmes, ils servent de
moyens de communication par lesquels le programmeur communique avec
l’ordinateur, mais aussi avec d’autres programmeurs ; les programmes étant
d’ordinaire écrits, lus, compris et modifiés par une équipe de programmeurs.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 50 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

1.1 PHP

PHP acronyme de Personal Home Page (devenu par la suite Hypertext Preprocessor)
est un langage interprété créé au début de l’automne 1994 par Rasmus Lerdof, et qui
emprunte des concepts aux langages tels que le Perl ou le C. il est actuellement le
premier outil de conception de pages Web dynamiques.

Avantages
 la simplicité d’écriture de scripts ;
 la possibilité d’inclure le script PHP au sein d’une page HTML
(contrairement aux scripts CGI, pour les lesquels il faut écrire des lignes de
code pour affiche chaque ligne en langage HTML) ;
 la simplicité d’interfaçage avec de nombreux formats de bases de données
(Oracle, MySQL, dBase, etc…) ;
 l’intégration au sein de nombreux serveurs Web (Apache, Microsoft IIS,
Wamp, etc…) ;
 l’exécution du côté serveur ;
 la gratuité.
Inconvénients
 il est peu plus lent en exécution ;
 il permet la personnalisation qui causent des bugs ;
 pas facile à entretenir (peut-être les anciennes versions).

1.2 JAVA EE

J2EE (aujourd’hui appelé JEE – Java Enterprise Edition) est une spécification pour le
langage de programmation Java de Sun destinée aux applications d’entreprise. J2EE
offre une plateforme de développement et déploiement en langage Java pour les
applications distribuées à plusieurs niveaux. Il doit être traduit dans le langage de la
machine sur laquelle il doit fonctionner. Le compilateur Java traduit le code source
dans le langage de sa machine virtuelle, appelée JVM (Java Virtual Machine). Le code
produit est appelé « bytecode ». Ainsi, la JVM fait de Java, un langage multiplateforme.

Avantages
Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 51 | P a g e
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 la machine virtuelle de Java, la JVM, permet d’utiliser un même


programme Java sur une large gamme de plateformes. Théoriquement
sans changer une seule virgule au code ;
 java est largement implantée en entreprise ;
 java est compatible avec un vaste univers d’outils qui vous rendront la vie
très facile ;
 java est le langage de prédilection pour le développement natif
d’applications Android.
Inconvénients
 être un très bon développeur est requis : pour construire de bonnes
solutions, vous avez besoin de développeurs expérimentées et sachant ce
qu’ils font. Cela est particulièrement nécessaire lorsque vous construisez
des solutions à grande échelle ;
 courbe d’apprentissage pas si facile : il est relativement plus facile
d’apprendre PHP ou ASP.NET ;
 principalement utilisé dans les applications volumineuses : les
applications plus petites ne sont généralement pas conçues en Java.

1.3 ASP.NET

ASP.NET est une plateforme de développement d’applications qui permet aux


développeurs de dotnet de créer des sites Web Dynamiques, des applications et
d’autres programme similaires. Il a été développé par Microsoft et est également
maintenu par lui. En tant que technologie, ASP. NET est une plateforme de
programmation très riche et extensible. Il offre aux développeurs une tonne de
fonctionnalités à utiliser pour créer des programmes vraiment incroyables. Pour les
entreprises, ASP.NET ouvre un monde de possibilités. Les entreprises peuvent tirer
parti des applications construites avec ASP.NET. Ceux-ci comprennent différents type
d’applications d’entreprise pour rationaliser leurs opérations et sites Web Dynamiques
pour encourager une expérience remarquable pour leurs utilisateurs.

Avantages

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 52 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 microsoft ASP.NET est une plate-forme très robuste pour l’application


web ;
 fonctionne bien avec ASP ou C# ;
 erreur lors de la compilation ;
 il est livré avec beaucoup d’outils et de fonctionnalités pour soutenir les
programmeurs ;
 fonctionne très bien avec Windows
 excellente plate-forme pour les applications d’entreprise ;
 développement rapide avec beaucoup d’options pré-codées ;
 une excellente interface utilisateur pour les développeurs.
Inconvénients
 ASP. NET n’est pas une plate-forme open source ;
 pas facile à apprendre et difficile à comprendre ;
 petite communauté de soutien ;
 il fonctionne uniquement sur un serveur Microsoft ;
 il est légèrement cher en raison de sa licence Microsoft ;
 pas aussi bon que PHP pour le développement de site Web ;
 basé sur la technologie à source fermée.

2. Choix du langage

PHP JAVA EE ASP.NET


Popularité 4 4 3
Robustesse 1 4 3
Flexibilité 3 2 2
Mise en œuvre 3 3 2
Coût 4 3 2
Total 15/20 16/20 12/20

Tableau 5 : Comparaison des langages de programmation

1 = insuffisant 2 = assez bien 3 = bien 4 = très bien

A la suite de notre tableau de comparaison de langages, notre choix s’est porté d’une
part vers PHP qui est un langage des langages les plus utilisés en matière de
développement Web. Il est simple d’utilisation, facile à mettre en place et s’intègre
aisément.

IV. SERVEUR WEB

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 53 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

1. Définition
Un serveur web est spécifiquement un serveur multi-service utilisé pour publier des
sites Web sur Internet ou un Intranet. L’expression « serveur web » désigne également
le logiciel utilisé sur le serveur pour exécuter les requêtes HTPP, le protocole de
communication employé sur le Word Wide Web.
Un serveur Web diffuse également généralement des sites web, il peut contenir
d’autres services liés comme l’envoi d’email, du streaming, le transfert de fichiers par
FTP, etc.

1.1 Apache

Apache est le serveur le plus répandu sur Internet. Il s’agit d’une application
fonctionnant à la base sur les systèmes d’exploitation de type Unix, mais il a désormais
été porté sur de nombreux systèmes, dont Microsoft Windows.
Bien que nous appelions Apache un serveur web, ce n’est pas un serveur physique
mais plutôt un logiciel qui s’exécute sur un serveur. Son travail consiste à établir une
connexion entre un serveur et les navigateurs des visiteurs du site web (Firefox,
Google Chrome, etc.) tout en délivrant des fichiers entre eux (structure client-serveur).
Apache est hautement personnalisable, car il a une structure basée sur des modules.
Les modules permettent aux administrateurs de serveur d’activer ou de désactiver des
fonctionnalités supplémentaires. Apache possède des modules pour la sécurité, la
mise en cache, la réécriture d’URL, l’authentification par mot de passe et encore plus.
Vous pouvez également configurer vos propres configurations du serveur via un fichier
appelé .htaccess, qui est un fichier de configuration Apache.

Avantages
 open-source et gratuit même pour un usage commercial ;
 logiciel faible et stable ;
 mise à jour régulière, correctifs de sécurité réguliers ;
 flexible grâce à sa structure basée sur de modules ;
 plateforme-Cross (fonctionne sur les serveurs Unix et Windows) ;
 grande communauté et support disponible en cas de problème.
Inconvénients
 problèmes de performances sur les sites web avec un énorme trafic ;
 trop d’options de configuration peuvent mener à la vulnérabilité de la
sécurité ;
 gourmand en mémoire.

1.2 NGINX

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 54 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

NGINX, prononcé Engine-X, est une application récente de serveur web, lancée en
2002.
A ce jour, elle a acquis une certaine popularité auprès des propriétaires de sites web.
NGINX a été créé pour résoudre le problème appelé C10k, ce qui signifie qu’un serveur
web utilisant des fils pour gérer les demandes des utilisateurs ne peut pas gérer plus
de 10000 connexions simultanément.
NGINX dispose également d’un ensemble complet de fonctionnalités et peut effectuer
différents rôles de serveur :
- Un serveur proxy inverse pour le protocole http, HTTPS, SMTP, POP3 et IMAP
- Un équilibreur de charge et un cache http
- Un proxy de frontend pour apache et d’autres serveurs web, exemple la
combinaison entre la flexibilité d’Apache et la bonne performance de contenu
statique de NGINX.

Avantages
 fonction de load balancer virtuel : cela vous évite d’utiliser un load
balancer physique qui est plus difficile à gérer ;
 reconfiguration sans interruption de service : lorsque sa configuration
change, des nouvelles instances sont démarrées avant d’arrêter les
anciennes. Cela permet de conserver les connections avec les clients ;
 il est très léger ;
 il consomme moins de mémoire et de ressource ;
 fichier de configuration facile à utiliser ;
 il est asynchrone, permet donc de gérer un nombre important de trafic ;
 multiplateforme ;
 possibilité d’avoir 1000 connexions simultanées ;
 open Source, gratuit et stable.

Inconvénients
 faible documentation ;
 pas assez flexible dans sa gestion des modules ;
 configuration un peu complexe.

2. Choix du serveur web

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 55 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Apache Nginx
Sécurité 3 3
Performance 2 4
Flexibilité 4 2
Documentation 4 3
Support 3 3
Total 16/20 15/20

Tableau 6 : Comparaison Apache vs Nginx

1 = insuffisant 2 = assez bien 3 = bien 4 = très bien

Les deux serveurs Web, dans leurs dernières versions, peuvent rivaliser l’un avec
l’autre dans la plupart des domaines. Pour le contenu statique, NGINX est un Roi, mais
pour un contenu dynamique, la différence de performance est assez mince. Mais notre
choix se tournera vers Apache, compte tenu de sa flexibilité en matière de chargement
de modules et aussi pour sa parfaite documentation.

V. PRESENTATION DE QUELQUES FONCTIONALITES

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 56 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Nous allons découvrir comment notre application fonctionne et cela à travers


l’illustration de quelques écrans. Dans cette section, nous présentons quelques
captures écrans de notre application web, en indiquant l’utilité de chaque interface.

Interface authentification

Image 1. Interface de connexion


Description
Il s’agit de la première fenêtre qui s’affiche lorsqu’on lance l’application. Pour utiliser
cette application on doit entrer respectivement le login et mot de passe dans les
champs visibles. La page comporte boutons « Se connecter » qui permet de vous
mener jusqu’à la page d’accueil si les données entrées sont correctes. Dans le cas
contraire, un message d’erreur s’affiche pour interpeler l’utilisateur.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 57 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Image 2. Interface de connexion erreur compte utilisateur pas encore activé

Interface inscription

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 58 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Image 3. Interface d’inscription

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 59 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Description
Il s’agit de la fenêtre d’inscription. Pour la page d’inscription, l’utilisateur doit entrer
respectivement le login, l’email, le mot de passe et la confirmation du mot de passe
dans les champs visibles. La page comporte un bouton « S’inscrire » qui permet de
vous mener jusqu’à la page login si les données entrées sont correctes et le login du
l’utilisateur existe. Dans le cas contraire, un message d’erreur s’affiche pour interpeler
l’utilisateur.

Image 4. Erreur login utilisateur existe

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 60 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Espace Administrateur

Image 5. Interface d’accueil de l’Administrateur

Description
La page d’accueil représente un tableau de bord. Les informations de toute
l’application sont réunies sur cette page pour permettre à l’administrateur
d’avoir une idée générale. Les différentes rubriques sont dans le menu de
navigation, il s’agit de :

 gestion année académique ;


 gestion utilisateur ;
 gestion absence ;
 gestion étudiant ;
 gestion classe ;
 gestion filière ;
 gestion matière ;
 gestion parcours ;
 gestion convocation ;
 gestion absence excusée ;
 gestion bordereau.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 61 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

VI. DEPLOIEMENT DE L’APPLICATION

Pour le déploiement de notre application nous avons opté pour le server Wamp et
Windows server 2012 pour la configuration du serveur Apache.

1. Définition d’un serveur de base de données

Un serveur de base de données sert à stocker, à extraire et à gérer les données dans
une base de données. Il permet également de gérer la mise à jour des données. Il
donne un accès simultané à cette base à plusieurs serveurs Web et utilisateurs. Enfin, il
assure la sécurité et l’intégrité des données.

1.1 Server Wamp

WampServer est une plate-forme de développement Web sous Windows pour des
applications Web dynamiques à l’aide du serveur Apache2, du langage de scripts PHP
et d’une base de données MySQL. Parmi les autres composantes de cette plate-forme,
l’outil PhpMyAdmin qu’on utilisera dans la création et l’administration de notre base
de donnée.
WAMP signifie « Windows », « Apache », « MySQL » et « PHP ».

 côté serveur (Apache) ;


 base de donnée (MySQL) ;
 PHP.
Installation et configuration du Server Wamp

Pour l’installation du server Wamp, nous avons procédé comme suit :

 installez « Wampserver » en exécutant le fichier « wampserver2.5.exe »


 paramétrez la langue française
 cliquez droit sur l’icône « Wampserver » en bas à droite de la barre des tâches
 sélectionnez le dossier « Langue » puis « french »

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 62 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Modifiez les paramètres du fichier « php.ini »

 cliquez sur l’icône « Wampserver » en bas à droite de la barre des tâches


 sélectionnez le dossier « PHP » puis ouvrez le fichier « php.ini » dans
l’application « notepad »
 dans « notepad », sélectionnez le menu « Édition » puis « Rechercher »
 dans le formulaire « Rechercher », saisir :
« max_execution_time » puis augmentez la valeur de 30 à « 300 » secondes ;
« memory_limit » puis augmentez de 8M à « 180M » ;
« post_max_size » puis augmentez de 8M à « 120M » ;
« upload_max_filesize » puis augmentez de 2M à « 100M ».
 redémarrez WampServer
o cliquez sur l’icône « Wampserver » en bas à droite de la barre des tâches
o sélectionnez « Redémarrez les services »
o vérifiez que le serveur est sur la position « en ligne » (« Passer hors ligne »
affiché)

L’icône de « Wampmanager » dans la barre des tâches doit être de couleur verte.
Si ce n’est pas le cas, vous ne pourrez pas lancer la visualisation d’une page php par le
navigateur ou lancer PhpMyAdmin ou modifier config.inc.php.
« Serveur hors ligne » signifie que Wampserver est uniquement en local (sur votre PC).
« Serveur en ligne » signifie que Wampserver est connecté à votre réseau et que tous
les PC ou tablettes numériques appartenant à votre réseau (configurés sur la même
plage d’adresse IP) peuvent accéder à vos sites et à vos bases de données (à moins que
vous ayez effectué les modifications sécuritaires qui s’imposent).

2. PhpMyAdmin

phpMyAdmin (PMA) est une application Web de gestion pour les systèmes de gestion


de base de données MySQL réalisée principalement en PHP et distribuée sous
licence GNU GPL.

Création de la base de données


Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 63 | P a g e
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Pour la création de notre base de données, nous avons opté pour PhpMyAdmin.

Sécurité de MySQL

Par défaut, la plupart des serveurs WAMP sont fournis avec MySQL sans mot de
passe. Cela convient au développement, mais si vous souhaitez utiliser cela pour un
serveur public, vous devrez définir un mot de passe. Si vous utilisez le serveur WAMP,
procédez comme suit :

 cliquez avec le bouton gauche sur l'icône WAMP dans la barre d'état système ;
 sélectionnez MySQL | Console MySQL ;
 lorsque la fenêtre de la console est ouverte et vous invite à entrer un mot de
passe, appuyez sur Entrée ;
 a partir de la ligne de commande, entrez SET PASSWORD FOR root @ localhost =
PASSWORD ('password'); (mot de passe est le nouveau mot de passe à définir).
 appuyez sur Entrée ;
 si le changement de mot de passe est réussi, vous devriez voir Query OK. Fermez
la fenêtre de la console MySQL et essayez de l'ouvrir à nouveau. Cette fois-ci,

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 64 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

lorsque vous êtes invité à entrer un mot de passe, entrez le nouveau mot de
passe et vous devrez atterrir à l'invite de MySQL.

3. Serveur Apache

Un Serveur Apache ou Apache HTTP Server, est un logiciel de serveur HTTP produit par
l'Apache Software Foundation. C'est le serveur HTTP le plus populaire du Web. Apache
est connu pour prendre en charge de nombreux modules lui donnant des
fonctionnalités supplémentaires : interprétation du langage Perl, PHP, Python et Ruby,
serveur proxy, Common Gateway Interface, Server Side Includes, réécriture d'URL,
négociation de contenu, protocoles de communication additionnels, etc.

Configuration du Serveur Apache


 dans le fichier « httpd.conf »

Dans le chemin d’accès sur le disque local « C:\wamp\bin\apache\apache2.4.9\conf »

Etape 1 :

Ajout du processus d’écoute « Listen 80 »

Etape 2 :

Changer le contenu du « Directory »


<Directory ‘’C:/wamp/www/ « le nom de votre application »’’>
« Require all granted : c’est-à-dire l’accès est autorisé sans restriction »
« #Require all denied : L’accès est systématiquement refusé »
</Directory>

 dans les fichiers : « phpmyadmin,phpsysinfo,sqlbuddy,webgrid »

Dans le contenu du fichier « phpmyadmin »

<Directory "c:/wamp/apps/phpmyadmin4.1.14/">
<IfDefine APACHE24>
"Require all granted”
</IfDefine>
<IfDefine! APACHE24>
Order Deny,Allow
Allow from all
Allow from « l’adresse IP du poste serveur »

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 65 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

</IfDefine>
</Directory>

Dans le contenu du fichier « phpsysinfo »

Alias /phpmyadmin "c:/wamp/apps/phpmyadmin4.1.14/"


<Directory "c:/wamp/apps/phpmyadmin4.1.14/">
<IfDefine APACHE24>
"Require all granted”
</IfDefine>
<IfDefine! APACHE24>
Order Deny,Allow
Allow from all
Allow from « l’adresse IP du poste serveur »
</IfDefine>
</Directory>
---------------------------------------------------------------------------------------------------

Dans le contenu du fichier « sqlbuddy »

Alias /phpmyadmin "c:/wamp/apps/phpmyadmin4.1.14/"


<Directory "c:/wamp/apps/phpmyadmin4.1.14/">
<IfDefine APACHE24>
"Require all granted”
</IfDefine>
<IfDefine! APACHE24>
Order Deny,Allow
Allow from all
Allow from « l’adresse IP du poste serveur »
</IfDefine>
</Directory> 
--------------------------------------------------------------------------------------------------------------

Dans le contenu du fichier « webgrid »

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 66 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

<Directory "c:/wamp/apps/phpmyadmin4.1.14/">
<IfDefine APACHE24>
"Require all granted”
</IfDefine>
<IfDefine! APACHE24>
Order Deny,Allow
Allow from all
Allow from 192.168.32.100: l’adresse IP du poste serveur
</IfDefine>
</Directory>

Sécurisation du serveur Apache

Pour la sécurisation globale d’Apache s’effectue par la modification du fichier de


configuration « httpd.conf » à savoir :

 le port d’écoute ;
 le répertoire <Directory> </Directory> ;
 limitation des accès en interdisant ou autorisant des adresses IP ;
 redirection automatique vers HTTPS (HyperText Transport Protocol
Secure) si in visiteur arrive via HTTP (HyperText Transport Protocol)
Il suffit de modifier :
<VirtualHost « adresse IP : le port » >
Redirect /https://nom_du_site
</VirtualHost>

4 Diagramme de déploiement

4.1Présentation

Un diagramme de déploiement est une vue statique qui sert à représenter l’utilisation
de l’infrastructure physique par le système et la manière dont les composants du
système sont répartis ainsi que leurs relations entre eux. Les éléments utilisés par un
diagramme de déploiement sont principalement les nœuds, les composants, les
associations et les artefacts. Les caractéristiques des ressources matérielles physiques
et des supports de communication peuvent être précisées par stéréotype.

Les rubriques suivantes décrivent les éléments de modèle dans les diagrammes de
déploiement :

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 67 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 artefact : produit développé par le logiciel, symbolisé par un rectangle avec le


nom et le mot « artefact » entourés de flèches doubles.
 association : ligne indiquant un message ou tout autre type de
communication entre deux nœuds.
 composant : rectangle avec deux onglets indiquant un élément logiciel.
 interface : cercle qui indique une relation contractuelle. Les objets qui
réalisent l’interface doivent remplir une sorte d’obligation.
 nœud : élément matériel ou logiciel représenté par une boîte en relief.
 nœud conteneur : nœud qui en contient un autre, comme dans l’exemple ci-
dessous où les nœuds contiennent des composants.
 stéréotype : dispositif contenu dans le nœud, présenté dans la partie
supérieure du nœud et dont le nom est entouré de flèches doubles.

4.2Diagramme de déploiement de notre système

Le diagramme de déploiement est un diagramme UML qui montre la configuration


physique des différents éléments qui participent à l’exécution du système, ainsi que les
instances de composants qu’ils supportent. Il est constitué de « nœuds » connectés
par des liens physiques. Les principaux nœuds de notre diagramme de déploiement
sont :

Le Client : c’est le navigateur, il permet à un utilisateur d’accéder au serveur. En


d’autres termes, il sert d’interface à l’utilisateur.

Le serveur : C’est le serveur principal qui abrite les différents composants logiciels de
notre application. Ces composants sont entre autres :

 l’Application Web : l’application proprement dit qui est déployé sur le serveur
web.
 le Serveur Web : assure la gestion des connexions et des requêtes du client.
 la Base de données : c’est le composant qui s’occupe du stockage et de la
gestion des données.
 l’HyperText Transfer Protocol (HTTP, littéralement « protocole de
transfert hypertexte ») : est un protocole de communication client-serveur.
HTTP est un protocole de la couche application. Il peut fonctionner sur
n'importe quelle connexion fiable, dans les faits on utilise le
protocole TCP comme couche de transport. Un serveur HTTP utilise alors par
défaut le port 80.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 68 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 TCP (de l'anglais Transmission Control Protocol) et IP (de l'anglais Internet


Protocol) : est l'ensemble des protocoles utilisés pour le transfert des données
sur Internet.
 un Web Application Firewall (WAF) : est un type de pare-feu qui vérifie les
données des paquets afin de protéger la couche application du modèle OSI.

Les caractéristiques du WAF :

- prendre en charge les normes connues des principales menaces et de gérer les
menaces telles que OWASP (Open Web Application Security Project).
- vérifier l'entrée et la sortie des applications Web en fonction de la définition
des règles de sécurité et la mise en œuvre des opérations appropriées telles
que bloquer, autoriser, alerter et consigner les enregistrements, conformément
à la pratique acceptée.
- arrêter et révéler des informations importantes (prévention des fuites de
données).
- vérifier le contenu des pages Web telles que HTML, HTML dynamique, CSS ainsi
que des pages Web de protocoles de transfert tels que HTTP, HTTPS.
- vérifier tout protocole ou quelle construction de données utilise pour
transférer des données vers une application Web ou recevoir des données de
celle-ci
- prévenir les attaques et les accès non autorisés.
- Empêcher ou détecter la falsification de jetons de session, par exemple en
chiffrant des cookies de session, des champs de formulaire masqués ou en
utilisant d'autres méthodes pouvant être utilisées par ceux qui suivent la
session.
- possibilité de recevoir de nouvelles mises à jour et de demander une signature
dynamique et une manuelle.

La protection des WAFs face aux menaces liées aux applications web

Les WAFs constituent un mécanisme indispensable conçu pour empêcher certains


types d'attaques, tels que l'injection SQL. Une fois déployé, un WAF examine chaque
demande soumise à un système cible pour décider si elle est légitime ou malveillante.
Le WAF prend une décision en effectuant un contrôle d'accès en temps réel en se
basant sur les informations telles que les URL, les paramètres envoyés ainsi que
l'historique de session de l'utilisateur et en vérifiant si la valeur correspond ou non à
Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 69 | P a g e
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

un modèle d'attaque, en utilisant typiquement un ensemble de règles (par exemple,


des expressions régulières).

Exemple de WAF : Modsecurity


Les fonctions de configuration de Modesecurity

- SecFilterScanPost ON pour récupérer le payload des requêtes;


- SecFilterCheckURLEncoding ON permet de vérifier l'encodage URL des
requêtes ;
- SecAuditEngine ON enregistre toutes les requêtes HTTP dans un fichier de logs;
- SecAuditLog pour indiquer la localisation du fichier de logs ;
- SecFilterScanPOST autorise l'analyse des requêtes POST ;
- SecFilterDefaultAction "deny, log, status :403" rejette toutes les commandes
SERVEUR BDD

TCP/IP SERVEUR PRINCIPAL CLIENT

<<database>>
MySQL

<<Web application>>
gest-absence.php
HTTP/HTTPS <<exécutable>>
RESEAU LOCAL Navigateur
Déployer

<<web server>>
Apache
WAF

invalides avec un status 403 ;


- SecFilter "/bin/bash" interdit toutes requêtes contenant "/bin/bash".

Figure 14. Diagramme de déploiement

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 70 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

CONCLUSION
Au total, il convient de retenir que la réalisation de ce projet nous a été très bénéfique
puisse qu’elle nous a permis de renforcer les connaissances reçues de nos enseignants
au cours de notre formation, d’améliorer la connaissance d’un bon nombre de notions
en développement d’application mais aussi de nous familiariser à la vie entreprise.
Notre objectif initial était de concevoir et réaliser une application web pour combler
un déficit existant au service surveillance générale de PIGIER Côte d’Ivoire en terme de
gestion et de suivi des absences des étudiants.
Notre étude nous a permis, d’une étude préalable à parvenir à la réalisation de
l’application souhaitée. L’intérêt d’une telle demande est que permettra de faciliter le
travail des agents du dit service et d’optimiser leurs performances.
Cela dit, nous sommes conscient qu’aucune création humaine n’est parfaite. C’est
pourquoi nous restons convaincus que des aménagements sont nécessaires pour
l’améliorer.
Nos travaux constituent, par conséquence, un prémice qui pourrai servir de
fondements à d’autres.

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 71 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

BIBLIOGRAPHIE – WEBOGRAPHIE

BIBLIOGRAPHIE

Joseph Gabay, David Gabay, UML 2 analyse et conception, 2008, 242 pages.

WEBOGRAPHIE

 Laurent AUDIBERT, « UML », http://laurent-


audibert.developpez.com/Cours-UML, 31 octobre 2006
 Commentcamarche, « MERISE- Modèle logique des données »,
http://www.commentcamarche.net/contents/661-merise-modele-
logique-des-donnees, juin 2017
 Mémoireonline.com
 Openclassrooms, consultée le 13/09/2017, UML c’est quoi ? page web
https://openclassrooms.com/courses/debutez-l-analyse-logicielle-avec
-uml/uml-c-est-quoi

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 72 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

ANNEXES

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 73 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 74 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

ANNEXE 1 : Extrait de codes de l’application


 Codes pour l’enregistrement

<?php

//traitement Utilisateur

if ($_SERVER['REQUEST_METHOD'] == 'POST') {

$validationErrors = array();

$succesMsg = array();

$login = $_POST['login'];

$email = $_POST['email'];

$password = $_POST['password'];

$confirpass = $_POST['confirpass'];

if (isset($login)) {

$filtredLogin = filter_var($login, FILTER_SANITIZE_STRING);

if($login ==""){

$validationErrors[] = "!!! Veuillez saisir un login svp";

}elseif(strlen($filtredLogin) > 8) {

$validationErrors[] = "!!! Erreur de validation: Le login doit contenir au moins 8 caractères";

}elseif( !preg_match("/^[a-zA-Z0-9_]{3,16}$/", $_POST['login'])){

$validationErrors[] = "Votre login n'est pas valide";

}}

if (isset($password) && isset($confirpass)) {

if (empty($password)) {

$validationErrors[] = "!!! Erreur de validation: Le mot de passe ne doit pas être vide!";

if (sha1($password) !== sha1($confirpass)) {

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 75 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

$validationErrors[] = "!!! Erreur de validation: Les deux mots de passe ne sont pas
identiques";

if(strlen($password)<6){

$validationErrors[] = "!!! Le mot de passe est trop court";

if (isset($email)) {

$filtredEmail = filter_var($email, FILTER_SANITIZE_EMAIL);

if($email ==""){

$validationErrors[] = "!!! Le champ email est vide svp!";

}elseif(filter_var($filtredEmail, FILTER_VALIDATE_EMAIL) != true) {

$validationErrors[] = "!!! Erreur de validation: Email non valid!";

}elseif(!preg_match("/^[a-zA-Z0-9._]+@[a-zA-Z0-9._]+\.[a-zA-Z]{2,4}$/",$_POST['email'])){

$validationErrors[] = "!!! L'adresse email n'est pas valide svp!";

if (empty($validationErrors)) {

if (findUserByLogin($login) == 0 && findUserByEmail($email) == 0) {

$date= date("Y-m-d h:i:s");

$stmt = $con->prepare('INSERT INTO


utilisateur(login,email,password,role,etat,date_creation)

VALUES (:pLogin,:pEmail,:pPassword,:pRole,:pEtat,:pDatecreation)');

$stmt->execute(array(

'pLogin' => $login,

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 76 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

'pEmail' => $email,

'pPassword' => sha1($password),

'pRole' =>'VISITEUR',

'pEtat' =>0,

'pDatecreation' => $date)

);

$succesMsg [] = "!!! Félicitation , vous avez créer votre nouveau compte";

} else if(findUserByLogin($login) >0){

$validationErrors[] = '!!! Désolé ce login existe déja pour un autre compte';

}else if(findUserByEmail($email) >0){

$validationErrors[] = '!!! Désolé cet Email existe déja';

if(!empty($validationErrors)){

$_SESSION['validationErrors'] = $validationErrors;

$_SESSION['inputs'] = $_POST;

if(!empty($succesMsg)){

$_SESSION['succesMsg'] = 1;

header("refresh:5;url=login.php");

?>

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 77 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 Codes pour la modification

<?php

require_once('../bd/connexion.php');

$id=$_POST['id'];

$nbreabsence=$_POST['nbreabsence'];

$heuremodif=$_POST['heuremodif'];

$calculabsence= $_POST['nbreabsence'] - $_POST['heuremodif'];

$etatabsence=$_POST['etatabsence'];

$requete="UPDATE absence SET nbreabsence=?,absence_just=? WHERE


id_absence=?";

$param=array($calculabsence,$etatabsence,$id);

$succesMsg [] = "!!! Félicitation , l'absence' a été modifier avec succès";

$resultat = $con->prepare($requete);

$resultat->execute($param);

header("location:http://127.0.0.1/gestabsence/index.php?page=DetailAbsence");

?>

 Codes pour l’activation de compte

<?php

require_once('./bd/connexion.php');

if(isset($_GET['id_user']))

$id=$_GET['id_user'];

else

$id=0;

if(isset($_GET['etat']))

$etat=$_GET['etat'];

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 78 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

else

$etat=1;

$etat=$etat==1?0:1;

$requete="UPDATE utilisateur SET etat=$etat WHERE id_user=$id";

$resultat = $con->query($requete);

header("location:./index.php?page=listeutilisateur");

?>

ANNEXE 2 : Documents utilisés


 Fiche gestion des absences (Access 2003)

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 79 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 Fiche interface de l’application (Access 2003)

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 80 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 Fiche bordereau d’absence

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 81 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 Fiche formulaire étudiant (Access 2003)

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 82 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

 Fiche absence excusée

 Fiche dernière année étude


Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 83 | P a g e
CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 84 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

Tables des matières :


DEDICACE.................................................................................................................................................III
REMERCIEMENTS....................................................................................................................................IV
AVANT – PROPOS.....................................................................................................................................V
RESUME...................................................................................................................................................VI
ABSTRACT...............................................................................................................................................VII
FIGURES ET IMAGES..............................................................................................................................VIII
TABLEAUX................................................................................................................................................IX
SIGLES ET ABBREVIATIONS.......................................................................................................................X
INTRODUCTION........................................................................................................................................1
PREMIERE PARTIE : CADRE DE REFERENCE ....................................................................2
I. PRESENTATION DE L’ENTREPRISE.....................................................................................................3
1. HISTORIQUE......................................................................................................................................................................3
2. MISSIONS.........................................................................................................................................................................4
3. ORGANISATION..................................................................................................................................................................5
4. PRÉSENTATION DU SERVICE D’ACCUEIL : SURVEILLANCE GÉNÉRALE DE PIGIER.............................................................................6

II. PRESENTATION DU PROJET..............................................................................................................6


1. CONTEXTE........................................................................................................................................................................6
2. MOT CLÉS........................................................................................................................................................................6
3. PROBLÈMES......................................................................................................................................................................7
4. PROBLÉMATIQUE...............................................................................................................................................................7
5. OBJECTIFS DU PROJET.........................................................................................................................................................7

III. CHOIX DE LA METHODE D’ANALYSE.............................................................................................8


1. MÉTHODE MERISE...........................................................................................................................................................8
1.1 Les avantages du méthode MERISE...................................................................................................................11
1.2 Les inconvénients de la méthode MERISE..........................................................................................................11
2. MÉTHODE PROCESSUS UNIFIE (UML)..................................................................................................................................11
2.1 Les avantages du langage Unified Modeling Language (UML).........................................................................16
2.2 Les inconvénients du langage Unified Modeling Language (UML)...................................................................16
3. ANALYSE ET JUSTIFICATION DU CHOIX..................................................................................................................................16

DEUXIEME PARTIE : ETUDE PREALABLE ...........................................................................18


I. ETUDE DE L’EXISTANT.....................................................................................................................19
1. PRÉSENTATION DE L’EXISTANT............................................................................................................................................19
2. ANALYSE DE L’EXISTANT....................................................................................................................................................19

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 85 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

2.1. Objectifs et besoin des utilisateurs....................................................................................................................19


2.1.1. Présentation.................................................................................................................................................................. 19
2.1.2. Besoins.......................................................................................................................................................................... 19
2.2. Critique de l’existant..........................................................................................................................................20

II. PROPOSITIONS DE SOLUTIONS POSSIBLES....................................................................................20


TROISIEME PARTIE : ETUDE DETAILLEE DE LA SOLUTION ......................................22
I. DIAGRAMME ET DESCRIPTION DES CAS D’UTILISATION LES PLUS IMPORTANTS........................23
1. DIAGRAMME DE CAS D’UTILISATION....................................................................................................................................23
1.1. Définition............................................................................................................................................................23
1.2. Composition du diagramme de cas d’utilisation...............................................................................................23
2. LES ACTEURS DE NOTRE APPLICATION..................................................................................................................................24
3. PRÉSENTATION DU DIAGRAMME DE CAS D’UTILISATION..........................................................................................................25

II. IDENTIFICATION DES CLASSES ET DIAGRAMME DES CLASSES......................................................31


1. IDENTIFICATION DES CLASSES.............................................................................................................................................31
2. DIAGRAMME DE CLASSE....................................................................................................................................................32
2.1 Définition............................................................................................................................................................32
2.2 Composition du diagramme de classe...............................................................................................................32
3. PRÉSENTATION DU DIAGRAMME DE CLASSE..........................................................................................................................35

III. DIAGRAMMES DE SEQUENCE.....................................................................................................36


1. DIAGRAMME DE SÉQUENCES DU CU « S’AUTHENTIFIER ».....................................................................................................36
2. DIAGRAMMES DE SÉQUENCES DU CU « CONSULTER ABSENCES »...........................................................................................37
3. DIAGRAMMES DE SÉQUENCES DU CU « MODIFIER ABSENCE »................................................................................................38
4. DIAGRAMMES DE SÉQUENCE DU CU « AJOUTER ABSENCE ».................................................................................................39
5. DIAGRAMME DE SÉQUENCE DU CU « IMPRIMER LISTE, FICHE DE BORDEREAUX ET FICHE DE CONVOCATION ».................................40
6. DIAGRAMME DE SÉQUENCES DU CU « GÉNÉRER GRAPHE »..................................................................................................41

IV. DU MODELE OBJET AU MODELE RELATIONNEL.........................................................................42


1. DÉFINITION.....................................................................................................................................................................42
2. ELABORATION DU MLDR (MODÈLE LOGIQUE DE DONNÉES RELATIONNEL)...............................................................................42

V. MODELISATION PHYSIQUE DE DONNEES.......................................................................................43


1. DÉFINITION.....................................................................................................................................................................43
2. SCRIPT DE CRÉATION DE LA BASE DE DONNÉES......................................................................................................................43

QUATRIEME PARTIE : REALISATION .....................................................................................49


I. CAPTURE DES BESOINS TECHNIQUES.............................................................................................50
1. ORGANISATION DE L’APPLICATION EN COUCHES LOGICIELLES...................................................................................................50
1.1 La couche de présentation.................................................................................................................................50
1.2 La couche applicative.........................................................................................................................................50
1.3 La couche d’accès aux données.........................................................................................................................50

II. ENVIRONNEMENT DE DEVELOPPEMENT.......................................................................................52


1. SYSTÈMES D’EXPLOITATION................................................................................................................................................52
1.1 Présentation des systèmes d’exploitation.........................................................................................................53

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 86 | P a g e


CONCEPTION ET REALISATION D’UNE APPLICATION WEB DE GESTION ET DE SUIVI DES ABSENCES DES ETUDIANTS : CAS DE PIGIER CI

1.1.1 Windows....................................................................................................................................................................... 53
1.1.2 GNU/Linux..................................................................................................................................................................... 53
1.1.3 MAC OS......................................................................................................................................................................... 54
1.2 Choix du système d’exploitation........................................................................................................................55
2. SGBD........................................................................................................................................................................ 55
2.1 Définition............................................................................................................................................................55
2.2 Présentation.......................................................................................................................................................56
2.2.1 SQL SERVER................................................................................................................................................................... 56
2.2.2 Oracle DB....................................................................................................................................................................... 57
2.2.3 MySQL........................................................................................................................................................................... 58
2.2.4 MS Access...................................................................................................................................................................... 58
2.3 Choix du SGBD...................................................................................................................................................60

III. CHOIX DU LANGAGES DE PROGRAMMATION............................................................................60


1. DÉFINITION.....................................................................................................................................................................60
1.1 PHP.....................................................................................................................................................................61
1.2 JAVA EE..............................................................................................................................................................61
1.3 ASP.NET..............................................................................................................................................................62
2. CHOIX DU LANGAGE.........................................................................................................................................................63

IV. SERVEUR WEB..............................................................................................................................64


1. DÉFINITION.....................................................................................................................................................................64
1.1 Apache...............................................................................................................................................................64
1.2 NGINX.................................................................................................................................................................65
2. CHOIX DU SERVEUR WEB...................................................................................................................................................66

V. PRESENTATION DE QUELQUES FONCTIONALITES..........................................................................67


VI. DEPLOIEMENT DE L’APPLICATION..............................................................................................71
1. DÉFINITION D’UN SERVEUR DE BASE DE DONNÉES..................................................................................................................71
1.1 Server Wamp.....................................................................................................................................................71
2. PHPMYADMIN................................................................................................................................................................72
3. SERVEUR APACHE............................................................................................................................................................74
4 DIAGRAMME DE DÉPLOIEMENT........................................................................................................................................76
4.1 Présentation.......................................................................................................................................................76
4.2 Diagramme de déploiement de notre système.................................................................................................77

CONCLUSION..........................................................................................................................................80
BIBLIOGRAPHIE – WEBOGRAPHIE..........................................................................................................81
ANNEXES.............................................................................................................................................82
ANNEXE 1 : EXTRAIT DE CODES DE L’APPLICATION........................................................................................................................83
ANNEXE 2 : DOCUMENTS UTILISÉS............................................................................................................................................87

Assemien Ouake Serge Diplôme Master Génie Informatique & Réseaux 87 | P a g e

Vous aimerez peut-être aussi