WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Système informatique de gestion des stagiaires de l'ASECNA-GAROUA

( Télécharger le fichier original )
par Amné Balkissou AMINATOU HAMADOU
IUT de Ngaoundéré - Licence professionnelle en génie logiciel 2014
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

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






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Il faudrait pour le bonheur des états que les philosophes fussent roi ou que les rois fussent philosophes"   Platon