DEDICACES
A la famille HAMADOU Wadjiri
REMERCIEMENTS
Nous rendons infiniment grâce à ALLAH tout
puissant qui a permis la réalisation de ce travail.
Au terme de ce travail, nous tenons à exprimer notre
profonde gratitude envers tous ceux qui ont contribué de près ou
de loin à sa réalisation.
Nos remerciements vont particulièrement
à :
· Pr. ALI Ahmed, Directeur de l'Institut Universitaire de
Technologie de Ngaoundéré ;
· Dr. YENKE Blaise Omer, Chef du département
Informatique de l'Institut Universitaire de Technologie de
Ngaoundéré ;
· Dr. NLONG II Jean Michel, Enseignant à la
Faculté des Sciences de l'université de
Ngaoundéré ;
· M.DANGBE Ezékiel, Enseignant à l'Institut
Universitaire de Technologie de Ngaoundéré ;
· Dr DAYANG Paul,Enseignant à la Faculté
des Sciences de l'université de Ngaoundéré ;
· M. NDAM NJOYA Arouna,Enseignant à l'Institut
Universitaire de Technologie de Ngaoundéré ;
· M.ABBOUBAKAR Hamadjam, Enseignant à l'Institut
Universitaire de Technologie de Ngaoundéré ;
· M. FENDJI KEDIENG EBONGUE Jean-Louis,Enseignant
à l'Institut Universitaire de Technologie de
Ngaoundéré ;
· M. MENGUE Constantin, Chef de Service de la Formation
Permanente et des Relations avec les milieux professionnels de l'Institut
Universitaire de Technologie de Ngaoundéré ;
· M. SINTAD Gilbert,
Commandant de l'aérodrome de Garoua ;
· M. METINOU François Clovis, chef unité
MIRE de l'ASECNA-Garoua ;
· M. KONTCHOU TCHUISSI Oscar Joël, cadre CNS &
Météo de l'ASECNA-Garoua ;
· Tout le personnel de L'Institut Universitaire de
Technologie de Ngaoundéré ;
· Tous mes amis et camarades de promotion.
PRESENTATION DE L'ENTREPRISE
I. Historique
Le 12 décembre 1959 à Saint-Louis au
Sénégal, les Chefs d'Etat et de Gouvernement des Etats autonomes
issus des ex-Fédérations de l'Afrique équatoriale
française (AEF), de l'Afrique Occidentale française (AOF) et de
Madagascar signent la Convention qui va donner naissance à l'Agence pour
la Sécurité de la Navigation Aérienne en Afrique et
à Madagascar (ASECNA), laquelle comprend aujourd'hui 17 Etats membres
africains et la France et ayant son siège à Dakar.
Le motif de cette création est d'éviter le
morcèlement de l'espace aérien à l'heure où les
avions commençaient à aller de plus en plus vite, de plus en plus
haut et de plus en plus loin. Dans ce cadre naquit une activité
coûteuse dont l'objectif et d'assurer la sécurité de la
navigation aérienne, d'unir les moyens financiers, les capacités
matérielles et humaines afin de parvenir au meilleur coût ; enfin,
pour les jeunes Etats, de réaliser ensemble quelque chose de grand,
d'oeuvrer en commun au même but.
Parlant de son efficacité, au fil d'une africanisation
nécessaire et souhaitable du personnel, et avec la signature d'une
nouvelle convention à Dakar redéfinissant la vocation de
l'Agence, ses statuts et son organisation (1974), ASECNA s'est
transformée pour s'adapter au nouveau contexte politique et
économique, devenant ainsi un modèle en matière de
coopération Inter-Etats africains et l'un des leaders du
développement en Afrique des technologies de navigation par satellites
et de gestion du trafic -Communications, Navigation, Surveillance / Air Traffic
Management (CNS/ATM). Aujourd'hui, à l'heure de la formation des agents
aux technologies innovantes, l'esprit qui a présidé à la
création de l'ASECNA en 1959 reste le même : placé sous le
signe de l'efficacité, de la solidarité africaine et de la
coopération, il ne vise qu'à l'entente cordiale avec les usagers
et leur sécurité optimale.
Forte d'une expérience profondément
enracinée dans l'histoire, l'ASECNA a donc tous les atouts en main pour
aborder dans les meilleures conditions l'aviation civile du XXIème
siècle avec toujours une exigence constante de qualité au service
de la sécurité aérienne.
II. Situation
géographique de l'entreprise
ASECNA-GAROUA se trouve à Garoua dans le
département de la Bénoué dans la région du nord
Cameroun. Elle se situe plus exactement au niveau de l'aéroport
international de Garoua dans le quartier dit
« Ngalbidjé » à environ 500m du
lieu-dit «CARREFOUR AEROPORT ».
Le plan d'accès est présenté à
l'Annexe A1.
III. Secteur d'activité
Régie par la Convention de Dakar du 25 octobre
1974, l'ASECNA exerce à titre principal les activités
communautaires prévues en son Article 2 et, à titre subsidiaire,
gère les activités nationales au bénéfice des Etats
membres pris individuellement (Articles 10 et 12) ainsi que des Etats et
organismes tiers (Articles 11 et 12). Conformément à l'article 2
de la Convention de Dakar, l'Agence est chargée de la conception, de la
réalisation et de la gestion des installations et services ayant pour
objet la transmission des messages techniques et de trafic, le guidage des
aéronefs, le contrôle de la circulation aérienne,
l'information en vol, la prévision et la transmission des informations
dans le domaine météorologique, aussi bien pour la circulation en
route que pour l'approche et l'atterrissage sur les aérodromes
communautaires.
IV. Structure et
organisation de l'entreprise
IV.1 Structure de l'entreprise
L'aérodrome de
Garoua est organisé comme suit :
§ Le Commandant de
l'aérodrome : nommé par la Direction générale,
il est à la tête de l'aérodrome dont il a pour rôle
de gérer et coordonner les activités des services qui sont sous
sa tutelle.
§ Le service MIRE : le service de
Maintenance Infrastructure Radio Electrique assure au quotidien la maintenance
préventive et curative des équipements d'aide à la
navigation, de balisage de piste, de la centrale électrique, et du
matériel de communication. Il a à sa tête un chef de
service qui assure la coordination des travaux.
§ Le service MIGC : le service de
Maintenance Infrastructure Génie Civil est un service d'appui ayant
à sa tête un chef de service. Il est subdivisé en trois
bureaux qui sont : le BPV (Bâtiments Piste Voirie),
Méthodologie maintenance et le garage.
§ Le service SSLI : le service de
Sauvetage Sécurité et Lutte contre Incendie assure la
sécurité incendie des aéronefs au sol et
particulièrement lors de l'atterrissage.
§ Le service METEO : ce service a
à tête un chef de service assisté par le chef du centre
météorologique principale. Son rôle est de transmettre les
informations météorologiques aux usagers de l'air. Pour ce faire
les observateurs météos assurent au quotidien la collecte et la
détermination à partir des calculs minutieux de ces
informations ;
§ Le service CA : le service
duContrôle Aérienassure la surveillance et le contrôle du
trafic aérien. Il regroupe en son sein la tour de contrôle, le
service AIM (Aeronautic Information Management) et le Bureau de Contrôle
de Transmission (BCT).
IV.2 Organisation hiérarchique
ASECNA-GAROUA compte 66 employés dont l'organigramme
hiérarchique est présenté à l'Annexe A2.
V. Adresse complète de
l'entreprise
Pour entrer en contact avec l'ASECNA de Garoua, il est
possible de se rendre dans ses locaux ou alors d'utiliser les informations de
contact suivant :
- Tel: (237) 22 27 13 02 / 22 27 13 67
- Fax: (237) 22 27 13 67
- BP 105-GAROUA(CAMEROUN)
- Site web :
www.asecna.aero ;
- ADC GAROUA- BP. 987 GAROUA
- Tél : (237) 22 27 23 46- Fax : (237) 22 27 33
70
SOMMAIRE
DEDICACES
Erreur ! Signet non
défini.
REMERCIEMENTS
ii
PRESENTATION DE L'ENTREPRISE
iii
I. Historique
iii
II. Situation géographique de
l'entreprise
iv
III. Secteur d'activité
iv
IV. Structure et organisation de
l'entreprise
iv
IV.1 Structure de l'entreprise
iv
IV.2 Organisation hiérarchique
v
V. Adresse complète de
l'entreprise
vi
SOMMAIRE
vii
TABLE DES FIGURES
ix
LISTE DES TABLEAUX
x
LISTE DES ABBREVIATIONS
xi
AVANT-PROPOS
xii
RESUME
xiii
INTRODUCTION GENERALE
1
CHAPITRE I : PROBLEME DE LA GESTION
DES STAGIAIRES ET EXPRESSION DES BESOINS
2
I. Les généralités sur
la gestion des stagiaires
2
I.1 Définition
2
I.2 Problèmes de gestion des
stagiaires
2
I.3 Principaux type d'acteurs d'un
système
3
II. Spécification du sujet
3
II.1 Etude et Critique de l'existant
3
II.2 Délimitation du Champ
D'études
3
II.3 Solutions apportées
4
CHAPITRE II : ANALYSE ET
CONCEPTION
5
I. Langage et méthode de
modélisation
5
I.1 Langage
5
I.2 Méthode
6
II. Modélisation du
système
9
II.1 Modélisation métier
9
II.2 Analyse fonctionnelle
10
II.3 Analyse statique
19
II.4 Analyse dynamique
25
CHAPITRE III : IMPLEMENTATION ET
TEST
30
I. Implémentation du
système
30
I.1 Environnement de développement
30
I.2 Présentation des outils
utilisés
33
II. TESTS
34
II.1 Formulaire de connexion des
utilisateurs
35
II.2 Page d'accueil de SIGESTAG
35
II.3 Formulaire d'inscription
36
II.4 Formulaire pour poser un
problème
36
II.5 Formulaire de profil stagiaire et de
traçage de stages
37
II.6 Formulaire pour générer
la liste des stagiaires au format PDF
38
II.7 Formulaire pour générer
la carte de stagiaire au format PDF
39
CONCLUSION ET PERSPECTIVES
41
REFERENCES BIBLIOGRAPHIQUES
42
ANNEXES
43
TABLE DES FIGURES
Figure 1 : Les Diagrammes UML par axes de
modélisation
3
Figure 2 : Schéma d'ensemble de la
démarche UP7
8
Figure 3 : Schéma de contexte statique
du système
10
Figure 4 : Le diagramme de cas d'utilisation
de notre système
12
Figure 5 : Diagramme de classes
25
Figure 6 : Diagramme de séquence
connexion compte
27
Figure 7: Diagramme de séquence
inscription
28
Figure 8 : Diagramme de séquence
recherche
29
Figure 9 : formulaire de connexion
utilisateur
35
Figure 10 : page d'accueil de SIGESTAG
35
Figure 11 : formulaire d'inscription d'un
stagiaire
36
Figure 12 : formulaire pour poser un
problème
37
Figure 13: liste des stagiaires
39
Figure 14: carte de stagiaire
40
LISTE DES TABLEAUX
Tableau 1 : description textuelle du cas
d'utilisation Ajouter stagiaire
3
Tableau 2 : Description textuelle du cas
d'utilisation Connexion
15
Tableau 3 : Description textuelle du cas
d'utilisation Ajouter stage
16
Tableau 4 : Description textuelle du cas
d'utilisation Modifier stagiaire
17
Tableau 5 : description textuelle du cas
d'utilisation Rechercher stagiaire
18
Tableau 6 : description textuelle du cas
d'utilisation Imprimer carte stagiaire
19
Tableau 7 : différents sortes de
cardinalités
21
Tableau 8 : Dictionnaires des données
24
Tableau 9: Elément du diagramme de
séquence
26
LISTE DES ABBREVIATIONS
ASECNA : Agence pour la Sécurité de la
Navigation Aérienne ;
SIGESTAG : Système Informatique de Gestion des
Stagiaires d'ASECNA-GAROUA ;
UML: Unified Modelling Language;
UP: Unified Process;
SGBD: Système de Gestion de Base de Données;
IUT: Institut Universitaire de Technologie ;
ENSAI : Ecole Nationale des Sciences
Agro-Industrielles ;
CA : Contrôle Aérien ;
MIRE : Maintenance des Infrastructures Radio
Electriques ;
MIGC: Maintenance des Infrastructures Génie
Civil ;
SLI: Sécurité et Lutte contre
l'Incendie ;
MTO: Unité Météo ;
AIM: Aeronautic Information Management
BPV: Bâtiments Piste Voirie
BCT: Bureau du contrôle de la transmission
TWR :Tower
AVANT-PROPOS
L'Institut Universitaire de Technologie de
Ngaoundéré (I.U.T)forme des techniciens et des ingénieurs
de travaux dans différentes filières : le génie
informatique, le génie biologie et le génie industriel et
maintenance.
Conformément aux objectifs visés par cette
école de formation dont la durée est de trois ans, les
étudiants doivent effectuer un stage en entreprise à la fin de
chaque année académique. Ceci dans l'intérêt de
faire appliquer les connaissances acquises à l'école. Le stage de
première année d'une durée minimum d'un mois est un stage
d'imprégnation pour l'étudiant qui découvre l'entreprise
en tant qu'ouvrier. Quant au stage de fin d'études D.U.T
(Diplôme Universitaire de
Technologie), c'est un stage d'agent de maîtrise pour
l'étudiant qui doit résoudre un problème concret
posé par l'entreprise d'accueil se rapportant à son domaine
d'étude. Le stage de troisième année s'effectue en cycle
Licence Professionnelle. Il est à noter dans notre cas que la structure
d'accueil est ASECNA-GAROUA. Le travailqui nous a été
demandé est la mise en place d'une application pour la gestion des
stagiaires au sein d'ASECNA-GAROUA.
C'est donc dans ce sens que nous avons effectué un
stage de fin d'études de licence professionnelle durant la
période allant du 14 juillet au 10 Octobre 2014.
RESUME
Dans l'optique de faciliter et d'améliorer la gestion
des stagiaires, ASECNA-GAROUA envisage de mettre en place une application de
gestion des stagiaires dont l'objectif est d'automatiser et de gérer les
tâches essentielles concernant ces derniers. Notre travail consiste
à mettre sur pied un système informatiquedegestion des stagiaires
d'ASECNA-GAROUA. Les principaux objectifs de cetteapplication
sont :faciliter la recherche des stagiaires, définir les profils
desstagiaires, permettre la traçabilité des stages
effectués.
Pour atteindre ces objectifs nous avons utilisé la
démarche UP7, UML comme langage de modélisation et
l'implémentation a été réalisée avec le
langage de programmation PHP. Il a donc été mis sur pied une
solution informatique pour la gestion des stagiaires d'ASECNA-GAROUA (SIGESTAG)
dont les fonctionnalités sont : l'inscription, la définition
des profils des stagiaires, la traçabilité des stages, la
recherche, l'impression des cartes d'accès des stagiaires, ainsi que
celle de la liste des stagiaires.
INTRODUCTION GENERALE
Jusqu'à notrearrivée l'ASECNA-GAROUA ne
disposait encore d'aucunsystème informatique pour la gestion de ses
stagiaires. Hors la non automatisation de ce processus est à l'origine
des nombreuses difficultés telles que : la recherche fastidieuse,
la sauvegarde manuelle des traces des stagiaires qui sous l'effet du temps
s'usent et deviennent encombrantes rendant ainsi la traçabilité
des stagiaires presque impossible. C'est la raison pour laquelle ASECNA-GAROUAa
opté pour la mise en place du SIGESTAG.
Par ailleurs, l'informatisation du processus de gestion des
stagiaires pose les problèmesd'organisation, de délimitation des
tâches ainsi que de la sécurité du système. Cette
gestion consisteraà : enregistrer tous les stagiaires
d'ASECNA-GAROUA, définir le profil de chacun d'entre eux, permettre la
traçabilité des stages et enfin faciliter la recherche des
stagiaires et des stages. Notre travail consiste donc à mettre en place
une application web pour la gestion des stagiaires d'ASECNA-GAROUA. De ce fait
les objectifs majeurs de notre travail sont :la définition des
profils des stagiaires, la traçabilité des stages, la recherche
ainsi que l'impression des cartes des stagiaires.
Pour développer ce système, nous avons
utilisé UP7 comme méthode d'analyse et de conception, UML comme
langage de modélisation ; l'implémentation quant à elle,
elle a été réalisée via le Système de
Gestion de Base de Données (SGBD) MySQL pour la base de données
et les langages HTML5, CSS3, JavaScript, PHP 5.4 ont été
utilisés pour la création des différentes interfaces et
l'implémentation des fonctions nécessaires aux traitements de nos
données.
Au terme de notre stage nous avons mis sur pied un
système qui offre toutes les fonctionnalités décrites dans
le cahier de charge.
Pour parvenir aux objectifs définis, nous avons
structuré notre mémoire en trois chapitres : dans le
premier, nous présentons le problème de gestion des stagiaires
ainsi que l'expression des besoins, le deuxième est consacré
à l'analyse et la conception ; l'implémentation du
système ainsi que les tests sont présentés au
troisième chapitre et enfin nous avons une conclusion et des
perspectives.
CHAPITRE I : PROBLEME DE LA
GESTION DES STAGIAIRES ET EXPRESSION DES BESOINS
L'étude du problème et l'expression des besoins
constituent la première étape dans les différentes phases
de développement d'une application. Elle permet de bien cerner et
comprendre les besoins de ce qu'on veut bâtir ou améliorer, en vue
de faire des propositions de solutions pertinentes aux problèmes
à résoudre. Ce chapitre eststructuré de la manière
suivante : tout d'abord nous présentons
lesgénéralités sur le stage puis nous décrivons le
problème dans le cadre de notre étude.
I. Les généralités
sur la gestion des stagiaires
I.1 Définition
D'un point de vue général la gestion
désignel'action ou la manière de gérer, d'administrer, de
diriger, d'organiser l'exécution d'une tâche.Le stage quant
à lui peut se définir comme étant une période
pendant laquelle une personne exerce une activité temporaire dans une
entreprise, en vue de sa formation. Le stagiaire quant à lui
désigne toute personne qui effectue un stage. Toute structure
professionnelle offrant des stages à nécessairement besoin d'un
système informatique de gestion des stagiaires afin de mieux organiser
et suivre ses stagiaires.
I.2 Problèmes
de gestion des stagiaires
L'absence d'un système informatique d'organisation, de
suivi et de traçabilité des stagiaires dans une structure
accueillant ces derniers est à l'origine de nombreux problèmes
qui sont entre autres :
Ø La pertedes traces des stagiaires ;
Ø La recherche fastidieuse de ces derniers ;
Ø La difficulté d'élaboration des listes
des stagiaires ;
Ø La presque impossibilité d'élaborer les
cartes d'accès de stagiaires.
I.3 Principaux type d'acteurs d'un système
Administrateur : c'est la personne en charge
de la gestion et du suivi du système.
Stagiaire : c'est la personne
administrée.
Personnel : ce sont ceux qui peuvent
juste consulter la base de données (consulter les différentes
listes, effectuer des recherches..).
II.
Spécification du sujet
II.1 Etude et Critique de l'existant
Actuellement à l'ASECNA-GAROUA il n'existe pas un
logiciel spécialisé pouvant assurer la gestion des stagiaires. En
effet, les différentes tâches de gestion s'effectuent
manuellement. Quand un stagiaire arrive à l'ASECNA-GAROUA, le chef
service MIRE lui fait signer la convention dont il garde une copie. Puis il
fait sortir une nouvelle liste des stagiaires en utilisant des logiciels non
adaptés tels que : Word, Excel. Ensuite, lors de son départ
le stagiaire dépose deux (02) imprimés de son mémoire et
une note ainsi qu'une attestation de fin de stage lui
sontdélivrées. Ainsi ASECNA-GAROUA ne garde ni la note ni le
service le service où le stage a été effectué.
II.2 Délimitation du Champ D'études
Notre étude porte essentiellement sur la gestion des
stagiairesd'ASECNA-GAROUA. En effetla gestion des stagiaires consiste à
faciliter la recherche des stagiaires, la traçabilité des stages,
l'impression des cartes de stagiaire ainsi quela définition des profils
des stagiaires. Il est donc important pour l'ASECNA-GAROUAde mettre sur pied
un système compétent pour palier à ce problème, un
système qui n'est autre que leSystème Informatique de Gestion des
Stagiairesd'ASECNA-GAROUA (SIGESTAG)d'où le choix de notre domaine
d'étude.
II.3 Solutions apportées
En soumettant ce sujet à notre étude,
ASECNA-GAROUA attend de nous une application dont l'objectif principal est de
permettre la traçabilité des stagiaires. L'application que nous
proposons comporte les fonctionnalités suivantes :
Ø Un module qui permet la définition des profils
des stagiaires ;
Ø Un module qui permet la traçabilité
des différents stages effectuées ;
Ø Un module qui permet la recherche ;
Ø Un module pour l'impression ;
Ø Un forum.
Après avoir évoqué les
généralités sur la gestion des stagiaires et décrit
le problème dans le cadre de notre étude, nous nous
intéresserons dansle chapitre suivant à l'analyse et à la
conception du système de gestion des stagiairesd'ASECNA-GAROUAoù
nous présentons tout d'abord le langage de modélisation, ensuite
la démarche de développement et enfin la modélisation du
système.
CHAPITRE II : ANALYSE
ET CONCEPTION
Ce chapitre présente dans un premier temps le langage
et la méthode utilisés et dans un second temps, la
modélisation du système proposé.
I. Langage et méthode de
modélisation
Pour s'assurer de la qualité de tout système, un
ensemble de procédés et d'outils adaptés aux besoins du
projet et ayant des bases solides s'impose. C'est pour cela que dans cette
partie nous parlerons des langages et des méthodes qui ont
été utilisées pour concevoir notre système.
I.1 Langage
La modélisation objet consiste en une
représentation abstraite du monde réel en un ensemble
d'entités appelées « Objets ». Un objet peut aussi bien
représenter des éléments physiques du monde réel
(Enseignant, Voiture, Salle,...) que des éléments abstraits
(Date, Unité d'Enseignement,...). La puissance de l'approche objet
réside dans le fait que les objets encapsulent des
propriétés et des comportements (Méthodes) au contraire
des méthodes systémiques (MERISE,...) qui séparent les
données des traitements.
Un des points forts de l'approche objet consiste à se
concentrer sur la modélisation des systèmes,
indépendamment de la technologie qui sera utilisée pour la
réalisation. Cette propriété très
intéressante permet aux chefs d'entreprises, soit d'arrêter le
processus de développement du logiciel, soit de le modifier selon leurs
besoins, et cela en étant encore à l'étape de
modélisation (sans faire de dépenses en terme de
déploiements technologiques).
UML (Unified Modelling Language) représente un
intermédiaire simple et efficace entre concepteurs intervenant dans le
projet et futurs utilisateurs du nouveau système. En effet, les
différents diagrammes qu'il propose, simplifient d'une part le processus
de développement aux concepteurs, et permettent, d'autre part, aux
utilisateurs et chefs d'entreprises de suivre les étapes de
développement du système et de valider ainsi chacune d'elles.
UML présente neuf (09) diagrammes (dans sa version 2 il
présente treize diagrammes), chacun étant utilisé pour
mettre en évidence un aspect bien défini du système.
Selon Pascal Rocque, les neuf diagrammes UML
se répartissent selon trois axes de modélisation :
fonctionnel, statique et dynamique.
Figure 1 : Les
Diagrammes UML par axes de modélisation
Ces diagrammes, d'une utilité variable selon les
cas, ne sont pas nécessairement tous produits à l'occasion
d'une modélisation. Les plus utiles pour la maîtrise
d'ouvrage sont les diagrammes d'activités, de cas d'utilisation,
de classes, d'objets, de séquence et d'états-transitions.
Les diagrammes de composants, de déploiement et de communication sont
surtout utiles pour la maîtrise d'oeuvre à qui ils
permettent de formaliser les contraintes de la réalisation et la
solution technique.
I.2
Méthode
I.2.1 Démarche de développement UP
I.2.1.1 Présentation d'UP
UML est un langage de modélisation. Dans la norme, il
n'existe pas de démarche unifiée pour construire les
modèles et conduire un projet mettant en oeuvre UML. Cependant, les
auteurs d'UML ont décrit dans un ouvrage [jacobson2000a] le processus
unifié (UP, Unified Process) qui doit être associé à
UML.
I.2.1.2 Les principes d'UP
Le processus de développement UP, associé
à UML, met en oeuvre les principes suivants :
Ø processus guidé par les cas d'utilisation ;
Ø processus itératif et incrémental ;
Ø processus centré sur l'architecture ;
Ø processus orienté par la réduction des
risques.
I.2.1.2.1 Processus guidé par les cas
d'utilisation
L'orientation forte donnée ici par UP est de montrer
que le système à construire se définit d'abord avec les
utilisateurs. Les cas d'utilisation permettent d'exprimer les interactions du
système avec les utilisateurs, donc de capturer les besoins. Une seconde
orientation est de montrer comment les cas d'utilisation constituent un vecteur
structurant pour le développement et les tests du système. Ainsi
le développement peut se décomposer par cas d'utilisation et la
réception du logiciel sera elle aussi articulée par cas
d'utilisation.
I.2.1.2.2 Processus itératif et
incrémental
Ce type de démarche étant relativement connu
dans l'approche objet, il paraît naturel qu'UP préconise
l'utilisation du principe de développement par itérations
successives. Concrètement, la réalisation de maquette et
prototype constitue la réponse pratique à ce principe. Le
développement progressif, par incrément, est aussi
recommandé en s'appuyant sur la décomposition du système
en cas d'utilisation. Les avantages du développement itératif se
résument comme suit :
Ø les risques sont évalués et
traités au fur et à mesure des itérations,
Ø les premières itérations permettent
d'avoir un feed-back des utilisateurs,
Ø les tests et l'intégration se font de
manière continue,
Ø les avancées sont évaluées au
fur et à mesure de l'implémentation.
I.2.1.2.3 Processus centré sur
l'architecture
Les auteurs d'UP mettent en avant la préoccupation
de l'architecture du système dès le début des travaux
d'analyse et de conception. Il est important de définir le plus
tôt possible, même à grandes mailles, l'architecture type
qui sera retenue pour le développement, l'implémentation et
ensuite le déploiement du système. Le vecteur des cas
d'utilisation peut aussi être utilisé pour la description de
l'architecture.
I.2.1.2.4Processus orienté par la
réduction des risques.
L'analyse des risques doit être présente à
tous les stades de développement d'un système. Il est important
de bien évaluer les risques des développements afin d'aider
à la bonne prise de décision. Du fait de l'application du
processus itératif, UP contribue à la diminution des risques au
fur et à mesure du déroulement des itérations
successives.
I.2.1.3 Démarche de développement
UP7
UP7 est une démarche d'application d'UML qui prend
appui sur UP mais qui se veut avant tout être pragmatique. Cette
démarche est fondée d'une part sur la vision du processus de
développement et d'autre part sur les expériences tirées
de la réalisation en entreprise de projets avec UML. La démarche
est articulée suivant deux axes: les quatre phases qui correspondent
à celles d'UP et sept activités. Ainsi, on peut présenter
dès ce stade un premier schéma d'ensemble de la démarche
suivant ces deux axes.
Figure 2 :
Schéma d'ensemble de la démarche UP7
Le grisé sur ce schéma représente
l'effort à consentir pour chaque activité durant les phases d'un
projet. Ainsi par exemple, pour l'activité 3 (Analyse des cas
d'utilisation), l'activité commence légèrement lors de la
phase de lancement puis se déroule principalement lors de la phase
d'élaboration et se termine en phase de construction.
Il est à noter que sur ce schéma, la proportion
que représente chaque activité par rapport à l'ensemble de
la charge de développement d'un projet a été
respectée graphiquement.
II.
Modélisation du système
II.1 Modélisation métier
L'analyse objet est basée sur une perception
tridimensionnelle selon trois axes :
Ø Une analyse fonctionnelle : Elle décrit le
savoir-faire de l'objet.
Ø Une analyse dynamique : Elle décrit le cycle
de vie de l'objet au cours de l'application (les étapes par lesquelles
passe l'objet ainsi que les évènements qui lui sont
envoyés).
Ø Une analyse statique : Elle représentant la
description structurelle des objets.
La phase d'analyse, a pour objectif de décrire de
manière précise, concise, correcte et compréhensible un
modèle du monde réel. Avant de construire quelque chose de
complexe, comme une maison, un logiciel ou un système d'exploitation,
le constructeur doit appréhender les besoins ainsi que l'environnement
dans lequel le système existe. Le but de l'analyse orienté objet
est de modéliser le système du monde réel afin qu'il soit
compréhensible [RUM ; 1997].
Donc la phase d'analyse permet de s'accorder sur « Ce que
doit faire le système ? »
II.1.1 Élaboration
du schéma de contexte du domaine d'étude
Objectif : positionner le
système à étudier au sein de l'entreprise
· Point de départ : Esquisse
fonctionnelle du besoin exprimé
· Point d'arrivée :
Système à étudier positionné par rapport aux
processus de l'entreprise et périmètre fonctionnel
défini.
Figure 3 :
Schéma de contexte statique du système
II.2 Analyse fonctionnelle
II.2.1 - Les acteurs
Un acteur est un rôle joué par une personne ou
une entité externe (opérateur, autre Système,...) qui
interagit avec le système. On distingue deux types d'acteur :
- l'acteur primaire ou principal qui est celui pour qui le
système est construit, c'est à dire celui à qui le
système rend service ;
- l'acteur secondaire qui est celui qui est
nécessaire pour le bon fonctionnement du système, mais qui n'est
pas celui pour qui le système est construit.
On peut représenter un acteur comme suit :
II.2.2 - Cas d'utilisation (use cases)
C'est un ensemble d'actions réalisées par le
système en réponse à une action (Sollicitation) d'un
acteur, c'est donc une vue du système dans son environnement
extérieur.
Il mobilise donc un service rendu par le système, sans
imposer le mode de réalisation de ce service. On le représente
par une ellipse contenant le nom du cas :
II.2.3 - Le diagramme des cas d'utilisation
L'ensemble des use cases décrit les objectifs (but) du
système ; il constitue le diagramme des cas d'utilisation dont la
représentation graphique est la suivante :
La figure (Figure 4) suivante illustre le diagramme de cas
d'utilisation de notre système d'administration et de
sécurité de SIGESTAG.
Ils y sont représentés dans ce diagramme des cas
d'utilisation, le système (avec sa frontière), les acteurs et les
associations entre acteurs et cas d'utilisation.
Figure 4 :Le
diagramme de cas d'utilisation de notre système
Pour outiller les cas d'utilisation, la description textuelle
est indispensable, car elle seule permet de communiquer facilement et
précisément avec les utilisateurs. La description textuelle est
également l'occasion de s'entendre sur la terminologie employée,
ainsi que d'identifier le contexte d'exécution de l'un ou de l'autre des
enchainements. En revanche, le texte présente des désavantages
puisqu'il est difficile de montrer comment les enchainements se
succèdent ; en outre la maintenance des évolutions s'avère
souvent périlleuse.
Il est donc recommandé de compléter la
description textuelle par un ou plusieurs diagrammes dynamiques, qui
apporteront un niveau supérieur de formalisation.
II.2.4 -Description textuelle de
quelques cas d'utilisation
II.2.4.1 - Cas d'utilisation : ajouter stagiaire
Le tableau 1 suivant présente la description textuelle
du cas d'utilisation Ajouter stagiaire, pour enrichir le diagramme de cas
d'utilisation :
Nom
|
Ajouter stagiaire
|
Résumé
|
Ce cas d'utilisation permet à l'administrateur
d'ajouter un nouveau stagiaire dans la base de données
|
Acteurs primaires
|
Administrateur
|
Acteurs secondaires
|
Aucun(SGDB)
|
Pré - condition
|
Le stagiaire n'est pas inscrit
|
Scénario nominal
|
1. L'administrateur clique sur le lien d'ajout de stagiaire
2. Le système lui propose l'interface
d'enregistrement
3. L'administrateur entre les données puis clique sur
le bouton d'envoi
4. Le système contrôle les informations
entrées
5. Le système envoie un message de confirmation de
l'ajout à l'administrateur.
|
Scénario alternatif
|
A1 : les informations entrées sont
incorrectes
L'enchainement A1 commence au point 4
6- Le système informe l'utilisateur de l'erreur et
réaffiche la page d'enregistrement
Le scénario reprend au point 3
|
Scénario d'erreur
|
|
Post - condition
|
Le système a enregistré un nouvel stagiaire dans
la base de données. Un nouvel utilisateur vient d'être
ajouté.
|
Tableau 1 :
description textuelle du cas d'utilisationAjouter stagiaire
II.2.4.2 - Cas d'utilisation : Connexion
Nom
|
Connexion
|
Résumé
|
Ce cas d'utilisation permet à un utilisateur de se
connecter à la plateforme et d'avoir accès à son compte.
|
Acteurs primaires
|
Utilisateur
|
Acteurs secondaires
|
Aucun (SGBD)
|
Pré - condition
|
Avoir les informations (email, mot de passe)
enregistrées dans la base de données du système
|
Scénario nominal
|
1. L'utilisateur lance l'application
2. Le système affiche l'interface de connexion
3. L'utilisateur saisie les informations de son compte
4. Le système vérifie les informations
entrées
5. Le système affiche la page d'accueil (utilisateur,
administrateur)
|
Scénario alternatif
|
A1 : les informations du compte sont
incorrectes
L'enchainement A1 commence au point 4
5- Le système informe l'utilisateur de l'erreur
Le scénario reprend au point 2
|
Scénario d'erreur
|
|
Post - condition
|
L'utilisateur est connecté à la plateforme de
notre application.
|
Tableau 2 :
Description textuelle du cas d'utilisation Connexion
II.2.4.3 - Cas d'utilisation : ajouter stage
Le tableau 1 suivant présente la description textuelle
du cas d'utilisation Ajouter stage, pour enrichir le diagramme de cas
d'utilisation :
Nom
|
Ajouter stage
|
Résumé
|
Ce cas d'utilisation permet à l'administrateur
d'ajouter un nouveau stage dans la base de données
|
Acteurs primaires
|
Administrateur
|
Acteurs secondaires
|
Aucun(SGDB)
|
Pré - condition
|
Le stagiaire est déjà inscrit
|
Scénario nominal
|
1. L'administrateur clique sur le lien d'ajout de stage
2. Le système lui propose l'interface
d'enregistrement
3. L'administrateur entre les données puis clique sur
le bouton d'envoi
4. Le système contrôle les informations
entrées puis envoie un message de confirmation de l'ajout à
l'administrateur.
|
Scénario alternatif
|
|
Scénario d'erreur
|
|
Post - condition
|
Le système a enregistré un nouvel stage dans la
base de données.
|
Tableau 3 : Description
textuelle du cas d'utilisation Ajouterstage
II.2.4.4 - Cas d'utilisation : Modifier stagiaire
Le tableau 1 suivant présente la description textuelle
du cas d'utilisation Modifier stagiaire, pour enrichir le diagramme de cas
d'utilisation :
Nom
|
Modifier stagiaire
|
Résumé
|
Ce cas d'utilisation permet à l'administrateur de
modifierun stagiaire dans la base de données
|
Acteurs primaires
|
Administrateur
|
Acteurs secondaires
|
Aucun(SGDB)
|
Pré - condition
|
Le stagiaire est déjà inscrit
|
Scénario nominal
|
1. L'administrateur clique sur le lien de modification de
stagiaire
2. Le système lui propose l'interface de
modification
3. L'administrateur entre les données puis clique sur
le bouton d'envoi
4. Le système contrôle les informations
entrées puis envoie un message sur l'état de la modification
à l'administrateur.
|
Scénario alternatif
|
|
Scénario d'erreur
|
|
Post - condition
|
Le système a modifié un stagiaire dans la base
de données.
|
Tableau 4: Description
textuelle du cas d'utilisation Modifierstagiaire
II.2.4.5 - Cas d'utilisation : Rechercher
stagiaire
Le tableau 1 suivant présente la description textuelle
du cas d'utilisation Rechercher stagiaire, pour enrichir le diagramme de cas
d'utilisation :
Nom
|
Rechercher stagiaire
|
Résumé
|
Ce cas d'utilisation permet à l'administrateur de
rechercherunstagiaire dans la base de données
|
Acteurs primaires
|
Administrateur
|
Acteurs secondaires
|
Aucun(SGDB)
|
Pré - condition
|
- La base de données doit être renseignée
- La base de données doit être mise à
jour
|
Scénario nominal
|
1. L'administrateur clique sur le lien de recherche de
stagiaire
2. Le système lui propose l'interface de recherche
3. L'administrateur choisit le critère de recherche
puis entre les données ettape sur latoucheentrée
4. le système fouille le résultat avec
lesdonnées choisies
5. le système affiche le résultat de
recherche
|
Scénario alternatif
|
A1: pas de résultat
A1 commence au point 4 du scénario nominal
5- le système informe l'administrateur de
l'indisponibilité du résultat
le scénario reprend au point 2
|
Scénario d'erreur
|
|
Post - condition
|
La recherche a abouti à un résultat valable
désiré par l'administrateur.
|
Tableau 5 : description textuelle du cas
d'utilisation Rechercher stagiaire
II.2.4.5 - Cas d'utilisation : Imprimer carte
stagiaire
Le tableau 1 suivant présente la description textuelle
du cas d'utilisation Imprimer carte stagiaire, pour enrichir le diagramme de
cas d'utilisation :
Nom
|
Inscription
|
Résumé
|
Ce cas d'utilisation permet à l'administrateur de
rechercher un stagiaire dans la base de données
|
Acteurs primaires
|
Administrateur
|
Acteurs secondaires
|
Aucun(SGDB)
|
Pré - condition
|
- La base de données doit être renseignée
- La base de données doit être mise à
jour
|
Scénario nominal
|
1. L'administrateur clique sur le lien de recherche de
stagiaire
2. Le système lui propose l'interface de recherche
3. L'administrateur choisit le critère de recherche
puis entre les données ettape sur latoucheentrée
4. le système fouille le résultat avec
lesdonnées choisies
5. le système affiche le résultat de
recherche
|
Scénario alternatif
|
A1: pas de résultat
A1 commence au point 4 du scénario nominal
5- le système informe l'administrateur de
l'indisponibilité du résultat
le scénario reprend au point 2
|
Scénario d'erreur
|
|
Post - condition
|
La recherche a abouti à un résultat valable
désiré par l'administrateur.
|
Tableau 6 : description textuelle du cas
d'utilisation Imprimer carte stagiaire
II.3 Analyse statique
Dans cette section, nous abordons les modèles du
domaine, c'est-à-dire le diagramme de classes statique. Ces derniers
sont utilisés pour modéliser l'aspect statique du système.
Ils mettent en avant sa structure statique qu'ils représentent avec des
classes, le vocabulaire utilisé dans le système qu'ils
présentent sous forme d'attributs de classes, ainsi que les relations
statiques qui existent entre elles.
II.3.1 Les classes et les objets
Une classe est la représentation d'un ensemble
d'éléments (objets) dotés des propriétés,
des opérations et d'une sémantique commune. Elle
représente des éléments variés pouvant être
concrets (voiture, élève,...) ou abstraits (commande,
livraison,...).
II.3.2 Le diagramme de classe
Nous avons dit plus haut que le diagramme des cas
d'utilisation montre le système du point de vue de ses acteurs. Le
diagramme de classe montre plutôt la structure interne. Il exprime de
manière générale la structure statique d'un
système, en termes de classes et de relations (associations) entre ces
dernières.
Représentation : les classes sont
représentées par des rectangles compartimentés :
- le 1er compartiment représente le nom de la classe
- le 2ème compartiment représente les attributs
de la classe
- le 3ème compartiment représente les
opérations de la classe
NOM DE LA CLASSE
-Attribut1: type
-Attribut2: type
-Attribut3: type
- methode1 (argument): type retour
- methode2 (argument): type retour
Formalisme :
Devant chaque attribut ou méthode est placée une
visibilité. UML définit 3 niveaux de visibilité pour les
attributs et méthodes :
1. public (+) : l'élément est visible pour tous
les clients de la classe
2. protégé (#) : l'élément est
visible pour les sous-classes de la classe
3. privé (-) : l'élément n'est visible
que par les objets de la classe dans laquelle il est déclaré.
On ne peut parler de classes sans mentionner les associations
: l'association est la relation la plus courante et la plus riche du point de
vue sémantique.
Une association est une relation statique n-aire (le plus
souvent : elle est binaire) : c'est-à-dire qu'elle relie plusieurs
classes entre elles. Sur le diagramme, elle est représentée comme
l'indique le schéma suivant :
Classe B
Classe A
Nom de la relation
a..b x..y
Cardinalités
La cardinalité ou multiplicité définit
le nombre d'instances de l'association pour une instance de la classe. Nous
représentons toutes les cardinalités possibles qu'on peut avoir
dans le tableau suivant :
Cardinalités
|
Signification
|
1
|
Un et un seul
|
0..1
|
Zéro ou un
|
N ou *
|
Entier naturel
|
M..N
|
De M à N
|
0..*
|
De zéro à plusieurs
|
1..*
|
De un à plusieurs
|
Tableau 7 :
différents sortes de cardinalités
II.3.3 Les données
II.4.3.1 - les tables
De notre analyse, on a retenu les classes ci-dessous :
· UTILISATEUR
· STAGIAIRE
· STAGE
· ENCADREUR
· ETABLISSEMENT
· PROBLEME
· SOLUTION
· DOMAINE
· NIVEAU
Classe
|
Attribut
|
Description
|
Type
|
Taille
|
|
Matricule
|
Le matricule du stagiaire, c'est aussi l'identifiant de ce
dernier
|
Varchar
|
8
|
Nom
|
Le nom du stagiaire
|
Varchar
|
255
|
Prénom
|
Le prénom du stagiaire
|
Varchar
|
255
|
DateNaissance
|
La date de naissance du stagiaire
|
Date
|
|
LieuNaissance
|
Le lieu de naissance du stagiaire
|
varchar
|
255
|
Tel
|
Le numéro de téléphone du stagiaire
|
int
|
13
|
Email
|
L'adresse électronique du stagiaire
|
Varchar
|
100
|
Pwd
|
Le mot de passe du stagiaire
|
Varchar
|
50
|
Photo
|
Photo du stagiaire pour la traçabilité
|
Varchar
|
255
|
STAGE
|
Id_stage
|
L'identifiant du stage
|
Int
|
10
|
Convention
|
Le nom du fichier de la convention du stage sur le serveur
|
Date
|
|
DateDebut
|
La date de début du stage
|
Date
|
|
DateFin
|
La date de la fin du stage
|
|
|
Thème
|
Le thème sur lequel porte le stage
|
|
|
Note
|
La moyenne des notes obtenues dans les différentes
rubriques
|
|
|
Rapport
|
Le nom du fichier du rapport ou mémoire de stage
|
|
|
ENCADREUR
|
Id_employe
|
L'identifiant de l'encadreur qui se trouve dans la base de
données du système de gestion du personnel
|
Int
|
2
|
ETABLISSEMENT
|
Id_etablissement
|
L'identifiant de la fonction
|
Int
|
2
|
Nom
|
Le nom de l'établissement
|
|
|
Ville
|
Le nom de la ville où se trouve
l'établissement
|
|
|
Email
|
L'adresse électronique de l'établissement
|
|
|
Tel
|
Le numéro de téléphone de
l'établissement
|
|
|
Fax
|
Le numéro du fax de l'établissement
|
|
|
BP
|
La boîte postale de l'établissement
|
|
|
PROBLEME
|
Id_pb
|
L'identifiant du problème
|
Int
|
2
|
Titre
|
Le titre du problème
|
Int
|
2
|
Description
|
La description du problème
|
|
|
Fichier_description
|
Le fichier de description détaillé du
problème
|
|
|
Date_soumission
|
La date de soumission du problème
|
Int
|
2
|
SOLUTION
|
Id_solution
|
L'identifiant du module
|
Int
|
2
|
Description
|
La description de la solution
|
|
|
Fichier_solution
|
Fichier contenant la description détaillée de la
solution
|
|
|
Date_reponse
|
La date de dépôt de la réponse
|
Varchar
|
255
|
DOMAINE
|
Id_domaine
|
L'identifiant du domaine
|
Int
|
2
|
nom
|
Le nom du domaine
|
Varchar
|
255
|
NIVEAU
|
Id_niveau
|
L'iedntifiant du nivau
|
Int
|
2
|
Designation
|
La désignation du niveau
|
Varchar
|
255
|
Tableau 8 :
Dictionnaires des données
II.4.3.2 - Diagramme de classe
Nous allons définir ci-dessous les différentes
classes qui interviennent dans notre système et les interactions entre
elles. La figure (Figure 4) présente le diagramme des classes au niveau
conceptuel du système que nous mettons en place.
Figure 5 :
Diagramme de classes
II.4 Analyse dynamique
Dans cette section nous allons donner quelques diagrammes de
séquences de notre système. En effet, l'étude dynamique
est une étape importante dans la définition des objets et la
compréhension de leur fonctionnement dans le système, elle se
base sur plusieurs modèles.
Relativement à notre système nous allons nous
baser sur un modèle dynamique : Les diagrammes de séquences (les
scénarios des diagrammes de cas d'utilisation vont nous permettre
d'élaborer ces diagrammes de séquences).
II.4.1 - Le diagramme de séquence
Ils montrent les objets impliqués par l'interaction
avec les messages échangés (séquentiellement, en
parallèle, de manière synchrone ou asynchrone...) entre ces
objets.
Le diagramme de séquence permet de mettre en
évidence les interactions entre les différents objets du
système. Dans le cadre de l'analyse, il est utilisé :
- pour préciser le contexte dans lequel chaque objet
évolue
- pour mettre en évidence les dépendances
entre les différents objets impliqués dans l'exécution
d'un processus ou d'un cas d'utilisation.
Un diagramme de séquence fait apparaître les
interactions entre des objets et les messages qu'ils échangent ; il
permet de visualiser les messages par une lecture de haut en bas.
Les éléments du diagramme de séquence
sont :
Tableau 9:
Elément du diagramme de séquence
Les diagrammes de séquences permettent de
représenter des collaborations entre objets selon un point de vue
temporel, on y met l'accent sur la chronologie des envois de messages. On
décrit le contexte ou l'état des objets, la représentation
se concentre sur l'expression des interactions.
II.4.1.1 - Diagramme de séquence : Connexion
compte
La figure (Figure 6) ci-dessous montre le processus de
connexion au système.
Figure 6 :
Diagramme de séquence connexion compte
II.4.1.2 - Diagramme de séquence :
Inscription
Le processus d'enregistrement d'un nouvel
élément (stagiaire, stage, domaine, niveau, établissement,
problème, solution) est relativement le même. La figure (Figure 7)
ci-dessous montre le processus d'enregistrement d'un stagiaire.
Figure 7: Diagramme de
séquence inscription
II.5.1.3 - Diagramme de séquence : Recherche
Les enchainements de la recherche sont identiques quel que
soit l'élément recherché (stage, stagiaire,
établissement).La figure (Figure 8) ci-dessous montre le processus de
recherche.
Figure
8 :Diagramme de séquence recherche
Dans ce chapitre, nous avons tout d'abord
présenté UML et UP, analysé le système en suivant
la démarche UP7 dont quatre activités ont été
effectuées partiellement. L'activité de conception n'a pas
été abordée. Dans le chapitre suivant, nous
présentons l'environnement de développement, puis les outils
utilisés et enfin le test qui regroupent les deux dernières
activités d'UP7 qui sont l'implémentation et le test.
CHAPITRE III :
IMPLEMENTATION ET TEST
Dans ce chapitre, nous parlons de notre implémentation
du système puis, nous présentons les technologies
utilisées pour le développement de l'application, tel que les
langages de programmation, le SGBD. Et nous terminons par présenter les
imprimés écran de notre application.
I. Implémentation du
système
I.1 Environnement de
développement
Nous présentons dans cette section les outils que nous
avons utilisés pour réaliser notre travail (serveur web, SGBD,
langages de programmation, etc.) tout en justifiant nos choix.
I .1.1 Présentation du serveur web apache
Un serveur HTTP est un logiciel permettant à des
machines clientes d'accéder à des pages web à partir d'un
navigateur (aussi appelé browser) installé sur un ordinateur
distant. Le terme serveur web est utilisé pour désigner
l'ordinateur sur lequel fonctionne un serveur http. Mais le terme serveur web
peut aussi désigner le serveur http (le logiciel) lui-même. Les
deux termes sont utilisés pour le logiciel car le protocole http a
été développé pour le web et les pages web sont en
pratique toujours servies avec ce protocole. Un serveur web est donc un
logiciel servant à exécuter des requêtes respectant le
protocole de communication client-serveur HyperText Transfer Protocol (HTTP) en
utilisant le port associé (par défaut le port 80).
Les principaux serveurs web sur le marché sont entre
autres :
- Microsoft IIS (Internet Information Server) ;
- Microsoft PWS (Personal Web Server);
- Xitami;
- Apache;
- Sun One de Sun Microsystem (anciennement iPlanet de
Netscape Communication Corporation) ;
- Le serveur Web Zeus de Zeus Technologie.
Mais nous n'allons présenter que le serveur apache sur
lequel notre application fonctionnera. Apache est un serveur web open source
basé sur le protocole http ; Apache est produit par « Apache
Solfware Fondation ». Il fonctionne principalement sur les
systèmes d'exploitation Windows et Unix/Linux. La première
version est sortie en décembre 1995. La version Windows n'est
considérée comme stable que depuis la version 2 d'Apache. La
dernière version est Apache 2.2. Apache est redistribué sous
d'autre nom par des nombreuses entreprises, dont IBM et ORACLE Corporation.
Apache est conçu pour supporter de nombreux modules lui donnant des
fonctionnalités supplémentaires : interprétation du
langage Perl, PHP et Python, serveur Proxy, protocoles de communication
additionnels, etc.
Les possibilités de configuration d'apache sont ses
fonctionnalités phares. Le principe repose sur une hiérarchie des
fichiers de configuration, qui peuvent être gérés
indépendamment.
I .1.2 Présentation du serveur de base de
données MySQL
MySQL est un SGBD (Système de Gestion de Base de
Données) développé par la société
suédoise PYSQL AB, ex TCX DataKonsult AB. CeSGBDR est livré et
fonctionne sous plusieurs versions selon les plates-formes sur lesquelles il
peut fonctionner (Linux et Windows). Depuis la version 3.23.19, MySQL est sous
licence GPL (General Public Licence), ce qui signifie qu'il peut être
utilisé gratuitement.
MySQL est un véritable serveur de base de
données multi utilisateur, ses principaux atouts sont la robustesse, la
fiabilité et la facilité d'utilisation. Pour les plates-formes
Unix et OS/2, MySQL est libre. Les clients peuvent se connecter à MySQL
en utilisant les sockets TCP/IP, les sockets Unix ou les named piped. Le
serveur MySQL dispose d'un support d'ODBC (Open-DataBase-Connectivity). On peut
par exemple, utiliser MS Access pour se connecter au serveur MySQL. Nous
pouvons dire de ce SGBD (avec sa version 5.0) qu'il est :
- Permet des enregistrements de longueur fixe ou variable ;
- Charges supportées et limites : le serveur MySQL est
utilisé par MySQL AB avec des tables qui contiennent 50.000.000 de
ligne, 60.000 tables, jusqu'à 32 index sont permis par table;
- Utilisation des procédures et fonctions
stockées : les procédures et fonctions stockées (Stored
Procedures, en abrégé SP) sont du code applicatif
entreposé et exécuté au sein du serveur de base de
données. Ce code combine commande SQL, structure de contrôle,
variable, tout comme une fonction ou méthode dans n'importe quel langage
de programmation.
Malgré toutes ses capacités MySQL n'est pas un
SGBD totalement parfait. Il existe quelque soucies quant à la
manière dont ce SGBD gère les clés des enregistrements et
les relations entre tables.
I.1.3 Présentation des langages de programmation
Pour l'implémentation de l'application web à
mettre en place, nous avons utilisés des langages de programmation
coté client (interprétée par le navigateur web) et des
langages de programmation coté serveur (interprétée par le
serveur web).
· Langage de programmation côté
client
Les langages de programmation coté client les plus
rependus sont : le HTML (Hyper Text Market Language), JavaScript, XML (eXtended
Markup Language), XHTML (Extended Hyper Text Markup Language), XSL (eXtensible
Stylesheet Language), etc.
Mais ceux donc nous avons utilisés et allons
présenter sont le HTML et le Javascript.
Ø HTML
Langage de balisage hypertexte utilisé dans le Web
(HyperText Markup Language). HTML n'est pas un langage de programmation
proprement dit, mais ce sont "simplement" des balises pour mettre en forme
(avec des liens, des tableaux, etc...) du texte et des images.
Ø JavaScript
Crée à l'origine par Netscape, ce langage de
programmation est conçu pour traiter localement des
événements provoqués par le lecteur. Ce langage permet
donc de modifier l'aspect de la page en fonctions des intentions du lecteur.
On s'apercevra très rapidement des différences
entre les multiples browsers existant. Il faudra donc prendre soins de la
compatibilité de notre application par rapport aux différents
navigateurs web.
· Langage de programmation côté
serveur
Les langages de programmation coté serveur sont
interprétés et exécutés sur la machine
désignée comme serveur. L'utilisateur n'a pas accès au
code source de la page visualisée. Il existe plusieurs langages de
programmation coté serveur tels que : le PHP (), ASP (Active Server
Page), C#, JSP (Java Server Page), Perl, etc. Le langage utilisé ici est
le PHP et lui que nous allons présenter.
Ø Le langage PHP
PHP (Hypertext Preprocessor) est un langage de programmation
interprété. Correctement interfacé avec Apache, il permet
au serveur de fournir des pages dynamiquement générées en
fonction des besoins des utilisateurs. En clair, la page n'est plus un
document statique mais peut évoluer, afficher des informations
différentes en selon le souhait de l'utilisateur.
I.2 Présentation des
outils utilisés
I .2.1 Dreamweaver
Dreamweaver est un éditeur de site web WYSIWYG pour
Microsoft Windows, et Mac OS X créé en 1997, commercialisé
par Macromedia puis Adobe Systems sous licence utilisateur final. Dreamweaver
fut l'un des premiers éditeurs HTML de type « tel affichage,
tel résultat », mais également l'un des premiers
à intégrer un gestionnaire de site CyberStudio
GoLive étant le
premier). Ces innovations l'imposèrent rapidement comme l'un des
principaux éditeurs de site web, aussi bien utilisable par le
débutant que par le professionnel. Il offre deux modes de conception par
son menu affichage. L'utilisateur peut choisir entre un mode création
permettant d'effectuer la mise en page directement à l'aide d'outils
simples, comparables à un logiciel de traitement de texte (insertion de
tableau, d'image, etc.). Il est également possible d'afficher et de
modifier directement le code (HTML ou autre) qui compose la page. On peut
passer très facilement d'un mode d'affichage à l'autre, ou opter
pour un affichage mixte. Cette dernière option est
particulièrement intéressante pour les débutants qui,
à terme, souhaitent se familiariser avec le langage HTML. Dreamweaver a
évolué avec les technologies de l'internet. Il offre aujourd'hui
la possibilité de concevoir des feuilles de style. Les liaisons avec des
bases de données ont également été
améliorées ainsi que le chargement des fichiers sur les serveurs
d'hébergement. Il propose en outre l'utilisation de modèles
imbriqués de pages web, selon un format propriétaire.
I .2.2 XAMPP
Il s'agit d'une plateforme de développement Web,
permettant de faire fonctionner localement (sans se connecter à un
serveur externe) des scripts PHP. XAMPP n'est pas en soi un logiciel, mais un
environnement comprenant deux serveurs (un serveur web « Apache » et
un serveur de bases de données « MySQL »), un
interpréteur de Script (PHP), ainsi qu'une administration SQL «
phpMyAdmin ». Il dispose d'une interface d'administration permettant de
gérer les alias (dossiers virtuels disponibles sous Apache), et le
démarrage/arrêt desserveurs. Il permet donc d'installer en une
seule fois tout le nécessaire au développement local du PHP. Par
défaut, le serveur Apache crée un nom de domaine virtuel (en
local) 127.0.0.1 ou« localhost ». Ainsi, quand on choisit «
admin » (à côté d'apache), le navigateur s'ouvre sur
cette URL et affiche la page « index.php » qui correspond à la
page d'accueil de Xampp situé le sous dossier « xampp » du
dossier « htdocs » d'XAMPP.
Dans la section qui suit, nous allons présenter le
fonctionnement de notre système en présentant les
différents imprimés écrans de ses interfaces.
II. TESTS
SIGESTAG devra fonctionner en mode client/serveur
c'est-à-dire que nous aurons une machine sur laquelle nous
l'installerons les différents utilisateurs pourrons y accéder
à partir de leur poste de travail en se connectant a l'intranet de la
DRMP-EN.
II.1 Formulaire de connexion des utilisateurs
Lorsque l'utilisateur clic sur le bouton connexion
utilisateur, ce formulaire de login s'ouvre, l'invitant à s'authentifier
pour lancer la session.
Figure 9 :
formulaire de connexion utilisateur
II.2 Page d'accueil de SIGESTAG
Après s'être authentifié, cette page est
la première qui s'affiche proposant ainsi les principales
fonctionnalités du système.
Figure 10: page
d'accueil de SIGESTAG
II.3 Formulaire d'inscription
Ce formulaire permet à l'administrateur d'inscrire un
nouvel stagiaire dans le système.
Figure 11: formulaire
d'inscription d'un stagiaire
II.4 Formulaire pour poser un problème
Ce formulaire permet aux stagiaires de poser des questions
dans certains domaines.
Figure 12: formulaire
pour poser un problème
II.5 Formulairede profil stagiaire et de traçage de
stages
Ce formulaire permet de visualiser les informations sur un
stagiaire ainsi que les traces des stages effectués par ce dernier.
Figure 12: formulaire de profil stagiaire et de
traçage de stages
Les informations contenues dans le premier cadre sont les
informations sur le profil du stagiaire et celles contenues dans le second sont
celles des différentsstages effectués.
II.6 Formulaire pour générer laliste des
stagiaires au format PDF
Cette interface permet de générer la liste des
stagiaires au format PDF.
Figure 13: liste des
stagiaires
II.7 Formulaire pour générer la carte de
stagiaire au format PDF
Cette interface permet de générer la liste des
stagiaires au format PDF.
Figure 14: carte de
stagiaire
Dans ce chapitre, nous avons présenté
l'environnement de développement, les outils utilisés et quelques
interfaces de notre application.
CONCLUSION ET
PERSPECTIVES
Au terme de notre travail, nous avons apporté une
solutioninformatique aux problèmes de gestion desstagiaires
d'ASECNA-GAROUA.
Nous avons mis en place une application fiable et apte
à atteindre les objectifs fixés par l'ASECNA-GAROUA.L'application
va permettre de réaliser les tâches suivantes :la
définition des profils des stagiaires, la traçabilité des
stageseffectués,faciliter la recherche des stagiaires, permettre la
génération au format PDF des listes de stagiaires, de stages
ainsi que les cartes d'accès des stagiaires. A la fin de ce stage, nous
avons pu développer un Système Informatique de Gestion des
Stagiaires d'ASECNA-GAROUAqui intègre plusieurs fonctionnalités
telles que : l'inscription des stagiaires, la traçabilité des
stages effectués, la recherche desstagiaires, des stages, un forum de
discussion et la production de document PDF. De ce fait nous pouvons dire que
les objectifs de notre stage ont été atteints, en ce sens qu'il
nous a permis de mettre en pratique nos acquis et nos compétences.
Toutefois, il serait intéressant que SIGESTAG puisse
dans les versions futures interagir avec les réseaux des
établissements de provenance de ses stagiaires afin d'améliorer
le suivi de ces derniers.
REFERENCES BIBLIOGRAPHIQUES
· Documentations
Ø Livres
[1] Pascal ROQUES. Les cahiers du programmeur UML. Edition
Eyrolles 2006
Ø Mémoires
[2] AMINATOU HAMADOU Amné Balkissou, Module
d'administration et de sécurité du système informatique de
gestion des marchés publics de l'extrême-nord. Mémoire de
fin d'études DUT, IUT de Ngaoundéré 2013
· Site internet
Http: //web.codes-sources.com (consulté tout au long
du stage)
Http: //www.developpez.com (consulté tout au long du
stage)
Http: //www.CommentCaMarche.net (consulté tout au long
du stage)
Http: //www.Siteduzero.com (consulté tout au long du
stage)
www.persee.com/article20+mémoire.rédaction.html
www.msdn.microsoft.com/fr-fr/library/ms181828(v=vs.90).aspx.html
ANNEXES
ANNEXE 1 : Plan de localisation
de l'ASECNA-GAROUA
ANNEXE 2 : Organigramme
Hiérarchiquede l'ASECNA-GAROUA
|