Réalisation d’une application mobile pour la gestion ... · 4.1-Merise ... On a étudié le cas...
Transcript of Réalisation d’une application mobile pour la gestion ... · 4.1-Merise ... On a étudié le cas...
1
UNIVERSITE KASDI MERBAH OUARGLA Faculté des Nouvelles Technologies de l’Information et de la
Communication
Département d’Informatique et des Technologies de l’Information
Mémoire Licence ACADEMIQUE
Domaine : Mathématique et Informatique
Filière : Informatique Spécialité : Systéme Informatique
Présenté par : Kamassi Abdelghani
Begari Ahmed Said
Théme
Encadré par : Belal Khaldi
Année universitaire 2016/2017
Réalisation d’une application mobile pour la
gestion des séances pédagogiques
2
Table des matières
Résumé…………………………………………………………………………………………3
Introduction ................................................................................................................................ 3
1-Problématique ......................................................................................................................... 4
2-Notre solution .......................................................................................................................... 5
3-Conception .............................................................................................................................. 6
3.1-MCD…………..……………………………………………………………………….6
3.2-MLD…………………………………………………………………………...…........7
3.3-MOT…………………………………………………………………………………...8
4- Les outilles de travail ............................................................................................................. 9
4.1-Merise…………………………………………………………………………….......9
4.2-Android Studio………………………………………………………………………10
4.3-Wamp server…………………………………………………………………………11
5-Evaluation ............................................................................................................................. 12
Conclusion ................................................................................................................................ 16
Bibliographie ............................................................................................................................ 17
3
Résumé
La gestion pédagogique dans l’université propose un grand défi parce que est très difficile,
On a étudié le cas de la gestion des séances pédagogiques qui sont faite d’une façon manuelle
et peut prendre lent temps. Dans ce travail, nous présentons une solution informatique sous
forme d’une application mobile. Son utilisation permet de fait des opérations d’une façon
automatique, fiable et rapide.
Introduction
L’université est une établissement d’enseignements supérieurs qui a pour objectif
d’assurer une formation académique et professionnelle de haut niveau.
Toute fois, la gestion d’une telle institution s’avère une tache très délicate, en particulier, celle
de l’aspect pédagogique.
En effet, la gestion pédagogique des ressources humaines (enseignants, étudiants) et la
planification et le suivi des cours est particulièrement difficile.
Notamment a cause de fait qu’elle se fait actuellement de manière manuelle, ce qui
requiert un temps et des efforts considérables.
Ainsi, il devient alors nécessaire de faire appel a l’informatique a fin de trouver une
solution plus efficace qui garantit une meilleure organisation du travail pédagogique et qui
assure un bon suivi pédagogique. C’est dans ce contexte que nous proposons une application
mobile pour la gestion des séances pédagogique.
Ce rapport est constitué de trois sections ; dans la première, nous introduisons l’aspect
conception de notre système. La seconde est consacrée à la programmation. Dans la dernière,
nous présentons les résultats obtenus.
1-Problématique
Le domaine de la gestion prend beaucoup des efforts pour réaliser le
de service .en prend le cas d’université,
manuellement. Cette méthode
Le travail manuel exige beaucoup de temps
Les pertes des informations
L’absence de l’agent administratif q
Les changements
Fig. 1 illustre la procédure manuelle de la gestion des séances pédagogiques telles
qu’il est appliqué dans notre département.
Figure 1. Schéma du système de gestion des séances pédagogique manuellement
1 ére tâche
PROF3
PROF2
PROF1
verifier les salles et verifier la
présence de Prof
Le domaine de la gestion prend beaucoup des efforts pour réaliser le
en prend le cas d’université, la gestion pédagogique des séances
méthode a plusieurs problèmes tel que:
exige beaucoup de temps.
Les pertes des informations a cause du retard d’enregistrement.
L’absence de l’agent administratif qui peut vérifier la présence.
brusques des salles ou bien des séances.
illustre la procédure manuelle de la gestion des séances pédagogiques telles
qu’il est appliqué dans notre département.
système de gestion des séances pédagogique manuellement
2 iéme tâche1 ére tâche
PROF3
Agent Admin
verifier les salles et verifier la
présence de Prof
archiver les feuilles de présence dans une registre
4
Le domaine de la gestion prend beaucoup des efforts pour réaliser le avec bon qualité
séances qui a faite
retard d’enregistrement.
présence.
illustre la procédure manuelle de la gestion des séances pédagogiques telles
système de gestion des séances pédagogique manuellement.
Chef De Département
5
2-Notre Solution
A partir d’une analyse qu’on a fait plus tôt sur le système existant .ce système
comporte plusieurs problèmes, On a réfléchi de proposer une solution plus sophistiqué.
Alors notre système est une réalisation informatisée sous forme d’une application
mobile sur les appareils mobiles (smart phone). L’application prend deux versions.
La version installée sur les appareils des enseignants, et une autre version installée sur les
appareils des agents administratifs .
Les deux versions font les opération de réceptions et de l’émission des informations avec le
serveur pour obtenir les détails des séances et la mise a jour de la base de données qui été
dans le serveur.
Les applications mobile vérifient périodiquement de l’existence des mises a jour sur la base
de données via des requêtes et puis, le système notifie les utilisateurs.
Fig. 2 illustre la procédure automatique de la gestion des séances pédagogiques telles qu’il
est appliqué dans notre département.
Figure 2. Schéma de système de gestion de séance pédagogique automatique.
Accés a la base de données
Validation de base de données
L'écange de
données
L'échange de
données
Lien réseau
Lien réseau
Lien réseau
Lien réseau
Lien réseau
Reseau_1
appareil prof1
appareil prof2
appareil prof3
appareille Agent Admin
PosteTravail de chef de
département
:BaseDonnees_1
ServeurWeb
6
3-Conception
Cette partie est la plus importante pour chaque cycle de vie d’un programme ou d’un logiciel
qui comporte tout les vues de système.
La conception gère et dirige le travail d’équipe de bonne façon .et il réduit le temps de
production.
La conception utilise différentes méthodes et langage de modélisation parmi ce méthodes on
a la méthode merise qui il est expliquée plus tôt.
3.1-(Modèle Conceptuel des Données)
Il définit la notion d’entité, relation, propriété et cardinalité entre les entités (nombre de fois
pour faire une relation).
Étude préliminaire :
1. Chaque séance peut faite dans une salle no occupé par un professeur avec un groupe
dans une date précis et en temps précis.
2. On ne peut pas faire plus d’un seule séance dans une salle a la même temps.
3. Le professeur peut faire un ou plusieurs séances.
4. Un groupe peut étudier un ou plusieurs séances.
5. Un groupe peut étudier un ou plusieurs modules.
6. Une salle peut être occupée par un ou plusieurs groupes.
7
3.2-MLD (Modèle Logique des Données) Les tables de notre MCD sont :
o Table_Professeur (code_prof, nom, prénom, username, password, état_prof)
o Table_Groupe (code gr, type_gr(section, groupe_td, groupe_tp))
o Table_Etudier ( #code_gr , #code_mod )
o Table_Classe (code_sal, type_sal (labo, salleTd, Amphi), num_sal, état_sal)
o Table_Module (code_mod)
o Table_Séance_a_faire(code_séa, date_sea,temp_debut,temp_fin)
o Table_Séance_réalisable(code_réalis,#code_prof,#code_gr,#code_sal,#code_s
éa, date_actual, code_séa, t_debut, t_fin)
1,n
1,n
1,n
1,n
1,n
1,n
Professeur
code_profnomprenomusernamepassword
Caractère variable (50)Caractère variable (100)Caractère variable (100)Caractère variable (100)Caractère variable (100)
code_prof...
<pi>
Salle
code_salletype
Caractère variable (50)Texte
code_salle...
<pi>
Module
code_mod Caractère variable (50)
code_mod...
<ai1>
Séance_a_faire
code_séadate_nametemp_debuttemp_fin
Caractère variable (50)Caractère variable (20)Caractère variable (20)Caractère variable (20)
code_séa...
<ai1>
Séance_réalisable
code_realdatet_debut_actt_fin_act
Caractère variable (50)DateHeure<Indéfini>
Groupe
code_grtype_gr
Caractère variable (50)Caractère variable (50)
étudier
Figure 3. Le MCD correspondante a notre système.
3.4-MOT (Modèle Organisationnel des
Figure 4 illustre le modèle organisationnel de traitement de notre système.
Figure 4.
rganisationnel des Traitements)
Figure 4 illustre le modèle organisationnel de traitement de notre système.
Figure 4. Le Modèle Organisationnel des Traitements.
8
9
4-Les outils utilisés dans ce travail
Les outils utilisés pour la réalisation de ce système sont : Merise, Android Studio, Wamp
server.
4.1- Merise
Est une méthode d’analyse et de conception et de développement des systèmes
d’information, qu’il comporte trois niveaux sont : niveaux conceptuel (MCD, MCT), niveaux
logique et organisationnel (MLD, MLT), et niveaux physique (MPD, MPT) . [1]
a. MCD (Modèle Conceptuel de données) : il représente l’ensemble de données
manipulées dans le système étudié et leurs relations (vision statique du système
d’information).
b. MOT (Modèle Organisationnel de Traitement) : Issu du MCT, il décrit comment les
procédures de traitements seront réalisées, par qui et quand.
c. MLD Modèle Logique de données): Il prend le MCD en lui appliquant un type de
saturation des données réseau ou hiérarchique, proche de l’outil qui servira a
l’automatisation.
10
4.2 -Android Studio
Android est un système d'exploitation mobile open source, basé sur le noyau Linux et
développé actuellement par Google. Le système a d'abord été conçu pour les Smartphones et
tablettes tactiles, puis s'est diversifié dans les objets connectés et ordinateurs comme les
télévisions (Android TV), les voitures (Android Auto), les ordinateurs (Android-x86) et les
Smartwatch (Android Wear). Le système a été lancé en juin 2007 à la suite du rachat par
Google en 2005 de la startup du même nom. En 2015, Android est le système d'exploitation le
plus utilisé dans le monde avec plus de 80 % de parts de marché dans les Smartphones. [2]
Android Studio est un nouvel environnement pour développement et programmation
entièrement intégré qui a été récemment lancé par Google pour les systèmes Android. Il a été
conçu pour fournir un environnement de développement et une alternative à Eclipse qui est
l'IDE le plus utilisé.
Android Studio permet de voir chacun des changements visuels que vous effectuez sur votre
application et en temps réel, vous pourrez voir aussi son effet sur différents appareils Android,
chacune avec différentes configurations et configurations simultanément.
Une autre fonctionnalité d'Android Studio sans les outils pour la compilation et la
labellisation des codes. Elle vous permet de les garder en haut du projet surtout lorsque vous
avez un grand nombre de codes à écrire.
En plus, ce nouvel environnement intègre Google Cloud Messaging, une fonctionnalité qui
vous permettra d'envoyer des données d'un serveur vers un appareil Android en utilisant le
cloud, la meilleure façon pour envoyer des notifications en Push vers vos applications.
Android Studio offre aussi d'autres choses:
Un environnement de développement robuste.
Une manière simple pour tester les performances sur d'autres types d'appareils.
Un éditeur complet avec une panoplie d'outils pour accélérer le développement de
votre application.[3]
11
4.3-Wamp Server (PHP, MySQL, Apache)
Wamp server est ce qu'on pourrait appeler un serveur web local pour windows. Par abus de
langage, Wamp server (auparavant nommé WAMP5) est souvent désigné par WAMP.
Acronyme signifiant « Windows Apache MySQL PHP (dans la majorité des cas mais aussi
parfois, « Perl » ou « Python ») », il comprend un programme destiné à se comporter comme
un serveur web sur votre ordinateur.
Lorsque vous demandez à votre navigateur (comme Firefox, IE8, Chrome ou Opera par
exemple) d'afficher une page web, celui-ci envoie une requête au serveur possédant cette page
qui le lui envoie. Wamp server se comporte exactement de la même manière sauf qu'il se
trouve directement sur votre machine. Il y a donc aucune information transmise sur l'extérieur
et vous pouvez donc tester votre site sans même avoir un hébergement ni même accès à
internet ! C'est comme s'il se trouvait en ligne sur le web ![4]
a. PHP :PHP est un langage Server Side ou côté serveur. Lors du chargement d'une page
PHP, c'est le serveur qui va lire, interpréter et exécuter le code. Puis il renvoie le
résultat, généralement sous la forme de code HTML au navigateur. Ainsi le navigateur
et l'utilisateur ne voient jamais le véritable code PHP exécuté. De plus le résultat étant
une page web classique en HTML, pas besoin d'installer sur le client des composants
spécifiques (java, ...). Il n'y a donc pas de notion de vitesse d'exécution du côté du
client, mais celle du serveur est prépondérante. [5]
b. MySQL : MySQL est donc un Système de Gestion de Bases de Données
Relationnelles, qui utilise le langage SQL. C'est un des SGBDR les plus utilisés. Sa
popularité est due en grande partie au fait qu'il s'agit d'un logiciel Open Source.[6]
c. Apache : Le logiciel Apache est un serveur HTTP en Open Source utilisé
principalement sur les hébergements Internet en Linux, bien qu'il soit également
utilisable en Windows (concurrent de Internet Information Service - IIs), Unix ou OS
X. C'est actuellement le plus utilisé sur le WEB. Différentes fonctionnalités sont
implantées comme la possibilité d'utiliser un seul serveur Internet pour héberger
plusieurs sites, l'utilisation des langages interprétés Perl, PHP et Python, sauvegarde
des accès dans un fichier log (statistiques), Htaccess pour la protection des répertoires
et l'URL-Rewriting, …[7]
12
5-Evaluation de système Notre application a deux versions qui réagissent avec la base de données sous le serveur pour
l’émission et la réception des informations. Le système contient deux scénarios :
5.1-Scénario 1
C’est le scénario de l’application qui a dans l’appareil de professeur, il passe par les
étapes suivantes :
1. Le prof après le premier installation de l’application peut voire page de login
qui contient deux zones de saisie un pour le nom d’utilisateur et l’autre pour le
mot de passe .
2. si le prof n’est pas enregistrer click le lien signup pour aller a la page
d’inscription qui comprend quatre zones de saisie pour le nom et le prénom,
nom d’utilisateur et mot de passe.
3. Une fois l’inscription est terminé, il le retourne a la page de login, puis il saisit
les informations correctes et il cliquera le Botton login.
4. Après la stabilisation de connexion, l’application envoie la requête au serveur
avec le protocole http.
5. Le serveur reçoit les informations et les vérifie de ce dernier dans la base de
données a partir de script PHP qui peut accéder aux tables puis il retourne la
réponse.
6. Le serveur peut envoyer le réponse a l’application.
7. L’application vérifie l’exactitude des informations puis il entre au profil
d’affichage de séance actuelle sinon il signale au prof pour saisie les
informations correctes.
8. Après l’entrer au page officiel, un service peut vérifier chaque 5 ou 10 minute
l’existence de séances précise pour chaque prof et envoyer un notification au
prof.
13
Il y a trois fenêtres pour l’appareil de l’enseignant.
(a) (b)
(c)
Figure 5. les fenêtres qu’il vont afficher pour le prof. (a) Page de login, (b) page de registration, (c) page de profil de prof .
Si il y a un problème dans l’application de professeur (la connexion, technique) ou le prof
n’aime pas l’application on utilise l’autre scénario
14
5.2-Scénario 2
Ce scénario est pour l’agent administratif qui peut remplacer l’application de prof en
d’erreur .il passe par les étapes suivantes :
1. L’agent connecte avec son appareil au même réseau de serveur puis entre a
l’application.
2. Il clique sur un des bottons Aujourd’hui ou Maintenant
3. Si on clique sur le Botton Aujourd’hui l’application envoyer une requête au serveur
pour sélectionner tous les séances de ce jour-la
4. Si on clique sur le Botton Maintenant (Now) l’application envoyer une requête au
serveur pour sélectionner tous les séances du temps courant.
5. Si on entre a la page des séances courantes on peut coché les séances qui ont réalisées.
6. L’application sauvegarde les mises a jour sur une base de données locale sur
l’appareil.
7. A la fin de ce jour –la l’agent clique une Botton pour envoyer les informations au
serveur pour mise a jour de base de données (la table des séances réalisable).
15
(a) (b)
(c)
Figure 6.Les fenêtres qu’elles vont afficher pour l’agent administratif. (a) page d’accueil , (b) page de toutes les séance et (c) page des séances actuelles.
16
Conclusion :
La gestion des séances pédagogique est une grande défi dans le cadre de l’université
.Il peut prendre un long temps a cause du travail manuelle, ce dernier est difficile pour
mettre a jour un propre manipulation des informations.
Alors on veut une bonne solution automatisée en appliquant l’informatique. un bonne
gestion automatique de la base de données peut voire dans la nouveau système
proposé qui lui donne les avantages suivants :
La bonne gestion d’affectation des salles.
réduction des opérations manuelles.
Eviter le perte d’information le plus que possible.
Faire des opérations de façon rapide.
A cause du temps on laisse quelques fonctionnalités qui n’ont pas réalisées
comme :
La généralisation de ce système pour tout le département.
La gestion des séances compensatoire.
La gestion des séances ont fait au dehors du département.
Pour les perspectives on doit intégrer des nouvelles technologies comme firebase et
GCM (Google Cloud messaging) pour améliorer la performance de notre système.
17
Bibliographie
[1] : Drifa SEBA. MERISE Concepts et mise en ouvre. Ed EDI-Septembre 2003
[2] : Ben mir Abdelkader, cours de 3 ieme années "Application Mobiles : Systèmes
d'exploitation mobile", mai 2017
[3] : https://android-studio.fr.uptodown.com/windows 15/05/2017
[4] : https://craym.eu/tutoriels/developpement/site_local_avec_wamp.html 15/05/2017
[5] : Sébastien ROHAUT. Cours PHP 23/06/2006
[6] :Chantal Gribaumont(Taguan).Adminstrez vos bases de données avec MySQL.BY-NC-
SA 2.0 Dernière mise a jour 05 /10/2012
[7] : http://www.materiel-informatique.be/apache.php 15/05/2017