119
Université Polytechnique de Bobo-Dioulasso (UPB) Ecole Supérieure d1nformatique (ESI) Cycle des Ingénieurs de Conception en Informatique (00) 01 BP 1091 Bobo-Dioulasso 01 Burkina Faso Tel.: (+226) 20 97 27 64 Délégation Générale à I1nformatique (DELGI) 01 BP 1332 Ouagadougou 01 Burkina Faso Tél. : (+226) 503248 88 Fax.: (+226) 50318350 ANNEE ACADEMIQUE 2004-2005 MEMOIRE DE FIN D'ETUDES Thème: - Inscription en ligne aux concours de la Fonction Publique; - Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique. Juillet 2005 - décembre 2005 Présenté par: Hamidou GASSIMBE Elève ingénieur de conception en informatique MaÎtre de stage: Dr Joachim TANKOANO, Délégué Général à l'ïnforrnatlque Superviseur: M. Loé SANOU, Doctorant à l'Université de Poitiers (France)

MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Université Polytechnique de Bobo-Dioulasso(UPB)

Ecole Supérieure d1nformatique(ESI)

Cycle des Ingénieurs de Conception enInformatique

(00)

01 BP 1091 Bobo-Dioulasso 01Burkina Faso

Tel.: (+226) 20 97 27 64

Délégation Générale à I1nformatique(DELGI)

01 BP 1332 Ouagadougou 01Burkina Faso

Tél. : (+226) 503248 88Fax. : (+226) 50318350

ANNEE ACADEMIQUE 2004-2005

MEMOIRE DE FIN D'ETUDES

Thème:

- Inscription en ligne aux concours de la Fonction

Publique;

- Mise en ligne des situations, positions administratives et

carrière des agents de la Fonction Publique.

Juillet 2005 - décembre 2005

Présenté par:

Hamidou GASSIMBE

Elève ingénieur de conception en informatique

MaÎtre de stage: Dr Joachim TANKOANO, Délégué Général à l'ïnforrnatlque

Superviseur: M. Loé SANOU, Doctorant à l'Université de Poitiers (France)

Page 2: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

REMERCIEMENTS

Nous remercions:

- la Délégation Générale à l'Informatique, en particulier le

Délégué Général à l'Informatique pour nous avoir accepté

comme stagiaire au sein de sa structure, pour son soutien à

l'Ecole Supérieure d'Informatique dans la formation des

ingénieurs informaticiens et surtout pour la pertinence des sous­

thèmes proposés ;

- l'Ecole Supérieure d'Informatique pour la qualité de la formation

reçue durant ces deux années;

- le personnel de la Direction des Services Informatiques, de la

Direction du Recrutement et celui de la Direction des

Ressources Humaines du Ministère de la Fonction Publique et

de la Réforme de l'Etat pour toutes les informations qu'ils nous

ont fournies durant ce stage;

- M. KABORE Paul et M. DAVOU Moussa pour leur disponibilité

et leurs conseils;

- nos parents, tuteurs et ami(e)s qui nous ont apporté leurs

soutiens morales et matériels durant ces six (6) mois de stage;

Page 3: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Sommaire

SOMMAIRE

ABREViATIONS 3

CONTEXTE 4

PARTIE 1 : GENERALITES 5

1. STRUCTURES D'ACCUEIL 61. Délégation Générale à l'Informatique (DELGI) 62. Ministère de la Fonction Publique et de la Réforme de l'Etat (MFPRE) 7

II. PROBLEMATIQUE 111. Problématique et objectifs 112. Contraintes à respecter 12

III. Méthodologies et concepts 131. UML (Unified Modeling Language) 132. Processus de développement 163. XML (eXtensible Markup Language) 184. Java 205. OpenCms 206. Modèle de développement en couche MVC 217. Architecture 3-tiers 22

PARTIE 2: INSCRIPTION EN LIGNE AUX CONCOURS DE LA FONCTIONPUBLIQUE 24

1. Découverte des besoins 261. Diagramme de cas d'utilisation 272. Planning 36

II. Analyse 371. Diagramme d'activité 372. Diagramme de classe 423. Modèle relationnel 434. Structure des fichiers XML 43

III. Conception 491. Architecture du système 492. Diagramme de classe d'implémentation 543. Diagramme de séquence 554. Diagramme d'enchaînement des pages Web 585. Diagramme de paquetage 596. Diagramme de composants 60

IV. Impléméntation 611. Diagramme de déploiement 61

Mémoire de fin d'études Page 1 1117

Page 4: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Sommaire

2. Procédure d'installation de l'application 62

PARTIE 3: MISE EN LIGNE DES SITUATIONS, POSITIONS ADMINISTRATIVESET CARRIERE DES AGENTS DE LA FONCTION PUBLIQUE 64

1. Découverte des besoins 661. Diagramme de cas d'utilisation 712. Planning 76

II. Analyse 771. Diagramme d'activité 772. Diagramme de classe 783. Modèle physique de données 794. Structure des fichiers XML 8D

III. Conception 811. Architecture du système 812. Diagramme de classe d'implémentation 823. Diagramme de séquence 824. Diagramme d'enchaînement des pages Web 9D5. Diagramme de paquetage 916. Diagramme de composants 92

IV. lmpléméntation 931. Diagramme de déploiement 932. Procédure d'installation de l'application 94

CONCLUSiON 96

ANNEXES 97

ANNEXE-1 : QUELQUES ECRANS DES INSCRIPTIONS EN LIGNE 97

ANNEXE-2 : QUELQUES ECRANS DE CONSLILTAllON DES SITUATIONSADMINISTRATIVES DES AGENTS DE LA FONCTION PUBLIQUE 108

GLOSSAIRE 115

BIBLIOGRAPHIE 117

Mémoire de fin d'études Page 2/117

Page 5: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

ABREVIATIONS

CENATRIN

CSI

DAAF

DELGI

ESI

MFB

MFPRE

RESINA

SIGASPE

SIGC

Centre National de Traitement de l'Information

Conseil Supérieur de l'Information

Directeur des Affaires Administratives et Financières

Délégation/Délégué Général à l'Informatique

Ecole Supérieure d'Informatique

Ministère des Finances et du Budget

Ministère de la Fonction Publique et de la Réforme de l'Etat

Réseau Interurbain de l'Administration publique du Burkina Faso

Système Intégré de Gestion Administrative et Salariale du Personnel

de l'Etat

Système Intégré de Gestion des Concours

Mémoire de fin d'études Page 3/117

Page 6: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

CONTEXTE

Le gouvernement du Burkina Faso a adopté le 29 janvier 1997 le deuxième plan

directeur informatique national. L'objectif était de profiter des opportunités qu'offrent

les Technologies de l'Information et de la Communication (TIC) pour contribuer au

développement du pays, par la modernisation de l'administration publique, par la

mise en place de solutions informatiques qui facilitent le travail et apportent plus de

transparence au sein des institutions publiques.

La Délégation Générale à l'Informatique est l'institution publique chargée de la

supervision et de la mise en œuvre de ces projets de modernisation des institutions

publiques.

Dans ce cadre et dans le souci de contribuer à la formation des futurs cadres

informaticiens, elle a accepté nous accueillir comme stagiaire afin de réfléchir sur les

sous-thèmes suivants:

• inscription en ligne (via Internet) aux concours de la Fonction Publique;

• consultation des carrières et des situations administratives des agents de la

Fonction Publique (via Internet) ;

• proposition d'un modèle de mémorisation et de présentation uniforme des

démarches administratives pour l'obtention d'un droit ou la satisfaction d'un

devoir par le citoyen burkinabé;

• proposition d'un système d'organisation de réunions et ateliers virtuels entre

institutions publiques.

Ce stage obligatoire de six (6) mois, inscrit dans la formation des ingénieurs de

conception de l'Ecole Supérieure d'Informatique a pour objectif de préparer les futurs

ingénieurs aux réalités des entreprises.

Le présent rapport résume le travail effectué durant ces six (6) mois de stage. En

premier lieu, nous présentons la méthodologie et les concepts utilisés pour la

réalisation du projet. Ensuite, nous faisons un bilan des deux sous-thèmes traités.

Mémoire de fin d'études Page 4/117

Page 7: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

Mémoire de fin d'études Page 5/117

Page 8: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

1. STRUCTURES D'ACCUEIL

1. Délégation Générale à l'Informatique (DELGI)

La DELGI a été créée en 1990 et faite institution publique sous l'autorité du Premier

Ministre par les décrets N°97-159 PRES/PM du 17 avril 1997 et N°97-160 PRES/PM

du 17 avril 1997. Elle a pour objectif la mise en œuvre de projets et schémas

d'informatisation nationale.

a. Missions de la DELGI

Les technologies de l'information et de la communication peuvent incontestablement

jouer un rôle déterminant dans:

• la réduction des effets négatifs de l'enclavement et de l'inexistence des

infrastructures de base (écoles, structures sanitaires, routes, etc.) ;

• l'amélioration de l'existence de tout individu qui dépend en grande partie de la

qualité et de la pertinence de l'information à laquelle il peut accéder;

• le renforcement de la bonne gouvernance;

• la création de nouvelles opportunités d'affaires et de services;

• l'amélioration de la compétitivité des secteurs productifs et de l'économie dans

le contexte actuel de la mondialisation.

La création de la Délégation générale à l'informatique traduit la volonté du

Gouvernement du Burkina Faso de saisir ces opportunités pour le développement

économique et social du pays.

La Délégation Générale à l'Informatique a pour mission:

• la planification, la réglementation et le contrôle de l'informatique;

• la planification, le suivi de la formation et de la recherche en informatique;

• la délivrance des agréments pour la fourniture d'équipements et de services

informatiques;

• l'ass.istance et le contrôle technique des services informatiques, des

départements ministériels et institutions d'Etat, des centres de traitement

informatique, des centres de formation en informatique et de toutes autres

structures publiques dont l'activité entre dans le cadre de ses attributions;

• la supervision et la validation des schémas directeurs informatiques des

ministères, institutions et établissements publics;

• la promotion et la vulgarisation de l'outil informatique;

Mémoire de fin d'études Page 6/117

Page 9: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

• de donner son avis sur tout marché informatique de l'Etat et de ses

démembrements.

b. Organisation de la DELGI

Les politiques que met en oeuvre la Délégation Générale à l'Informatique sont

proposées par le Conseil Supérieur à la Communication (CSC) et approuvées par le

Conseil des Ministres.

La Délégation Générale à l'Informatique est dirigée par un Délégué Général à

l'Informatique et comprend quatre départements:

• le département des études et de l'informatisation auquel je suis rattaché;

• le département de la formation et de la promotion de l'informatique;

• le département de l'administration générale et financière;

• le département des infrastructures de communication informatique et de la

maintenance;

Elle avait sous sa tutelle le Centre National de Traitement de l'Information

(CENATRIN) et entretient des rapports privilégiés avec l'Ecole Supérieure

d'Informatique (ESI) de l'Université Polytechnique de Bobo-Dioulasso.

c. Environnement de travail de la DELGI

La DELGI dispose de onze (11) serveurs; d'une soixantaine d'ordinateurs (IBM et

HP) ; d'un routeur, d'un modem; d'un pont radio; de deux switchs ; de quatre (4)

imprimantes; des systèmes d'exploitation Windows 98/XP/NT/2000 professionnel et

serveur, de la Redhat 8.0, des SGBD SOL Serveur, Oracle, MySOL.

2. Ministère de la Fonction Publique et de la Réforme de l'Etat (MFPRE)

a. Historique du ministère

Le département actuel de la Fonction Publique et de la Réforme de l'Etat a comme

ancêtre le Ministère créé en 1957, sous la dénomination de Ministère de la Fonction

Publique. Cette nouvelle dénomination du Ministère témoignerait d'une volonté

d'approfondissement et d'élargissement de la réforme globale de l'administration

publique en cours depuis 1998 et, qui, sur bien d'aspects, avait laissé en marge les

institutionsrépublicaines et les établissements publics nationaux.

Mémoire de fin d'études Page 7/117

Page 10: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

b. Attributions

Aux termes du décret n° 2002-255/PRES/PM du 18 juillet 2002 portant attributions

des membres du gouvernement, le Ministère de la Fonction Publique et de la

Réforme de l'Etat assure la mise en œuvre et le suivi de la politique du

Gouvernement en matière de Fonction Publique et de réforme de l'Etat.

A ce titre, et en relation avec tous les ministères, il est chargé:

L en matière de Fonction Publique

• du recrutement des agents de la Fonction Publique occupant les emplois

interministériels des administrations de l'Etat;

• de la formation des agents de la Fonction Publique;

• de la réglementation relative à la gestion des agents de la Fonction Publique;

• de la coordination des activités de toutes les structures centrales et

déconcentrées de gestion des agents de la Fonction Publique;

• du redéploiement des agents publics dans le cadre de la mise en œuvre des

réformes institutionnelles;

• de la protection et de la sécurité sociale des agents de la Fonction Publique;

ii. en matière de réforme de l'Etat

• de l'impulsion des actions et mesures de renforcement des capacités des

administrations de l'Etat;

• de la coordination, en relation avec tous les ministères concernés, des

réformes institutionnelles entreprises par l'Etat au sein des administrations

centrales, des administrations déconcentrées, des entreprises publiques et

des collectivités locales;

• de la promotion de l'évaluation externe des politiques publiques;

• du suivi et de la mise en œuvre du plan national de bonne gouvernance;

• de l'appui conseil aux départements ministériels et aux institutions publiques

pour l'élaboration des instruments de programmation, d'évaluation et de suivi

des politiques sectorielles;

• de la définition des actions et mesures de déconcentration de la gestion des

agents de la Fonction Publique;

• de la réforme du système de gestion des structures de l'administration de

l'Etat;

Mémoire de fin d'études Page 8/117

Page 11: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

• de la définition des normes de déconcentration des services de l'Etat dans le

cadre du processus de décentralisation;

• de la conduite des initiatives en matière de développement de la productivité

des services publics;

• de la définition et de l'actualisation des finalités de la réforme de l'Etat.

c. Organisation du Ministère

i. Cabinet du Ministre

L'organisation du Cabinet du Ministre est définie par le décret N° 2002 ­

363/PRES/PM/MFPRE portant organisation du Ministère de la Fonction Publique

et de la Réforme de L'Etat. Selon ce décret, le cabinet du Ministre se compose de

Conseillers Techniques; d'un Inspection Technique des Services; d'un

Secrétariat Particulier et d'un Protocole du Ministre.

ii. Secrétariat Général

Pour la mise en œuvre de la politique du gouvernement, le Ministre dispose d'un

Secrétariat Général dont la composition et les attributions sont régies par les

dispositions du décret N° 2002 - 363/PRES/PM/MFPRE portant organisation du

Ministère de la Fonction Publique et de la Réforme de L'Etat. Le Secrétaire

Général assiste le Ministre dans l'application de la politique du ministère. Il est

chargé de la coordination administrative et technique des structures de

l'administration centrale, des structures rattachées et de mission.

iii. Structures centrales

Les structures de l'administration centrale du Ministère de la Fonction Publique et

de la Réforme de l'Etat sont constituées de la :

• Direction Générale de la Fonction Publique comprenant la :

Direction du Recrutement;

Direction du Personnel de l'Etat;

Direction des Sorties Assistées;

Direction des Etudes et du Contentieux;

• Direction Générale de la Réforme de l'Etat comprenant la :

Direction de la Réforme Globale;

Direction des Réformes Sectorielles;

• Direction de l'Administration et des Finances;

Mémoire de fin d'études Page 9/117

Page 12: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

• Direction des Etudes et de la Planification;

• Direction des Ressources Humaines;

• Direction des Services Informatiques;

• Direction de la Communication et de la Presse Ministérielle.

Mémoire de fin d'études Page 10/117

Page 13: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

II. PROBLEMATIQUE

1. Problématique et objectifs

L'une des attributions du Ministère de la Fonction Publique et de la Réforme de l'Etat

est le recrutement des agents de la Fonction Publique. A cet effet, il organise les

concours d'entrée à la Fonction Publique. La participation à ces concours exige le

dépôt d'un dossier de candidature. Les candidats doivent accomplir ces formalités

avant la date fixée pour la clôture de la réception des dossiers et généralement à

travers des files d'attentes de plus en plus longues.

Cette affluence devant les guichets de réceptions des dossiers ouverts à cet effet, a

amené le Ministère de la Fonction Publique et de la Réforme de l'Etat à s'orienter

vers une solution informatique afin de multiplier les canaux par lesquels les candidats

peuvent remplir les formalités d'inscription et de leur éviter ainsi de longs

déplacements et les bousculades devant les centres de réception des dossiers.

Cette solution informatique doit permettre d'une part l'inscription en ligne (via

Internet) aux concours de la Fonction Publique et d'autre part la possibilité de

consulter en ligne les résultats de ces concours.

Le Ministère de la Fonction Publique et de la Réforme de l'Etat et celui des Finances

et du Budget ont choisi l'option de rationaliser et de moderniser la gestion du

personnel de l'Etat. A cet effet, un Système Intégré de Gestion Administrative et

Salariale du Personnel de l'Etat (SIGASPE) a été mis en place. L'un des nombreux

avantages de ce système est qu'il offre la possibilité aux usagers de connaître leur

situation administrative et l'historique de leurs dossiers en cours de traitement à

travers des procédures de consultation prévues à cet effet. Cependant, cette

consultation n'est possible qu'à partir des postes de travail connectés au système

SIGASPE, ce qui oblige les agents désirant s'informer sur leur situation

administrative ou sur l'évolution de leur dossier à se rendre à la Direction des

Ressources Humaines de leur ministère afin d'avoir l'information. La future solution

informatique a été retenue par le Ministère de la Fonction Publique et de la Réforme

de l'Etat dans le but de réduire ces déplacements, principalement pour les agents qui

travaillent hors de la capitale.

Elle doit offrir la possibilité aux fonctionnaires de consulter en ligne leur situation

administrative, leur carrière et l'historique de leurs dossiers en cours de traitement.

Mémoire de fin d'études Page 11 1117

Page 14: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

La tenue d'une réunion ou d'un atelier nécessite le déplacement des participants, qui

ont souvent des contraintes d'agenda ou d'emploi du temps. Pour atténuer ces

contraintes, il a été retenu d'ajouter aux sites Web ministériels des fonctionnalités

pouvant permettre l'organisation et la tenue de réunions et ateliers. A terme, ces

fonctionnalités devraient permettre aux participants de se parler et de se voir tout en

restant dans leur bureau.

L'objectif est donc de permettre l'organisation et la tenue de réunions et ateliers

virtuels entre les départements ministériels.

Pour accéder à un droit, accomplir un devoir, remplir une formalité ou établir une

pièce administrative, le citoyen burkinabé entreprend des démarches administratives

auprès des ministères et institutions de la République. Un effort a été fait sur les sites

Web des ministères et institutions de l'Etat pour décrire et expliquer ces démarches

qui ne sont pas toujours bien connus par tous les citoyens. Toutefois, ces

descriptions et explications ne respectent pas le même format de présentation et

sont parfois incomplètes ou difficilement accessibles par le commun des mortels. Le

but visé est de réaliser des fonctionnalités qui seront intégrées dans ces sites Web

afin de corriger ces insuffisances. Ces fonctionnalités doivent permettre à terme de

mettre en place un site portail des services publics.

Le but visé est de permettre aux citoyens dans le cadre des démarches

administratives, d'éviter les déplacements préliminaires visant à s'informer sur les

services offerts par l'administration, sur leurs droits et devoirs ou sur les procédures

réglementaires à l'obtention des documents désirés.

2. Contraintes à respecter

Le travail consiste à développer des fonctions qui satisfont aux sous-thèmes. Ces

fonctions seront intégrées aux sites Web ministériels. Ces sites Web tournent

actuellement sous le gestionnaire de contenu OpenCms (Content Management

System) qui s'appuie sur les technologies J2EE (JSP, Servlets, JavaBean) et XML.

Par conséquent, les fonctions à réaliser se feront avec les langages Java, XML et

HTML, JavaScript.

Un soin particulier doit être apporté à la documentation (production de la javadoc)

afin de faciliter la maintenance du système logiciel.

Mémoire de fin d'études Page 12/117

Page 15: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

C'est également le cas pour la sécurité car le système est ouvert à Internet.

Le langage ou la méthode de modélisation n'est pas imposé. Cependant Java étant

un langage orienté objet, nous utiliserons l'outil de modélisation orienté objet UML

(Unified Modeling Language).

Enfin, dans le but de faciliter la maintenance des fonctions, nous devons choisir un

modèle d'architecture logiciel clair, connu par un grand nombre de développeurs et

applicable au développent Web. Le modèle de développent en couche « MVC » et la

framework « Struts » ont été retenus. Ces concepts seront détaillés dans la suite du

rapport.

III. METHODOLOGIES ET CONCEPTS

1. UML (Unified Modeling Language)

Java un langage purement objet proposé par la société américaine SUN

Microsystems. Pour une adéquation avec cette caractéristique objet du langage java,

il convient .de choisir un langage ou méthode de modélisation de système orienté

objet. D'où le choix d'UML. Certes, il existe d'autres méthodes objets de modélisation

comme OMT, 0* mais UML est le plus utilisé pour la construction de système orienté

objet. De plus, il existe autour de ce langage beaucoup d'outil de modélisation visuel

(Rational Rose, ModelMaker, Power AMC ...) qui facile la modélisation.

Par définition, UML est un langage pour spécifier, visualiser, construire et

documenter les artéfacts d'un système logiciel.

UML offre des éléments pour décrire les différents aspects d'un système:

• les diagrammes relatifs à la structure statique

o le diagramme de classe: structure les données du système définies

comme un ensemble de relations entre classes;

Notation d'une classe

Nom+propriété de la classe

Attributs de la classe

Méthodes de la classe

Mémoire de fin d'études Page13/117

Page 16: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

o le diagramme d'objet: illustre des objets et leur relations;

Notation d'un objet

Nom: Classe

Attribut- =valeur-

Attribut, =valeurn

• le diagramme de cas d'utilisation

o intérêt des cas d'utilisation

Les cas d'utilisation présentent les intérêts suivants:

permettre une meilleure structuration des besoins des utilisateurs;

oblige ces derniers à définir clairement la manière dont ils

voudraient interagir avec le système, les informations qu'ils

entendent échanger et ce qui doit être fait pour obtenir les résultats

escomptés;

o définition du concept de cas d'utilisation

Un cas d'utilisation est une unité cohérente de fonctionnalités offert par

un système, un sous-système ou une classe. Cette fonctionnalité se

traduit d'une part par une séquence de messages échangés entre ce

système et un ou plusieurs agents externes (acteurs) et d'autre part

par un ensemble d'actions échangées par le système.

Un cas d'utilisation est symbolisé par une ellipse qui contient son nom.

Nom du Casd'Utilisation

o acteurs

Un acteur est défini par un ensemble cohérent de rôles qu'un utilisateur

ou une entité peut jouer en communiquant avec le système. Un acteur

peut consulter et/ou modifier l'état du système en émettant ou en

recevant des messages susceptibles d'être porteur de données.

Mémoire de fin d'études Page 14 {117

Page 17: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

Il existe deux notations possibles de l'acteur:

« Actor »NomActeur

Ou

NomActeur

o relation des cas d'utilisation

association: représentation de la participation d'un acteur à un cas

d'utilisation, des instances de l'acteur communique avec le cas

d'utilisation;

Acteur A

include: permet d'indiquer qu'une instance d'un cas d'utilisation A

contient également le comportement spécifié par le cas d'utilisation

S",

généralisation: signifie qu'un acteur ou un cas d'utilisation est une

spécialisation d'un autre;

« hérite»

Acteur A

Mémoire de fin d'études

Acteur S

Page15/117

Page 18: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

extends : permet d'indiquer qu'une instance d'un cas d'utilisation B

peut être augmentée (dans certaines conditions) par le

comportement défini par un cas d'utilisation A ;

• le diagramme de séquence: représentation des interactions temporelles entre

objets dans la réalisation d'une interface Homme - Système ou d'une opération;

• le diagramme d'activité: structuration d'une opération en actions;

• le diagramme d'états transitions: représentation du comportement des objets

d'une classe en terme d'états et de transitions d'états;

• le diagramme de collaboration: représentation des interactions entre objets;

• le diagramme de composant: représentation de l'architecture des composants

physiques d'une application;

• le diagramme de déploiement: description du déploiement des composants sur le

dispositif matériel.

2. Processus de développement

Le langage UML est intentionnellement indépendant de tout processus de

développement. Le concepteur ou l'organisation peut choisir le processus de

développement qui lui convient. Toutefois, les auteurs d'UML conseillent l'utilisation

d'un processus dirigé par les cas d'utilisation, centré architecture, itératif et

incrémentaI.

Le processus unifié UP (Unified Process) répond à cette recommandation des

auteurs d'UML. Il est à ce jour le processus le plus utilisé. C'est un patron de

processus pouvant être adapté à une large classe de systèmes logiciels, à différents

domaines d'application, à différents types d'entreprise, à différents niveaux de

compétences et à différentes tailles de projet.

Nous nous sommes inspirés de ce processus pour proposer une démarche pour

notre projet. Nous suivrons les étapes suivantes:

Mémoire de fin d'études Page16/117

Page 19: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

• découverte des besoins

Elle sera pilotée par les cas d'utilisation d'UML. Les diagrammes suivant seront

réalisés:

- diagramme des cas d'utilisation;

- diagramme de séquence (dans certains cas) ;

- nous finirons par l'élaboration d'un planning prévisionnel de réalisation.

• analyse

Diagramme UML à réaliser:

- diagramme d'état transition ou diagramme d'activité (si nécessaire) ;

- diagrammes relatifs à la structure statique (classes, objets).

Par ailleurs nous définirons:

- le modèle relationnel, en transformant le modèle objet (diagramme de classe)

en modèle relationnel grâce au concept de Mapping objet-relationnel ;

- les structures des fichiers XML (si nécessaire). En effet, nous allons dans

certains cas devoir échanger des données avec d'autres systèmes externes

grâce à XML. Il nous faudra donc définir les structures de ces fichiers.

• conception

- définition de l'architecture de l'application;

- diagramme de classe d'implémentation: il s'agira de transformer le

diagramme de classe en un diagramme plus adapté à la programmation en

tenant compte des possibilités et des limites du langage de programmation.

Par exemple, Java ne supportant pas l'héritage multiple, il faudra

transformer le diagramme de classe de sorte à contourner cette contrainte.

On peut également ajouter des classes qui faciliteront le développement.

- diagramme de séquence ou de collaboration: avec une architecture définie,

un diagramme de classe plus proche de l'implémentation, nous pouvons

décrire les interactions entre les composants du système dans la réalisation

des opérations ;

- diagramme d'enchaînement des pages Web;

- diagramme de paquetage;

- diagramme de composants.

Mémoire de fin d'études Page 17/117

Page 20: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

• implémentation

- codage du logiciel;

- production de la javadoc ;

- test unitaire et intégration des différentes couches;

- diagramme de déploiement;

- procédure d'installation.

Ce processus sera utilisé pour la réalisation des quatre sous-thèmes. Cependant,

seuls les diagrammes indispensables à la construction du système seront réalisés.

Implémentation: L.. i ······I_·__

Découverte des besoins

t +:............................ Analyse

t +. . Conception:...............................:.............

1 ! ~ +

3. XML (eXtensible Markup Language)

XML (eXtensible Markup Language) est un standard universel proposé par la W3C

(World Wide Web Consortium) pour la représentation des données. Un document

XML contient à la fois des données et les indications sur le rôle que jouent ces

données.

Nous l'utiliserons pour la réalisation des fichiers de configuration, pour l'échange de

données avec d'autres applications et pour la publication des données sur le Web.

Cette dernière possibilité n'est envisageable que si nous couplons XML au langage

XSLT/XSL-FO.

XSLT (Extensible Stylesheet Language Transformations) est une partie du langage

XSL (Extensible Stylesheet Language). Il permet de transformer un document XML

en un autre document XML, HTML, texte... Il nous permettra de publier directement

des fichiers XML (pour les navigateurs supportant XML) et pour la transformation des

fichiers XML en HTML (pour les navigateurs ne supportant pas XML).

Mémoire de fin d'études Page18/117

Page 21: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

XSL-FO (XSL Farmafting Objects) est également une partie de XSL. Il permet

d'exprimer de manière très précise le rendu d'un document. Nous l'utiliserons pour

générer des documents PDF (format idéal pour éditer des états sur le Web) à partir

de fichiers XML.

Processus de transformation d'un fichier XML en XML, HTML, texte, PDF ... avecles processeurs XSLT et FOP (Formatting abjects Processor)

La manipulation d'un document XML requiert un parseur. A ce jour il existe deux

types de parseur : DOM et SAX.

SAX (Simple API for XML) est une spécification JAVA. Il permet de manipuler des

documents XML sans avoir besoin de construire entièrement la structure du

document en mémoire. Son avantage est le gain en mémoire par rapport à DOM. Il

est léger et rapide. Cependant, il ne permet d'accéder au document qu'en mode

consultation.

DOM (Document Object Madel) est une initiative de la W3C. Il représente un

document XML sous forme d'arbre chargé en mémoire et fournit les interfaces

permettant de le manipuler. Il a l'avantage d'être indépendant du langage de

programmation et permet de modifier la structure d'un document chargé en mémoire.

Cependant il est lent et gourmand en mémoire.

Mémoire de fin d'études Page 19/117

Page 22: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

JOOM est un JSR (Java Specification Request) pour la manipulation de document

XML. Il est léger, rapide, facile d'utilisation et interopère avec DOM et SAX. Nous

choisissons cette API pour manipuler nos documents XML car elle permet de

travailler avec DOM et SAX (on profite ainsi des avantages de ces deux).

4. Java

C'est le langage avec lequel nous allons travailler. Java est un langage purement

objet développé par la société américaine Sun Microsystems. Il fonctionne sur le

principe de machine virtuelle, ce qui rend les programmes java portables. Il nous

servira à écrire nos classes métier, des Servlets (programmes java qui s'exécutent

coté serveur) et à introduire du code dynamique dans nos pages Web.

5. OpenCms

La DELGI, principal hébergeur des sites Web des départements ministériels du

gouvernement du Burkina Faso, a orienté son choix sur le gestionnaire de contenu

OpenCmS dans le but de faciliter la mise à jour de ces sites Web.

OpenCmS est l'acronyme de Open Content Management System. Il est basé sur les

technologies J2EE/XML et requiert un conteneur Web (Tomcat ou autre), un SGBDR

et un serveur Web (Apache ou autre) pour tourner. Il fonctionne à la fois sur un

serveur Windows et Linux.

• Quelques fonctionnalités d'OpenCmS

- environnement de travail sous navigateur Web;

- publication de contenu dynamique et statique;

- workflow de gestion des tâches;

- gestion intégrée des utilisateurs et des permissions;

- mécanisme de modèle (template) en XML ou en JSP ;

- éditeur WYSIWYG, éditeur style MS Word pour la mise à jour des contenus;

- utilisation des standards java et XML.

Mémoire de fin d'études Page 20 1117

Page 23: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

• Architectures d'OpenCmS

Conteneur Web (Apache Tomcat)

OpenCms

JSPIS.NI.t ElNavigateur

Internet ServeurWeb

Application 1Application 2

Base deDonnées

6. Modèl~ de développement en couche MVC

En technologie de conception orientée objet, il est conseillé de ne pas confier trop

d'actions à un seul objet, mais plutôt de répartir les différentes responsabilités

d'actions entre plusieurs objets. MVC (Modèle-Vue-Contrôleur) est un patron de

conception pour le développement d'interfaces utilisateurs (interfaces Web ou non). Il

permet de séparer les données à afficher (Modèle) de la logique de présentation

(Vue) et de la logique de navigation entre les écrans (Contrôleur).

MVC propose trois (3) modules:

• la Vue: c'est l'interface avec laquelle les utilisateurs communiquent avec

l'application. Elle ne s'occupe pas de la gestion ou du stockage des données.

Dans une application Web java, la Vue est représentée par les JSP (Java Server

Page) ;

• le Modèle: c'est l'ensemble des objets qui représentent les données de

l'application à afficher. Il est représenté par les JavaBeans dans une application

Web java ;

• le Contrôleur: il réalise l'interface entre la « Vue» et le « Modèle ». Il reçoit les

requêtes utilisateurs puis détermine quelles parties des objets « Modèle » sont

requis et quelles « Vues » sont à utiliser. Dans une application Web java, le rôle

du contrôleur est assuré par une Servlet.

Mémoire de fin d'études Page21/117

Page 24: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

Requête utilisateur

CONTRÔLEURGestion des événements

MODELELes données à afficher

Schéma du Modèle-Vue-Contrôleur

7. Architecture 3-tiers

L'architecture 3-tiers est une structure logicielle à trois couches: une couche

présentation qui peut être développée en utilisant MVC, une couche logique métier et

une couche base de données.

Requête Http

Réponse Http

Logique présentation Logiquemétier

K=~:> SGBD

Logique BD

Mémoire de fin d'études

Les couches d'une architecture 3-tiers

Page 22/117

Page 25: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Généralités

Principe de l'architecture 3-tiers (cas d'une application Web java) :

La logique présentation est contenue dans un conteneur Web (conteneur

JSP/Servlet).

La logique métier peut également être dans le conteneur JSP/Servlet ou dans un

conteneur JavaBean.

1-le client envoie une requête HTTP à destination d'une Servlet ;

2-la Servlet récupère les données transmises dans la requête HTrp et délègue les

traitements avec/sur ces données à des composants JavaBean ou EJB (Entreprise

JavaBean) ;

3-selon les traitements à effectuer, les composants EJB et/ou JavaBean peuvent

accéder à des sources de données;

4-une fois les traitements terminés, les composants rendent la main à la Servlet en

lui retournant un résultat. La Servlet stocke ce résultat dans un contexte (session,

requête) ;

5-la Servlet transmet la suite du traitement de la requête vers une JSP ;

6-la JSP récupère les données stockées par la Servlet dans un des contextes et

génère la réponse HTTP.

Mémoire de fin d'études Page 23/117

Page 26: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

Mémoire de fin d'études Page 24/117

Page 27: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

• Le domaine d'étude

Le domaine d'étude est la Direction du Recrutement du Ministère de la Fonction

Publique et de la Réforme de l'Etat.

• Les acteurs du projet

Groupe de pilotage

Le groupe de pilotage prend les décisions relatives aux objectifs recherchés. Il

fixe les orientations générales, les délais à respecter et définit les moyens à

mettre en place pour la réalisation du projet. Il est constitué de :

M. Joachim TANKOANO : Délégué Général à l'Informatique;

M. Youssouf OUATTARA : Secrétaire Général du MFPRE ;

M. Isidore OUEDRAOGO : Directeur des Services Informatiques;

M. Edmond NIANDA : Directeur du recrutement;

Groupe de réalisation

Il est chargé de l'exécution du projet: l'étude, la conception et la réalisation

de l'application. Il est composé de :

M. Moustapha BANDE: responsable du département des études et de

l'informatisation de la DELGI ;

M. Hamidou GASSIMBE : étudiant stagiaire.

Groupe des utilisateurs

Le groupe des utilisateurs a un rôle consultatif. Il est chargé de fournir toutes

les informations nécessaires à la bonne conduite du projet. Il intervient aussi

dans la validation des dossiers d'étude produits par le groupe de projet. Il se

compose des informaticiens de la Direction des Services Informatiques du

Ministère de la Fonction Publique, du personnel de la Direction du

Recrutement et du Directeur de la Communication et de la Presse Ministérielle

de la Fonction Publique.

Mémoire de fin d'études Page 25/117

Page 28: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

1. DECOUVERTE DES BESOINS

Le logiciel à développer est une fonctionnalité à intégrer au site Web du Ministère de

la Fonction Publique afin de permettre l'inscription en ligne (via Internet) aux

différents concours d'entrée à la Fonction Publique.

A travers nos entretiens avec les personnes ressources du domaine d'étude, il est

ressorti les points suivants:

• le logiciel à développer devrait être accessible depuis une interface Web à partir

d'un poste disposant d'une connexion Internet;

• il doit offrir des interfaces permettant aux candidats de choisir le concours auquel

ils souhaitent s'inscrire;

• donner la possibilité aux inscrits, d'imprimer un récépissé d'inscription depuis un

navigateur Web;

• permettre aux candidats de suivre leur dossier d'inscription en ligne, à l'aide d'un

système d'identification (mot de passe par exemple),

• introduire un volet administration pour permettre l'ouverture/clôture des

concours;

• permettre de transférer les données relatives aux inscrits vers une base de

données quelconque ou d'en importer;

Par ailleurs, il a été demandé de réfléchir sur un procédé d'inscription sécurisée, un

procédé qui évitera les inscriptions fictives par la mise en place d'un système

d'authentification souple du candidat qui s'inscrit.

Nous avons proposé les deux solutions ci-dessous qui ont été retenues:

• les candidats s'inscriront au moyen d'un numéro de timbre spécial qu'ils devront

acquérir auprès des institutions publiques;

• les candidats pourront également s'inscrire auprès de tiers de confiance: des

centres multimédias auxquels le Ministère de la Fonction Publique aura donné

son agrément.

Mémoire de fin d'études Page 26/117

Page 29: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

1. Diagramme de cas d'utilisation

a. Les acteurs de notre système et leur rôle

• les acteurs principaux (ceux qui exploitent directement les fonctionnalités

principales du système) ;

o Candidat:

il peut consulter la liste des concours ouverts;

il peut s'inscrire à un concours ouvert au moyen d'un code

d'inscription (figurant sur un timbre spécial à gratter);

demander des informations sur la procédure d'inscription;

demander des informations sur un concours;

demande à consulter son dossier s'il est déjà inscrit;

demander à réimprimer un récépissé d'inscription s'il est déjà

inscrit;

o Tiers de confiance:

il peut inscrire un candidat sans code d'inscription mais en

s'authentifiant;

imprimer un récépissé d'inscription pour un candidat qu'il a inscrit;

consulter les concours ouverts.

• les acteurs secondaires (ceux qui sont chargés de l'administration ou de la

maintenance du système) ;

o l'administrateur du système

initialise/paramètre le système;

ouvre/clôture un concours;

valide/refuse les demandes d'inscription;

exporte/importe des données;

Il peut également effectuer les mêmes tâches que l'agent de saisie.

o l'agent de saisie (autre que l'administrateur)

édite des listings de la répartition des secrétaires de séance et des

présidents de jury ;

édite les listes des candidats (liste de la répartition des candidats

par sous-centre, listing des noms et prénoms des candidats par

sous-centre) ;

ajout de candidats inscrits offline au système.

Mémoire de fin d'études Page 27 1117

Page 30: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

b. Le diagramme

Le candidat ou le tiers de confiance remplit un formulaired'inscription.

<lnelude>

Editer récépissé d'inscription <hérite>

Tiersde confiance

<include>

(3<hénte>

Consulter

<hérite>

<extends>

<hérite>

~Candidat'

Candidat déjà inscrit

1

L_________ _

I~e candid~t déjà inscrit -::it-s'authentifier pour consulter son dossier d'inscription.Le tiers de confiance doit également s'authentifier pour inscrire des candidats

Mémoire de fin d'études Page 28 /117

Page 31: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

Agent de saisie <include>

<extends> <include>

<include>

Toutes les tâches àeffectuer par

l'administrateur oul'agent de saisienécessitent une

authentification parmot de passe

<hérite>

<include>

<lnclude>

<inciude>

Administrateur

<include>

<inciude>

L'administrateur devrapréciser le libellé du

concours et son centrepour les

l 'exportationli mportationde données, ou

l'ouverture d'un concours.

Paramétrer le systéme : c'est définir des concours, leurs types, les ministéres concernéspar cesdits concours; définir les utilisateurs et leurs droits; définir les para métresd'accès au serveur Mail pour l'envoi de courrier de confirmation des inscriptions

(courrier envoyé lorsde validation des demandes)

Mémoire de fin d'études Page 29/117

Page 32: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

c. Description textuelle des cas d'utilisation

Le cas d'utilisation est détaillé en un ou plusieurs scénarii. Un scénario est une suite

d'échanges entre des acteurs et le système pour décrire un cas d'utilisation dans un

contexte particulier. C'est un enchaînement précis et ordonné d'opérations pour

réaliser le cas d'utilisation.

La spécification de tous les scénarii est difficile, voire impossible. Nous avons donc

sélectionné les plus fréquents (scénario optimal) et les plus pertinents.

Titre S'inscrire à un concoursRésumé Ce cas d'utilisation permet à un candidat d'adresser un dossier

d'inscription électronique au MFPREActeurs Candidat, Système Informatique (SI)Date de création 05 août 2005Version V 1.0Scénario nominal 1-le client demande la liste des concours ouverts

2-le SI affiche la liste (A1)

3-le candidat choisit un concours4-le SI demande au candidat de remplir le formulaire d'inscription5-le candidat remplit le formulaire et le soumet au système6-le SI vérifie les informations du formulaire7-le SI demande au candidat de confirmer la demande d'inscription (A2)

8-le candidat confirme la demande d'inscription (A3)

9-le SI enregistre les données du formulaire puis édite un récépisséd'inscription pour le candidatFIN

Scénario alternatif (A1) : Aucun concours ouvertCe scénario commence au point 1 du scénario nominal2-le SI indique qu'aucun concours n'est ouvertFIN

(A2) : données du formulaire non valideCe scénario commence au point 6 du scénario nominal7-le SI informe que des données du formulaire sont erronéesCe scénario reprend au point 4 du scénario nominal

(A3) : infirmation du candidatCe scénario commence au point 7 du scénario nominal8-le candidat demande l'annulation de l'inscription9-le SI annule la procédure d'inscriptionFIN

Mémoire de fin d'études Page 30/117

Page 33: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

Titre Inscrire un candidatRésumé Ce cas d'utilisation permet à un tiers de confiance de s'authentifier pour

inscrire des candidatsActeurs Tiers de confiance (TC), Système Informatique (SI)Date de création OS août 200SVersion V 1.0Scénario nominal 1-le TC demande à s'authentifier

2-le SI système affiche l'interface d'authentification3-le TC saisit ses références4-le SI vérifie la validité des références saisiesS-Ie SI affiche la liste des concours ouverts (Al)6-le TC choisit un concours7-le SI demande au TC de remplir le formulaire d'inscriptiona-le TC remplit le formulaire et le soumet au système9-le SI vérifie les informations du formulaire10-le SI demande au TC de confirmer la demande d'inscription (A2)

11-le TC confirme la demande d'inscription (A3)

12-le SI enregistre les données du formulaire puis édite un récépisséd'inscriptionFIN

Scénario alternatif (Al) : référence non valideCe scénario commence au point 4 du scénario nominalS-le SI indique que les références saisies ne sont pas valides (A12)

Ce scénario reprend au point 2 du scénario nominal

(A12) : Aucun concours ouvertCe scénario commence au point S du scénario alternatif (Al)S-Ie SI indique qu'aucun concours n'est ouvertFIN

(A2) : données du formulaire non valideCe scénario commence au point 9 du scénario nominal10-le SI informe que des données du formulaire sont erronéesCe scénario reprend au point a du scénario nominal

(A3) : infirmation du TCCe scénario commence au point 10 du scénario nominal11-le TC demande à annuler l'inscription12-le SI annule la procédure d'inscriptionFIN

Mémoire de fin d'études Page 31/117

Page 34: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

Titre Consulter un dossierRésumé Ce cas d'utilisation permet à un candidat déjà inscrit de consulter son

dossierActeurs Candidat déjà inscrit, Système Informatique (SI)Date de création 05 août 2005Version V 1.0Scénario nominal 1-le candidat demande à consulter son dossier

2-le SI demande ses références3-le candidat saisit ses références4-le SI vérifie la validité des références saisies5-le SI affiche le dossier du candidat (A1)

FIN

Scénario alternatif (A1) : aucun dossier trouvé ou références non validesCe scénario commence au point 4 du scénario nominal5-le SI indique qu'aucun dossier ne satisfait la demandeCe scénario reprend au point 2 du scénario nominal

Titre Editer des listingsRésumé Ce cas d'utilisation permet d'éditer des états: état sur la répartition des

candidats par centre, état sur la répartition des secrétaires de séance etprésident de jury, la liste des candidats par concours et par centre

Acteurs Agent de saisit, Système Informatique (SI)Date de création 05 août 2005Version V 1.0Scénario nominal 1-I'agent de saisie demande à s'authentifier

2-le SI demande ses références3-I'agent saisit ses références4-le SI vérifie la validité des références saisies5-le SI affiche les opérations autorisées pour l'agent (A1)

6- l'agent choisit un état à éditer7-le SI demande de choisir un centre8-l'agent choisit un centre9-le SI lance l'édition de l'étatFIN

Scénario alternatif (A1) : références incorrectesCe scénario commence au point 4 du scénario nominal5-le SI informe que les références sont incorrectesCe scénario reprend au point 2 du scénario nominal

Mémoire de fin d'études Page 32/117

Page 35: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

Titre Ajouter des candidats inscrits « offline »Ce cas d'utilisation permet aux agents du MFPRE d'enregistrement des

Résumé candidats dans le système. Il s'agit des candidats qui ont choisi de s'inscrireselon le mode traditionnel.

Acteurs Aqent de saisie, Système Informatiaue (SI)Date de création 05 août 2005Version V 1.0

1-I'agent de saisie demande à s'authentifier2-le SI demande ces références3-I'agent saisit ses références4-le SI vérifie la validité des références saisies5-le SI affiche les opérations autorisées pour l'agent (Ad6-I'agent choisit l'opérations d'ajout de candidat

Scénario nominal7-le SI demande de choisir le concours et le centre8-l'agent de saisie fait son choix9-le SI demande de remplir le formulaire d'ajout1O-I'agent s'exécute11-le SI vérifie les informations saisies12-le SI enregistrement les données du formulaire (A2)

FIN

(A1) : références incorrectesCe scénario commence au point 4 du scénario nominal5-le SI informe que les références sont incorrectesCe scénario reprend au point 2 du scénario nominal

Scénario alternatif(A2) : données du formulaire non valideCe scénario commence au point 11 du scénario nominal12-le SI informe que des données du formulaire sont erronéesCe scénario reprend au point 9 du scénario nominal

Mémoire de fin d'études Page 33/117

Page 36: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

Titre Valider les demandes d'inscriptionCe cas d'utilisation permet à l'administrateur de valider ou de refuser les

Résumé demandes d'inscription des candidats. A l'issue de cette opération lescandidats sont informés de l'état de leur dossier (accepté ou rejeté)

Acteurs Administrateur, Système Informatique (SI)Date de création 06 août 2005Version V 1.0

1- l'administrateur demande à s'authentifier2-le SI demande ces références3-l'administrateur saisit ses références4-le SI vérifie la validité des références saisies5-le SI affiche les opérations autorisées pour l'administrateur (A1)

6-I'administrateur choisit l'opérations de validation des demandes d'inscription7-le SI demande de choisir le concours et le centre

Scénario nominal 8- l'administrateur fait son choix9-le SI affiche la liste des candidats correspondant au choix de l'administrateur(candidats inscrits dans le centre et pour le concours choisi) (A2)

1O-I'administrateur choisit les dossiers à valider et/ou à supprimer11-le SI valide/supprimer les dossiers en question puis informe les candidatspar courrier électroniqueFIN

(A1) : références incorrectesCe scénario commence au point 4 du scénario nominal5-le SI informe que les références sont incorrectesCe scénario reprend au point 2 du scénario nominal

Scénario alternatif(A2) : aucun candidat trouvéCe scénario commence au point 8 du scénario nominal9-le S\ informe qu'aucun candidat ne répond aux critèresCe scénario reprend au point 7 du scénario nominal

Titre Authentification de l'utilisateurCe cas d'utilisation permet de s'authentifier (mot de passe et nom utilisateur)

1 Résumé pour effectuer des opérations d'administration réservées à un grouped'utilisateur. 1

Acteurs Acent de saisie ou l'administrateur, Système Informatique (SI)Date de création 06 août 2005Version V 1.0

1- l'agent de saisie ou l'administrateur demande à s'authentifier2-le SI demande ces références3- l'agent de saisie ou l'administrateur saisit ses références

Scénario nominal 4-le SI vérifie la validité des références saisiesô-le SI affiche les opérations autorisées pour l'utilisateur (A1)

FIN

(A1 ) : références incorrectesCe scénario commence au point 4 du scénario nominal

Scénario alternatif 5-le SI informe que les références sont incorrectesCe scénario reprend au point 2 du scénario nominal

Mémoire de fin d'études Page 34/117

Page 37: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

Titre Exportation des données

Résumé Ce cas d'utilisation permet à l'administrateur du système d'exporter lesdonnées relatives aux candidats.

Acteurs L'administrateur, Système Informatique (SI)Date de création 06 août 2005Version V 1.0

1- l'administrateur demande à s'authentifier2-le SI demande ces références3- l'administrateur saisit ses références4-le SI vérifie la validité des références saisies5-le SI affiche les opérations autorisées pour l'administrateur (Al)

Scénario nominal 6-I'administrateur choisit d'exporter des données7-le SI demande de choisir le concours et son centre8-I'administrateur fait son choix9-le SI génère un fichier qu'il envoie à l'utilisateurFIN

(Al) : références incorrectesCe scénario commence au point 4 du scénario nominal

Scénario alternatif 5-le SI informe que les références sont incorrectesCe scénario reprend au point 2 du scénario nominal

Titre Importation des données

RésuméCe cas d'utilisation permet à l'administrateur d'importation des donnéesrelatives à la répartition des candidats ou des secrétaires de séance.

Acteurs L'administrateur, Système Informatique (SI)Date de création 06 août 2005Version V 1.0

1- l'administrateur demande à s'authentifier2-le SI demande ces références3- l'administrateur saisit ses références4-le SI vérifie la validité des références saisies5-le SI affiche les opérations autorisées pour l'administrateur (Al)6-l'administrateur choisit d'importer des données

Scénario nominal 7-le SI demande de choisir un centre, la nature des données à importer(répartition des candidats ou celle des secrétaires) et de spécifier le chemind'accès du fichier XML contenant les données8-l'administrateur s'exécute9-le SI essaie de télécharger le fichier sur le serveur10-Le SI informe que le téléchargement s'est effectué avec succès (A2)

FIN(Al) : références incorrectesCe scénario commence au point 4 du scénario nominal5-le SI informe que les références sont incorrectesCe scénario reprend au point 2 du scénario nominal

Scénario alternatif(A2) : échec de téléchargementCe scénario commence au point 9 du scénario nominal10- le SI informe que le fichier n'est pas accessible, est trop volumineux ouqu'il ya un problème de connexion.FIN

Mémoire de fin d'études Page 35/117

Page 38: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

2. Planning

Les cas d'utilisation ont permis de dégager les fonctionnalités du futur système, et

d'évaluer le travail à réaliser, ce qui nous permet d'élaborer un planning de

réalisation.

Etape Période Durée (semaine)

Découverte des besoins 01 août - 07 août 200S 1

Analyse 08 août - 21 août 200S 2

Conception 22 août - 04 septembre 200S 2

implémentation OS septembre - OS octobre 200S 4

Mémoire de fin d'études Page 36/117

Page 39: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

II. ANALYSE

1. Diagramme d'activité

Le but de ce diagramme est d'aider à mieux décrire le comportement d'une méthode

ou d'un cas d'utilisation. Il permettra d'avoir une meilleure représentation des

enchaînements des tâches réalisées pour remplir une fonction.

Authentification d'utilisateur

•[demande .authentiûcation]

SI demande la saisie du nom utilisateur et du mot de passe

[saisie effectuée]

Vérification du nom utilisateur et du mot de passe

[utilisateur trouvé] [références erronées pour la 1ére, 2éme, 3éme fois]

[références erronées pour la 4éme fois]

Afficher les opérations autorisées pour l'utilisateur

Mémoire de fin d'études

SI informe l'administrateur par Email SI indique que "utilisateur est introuvable

Page 37/117

Page 40: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

S'inscrire à un concours

•[demande une inscription]

Rechercher les concours ouverts

[concours trouvé(s)]

[non trouvé]

Afficher les concours ouverts '1- ~- ---

~~ ---l~ncoursc~~:l

______-.---:L ~

~~ Demander le remplissage du formulaire

[précédent]

[quité]

[tormutaire rempli]

~-~ -_.~-_.._----

Verifier le remplissage

[bien rempli][mal rempli]

Informer qu'aucun concours n'est ouvert

Vérification cotéclient, puis coté

serveur

- ~~ ~ - ~ ---------

SI informe que le formulaire est mal rempli

Mémoire de fin d'études

SI demande confirmation

[confirmé]

imprimer récépissé d'inscription

Un récépissé auformat PDF est

envoyé à l'utilisateur(au navigateur web)

Page 38/117

Page 41: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

Ajouter des candidats inscrits « offline »

•[opération d'ajout de pndidat choisie]

i________________. . -'1'_

SI demande de choisir une session, un concours et un centre

[choix effectué]

SI Demande de remplir le formulaire

[quitté]

[quitté] __o.

[précédent][formulaire rempli)

'1______----Ï _

Verifier les informations du formulaire

rI

Vérification coté client puiscoté serveur. Vérifier si les

informations obligatoires sontsaisies dans le format attendu

[no ok)

informer que formulaire mal rempli

[ok]

Verifier l'unicité du W d'inscriptionVérification coté serveur,

Vérifier si le N'd'inscription n'a pas déjàété attribué à un candidat

[doublon) [unique]

SI indique un problème de doublon, echec enregistrement SI enregistre le formulaire

Mémoire de fin d'études Page 39/117

Page 42: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

Consulter un dossier

[demande consulation)

SI demande de choisir la session, le concours et le centre, le N°inscription et de la pièce

[choix effectué]

Rechercher du candidat

-T

[quitté]

afficher le dossier du candidat

[non trouvé],

informer que le candidat n'existe pas 1

[trouvé]

[précédent) [quitté] -.[récépissl1 demandé]

\i/imprimer récépissé

Mémoire de fin d'études

[précèdent] [quitté]

Page 40 1117

Page 43: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

Valider les demandes d'inscriptions

•[demande opèràtion de validation]

SI demande de choisir la session, le concours et le centre

[choixèffectué]

__ , "-~ o_ _

l, Rechercher les candidats 1

[quitté]

[trouvé][non trouvé]

infonner que pas de candidat afficher liste des candidats -.[quitté]

[suppression choisie]

[validation choisie]

__~I _

valider la selection

------------\---\1

l

Envoyer courrier de confinnation aux candidats

l'v

Demander confinnation

[accord defavorable]

Mémoire de fin d'études

--------- --- - ----~--_.-

Envoyer courrier de rejet de candidature

[accord favorable]

SI supprime la selection

Page 41 /117

Page 44: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

2. Diagramme de classe

a. Diagramme

Sous-centre-code: String-libelle: String-capacite : Integer

ol1'lÇlose~ 1-est ouvert pour Session

-code: String_este • -libelle: String

-est ouvert 1..Centre

-code: String1...-libelle: String

+getSousCentreO : abject ..... 1...i ....

Candidat-numeroDossier : Integer Concours -correspond à

-nom: String -code: String TypeO... 1..1 -code : String

-prenom: String i -libelle: String 1... 1..1-dateNaissance : String -oateouverture : Date -libelle: String

-s'inscrit -dateCloture : Date-reference : String-lieuReference : String -etat: Boolean

-dateRefence : String +cloturer_ouvrirO : void1... 1..1-lieuNaissance : String +getCentreO : abject Communiqué

-courriel : String +getSessionO : abject -code: String-numeroDiplome : String +getMinistereO : abject -est ouvert par -libelle: String+getConcoursO : abject +getCommuniqueO : abject -contenu: abject

t 1...Candidat-lie

1

1 Ministère-est organisé pourO... -code: String1..1 -est en realtion 1..1

-libelle: String

Tiers-confiance-code: String-libelle: String-reference : String-localisation: String

b. Description des classes

Les rôles de ces classes, la description de leurs attributs et méthodes seront dans

la «javadoc » que nous produirons lors de la phase d'implémentation.

Mémoire de fin d'études Page 42/117

Page 45: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

3. Modèle relationnel

session

concours_session

-

,code varchar(10) ~libelle varchar(30)

'Ik_ses!ion varchar(10) <lk1 >Ik_concours varchar(10) <1k2>

L . __

code varchar(1 0) ~libelle varchar(30)contenu text

~---

type

ministerei code varchar(10) ~'libelle varchar(30)

communique

__ code varchar(1 Dl ~

libelle varchar(30)

,REFERENCE

REFERENCE

REFERENCE

REFERENCE

REFERENCE

varchar(1 0) ~varchar(10) <lk1> _varchar(10) <1k2>varchar(10) <1k3>varchar(30)datedateboolean

REFE~ENCE

1 centre concoursIlk c~~tre -- -~a;:cha~1C) <1k1 >

! Ik=concours varchar(10) <1k2>--------------- ---------

_____.t ~_,

concoursREFERENCE

'---------- ---- ----------- ------ --codeIk_type

, Ik_minislere, Ik_communiquelibelledateouverturedatecJotureetat

REFE~ENCE

sous-centre

-- _J "]tiers-confianc~

---------- --------

code <Non délini> ~libelle <Non défini>

1 relerennce <Non défini> 1

: localisation <Non défini> 1

centrecode varchar(5) ~ , ,Ik_centre varchar(10) <11ç>- ----REFERENCE--rCOde ---;~iCh--;ril6)~'libelle varchar(5) ~ libelle varchar(30)

capacite int ------ -------.----------

REFERENCE REFE~ENCE------

candidati - .-.---------~1 numedos!ier varchar(10) ~ 1

numerotimbre varchar(10)Ik_concours varchar(10) <lk1 >Ik_centre varchar(10) <1k2>

i Ik_tiers <Non défini> <1k3>, nom varchar(30)

i prenom varchar(30)dalenaissance date

i lieu naissance varchar(30), relerence varchar(10)Ilieurelerence varchar(30)courriet varchar(30)numdiplome varchar(10)

4. Structure des fichiers XML

Notre système échangera des données avec un autre en cours de développement. Il

s'agit du Système Intégré de Gestion des Concours (SIGC).

Il offrira une interface d'extraction des données sur les candidats inscrits en ligne

pour le SIGC.

Le SIGC disposera d'un module d'aide à la décision pour répartir les candidats par

sous-centre (à l'aide des données importées de notre base données).

Le SIGC devra par la suite nous envoyer cette répartition qui servira à produire des

états sur le Web au format PDF, l'objectif étant de permettre aux centres abritant les

concours, disposant de connexion Internet, de pouvoir éditer des états. En effet,

certains centres hors de la capitale ne sont pas sur le réseau informatique de la

Fonction Publique. Par conséquent, ils ne pourront pas accéder au SIGC, d'où la

délégation de l'édition des états à notre système ouvert à Internet, à tous les centres

hors la capitale.

Mémoire de fin d'études Page 43/117

Page 46: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

Outre la répartition des candidats par centre, notre système offrira la possibilité

d'éditer d'autres états tels que la répartition des secrétaires et des présidents de jury

dans les différents centres. Pour ce dernier, notre système recevra des données en

provenance de SIGC qui lui permettra de produire les états, et cela dans l'objectif de

permettre un accès plus large aux états produits.

Pour ce faire, nous avons choisi d'utiliser XML pour l'échange des données. Chaque

fichier respecte un schéma connu des deux systèmes. Pour produire les états au

format PDF, nous utilisons des fichiers de présentation XSL-FO que nous ne

présenterons pas dans ce rapport de synthèse.

a. Grammaire et schéma des fichiers XML pour l'exportation de données contenues

dans les tables

Comme HTML, XML est un langage à balises. Nous allons décrire la grammaire des

balises des documents XML en utilisant les DTD (Document Type Definition). La

DTD permet de définir les éléments et les attributs avec leurs imbrications

éventuelles. Elle précise aussi le fait que les éléments sont facultatifs, obligatoires ou

répétés; pour cela, les opérateurs + (signifiant 1 à N) et * (signifiant 0 à N) sont

utilisés dans la DTD. 1/ est possible de rendre obligatoire certains attributs en

choisissant l'option #REQUEREO. Nous utilisons dans nos DTD, les deux types de

base: #PCOATA (élément de texte sans descendant ni attribut contenant des

caractères à analyser) et COATA (données brutes entres guillemets qui seront prises

en compte comme un texte sans autre analyse).

Une table de notre base de données a un titre, des attributs et éventuellement des

données. La DTD ci-dessous décrit une table comme un ensemble composé d'un

titre, d'un attribut et de plusieurs lignes qui sont des ensembles. Le titre est une

chaîne de caractères quelconques (PCOATA). L'attribut et la ligne sont composés de

cellules. Une cellule est une chaîne de caractères.

Mémoire de fin d'études Page 44/117

Page 47: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

• Grammaire

<?xml versione'ttO'' encoding="ISO-8859-1"?>

<!ELEMENT table (titre, attribut, ligne+»

<!ELEMENT titre (#PCDATA»

<!ELEMENT attribut (cellule-)

<!ELEMENT ligne (cellule-s)

<!ELEMENT cellule (#PCDATA»

• Schéma

Le schéma est plus précis que la grammaire. Il donne plus de détails sur le type des

données (entier, chaîne de caractère ...). Nous l'avons réalisé avec l'outil Altova

XMLSpy.

type . ing~~--.--~ --~'r~~~~·'-~

AiF"..'f"'::'i·;P" i r.-.tn'ctionL1_....1 t{<_.!.,i _! t ~

1.,00

1..œ

Mémoire de fin d'études Page 45/117

Page 48: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

b. Grammaire et schéma des fichiers XML contenant des données sur la répartition

des candidats par centre et sous centre

En fonction du nombre de candidats inscrits, les organisateurs du concours évaluent

le nombre de jours nécessaires pour le déroulement des épreuves écrites et/ou

orales. Chaque journée fait l'objet de plusieurs programmations. La programmation

consiste à répartir les candidats (par tranche de numéro) qui prendront part à un

concours dans un sous centre. Le nombre de surveillants et de salles est également

défini.

• Grammaire

<?xml version="1.0" encoding="IS0-8859-1"?>

<!ELEMENT repartition (commentaire, journee-s)

<!ELEMENT commentaire (#PCDATA»

<!ELEMENT journee (proqrarnrnation-)

<!ATTUST journee CDATA #REQUIRED >

<!ELEMENT programmation (sous-centre, concours, tranche-numero, nombre­

surveillant, nombre-salle»

<!ELEMENT sous-centre (#PCDATA»

<IELEMENT concours (#PCDATA»

<!ELEMENT tranche-numero (debut. fin»

<!ELEMENT debut (#PCDATA»

<!ELEMENT fin (#PCDATA»

<!ELEMENT nombre-salle (#PCDATA»

<!ELEMENT nombre-surveillant (#PCDATA»

Mémoire de fin d'études Page 46/117

Page 49: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

• Schéma

xsstrf.19.. restriction

.xsstmg1""··""<W«"""•.'''«.·.'

!restriction

c. Grammaire et schéma des fichiers XML contenant des données sur la répartition

des secrétaires dans les centres

Cette répartition des secrétaires de séances et des présidents de jury est similaire à

celle des candidats.

• Grammaire

<?xml version="1.D" encoding=" ISO-8859-1"?>

<! ELEMENT repartition (commentaire, journee-)

<! ELEMENT commentaire (#PCDATA»

<! ELEMENT journee (proqrarnmation-)

<! AnLiST journee CDATA #REQUIRED>

<! ELEMENT programmation (concours, sous-centre, president, membres»

Mémoire de fin d'études Page47/117

Page 50: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

<! ELEMENT concours (#PCDATA»

<! ELEMENT sous-centre (#PCDATA»

<! ELEMENT president (#PCDATA»

<! ELEMENT membres (rnernbre-)

<! ELEMENT membre (#PCDATA»

• Schéma

; $OIls-.:elltJe .....

[' (Ç t;;~~;à~n

"'::;:;;::==:;o;;r!I-(3r-I;progJamnl~1Ji1 ..f1:J 1 "f1:J

Mémoire de fin d'études Page 48/117

Page 51: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

III. CONCEPTION

1. Architecture du système

Nous allons utiliser la « framework Apache/Jakarta/Struts » qui fournit un cadre

standard de développement d'applications Web en Java respectant le modèle MVC2.

Ce framework présente également d'autres avantages. En effet, il fournit une Servlet

générique et paramétrable (le développeur n'a pas besoin d'écrire un contrôleur), il

permet de réaliser des formulaires dynamiques grâce à des balises spécifiques, de

construire l'application par module...

Lo2igue métierLo2i(lUe orésentaûon (Framework S truts)1

/ '\ 1

11, Contrôleur 1, r-1 Actionn :11

111 1

1 1,1

1

: 1 Action! 1

1

1 1 1

Serviet 1 Classes1

1 1

1

1 r--+- métier11 --1 Action2 :

111

1,1

Interface -, ./ 1 11 1

~1 1

Classeclient 1 1 r-, .-/, / <,1 11 1 d'accès aux Base de1 1

1 Vue Modèle 1 ~ donnéesJsp, html, xml,

1 1 données1 11

f-~ Beanl1

1

pdf 1

C[Q~r-~ Bean2

1 11

'-~ Beann 1,

11J

1

11

11

Conteneur web JSPiServlet (Tomcat)

Architecture du système (3-tiers)

Description de l'architecture

• la Serv/et prend les informations dont elle a besoin dans un fichier de

configuration appelé struts-config.xml ;

• si la requête du client contient des paramètres de formulaire, ceux-ci sont mis par

le contrôleur dans un objet Bean.

Mémoire de fin d'études Page 49/117

Page 52: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

• dans le fichier de configuration struts-config.xml, à chaque URL devant être

traitée on associe : le nom de la classe de type Action chargée de traiter la

requête, le nom du Bean chargé de mémoriser les informations du formulaire

(cas de l'envoi d'un formulaire au contrôleur).

• muni de ces informations fournies par son fichier de configuration, à la réception

d'une demande d'URL par un client, le contrôleur est capable de déterminer s'il y

a un Bean à créer et lequel. Il créer une instance du Sean et y stocke les

informations provenant du formulaire et contenu dans la requête HTTP. Une fois

crée, le Bean peut vérifier que les données qu'il a stockées et qui proviennent du

formulaire sont valides ou non. Une méthode du Bean appelée « validate » est

appelée par le contrôleur. Si les données se révèlent invalides, le contrôleur

passera la main à une vue dont il trouvera le nom dans son fichier de

configuration. L'échange est alors terminé.

• si les données du Bean sont correctes, ou s'il n'y a pas de vérification ou d'objet

Bean, le contrôleur passe la main à l'objet de type Action associé à l'URL. Il le

fait en demandant l'exécution de la méthode « execute » de cet objet à laquelle il

transmet' la référence du Bean qu'il a éventuellement construit. C'est dans cette

méthode « execute » que le développeur fait éventuellement appel à des classes

métier ou à des classes d'accès aux données. A la fin du traitement, l'objet

Action rend au contrôleur le nom de la vue qu'il doit envoyer en réponse au

client.

• le contrôleur envoie cette réponse. L'échange avec le client est terminé.

Description plus technique de la logique présentation

1:re(luète Http

6:Reponse Http(html, XMl, PDF)

5:Fkhiel JSP é vo qu é3:appel Action

,L :

i Modèle

111

rC';;;:;t'~'ôï'~'~'~""':--"""""""""" ~ ~.::;.:::.~.~~ ······..················~·····~·~l- F·~·················V~~·················

, , , 1: --

1Iii 1Il! 1

••••••••••••••••••••••••••••••••••••.•••••••••••••••••••••••1 : •••.••••••••••••••••••••••1•••••, , 1, , 1

2:Bean : 4:Be.ln: ..fonnulahe crée : résuttat clée :

, 1.......................................··..··········1 .

, 1, 1

Mémoire de fin d'études Page 50 1117

Page 53: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

1. le client envoie une requête à l'application. La requête est prise en charge par la

Servlet d'entrée (Contrôleur Struts) ;

2. la Servlet stocke les données de la requête dans un objet javaBean (si la requête

contient des données) ;

3. la Servlet d'entrée analyse la requête et réoriente celle-ci vers un contrôleur

adapté (objet Action) ;

4. le contrôleur sélectionné par la Servlet d'entrée est responsable de l'exécution des

traitements nécessaires à la satisfaction de la requête. Il sollicite les objets métier

lorsque nécessaire. Ces objets métier lui fournissent des données qu'il encapsule

dans des javaBeans ou dans des variables sessions;

5. le contrôleur sélectionne la JSP qui sera en charge de la construction de la

réponse et lui transmet éventuellement les JavaSean contenant les données

métiers;

6. la JSP construit la réponse en faisant appel aux javaBeans ou aux variables

sessions qui lui ont été transmis et l'envoie au navigateur Web;

Apport de la framework Struts

L'apport le plus significatif de Struts est la structuration de la couche de présentation

des applications suivant le pattern MVC2. Le développeur est bien mieux guidé dans

sa tâche. En général, il lui suffit de personnaliser les actions pour les traitements

adéquats des requêtes. Il en découle un développement plus efficace mais

également une meilleure homogénéisation du code des applications.

On aboutit facilement à une application robuste, évolutive et maintenable avec un

niveau d'expertise minime.

La méthodologie de développement Struts :

• la définition des « Vues ». On distingue les « Vues» qui sont des formulaires

et lep autres.

o chaque« Vue» formulaire donne naissance à une définition dans le

fichier struts-config.xml. On y définit les informations suivantes:

le nom de la classe Sean qui contiendra les données du formulaire

ainsi que l'indication sur le fait que les données doivent être

vérifiées ou non. Si elles doivent être vérifiées et qu'elles s'avèrent

invalides, on doit indiquer la vue à envoyer en réponse au client;

Mémoire de fin d'études Page 51/117

Page 54: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

le nom de la classe Action chargée de traiter le formulaire;

le nom de toutes les vues susceptibles d'être envoyées en réponse

au client une fois que la requête a été traitée. La classe Action

choisira l'une d'elles selon le résultat du traitement;

o chaque vue fait l'objet d'une page JSP ;

• l'écriture des classes JavaBean correspondant aux « Vues» formulaires;

• l'écriture des classes Action chargées de traiter les formulaires;

• l'écriture des éventuelles classes métier ou d'accès aux données.

Les composants (JSP, JavaBean, ServIe!, classes métier) de l'application

ClassesVue (J5P) Bean Action

métier

Concours

concours.jsp ConcoursAction,

xMinistere

• Type

ConcoursficheJnscription.jsp fiche_inscriptionBean fiche_inscriptionAction

, Centre

confirmation .jsp x confirmationAction

recepisser.jsp recepisserBean recepisserAction Candidat

Concours

. Type,

Ministere

info30ncours .jsp info_concoursBean info_concoursAction , Sous-

centre,

Centre,

Session

Concoursdemande_consu Itation.jsp x demande_consultationAction

, Centre

Candidat,

fiche_consultation .jsp fiche_consultation Bean fiche_consultationAction Centre,

Session

teleJnscription.htm x x x

condition-generale.htm x x x

x x x

p_administration .jsp p_adm inistrationAction

Mémoire de fin d'études Page 52/117

Page 55: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

p_parametrage.jsp X X X

p_centre.jsp p_centreBean p_centreAction Centre

p_ministere.jsp p_ministereBean p_ministereAction Ministere

P30ncours.jsp p_concoursBean p_concoursAction Concours

p_serveur_stmp.jsp p_serveur_stmpBean p_serve ur_stmpAction X

pJancement_concours.jsppJancement_concou rs

Action

1

Bean

1 p_type.jsp p_typeBean p_typeAction

p_choix_session_concours_ce

1

p_choix_session_concoursAc 1 ConcoursX

ntre.jsp tien , Centre

p_ajout_candidat.jsp p_ajout_candidatBean p_ajout_cand idatAction Candidat

p_choix_validation.jsp X p_choix_validationAction Concours

1

Concours

1

p_validation.jsp X p_validationAction, Centre

p_choixJisting_candidat.jspp_choix_listing_candidatActio

Centren

Candidat,

Centre,pJisting_candidat.jsp pJisting_candidatBean pJisting_candidatAction

Sous-

1

Centre

Centre,

p_repartition-candidatActionSession,

p_repartition-candidat.jsp xSous-

1

Centre

Centre,

Session,p_repartition-secretaire.jsp x p_repartition-secretaireAction

Sous-

Centre

Centre,p_choix_exportation.jsp x p_choix_exportationAction

Concours

p_exportation.jsp p_exportationBean p_exportationAction Candidat

upload.jsp uploadBean uploadAction Candidat

Ce tableau contient toutes les vues JSP de notre application, il fait la

correspondance entre l'objet Vue (JSP), l'objet Bean qui stocke les données (cas de

l'envoi d'un formulaire), l'objet Action qui traite les données et interagit avec les

objets métier pour extraire ou enregistrer des données dans la Base de données.

Mémoire de fin d'études Page 53 /117

Page 56: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

2. Diagramme de classe d'implémentation

Sous-centre-code: String-libelle: String-capacite: Integer

1..*

-est ouvert pour Session,- -"p-.....de : String

1..* -libelle: String

Communiqué

Ministére

-code : String-libelle: String-contenu: Object

1..*

1..*

'----f---1L----"/_-I-code : String-libelle: String

-est ouvert

1..*

Concours

+c1oturer_cuvrirt) : void+getCentreO : Object+getSessionO : Object+getMinistereO : Object+getCommuniqueO : Object

1..1

,- ~N+chargerAvecIDnhn, nnnt) : Modele+enregistrerO : void+modifierO : void-supprirnert) : void

-code : String-libelle: String

1----->\'---":-'-----+-dateOuverture : Date-dateCloture : Date-etat : Boolean

0..*1..1" -est en realtion

Candidat

Tiers-confiance-code: String-libelle: String-reference : String-localisation: String

-numeroDossier: Integer-norn : String-prenom: String-dateNaissance : String-reference : String-lieuReference : String-dateRefence : String

1

-lieuNaissance : String-courriel : String-numeroDiplome : String+getConcoursO : Object

Mémoire de fin d'études Page 54/117

Page 57: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

3. Diagramme de séquence

a. Diagramme de séquence générale

I~Irequête : bean = new BeanO,

bean.setAttribut1 (att1)---,--~

bean.setAttribut2(att2)

v = baan.validateï)

appel de la page jsp è retourner au navigateur

bean.getAttribut1

bean.getAttribut2attxx = • obj.getAttributXX()

• session.setAttribute("attyy", attxx)

'sesslon getAllribute("attyy"

reponse

, - Les ContrOleurs : Servlet (contrOleur principat). Action

1

· - Le Modèle: Bean- La Vue: Page.jsp

1

NB: L'objet HttpSession est accessibleè la fois par le ContrOleur, le Modèle et la Vue

~--~~~--._-~~--~-- -- -- ~-- -

Mémoire de fin d'études Page 55/117

Page 58: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

b. Quelques exemples

1 Ser:'let 1

requête 'action = new Action() r-------,, ConcgufllAction

Demande de la liste des concoursouverts

URLvue = aetionexecuteo

Mémoire de fin d'études

c = new Concourst) ,----------,

session setAttribute("llste", liste)

appel de la page jsp à retourner au navigateur

Page 56/117

Page 59: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

1 Servlet 1

envoiformUlairel bean = new Beanoj. .',1ConfirmationBean

rbean.setCentre(centre) Envoi et enregistrement d'un

bean.setDiplome(diplome)formulaire d'inscription

bean.setNumero(numero)

bean.setNom(nom)

bean setPrenom(prenom)

bean.selLieuNaiss(lieunaiss)

bean.setOateNaiss(datenaiss)

bean.setPiece(piece)

bean.se(email(emaj~

v = bean.validateO

action= new ActionQ.1 ConfirmationAction 1

URLvue =aet.ion.e~eJute(request, beao)

bean.getCentreO(

bean.getDiplomeO

bean.getNumeroQ

bean.getNomO

bean.getPrenomO,

bean.getlieuNaissO

bean,getOateNaiss()

bean.gelPieceQ

bean.getEmailOc =newCandidatO

JCandidatl

c.setAttribut(nom, prenom,. , emai':

9c.enregistrer{) ) IlHttpSessiOnl

sesslcn.setxttnouter'candcat". c) I~

appelde la pagejsp " retournerau navigateur'1 recepisse.lsp

c=slsLn.getAuributel,,:lldatl

J r..1 envoidu répissésousformede fichier PDF P

1 1

xml=creerXML(c)

pdf=creerPDF(xml)

Mémoire de fin d'études Page 57 /117

Page 60: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

4. Diagramme d'enchaînement des pages Web

concours.jsp

teleJnscription.htm info_concours.jsp

~fiche_insettption.jsp

..mr~":./--.,

communiqué.pdf

fiche_consultation.jsp

....... ?).. '.'..'..:....."'"Récépissé.pdf

p_authenflcation.jsp

.. "... i •1

1

p_choix_exportation.jsp

~r i ..'_.__ .

I::::J

y

p_concours.jsp

+!

p_administration.htm

p_validation.jsp

"1

~.{..~.. - ,<...~_.-- ":

c::::::.::Jp_ministere.jsp

1-~.------'"..--------.-----..--------.----r----.-------..------r----.-------.---.---r---

pJancer_Gjlncours.jsp

~." . '. " . '...'...•....•.'.•.'..•.,..r-·"---- •.•.•, ]

p_centre.jsp

p_centre_concours.jsp

Légende p_exportation.jsp

§:r ' .r~"~~-~

c:::.J

Formulaire

repartition_candidat.pdf listin9_candidat.pdf

"

repartition_secretaire.pdf

Mémoire de fin d'études Page 58/117

Page 61: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publigue

5. Diagramme de paquetage

'.. . ... . . ...

•• Q~g~~pach~;~~I~n·· .

•• ·coJn~lny~qI4dbc •...................

~~~~_....ioi_-_..._-_-_..._-_-_....... ~................. _

1 irnport» ..•....----------------~~.~.....~-~---_.

lfp.gov.bf.concours.online.metier

+Candidat+Candidat-Iie+Concours+Centre+Sous-centre+Session+Type+Communique+Ministere+Tiers-confiance+Modele

1

fp.gov.bf.concours.online.controleur

~, ,"'~ccess », , ,

"1

fp.gov.bf.concours.online.modele

L-- ~~----------------

+ Fiche_inscriptionBean+ RecepisserBean

« access»

1+- - - - - - + ConcoursAction+ Fiche_inscriptionAction+ RecepisserBean

+ Info_concoursBean + Info_concoursAction

111

<q import»1

. ..~

.·:·.·.·t·.··

:: ~rg~~p~ch~.str~ts.:actiO., ••• ••••·.: ACtionServlet::.Action:: .. .•• AcfI9n.F,orrit •• ••· •......::Actlt'nMapping••• ••• ActÎ~nf()~~td.·:.·

\\

\\

~{mport »

....... \ ......................., .

.... r.:

·.·t·.·.··

1« irnport »

1

•()rg;âpari~~ •.~truts:~tii.. .....:::Ge:ner.iCDataSource:.::~::::· :::

. . . . . .............

•• ()rg :ilpa~h~~st1uts: "aii~ator::: •• ··.l.[)y~a\jalidéltorfor~. .. .:::: •.•. :.:.:.: .•.•..

. . . . . . . . . .. . . . . . . . .. . . . . . . . . . . . . . . ................. .

1·.·· ......•.•.•.•.• ·1 Paquetage télécharger sur Internet, non disponible dans le J2sdk

1 1 Paquetage développé, propre à l'application

Mémoire de fin d'études Page 59/117

Page 62: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

6. Diagramme de composants

1

Comp os anrs

Sous-systemes

/oépen d ance1 ...

1 •1 11 couche logique métier ~~

1Objet d'ac,cès1 1Objets métier 1f--~ IilUX donnees

1 1 1 1~

1

~1

1 /

r-------------.J

SGSD

Couche de persistance

JDSC61 -~~qJ-

Mémoire de fin d'études Page 60 1117

Page 63: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

IV. IMPLEMENTATION

Cette phase a consisté à la réalisation (codage, intégration et test) de l'application

Web. Nous expliquons comment déployer, installer et configurer le logiciel.

1. Diagramme de déploiement

Composonts

Noeuds

/

iServeur httl) AI)aehe

ContigUlatiOIldu

:~ lR.ssl)ufcU

11 1 sit.1 1..,

lJ

1

/ ,/

CoottMW JSPiS!ny1!t fTomCat}

11Jak8l1a struts Objets métiers

1 1 1

l .....f"

1 ""1 1couche d'accès V1aux données ~

1!

1 1J 1Machine VIrtUelle Java(JVM)1 1

1.lIIIIl

/ /serveur de bau dt donnks

IS09DR

l~ i=:e 11

1IMvSQL3.23.54

1 1 Données1 1

~

Mémoire de fin d'études Page61/117

Page 64: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

2. Procédure d'installation de l'application

L'application a été testée sous Windows XP service pack 2 et sous la redhat

Entreprise WS avec les logiciels suivant:

Apache Tomcat 5.0.27 : téléchargeable gratuitement à l'url

http://archive.apache.org/dist/tomcat/tomcat-5/archiveIv5.0.27/

j2sdk 1.4.2 téléchargeable gratuitement sur

http://java.sun.com/j2se/1.4.2/download.html

- MySOL 3.23.54 et 4.1.9 téléchargeable gratuitement sur

http://dev.mysgl.com/downloads/mysgl/4.0.html

- OpenCms 5.0.1 également téléchargeable gratuitement sur

http://www.opencms.org/opencms/en/download/archive.htm 1

Pour faciliter l'installation de l'application, les fichiers d'installation ont été regroupés

dans un répertoire nommé concours-fonction-publique dont le contenu est le

suivant:

- concours.zip: contient les pages dynamiques jsp, les images, les pages statiques

html et les fichiers de configuration de l'application;

- blbuotneque : c'est le répertoire qui contient toutes les bibliothèques (.jar)

nécessaires au fonctionnement de l'application;

- script-sql.sql: ce fichier texte contient les instructions SOL pour la création de la

base de données.

Après avoir installé les logiciels ci-dessus (Apache Tomcat, j2sdk, MySOL,

OpenCms) :

- lancer OpenCms ;

- importer le fichier compressé concours.zip en demandant sa décompression

(l'application est ainsi installé, il ne reste plus qu'à le configurer) ;

- après la décompression, OpenCms crée un répertoire concours contenant les

fichiers décompressés. Ouvrez le fichier concours\config.xml pour modifier le

chemin d'accès à la base de données, définir le nom et le mot de passe de

l'utilisateur MySOL qui a droit à la base de données de l'application;

- copier les fichiers du répertoire bibliotheque dans le répertoire lib d'OpenCms ;

Mémoire de fin d'études Page 62/117

Page 65: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Inscription en ligne aux concours de la Fonction Publique

- créer la base de données en exécute les instructions SOL contenues dans script­

scl.sat ;

Redémarrer votre serveur Apache Tomcat et vérifier que l'application fonctionne en

invoquant sur votre serveur l'url http://127.0.0.1 :8080/concours/concours.jsp

(Attention le port 8080 est celui d'écoute de votre serveur, il peut être différent).

Mémoire de fin d'études Page 63/117

Page 66: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

Mémoire de fin d'études Page 64/117

Page 67: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

• Le domaine d'étude

Le domaine d'étude est la Direction des Ressources Humaines du Ministère de la

Fonction Publique et de la Réforme de l'Etat.

• Les acteurs du projet

- Groupe de pilotage

Il est constitué de :

M. Joachim TANKOANO : Délégué Général à l'Informatique;

M. Youssouf OUATTARA: Secrétaire Général du MFPRE ;

M. Isidore OUEDRAOGO : Directeur des Services Informatiques;

M. Prosper KAMBIRE : Directeur Général de la Fonction Publique;

- Groupe de réalisation

Il est composé de :

M. Moustapha BANDE: responsable du département des études et de

l'informatisation de la DELGI ;

M. Hamidou GASSIMBE : étudiant stagiaire.

- Groupe des utilisateurs

Il se compose des informaticiens de la Direction des Services

Informatiques du Ministère de la Fonction Publique, du personnel de la

Direction des Ressources Humaines et du Directeur de la

Communication et de la Presse Ministérielle de la Fonction Publique.

Mémoire de fin d'études Page 65/117

Page 68: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

1. DECOUVERTE DES BESOINS

• Rappel des objectifs

L'objectif est de développer une application Web accessible depuis Internet, qui

permettra aux fonctionnaires de consulter en ligne leur situation administrative,

leur carrière et l'historique de leurs dossiers en cours de traitement. Il s'agit de

mettre à la dispositions des usagers la partie consultation de la base de données

SIGASPE.

• Besoins exprimés

Les personnes ressources du domaine d'étude ont exprimé les besoins suivants:

o permettre aux fonctionnaires de consulter en ligne:

- les informations relatives à leur carrière et à leur situation administrative;

- l'historique de leur dossier (pour ceux disposant d'un dossier en cours de

traitement) ;

d'envoyer des courriers au MFPRE pour signaler d'éventuelles erreurs

constatées dans la base de données ou faire des suggestions;

o trouver un système d'authentification des usagers qui souhaitent accéder au

système dans le but de préserver la confidentialité des informations.

• Présentation de l'existant

-, SIGASPE

Le Ministère de la Fonction Publique et de la Réforme de l'Etat et celui des

Finances et du Budget (MFB) ont mise en place un Système Intégré de

Gestion Administrative et Salariale du Personnel de l'Etat (SIGASPE). L'un

des nombreux avantages de ce système est qu'il offre la possibilité aux

usagers de connaître leur situation administrative et l'historique de leurs

dossiers en cours de traitement à travers des procédures de consultation

prévues à cet effet.

SIGASPE a été développé sous oracle 8i (« Developper 2000 » d'oracle et

le SGBDR oracle 8i) selon le modèle c1ienVserveur. Il s'utilise sur le

Réseau Interurbain de l'Administration publique du Burkina Faso

(RESINA), par le MFPRE, le MFB et les DAAF (Directeur des Affaires

Mémoire de fin d'études Page 66/117

Page 69: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

Administratives et Financières) des ministères via des micro-ordinateurs

individuels connectés au réseau RESINA.

Le modèle physique de la base de données

- RESINA (Réseau Interurbain de l'Administration publique du Burkina Faso)

C'est un réseau fibre optique qui reliera toutes les administrations

publiques. A l'état actuellement, RESINA est une interconnexion par fibre

optique de trente (30) bâtiments administratifs abritant les départements

ministériels et quelques institutions (dont la DELGI, le Ministère de la

Fonction Publique et de la Réforme de l'Etat, le Ministère des Finances et

du Budget) et une interconnexion de douze (12) villes par liaisons

spécialisées.

La gestion prévisionnelle des effectifs du personnel de l'administration

publique est améliorée grâce à ce Réseau qui favorisera la promotion du

Système Intégré de Gestion Administrative et Salariale du Personnel de

l'Etat (SIGASPE).

Pour des raisons de sécurité, RESINA n'a aucune ouverture sur le réseau

Internet. Cependant, son extension doit permettre à toute l'administration

de se connecter gratuitement à l'Internet et permettre aux fonctionnaires

de se connecter depuis leur domicile s'ils sont équipés.

Mémoire de fin d'études Page 67 /117

Page 70: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

La connaissance de SIGASPE et du RESINA nous a semblé primordiale dans la

proposition d'un système acceptable qui réponde aux attentes des décideurs et des

usagers du système.

• Diaqnostic

Les utilisateurs souhaitent mettre en ligne des informations contenues dans la base

de données SIGASPE. Cependant, ils ne désirent pas une ouverture de cette base

de données sur Internet.

Deux solutions qui pourraient satisfaire leurs attentes ont été proposées .

- Première solution

Cette solution consiste à mettre en place, une base de données (un extrait de

la base de donnée SIGASPE) ne contenant que les informations à publier.

Elle sera localisée sur le serveur de base de données MySQL de la DELGI.

L'application Web s'y connectera pour mettre à la disposition des internautes

les informations recherchées .

Cette base de données sera automatiquement mise à jour à chaque fois que

des ajouts ou des modifications seront apportés à la base de données

SIGASPE.

BD SIGASPE

Légende

2

Mémoire de fin d'études

Description

Serveur Web

Serveur de base de données

Liaison

RESINA ou INTERNET

Pare-feu

Page 68 /117

Page 71: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

Mise en œuvre

Cette solution ne nécessite l'acquisition d'aucun matériel. En effet, la DELGI

dispose d'un serveur Web où sera déployée l'application et d'un serveur de

base de données qui hébergera l'extrait de la base de données SIGASPE.

L'extrait de la base de données sera sous MySOL 3.23.54 (Système de

Gestion de Base de Données utilisé par la DELGI).

Nous allons également mettre en place une procédure de mise en jour de

l'extrait de Base Données, déclenché par un triggers à chaque mise à jour de

la base de données SIGASPE.

Ajout de règles au pare-feu logiciel (ajout de linge à la table Iptable) sur le

serveur de Base de données de la DELGI. Par exemple:

interdire toute sortie vers le serveur de Base de données du

SIGASPE ou vers toute autre système de réseau RESINA ;

aucune connexion initiée de l'extérieur (Internet) ne devra traverser

le pare-feu.

L'application Web sera réalisée sous OpenCms en utilisant les technologies

J2EE (JSP, Servlet) avec MySOL 3.23.54 comme système de gestion de base

de données. Le site Web de la Fonction Publique à travers laquelle

l'application sera accessible est sous OpenCms et utilise MySOL 3.23.54

comme SGBDR. D'OLlie choix de ces outils de développement.

Avantages:

les données renvoyées par l'application aux utilisateurs sont à jour;

facilité de mise en œuvre de la solution;

coût nul (aucun matériel, ni logiciel n'est à acquérir).

Inconvénient:

cette solution établit une liaison physique entre SIGASPE et le

réseau Internet, ce qui n'est pas souhaitable dans le cas actuel.

Mémoire de fin d'études Page 69 1117

Page 72: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

- Deuxième solution (solution retenue)

Cette solution a été proposée suite au rejet de la première solution par une

partie des utilisateurs, en l'occurrence la DELGI et les cadres du MFPRE

(ayant en charge la gestion du système), qui ne souhaitent pas l'ouverture du

RESINA vers le réseau Internet (pour l'instant).

Le principe est le suivant:

Il n'aura aucune relation physique entre le serveur de base de données de la

DELGI et celui de base de données oracle de SIGASPE.

Un extrait de la base de données sera sur le serveur de base de données

MySOL de la DELGI comme dans la précédente solution.

Les mises à jour de l'extrait de la base de données se feront à travers une

interface Web que l'application à développer devra offrir.

Nous proposerons un script écrit en PL/SOL pour l'extraction des données de

la base de données du SIGASPE vers un fichier XML; ces fichiers seront

transportés au moyen de supports magnétiques (Clé USB, CD-ROM) sur un

poste connecté à Internet; à travers une interface que l'application offrira, les

utilisateurs se connecteront pour mettre à jour l'extrait de la base de données.

Avantages:

satisfaction des deux parties décideurs (DELGI et MFPRE) qui

trouvent la solution assez sécurisée;

- coût nul (aucun matériel ni logiciel à acquérir).

MiSé en œuvre

Cette solution ne nécessite l'acquisition d'aucun matériel.

L'extrait de la base de données sera sous MySOL 3.23.54 (Système de

Gestion de Base de Données utilisé par la DELGI).

En plus de l'application, nous proposerons un script PL/SOL pour l'extraction

de données de la base de données du SIGASPE vers un fichier XML.

L'application Web sera réalisée sous OpenCms en utilisant les technologies

J2EE (JSP, Servlet) avec MySOL 3.23.54 comme système de gestion de base

Mémoire de fin d'études Page 70 1117

Page 73: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

de données. Les informaticiens du domaine d'étude ont demandé une

application évolutive vers la solution une.

Sous-titre de la légende

INTERNET

pc connecté àInternet

PC nonconnecté à

Internet

2 Utilisateur

3 Liaison

Légende

,Symbole Total Description

Serveur Web

Serveur debase dedonnées

Serveur web DELGI

1. Diagramme de cas d'utilisation

a. Les acteurs de notre système et leur rôle

• les acteurs principaux

o fonctionnaire:

il peut consulter son identité ;

il peut consulter sa situation et sa position administrative;

il peut consulter sa carrière (engagement, avancement, dossiers en

cours de traitement ...) ;

il peut envoyer un courrier pour demander des explications ou

signaler une anomalie constatée;

• les acteurs secondaires

o l'administrateur du système

met à jour la base de données;

visualise le fichier journal de mise à jour de la base de données.

Mémoire de fin d'études Page 71/117

Page 74: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

b. Le diagramme

consulter situation et position administrative

<cexterd>

Fonctionnaire

<cexterd>

consulter son identité «include»

consulter sa carrière

<cexterd>

envoyer courrier

Mettre la base de données à jour

<cinclude»>

«inciude»

authentifier utilisateur

«include»

Exporter des données

. «Inciude»

Administrateur «include»

Authentifier administrateur

<cinclude>

vusualiser le fichier journal de MAJ

Mémoire de fin d'études Page72/117

Page 75: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

c. La description textuelle des cas d'utilisation

Titre Consulter situation et position administrative

Résumé Ce cas d'utilisation permet aux fonctionnaires de consulter leur situation etposition administrative.

Acteurs Fonctionnaire, Système Informatique (SI)Date de création 17 octobre 2005Version V 1.0

1-le fonctionnaire demande à consulter sa situation et sa positionadministrative;2-le système demande de s'authentifier

Scénario nominal 3-I'utilisateur saisit ces références (n° matricule et mot de passe)4-le système vérifie les références saisies5-le système affiche les informations relatives à la situation et la positionadministrative de l'agent (Al)FIN(Al) : référence non valideCe scénario commence au point 4 du scénario nominal

Scénario alternatif 5-le SI indique que les références saisies ne sont pas validesCe scénario reprend au point 2 du scénario nominal

Titre Consulter sa carrière

RésuméCe cas d'utilisation permet aux fonctionnaires de consulter leur carrière(dossiers d'avancement, dossier d'enqaqement.i.)

Acteurs Fonctionnaire, Système Informatique (SI)Date de création 17 octobre 2005Version V 1.0

1-le fonctionnaire demande à consulter sa carrière;2-le système demande de s'authentifier

Scénario nominal3-I'utilisateur saisit ces références (n° matricule et mot de passe)4-le système vérifie les références saisies5-le système affiche les informations relatives à la carrière de l'agent (Al)FIN(Al) : référence non valideCe scénario commence au point 4 du scénario nominal

Scénario alternatif 5-le SI indique que les références saisies ne sont pas valides;Ce scénario reprend au point 2 du scénario nominal

Mémoire de fin d'études Page 73/117

Page 76: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

Titre Consulter son identité

RésuméCe cas d'utilisation permet aux fonctionnaires de consulter leurs identités, leurcarrière, leur situation et position administrative.

Acteurs Fonctionnaire, Système Informatique (SI)Date de création 17 octobre 2005Version V 1.0

1-le fonctionnaire demande à consulter ses identités;2-le système demande de s'authentifier;3-I'utilisateur saisit ces références (n° matricule et mot de passe) ;4-le système vérifie les références saisies;5-le système affiche les informations demandées ;(A1)

Scénario nominal6-le fonctionnaire demande à consulter sa carrière; (A2)

7- le système affiche les informations relatives à la carrière de l'agent;a-le fonctionnaire demande à quitter l'application;9-le système met fin à la session

FIN(A1) : référence non valideCe scénario commence au point 4 du scénario nominal5-le SI indique que les références saisies ne sont pas valides;Ce scénario reprend au point 2 du scénario nominal

(A1) :l'utilisateur fait un autre choix6-le fonctionnaire demande à consulter sa situation et sa positionadministrative;7- le système affiche les informations relatives à la carrière de l'agent;

Scénario alternatif(A2) :l'utilisateur fait un autre choix6-le fonctionnaire demande à envoyer un mail à l'administrateur du système;7-le système affiche l'interface de saisie de pour courrier électronique;a-le fonctionnaire saisit sous courrier et valide;9-le système envoie le courrier saisi;Ce scénario reprend au point 6 du scénario nominal

(A1) :l'utilisateur décide de mettre fin à sa session6-le fonctionnaire demande à mettre fin à sa session de consultation;7-le système met fin à la session ;FIN

Mémoire de fin d'études Page 74/117

Page 77: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

Titre

Résumé

ActeursDate de créationVersion

Scénario nominal

Scénario alternatif

Mettre à jour la base de donnéesCe cas d'utilisation permet à l'administrateur de mettre à jour la base dedonnées. En effet, il s'agit de l'extrait de la base de données SIGASPE qui doitêtre périodiquement mise en jour avec des données en provenance de la baseSIGASPE (sous forme de fichier xml)Fonctionnaire, Système Informatique (SI)17 octobre 2005V 1.01-I'administrateur saisit ses références (mot de passe et nom utilisateur) pourse connecté au système;2-le système vérifie la validité des références saisies;3-Ie système affiche les tâches d'administration que peut effectuerl'administrateur; (Al)4-I'administrateur saisit le chemin d'accès aux fichiers qui serviront à la misede la base de données;5-le système vérifie l'existence des fichiers;6-le système télécharge les fichiers sur le serveur; (A2 )

7~le système vérifie la validité des fichiers; (A3 )

8-le système informe que les fichiers ont été téléchargés et sont valides, ilrend la main à l'administrateur ; (~)9-I'administrateur demande d'effectuer la mise à jour de la base de données;10-le système met à jour les données et crée un fichier journal de mise àjour (ce journal contient les informations telles que: la durée de l'opération, leséventuellement problèmes survenus lors de l'opération);11-I'administrateur demande à visualiser le journal de mise à jour;12-le système affiche le journal de mise à jour;13-I'administrateur demande à mettre fin à sa session de travail;14-le système ferme sa session;

FIN(A,) : référence non valideCe scénario commence au point 4 du scénario nominal3-le SI indique que les références saisies ne sont pas valides;Ce scénario reprend au point 2 du scénario nominal

(A2) : fichier(s) introuvable(s) ou inaccessibles6-le SI informe que les fichiers à télécharger sont inaccessibles ouintrouvables;Ce scénario reprend au point 4 du scénario nominal

(A3) : problème de téléchargement7-Le SI informe que les fichiers ne peuvent pas être téléchargés pour desraisons de connexion ou de taille (fichiers trop volumineux)Ce scénario reprend au point 3 du scénario nominal

(~) : format de fichiers incorrects ou fichiers mal formés8-le SI informe que des fichiers sont au format non attendu (format non XML)ou sont mal formés (fichiers XML ne respectant la grammaire prédéfinie)Ce scénario reprend au point 3 du scénario nominal

, I_F_I.:-N -----J

Mémoire de fin d'études p""" 7r:, , 117

Page 78: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

2. Planning

Les cas d'utilisation ont permis de dégager les fonctionnalités du futur système et

d'évaluer le travail à réaliser. Un planning de réalisation peut donc être élaboré.

Etape Période Durée (semaine)

Découverte des besoins 15- 21 octobre 2005 1

Analyse 22 - 04 novembre 2005 2

Il Conception 05 - 18 novembre 2005 21

implémentation 18 novembre -11 décembre 2005 3

Mém6lire de fin d'études Page 76/117

Page 79: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

II. ANALYSE

1. Diagramme d'activité

Ce diagramme permettra de mieux décrire le comportement d'une méthode ou d'un

cas d'utilisation. Il nous permettra d'avoir une meilleure représentation des

enchaînements des tâches réalisées pour remplir une fonction.

MAJ des données

•[demande à consulter)

SI demande de s'authentifier

[informations d'authentification saises) [Quitter chol s)

,

: !

Sl xenfie l'authenticité des informations

[non ok}

[ok}

SI informe qu'agent inexistant

SI affiche l'identité de l'agent et les autres consultations possibles

[quitter choisJ

[demande atuation administrative] [demande à envoyer un counier]

[demanda carrière]

afficher la situation et la position administrative de l'agent

Mémoire de fin d'études

1

____ 't _

afficher la canière de l'agent afficher formulaire d'emoi de courrier

[courner sais]

ensoyer courrier

Page 77 /117

Page 80: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

Consultation

•[demande d~ connexion)

.1 .._-------~---

_______-----..J afficher Interface d'authentification i

[ok![non ok!

1 informer que mct'de passe ou nom utilisateur incorrect,.. • -- --...J afficher interface de MAJ des données f---------

(quitter cttoisi]

(demande tètècnarçerment fichiersj

-- ------~.

télécharger les fichiers pour la MAJ lancer MAJ des données . Afficher journal

générer fichier journal

[echec téléchargement) {téléchargement réussi]

. informer que les fichiers onl été tètècharqês

, informer que le téléchargement a échoué

2. Diagramme de classe

Un diagramme de classe ne sera pas utile dans cette application. En effet,

l'application se limitera à envoyer des requêtes SOL à la base de données pour

pouvoir afficher les données dans les formulaires.

Les classes standard du J2S0K (Java 2 Standard Kit Oevelopment) et en particulier

les classes de l'API (Application Programming Interface) JOBC (Java Oatabase

Connectivity) et les classes du J2EE (Java 2 Entreprise Edition) suffiront largement

pour la réalisation de l'application. Néanmoins, nous aurons à développer quelques

classes d'implémentations décrites dans la javadoc. Ce sont essentiellement les

classes qui serviront à envoyer un courrier électronique et à mettre à jour la base de

données.

Mémoire de fin d'études Page 78/117

Page 81: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

3. Modèle physique de données

C'est un extrait du modèle physique de données de SIGASPE.

agentno matricule l!!.!I7J ~cd_polys <Non ditini> <11<>It_mllhit':ullt v.llch.l1(1)nm v.rch.l(3l)po vllrcha(.JJ)nm~r 1j'IHcha(3l)sue varch.1(1)dt_noli.,Incl datelieu_nolissanct 1/',l[ch.(35)

cd_nationalit. varchol(3)cd_'ecrutement voirchol(1)dt_re erutern e nt doltemd_reg valch .. (1)

RErCE REF~ENCE

REF NCE

pays

.\L.cte .s..!!......Q.m <Non défini> ~

agentJp Ib_p.iys <Non difini>cd .Ide ..,.,cl"(141 ~ tb_"oIlionalite <Non difini>

~ J.nII) ~ no_moltflculll in(7) <.1>cd_lI r• de ·,..rch.l(2) <1<2> no_be ..,alcl"I(<<I) clQ>cd_quaUlgenl varçha(1) <113> nO_dltm.ndt .."uoh.1(10)dl_qual_oIgenl date dt_sIO_·ellII! d.ll11!cd_coItegolit vi/Ch.(2) de.ff,t datedt_categorie date I.f_acte 'urohilI(10)cd_4eh.llt 1I'"ch"',2) et_actl! 1I'.IChol1(1)dt_echeIle: date pgs_ilele 'urch.ill(10)cd_posiCsnd v.ilrch.ill(') <16> dt_el.ilb d.ilt.dt_deb_snd d.ilh! cd_n.ilt_.ilete v.ilrch.ill(3) <~>~dt_fln_snd d.ilte cd mgtif ilete v.ilrch.ilr(2) c"3> REF NeEcd_corps V.ilrch.ilr(3) <Ml>

REFEtENCEr dt_corps d.ilten._motie·ctecd_ec;h.lgn v.illc;h.ilr(2)

dt .chelon d.ilte cd n.ilt .de varchil!l'3) ~cd-=,posit_ildm villchill(2) <UI> cd matil aete v.ilrch.il!l'2) ~dt_posiC.adm dilt. be Ib_n.ilt_motif_.ilcte varchal(35)cd_S5_posiCIIdm V.ilrchilr(2) <UI> -. D..2....!!..! viI~hil!l'40) ~corps ;r!. ',-"J"'-".

dilt. REFE ENCEdt_il"ive~ d...

cd COIPS V.iIrch.il1\'3) ~ cd motif v.illch.ilr(2)

Cild_cd_colldle vilrchill(4) <11<>

"'\""REF~

lb_corps vilrchal(eO) REFE NCEcd c.ildrl viltchill(3)

of, qu.lrte_agentREFE ENCE position_.dm grade est env

cd guai agent valCha!f1l ~-

Ib_quilJ_il;lnt vall:hilr(30) ~ ïi.!2!!.I.!m ~ cd glade VIHChlllr'2) ~ cd exp vArchar(101 ~cd • poslt .adm Villchu'2) ~ Ib_orildt vilrchar(30) cd dest V.ilIChlll(10) ~

Ib_posiCadm Vilrchilr(!55) no demande vilrc;hilli10> ~Ib___posit_adm valohilr(66) dt I!nvoi dah! ~

REFE~ENCEposition_snd1

cadre1 ~ varcha(11 ~

1id "d" wch.(Q) ~ 1 Ib_pcrsiCsnd Vilrchilr(30) exp_destlb_CAdra vAretl.r(eO)

cd user villC:h,(10) ~Ib_tone vilrch.ill(40)

Mémoire de fin d'études Page 79/117

Page 82: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

4. Structure des fichiers XML

La mise à jour de la base de données sous MySQL se fera à partir de fichiers XML.

Ces fichiers contiendront les nouveaux enregistrements (ou enregistrements

modifiés) dans la base de données SIGASPE. Ces fichiers XML respectent la

grammaire ci-après.

o Grammaire

<?xml version="1.0" encoding="ISO-8859-1"?>

<!ELEMENT attribut (cehule-)

<IELEMENT cellule (#PCDATA»

<!ELEMENT ligne (cellule-)

<!ELEMENT table (titre, attribut, liqne-)

<!ELEMENT titre (#PCDATA»

o Schéma

" titretypecieriv

1 ..00

~:~!!~-­striction

1 ..00

Mémoire de fin d'études Page 80/117

Page 83: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

III. CONCEPTION

1. Architecture du système

111

1 1J ~

r---------------~-

: Ù)~igue métierLoaicue nrésentaôon (FrameworkStruts)1

1 /' "'\ ,1 1

1 Contrôleur 1

1 11 Actiorm :,

1 1 ,1 1

11 ,

1 1 11 ,

:Li1 1,

1 1 Actionl 11 1

Servlet , Classes'j

1 1

1 1

:'H- métier

~ Action2 11 ,

11 1

1 1

11 t

Interface 1 -, ./ 1 ,1

~1 1 -: '"1 1 1

client 11 1 Classe 1 1'-- .-'1

11 1 1

1 J d'accès aux ,.Base de1

Vue 1 r-+-Modèle 1 données 1

Jsp, html, xml,1 1 1 données

1 1

r-+-~ Beanl 1

, 1.-'i: 1 1

1 L

CCO1 1

~H Bean2 11 1

ii 1 1

1 1.. 1 1

'-H Beann1

1 1

1 1

11 1 11 1 1

1 1 1 11 1 1 11

Les composants MVC de l'application

Vue (JSP) Bean Action

connexion .jsp x connexionAction

identite_agent.jsp identite_agentBean identite_agentAction

situation .jsp situationBean situationAction

carriere.jsp carriereBean carriereAction

consultation.jsp consultationBean consultationAction

courrier.jsp courrierBean courrierAction

p_administration.jsp p_adm inistration Bean p_administrati~mAction

p_majbd.jsp p_majbdBean p_majbdAction

Mémoire de fin d'études Page81/117

Page 84: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

2. Diagramme de classe d'implémentation

EnvoiMaii

-expediteur : String-recepteur : String-objet: String-serveurSTMP: String-portServeurSTMP : String-message: String-utilisateur: String-motDePasse : String

-envoyert) : Boolean

XML

-fichierXML: Object-date: Date

+enregistrerO : Boolean+majO : Boolean-supprimert) : Boolean

3. Diagramme de séquence

a. Le diagramme de séquence générale

requête1

bean = new BeanO J1

Sean 1

1

bean.setAttribut1 (att~l,,J.

bean.setAttribut2(att2)

v = bean.valldatet)

action = new ActionO JAction 1

1 1 1URLvue = action.execute(request, bean)

obj = new ObjetMetier J ,1bean.getAttribut1 ObjetMetier

bean.getAUribut2at!xx = • obj.getAttributXXO ~6.

1HttPSessionl)

• session.setAttribut~("auyy", at!xx)1

... -appel de la page jsp a retourner au navigateur '1 1

GeSSion.getAuributecaUiY"i

reponse

1 1

Mémoire de fin d'études Page 82/117

Page 85: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

b. Quelques exemples

I~Ibean = new Bean~requete

agentBeanl. Identite

bean.setMatricule(mahicule)Affichage du formulaire d'identification

d'un agentbean.setNom(nom)

v = bean.vafidateff---- )

action=new ActionO.lldentite agentAction 1

URLvue =aetion.execute(bean) ~bean.getMatriculeO

bean.getNomO

~ requête SOL de sélection1HttpSessionl

session.setAttribute("matricule",nom)J-

session.setAttribute("nom", nom)

session.setAttribute("prenom", prenom)

session.setAttribute("dateNaiss", dateNaiss)

session.setAttribute("lieuNaiss",lieuNaiss)

sessicn.setêttributet'tnomff". nomJF)

session.setAttribute("nationalite", nationalite)

session.setAttribule("snd", snd)

session.setAttribute("sexe", sexe)

session.setAttribute("diplome", diplome

appel de la page jsp à retournerau navigateurd t t

(seSSiOn,getAUribute("nom") .

session.getAttribute("diplome")

reponse T

1

Mémoire de fin'd'études Page 83/117

Page 86: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

l, Servlet 1

bean = new Beant) J, .. Ilrequete

SituationBean

bean.setMatriaJle(matricule)Affichage situation et position

administrative d'un agent

v =bean.validateO

action =new ActionO

URLvue = adion.exlcutelbean)

JSituatjonAction 1

lbean.getMatriculeO

~ requête SOL de sélection1HttpSessionl

session.setAttribute("matricute", nom) lsesstcn.setèttnbuter'nom'', nom)

session.setAttribute("prenom", prenom)

session.setAttribute("qualite", qualite)

session.setAttribute("lieuNaiss",lieuNaiss)

session.setAttribute("corps", corps)

session.setAttribute("cadre", cadre)

session.setAttribute("echelon", eehelon)

session.setAttribute("categorie", categorie)

session.setAttribute("posilion", position)

session.setAUribute("motif'. motif}

appel de la page jsp à retournerau navigateur

• •.session.getAUribute("nom") ..

(

session.getAttnbute("motif')

reponse l

1

Mémoire de fin d'études Page 84/117

Page 87: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

1 Servlet 1

1bean ::: new BeanO ...1 Ilrequete

CarriereBean

bean.setMatriaJle(matlicule) Parcours de la carrière d'un agent

v > bean.vahdatef)

acncn e new AetionO

JCarrjereAction 1

URLvue; aclion.exLutelbean) Jbean.getMatrieuleO

D requête SOL de sélection IHttpSessionl

session.setAttribute("matrieule", nom) .J-session.setAttribute("nom", nom)

session.setAHrtbute("prenom", prenom)

session.setAltribute("numDossier", numDossier)

session.setAttribute("natureDossier", natureDossier)

session.setAttribute("dateArrivee", dateArrivee)

session.setAttribute("infoDispo", infoDispo)

appel de la page jsp â retournerau navigateur

s ess,~~.,."".,:,~(

session.qetêttributet'mcür")

reponse

1

Mémoire de fin d'études Page 85/117

Page 88: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

1 Servlet 1

requete bean = new Bearu) J,' 'IICOnsQlta:tionBeah

'- - '-',...!.' ,

Affichage du circuit du dossier d'unbean.setNumDossier(numDossier)

, ) agentv = bean. validateO

1

action := new ActionO

JConsultationAction 1

URLvue=action.execute(bean) )b~an.getNumDoSSi;~)

t==:> requête SOL de sélection1HttpSession 1

session.setAttribute("numDossier", numOossier)

session.setAttribute("natureOossier", natureDossier)

session.setAttribute("etatDossier", etatDossier)

session.setAttribute{"natureDossier", natureDossier)

session.setAUribute("numAete", numActe)

session.setAtiribule("dateEtabliss", dateEtabliss)

sess\on.setAttribute("dateEffet", dateEffet)

session.setAttribule("dateSlgn", dateSign)

essfon.setAltribute("circuitOossier", cireuitOossier)

appel de la page jsp à retourner au navigateur

• . • •session.getAttribute("numDossier") .I(

1

session.getAttribute("circuitDossier")

reponse

1

1

Mémoire de fin d'études Page 86/117

Page 89: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière desagents de la Fonction Publique

CourrierBean

bean.setMatricule(matricule))

bean.setNomPrenom(nomPrenom)

bean.seIMessage(message)

action = new Action()

URLvue =actlon.execute(bean)

Envoi d'un courrier par un agent àl'administrateur du système

m = bean.getMatricule()

( np = bean.getNomPrenom()

( msg = bean.geIMessage()c = new Courrier(m, np, msg)

c.envoyer()

appel de la page jsp à retourner au navigateur

reponse

Mémoire de fin d'études Page 87 1117

Page 90: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

P majbdBean

• bean.setinputStream{fichier))

Importation de fichiers XML pour lamise à jour de la base de données

action=newActionO

URLvue =action.execute(bean)

• in = bean.getlntputStreamO

• setlnBD(;n)

Mémoire de fin d'études

appel de la page jsp à retournerau na\ligateur

repense

session.getAttribute("resultat")(

Page 88/117

Page 91: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

action = new Actioru)

P majbdAction

URLvue = action.executeO

Mise à jour de la base de données(à partir des fichiers XML importés)

)

appel de la page jsp à retourner au navigateur

session.getAttribute("resultat")

reponse

Mémoire de fin d'études Page 89/117

Page 92: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

4. Diagramme d'enchaînement des pages Web

courrier.jsp

situation.jsp

Légende

Formulaire

Page [sp ou htm

Mémoire de fin d'études

identite_agent.jsp

Page 90 1117

Page 93: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

5. Diagramme de paquetage

. ..... .

.• Qr9·:aparihe•.x~tce$ ••• •··

·····················i·~db·········.• ç9m.roy~q.·J .. ç .....irnport»

----------------~--------

1

1 irnport» ..

----------------~~..----------------~

fp.gov.bf.sigaspe.online.metier

+EnvoiMail+XML

1

fp.gov.bf.sigaspe.online.modele

~-, ,

'\l.~ccess »-, ,

-,

"1

fp.gov.bf.sigaspe.online.controleur

+ Identite_agentBean+ SituationBean+ CarriereBean

« access »

1+- - - - - - + Identite_agentAction

+ SituationAction+ CarriereAction

+ P_majbdBean+ P_majbdAction

1« irnport »

1

........ \ ........ y .....

11

1«1 import »

1..........~ ...

.t· .

·····i·.... [ ....

........... .'-.....--.......--..............................

..... .........

1.·.· .......•.•.•.•.• 1 Paquetage téléchargersur Internet, non disponibledans le J2sdk

1 1 Paquetage développé, propre à l'application

Mémoire de fin d'études Page 91 / 117

Page 94: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de~la~F~o::..:n~ct~io::..:n..:.P....::u:.:::.b~ligl.:::u::::.e _

6. Diagramme de composants

oépen dance

couche logique métier

couche présentation (Jakarta struts)

:~ : Bean ~ I:~ :SeNle!

:~ : Action I-L----1'<.

S0 us -syste IIIesI---------;....L-----_/,---...1...--, Objet d'accès~~~ aux données

Objets métier~~

l.- -+ I"" Compos.mts

r-------------.J

SG8D

Couche de persistance

JD8C6-~qJ_

Mémoire de fin d'études Page 92/117

Page 95: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publique

IV. IMPLEMENTATION

1. Diagramme de déploiement

Composents

Noemls

/ /SUYN http Amwhe

S 1

COl>tigu •.rilon <fu R~nI)Uf{"$

1 site1 !

~

1

/' /C9fIt!m?!lf JSP!S,rvlf1 H9IDQtl

1 ! Jek8rta struls 1 IObjets métiers1 i 1

l ~ r--...! ~

1 1couche d'accès~~

1 IlllUX domées

1 1!j 1 1Machine Virtuelle Java(JVM)1

1l i

~

/ / l'

1serum dt lM$edt doonte$

8=' 1i iSGIlDR

1I~SOL 3.23.64

1

1 1 Données1 1

,~

Mémoire de fin d'études Page 93/117

Page 96: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

2. Procédure d'installation de l'application

L'application a été testée sous Windows XP service pack 2 et sous la redHat

Entreprise WS avec les logiciels suivant:

Apache Tomcat 5.0.27 : téléchargeable gratuitement à l'url

http://archive.apache.org/distltomcatltomcat-5/archiveIv5.0.27/

j2sdk 1.4.2 téléchargeable gratuitement sur

http://java.sun.com/j2se/1.4.2/download.html

- MySQL 3.23.54 et 4.1.9 téléchargeable gratuitement sur

http://dev.mysql.com/downloads/mysq1/4.0.html

- OpenCms 5.0.1 également téléchargeable gratuitement sur

http://www.opencms.org/opencms/en/download/archive.html

Pour faciliter l'installation de l'application, nous avons regroupé les fichiers

d'installation dans un répertoire que nous avons nommé sigaspe-foncfion-pub/ique

dont le contenu est le suivant:

- sigaspe.zip: contient les pages dynamiques jsp, les images, les pages statiques

htrnl et les fichiers de configuration de l'application;

- bib/iofheque: c'est le répertoire qui contient toutes les bibliothèques (.jar)

nécessaire au fonctionnement de l'application;

- script-sq/.sq/: ce fichier texte contient les instructions SQL pour la création de la

base de données.

Après avoir installé les logiciels ci-dessus (Apache Tomcat, j2sdk, MySQL,

OpenCms) :

- lancer OpenCms ;

importer le fichier compressé sigaspe.zip en demandant sa décompression

(l'application est ainsi installé, il ne reste plus qu'à le configurer) ;

- après la décompression, OpenCms crée un répertoire nommé sigaspe contenant

les fichiers décompressés. Ouvrez le fichier sigaspe/config.xm/ pour modifier le

chemin d'accès à la base de données, définir le nom et le mot de passe de

l'utilisateur MySQL qui à droit à la base de données de l'application (par défaut

l'utilisateur est roof sans mot de passe, jdbc:mysq/:I//oca/host/bd_concours est le

Mémoire de fin d'études Page 94 /117

Page 97: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Mise en ligne des situations, positions administratives et carrière des agents de la Fonction Publigue

chemin d'accès à la base de donnée et com.mysql.jdbc.Driver le pilote JDSC

pour MySOL);

- copier les 'fichiers du répertoire bibliotheque dans le répertoire lib d'OpenCms ;

- créer la base de données en exécute les instructions SOL contenues dans script-

sql.sql.

Redémarrer votre serveur Apache Tomcat et vérifier que l'application fonctionne en

invoquant sur votre serveur l'url http://127.0.0.1 :BOBOlsigaspelindex.jsp.

Mémoire de fin d'études Page 95/117

Page 98: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Conclusion

CONCLUSION

L'inscription en ligne aux concours de la Fonction Publique, la consultation des

situations administratives et carrière des agents de la Fonction Publique font partir

des nombreux services en ligne que l'administration publique burkinabé compte

proposer aux citoyens. J'ai été très honoré de participer à leur réalisation.

Ce stage d'ingénieur a été très enrichissant car il m'a permis d'approfondir mes

connaissances de 1« l'approche objet », du «design pattern MVC », de la

« framework Struts », et surtout sur le développement web coté serveur et client.

A l'issue de ce stage, nous laissons à la Délégation Générale à l'Informatique une

application Web d' « inscription en ligne aux concours de la fonction publique»

réalisée à 90% et une autre pour la « consultation des situations, positions et carrière

des agents de la Fonction Publique» entièrement développée. Nous espérons que

ces deux logiciels pourront d'être utilisés pour le bien des citoyens (fonctionnaires et

futurs candidats aux concours de la Fonction Publique).

Mémoire de fin d'études Page 96 /117

Page 99: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

ANNEXES

ANNEXE-1 . QUELQUES ECRANS DES INSCRIPTIONS EN LIGNE

Page d'accueil

Liste des c o nC OUB ouvcrb

COIlltlW\ltl s1lls cl i-e a.. coucours 1

Cette page donne un aper~u des concours auxQuels vous pouvez vous Inscrire c eri Il.,ne • Avant cH) procé:der à votrE! inscriptionélp.ctronlque il est important que vous lisiez :lttentJvement l',a'",;s de concours VOU '3 le Imw erez en rhquant sur l'intltuié du concours.

ISUlle..J~- . 2 ~ --- - - -PM$OIU"Sdéj:-' in.clles

Les personnes dèl&'nScrlle! onl'. posSiblllè de suiVre leu. nosster ann de SllVOirSIleu. mscnption a èlé accept ée,vous a", égalemenlla posslblité de ,éimp"me, un rolcépilld d1n, c,lpllon, teuoueriCi nour consuuervoue dossier (.eservè au:< n,eSO'lIIes de " I"scrllesll

~ . , ••• A ......•._---_... .-. ...,.~---- - -_ . _. ~

Coucoms dir&dC"'-'-"-"int,l\JIe du Concours Sesi ion Date de d~but des InsC" pbons -DaI. de n;; des Insennl,ons tncnpuon Il!Aaenls Technlaues AoncullUreSaéciallsés lODS 01-10-2005 01·10 ·2005 IS'lnod .

TeC M ,clens Suné"eu,s en Pédagogie 2005 01-10-2005 01·10·2005 [S'inscrire :_._- - _..._, ._..._._-_._ - ---_._.._-_....__.._----_.~.

Agenls Techniques EI&v3qe 2005 01·09-2005 01·09·2005 1 S 'inscri re 1:

Concours IKofessionnelMkùst". d. ESSRS

InlllUlédu conccurs sesston Dale de début des mscnpacns Date de tin d~s mscnonons lrocrlphon 1

Ass'siams FM 200S 01-01-2005 01·07-2005 1S 'i~scri 'e JI..-

MilùS1.re de la sanlé

Inblulé du ccnc cers sesslon Dated. d'bul dos Inst npuons Date d~ tin des msrnp uons tncnpuon I!Agenls GSP 2005 01-09-2005 01-09·200S 1 S',nsCII,a II I

..•. -

3

-------- 1Terrrt'lO

Mémoire de fin d'études Page 97/117

Page 100: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Description de la procédure d'inscription

k::) httf}:I1121.0.0.1: 8080 1élé inscription Mozilldf. . ["]~~Comment s'inscrire aux conCQUIS

• La page du site .. Usta des concours ouverts" donne un aperçu des concours auxquels vouspouvez vous inscrire « en ligne ., Avant de procéder à votre inscription électronique il est importantque vous lisiez attentivement l'avis du concours, Vous le trouverez en cliquant sur l'Intitulé duconcours.

• Les conditions d'admission auxconcours sont expliquées en détail dans l'avis du concours qui estla sourced'Information de référence pourtous les termes ettoutes les conditions s'appliquantà unconcours

• A partir de la page" Liste des concours ouverts ", il vous est possible de sélectionnerun concoursen cliquantsur le bouton"s'inscrire", dépendant du concours auquelvous souhaitezvous inscrire,

• Dans la page du site " Fiche dïnscnptton ", vous devez fournir les informations Qui vous sontdemandées. Tous les champs en gras doivent obligatoirement être remplis

• Sivous êtes certainque toutes les donnéesfournies sont correctes, cliquezsur le bouton" Valider"• Unnouvelle page nommée" Confirmation" affichera votre numérod'inscription• Si cette page ne s'affiche pas, il se peut qu'il y ait eu un problème de connexion, dans ce cas

essayerde réactualiservotre navigateur Internet, ou recommencer la procédure d'inscription à partirde la page.. Liste des concoursouverts "'

• Par contre si la page" Confirmation" s'affiche, vous pouvez confirmer voire inscription (à l'aide dubouton «confirmer.) ou l'annuler, Après avoir confirmer votre inscription, vous n'aurez plus laposslblité da modifier votre dossier, le dossier ne sera accessible qu'en lecture seule. Parconséquent, il faut verlfierque les Informations saisies sont correctes avant de confirmer.

• Une autre page affichera un récépissé dtnscrtptlon. Attention votre machine devrait disposerd'accrobata raadarou d'un logiciel capable devisionnerdes fichier detypepdf.

• Vous devez Imprimer le récépissé, le présenté le jour du concours afin d'avoir accès auxsalles ded'examen, vous devez également êtremuni de votre Carted'Identité 8urkinabé(CI8) ou de la CarteNationale d'Identité (CNI) ou devotre Carte Consulaire(pour les compatriotes venantde l'exterieurde pays) portantle numéro quevous avez mentionné lors devotre inscription.

• Nous vous conseillons également d'enre!;listrer votre récépissé électronique sur un supportmagnétique afin de pouvoirl'imprimé encas de perte du suportpapier.

• Vous disposezde trente (30) minutes pourchoisir un concours etvous inscrire.

Terminé

Mémoire de fin d'études Page 98/117

Page 101: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Demande de consultation d'un dossier

MarqJeopages ~ils l

. ltii0l.:~7 . 0 . 0 . 1 : 8Ol:l0!~ncm<{~co~~_(ons<J-~ y OK ~. -

U yoOhoo-mà U Ctlf'<WMil U rpxJe MySQl L:l projet !CJ openCms [ P<Qld'lKcueddcMo... L Mtsslons et Orçri;a.. .

LJ les ~ands ch~ LJ C"""uItatlon__...1..- _

Cons ultation de dossier

CholSirlSal51r les mrormanons cemanoèes

Session:

1 Concours:1

i Centre:

!Votre numéro d1nscrlptlon1 ::==:====--::~1 Numero CIB

Il Valider 11~------------------------

TernW1é

Mémoire de fin d'études Page 99/117

Page 102: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

- Affichage du communiqué relatif à un concours

" ) htlp:1I1 21.0.0.' :8()BO Concours Mozilld 1irefox. L~J~;DIID

Agents TKhniques Amie".,. e SI)~cj..lIisès

• Le pUblic burkinabé est informé de J'ouverture au titre de l'année 2005 du concours direct intitulé«Agents Techniques Agriculture Spécialisés» dans le(s) centrees) de aooo-tnoutasso,Ouagadougou;

• Les dossiers de candidature serontreçusdu 2005-1 0-01 au 2005-12-01, date limite de clôture;• Conditions de participation (age et diplôme, sexe) :

o Peuvent faire acte de candidature audit concours les candidats des deux sexes âgés de 18ans au moins et de 37 ans maxJmum au 31 decembre 2005 titulaires du diplôme requis(BAC, BTS, Licence math) à la date d'ouverture du concours et remplissant les conditionsd'aptitude physique etmentale exigées pourl'exercice de l'emploi postulé;

<> Les personnes déjà admises à un concours depuis plus d'un mois ou en cours deformatlon dans une Ecole de Formatlon Professionnelle ou intégrées dans la FonctionPublique ne sontpas autorisées à prendre partauxdits concours;

• Ledossier de candidature est composé comme suit:e Une demande manuscrite timbrée à 200 trs, adressée à Monsieur le Ministre de la Fonction

Publique et de la Réforme de l'Etat, datée et signée du candidat et donnant son adresseexacte

o Une photocopie légalisée de la Carte d'Identité Burkinabé<> Un extrait d'acte de naissance outoute pièce entenantlieuo Unephotocopie légalisée du diplôme requis ou de son attestation délivrée au Burkina Faso

et de l'attestation de niveau de la classe determinale selon le caso Un engagement à servir pendant six (6) ans enmilieu rural

• Les épreuves des concours:o CULTURE GENERALEc SYNTHESE DEDOSSIER

• Nombre de placeà pourvoir:

voir le commigué relatifauconcours

Terminé

Mémoire de fin d'études Page 100/117

Page 103: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Formulaire d'inscription

1Orm UlitH C d'inscrtpuon J\q en l~ 1ochnlques I\qlll:ulfurc Spècfa ll t és:

(onlÜlion t~n~rill.

L'4ccès 3;U), emplœs de la Fonction Publi que est ouvert à égaillé de drOIt.sans distinction aucun&,;) rou61QSt1ul1dn"bèremptissant les cande cns requises pour(t'laque emploip6stulê, sous ré~erve des SUlétions propresà cenamsemploisdenrus par déc,~t lplus 1:nn1orm&llon...1('.llndiU<H" ti J'Hnlltif

Pour prelldil part &U concours, 'Vous devez rempli r 16S condlhon$ exigées dans le tommuniqu~ d'Olf...er1ur6 du dit 'ClfI(·our~ ~ôilT;7oiii"'nüfiüguEi . remplir l~sccndrnons d'age, de seX€l, de dlpOm6', de n6UOnJIIl" COlJte canaldaturoa ne repondantpas au eJl:IQI:mtt? du comt1lurllqu~ 06 serd p~lê. acceptéeNuméro oudlpl';m. sveclequelvouspostulez·'BAC-200S-UO-OOOlLes personnes ne disposant pas entore du dip me requis ae~Taient s'abs1enir de fournit un faut numéro sous peine de cou rsutte

C~nne où vous SOtlhMèZPt&ltlà·e 1)1111 Mlconcour....

C~mlle : Ouagadougou

co mmrssanat~T/SIGNONGH IN

Prenom:

I",,;;.;..o;;;:)~;..,..~-...;~~ c/lOi6Ji31-12-.jjn~ d~ naJMaflCe, poo,/l?bf."'ë($VIl!'li!iJ ,Ièe:;ot "'~r~ ou «en»

Lien d·êtflbll$5el1l~11t d~ 1.1 r,hlcf.o

lieu dit naissance :

Hum :

1<1.111111<...1.11 1111 calldl<ldI- AI!t?1lOOn roule~ Ie~ IfIIOIma1Xmo OOl1/ obliag8I<Jir9~, il rexcep/xJnClu E-m8'i

Hllméro du IDllbI,,: 1000l -002-{)015~~==:iil:i...;...._...,

Eftgagement du (dlulkl.l1

Je ,.rtJ1le quetous les renseiune/M nls rcurms cans le pré••nlformula"e somà ma connaissance completes etconforme. il l,)". "lé.

(!; oui 0 non

Mémoire de fin d'études Page 101 1117

Page 104: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Formulaire de confirmation de sa demande d'inscription

/>.fer.~ 0ù;1s r

~tp;II I 27 ,O , O . I :rœo/opencms/~oncoo.J'--;;a>rIrmoIlon_';;:i:fu,--:-~

car_ U '1'JOf;Ie projet lCl 0Il'I0Cms !CI PaoecrlJCadœMo...

Ccnritnusho n

Vous pouveztoujours fairemarche antère (Ultllsarle boutonprècedentdu navigateur) afin devérifiersi los informalions fournies sont corretes

AIlrés confirmabOn dol'n&uiption. vous ne pourrezplus modifier les 'nforrnabonsS3ISI.,Cependantvous pourreztoujoursaccedera votreeossreren consunanon uruquernent.

1--- - ,- - ---- -- .- - ---------- "'- -Le candidatd8\lla imprimer le récépissé d1nscrip1ion Quis'a1lichera aprèscetteétape Ceréc80pissé etlaplece t11dcntné (({anl sert'â l'lnscrlplrcn vous dcnneront dccè3 aux $al l ~ s

d'examen,Encas depane du réc~pjssP' . vousncunez tourou-s en .rnonmsr, en 'lcced.;,nf;?j ,.otr~ dCU'Sip.r

cipartir de ta pàg~ cli$tJ,3des ccncoursouvef~sJo du sile.

.._--"" - - - -Le boulon «Confirmer. confirmevotreInscrip1ion et alliche un récépissé mnscnouon Qu'il

faudraimpnmerSur le récépissé figurera le numero d1nscrlpbon Quivous seMra pour le ccnsuusnon'Iolre

dossierSivousconfirmez l'Inscriptionvotre timbre fI&seraplusutilisable pourune autre tnscnpt ion 1

Le boulon «Annuler. annule rtnsenpncn, voireamnrerestetcuiours valable pour un.. ;l utr.lnecription!

Mémoire de fin d'études

.)

Page 102 1117

Page 105: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

- Edition d'un récépissé d'inscription

MINISTERE DE LA FONCTION Pl'BLlQlJE ETDE LA REFORM.E DE L'ETAT

INSCRIPTION N° 00004CENTRE DE Ouagadougou

SESSION D[ 2005

CONCOURS DIRECT ilE : Agents Techniques Agriculture Spécialisés

Nom et Prénorrus) du Candidat: GASSlMBE Hamidou

Né(e) le 31-07-J 979 II Rimasse (BF)

CIB N° 00J4848 du 18-09-2000 établie à Ouagadougnu/ARRT/SIGNONCHIN

Diplôme N° BAC-200S-UO-OOOI

Incrit Je 06-1 J -2005 en 1igne.

Signature de l'autorité

- j

Mémoire de fin d'études Page 103 / 117

Page 106: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Page d'administration du système

.., ~ OK rc~1ù 1'ttp://127.0,0 ,1:BœO!opencmsjopeocmsJcOOCllOJS!O..p",omet1"9O.lS!>----

MySQI. CI lltO)et !Cl openCms ICIp* d'~cuelI deMo...

Ministères DéfinitiOn des contours

~:;::;=~~~~~=7~uve~r11J~'e;;:d::''u~n!.Ct~o~n~co~u~rs Type de comoursValidaUon des demandesd'inscrtptions Listingdes candidms par t entre et sous-centre

Emortat.on- Importation des données auformatXML Repal1lon des cand~dats Repar1JlIon des secr étalras

Déconnecler

11

r---- - - - --- - - - ----- - - Admlnlstralj<)f'l - - - - ----------- - ---

Enattente de 127.0.0.L.

Mémoire de fin d'études Page 104 / 117

Page 107: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Interface d'ouverture d'un concours

Ouvertures des concou rs de Iy . o..,;ioll

lnürrmers Diplômes Ete.~rofes8ionnel

Debul;r==~=~

çemmunlqué ll.- . u ;..;;;= = =-'

-- -- - ----~-~~

Mémoire de fin d'études

OK I ~ 1. _

ConcourJ.j. l, le on

Agents Techniques Agrieult1Jre Spécie.hsés ,.Techniciens Supé rieurs en PédagogieAssistarrts FJAAgents GSPAgents Techruques Elevage

v

Dout·l. cliqu e t Iyr le çOMOlJ 1'SpouroJtl lnlt lu çc ntl"

Page 105 / 117

Page 108: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Formulaire d'ajout des candidats inscrits offline

= ~:IJ I~~O~ I :~I~!~lc':'?'O<fi!D~.I<U_c..-ddal . l'll

.J QOO'je MySQl prolot !Cl openCms 1C1p~ d'aocad doMo.•.

l~eI_lIcaliollllU c."- -AllenllOn /oU~ ltMcll8~ ôOf)/ oblla>1alojre~ 1sess ion: 2005COIl~OI.5: Agents Techeiques AgncultuteSpécl3!ssés

cenfle: Bebe -Dioulassc

N~ inscri('-Îon : 20000 1Nom : SANA

1Prénom: !AJioune -lieu do n~li. 'SaI 0: Oucgcdougou l'Da.ede Ik~I&s.ll1ce : ~~.J!.~ [ 2005 1

Nt. ,Ié, o OMod'étJlllissemonl Liel' d'é!aI,lissome,_Cil . Cil. Consul."ltI. _ :

01258 110 [ 05 r ZOOO &Bobo-D,oulassD/Colscmc

1Valider Il Effacer 1

RetoW"

Administratio!l

Mémoire de fin d'études Page 106 /117

Page 109: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Interface d'édition des listings de réparation des candidats dans les sous-centres

r" rrr,6

Edillon IIstlng des candidats· 5e5510n2005 • centre d. Ou..gadougou

Journ" du 09 ..out 2005

fk: Sous centre Z1NDA-1

fk: SOUsCë~NëiA-ij

t! Souscentre ZINDA-IIIJourné. du 10 ..oût 2005

fI: Sous centre ZINDA.-I

~ Sous centre ZINDA-II

T! Sous centre ZINDA-III

~ sous centre NELSON-IJourn6. du 11 ~oût 2005

tr Sous centre ZlNOA-I

t! Sous centre ZINDA-II

~ Sous centre ZlNDA-1IIJourné. du 12 août 2005

T! Sous centre ZlNDA-1

tr: Sous centre Z1NDA-1I

~ Sous centre Z1NDA-1II

1'! Sous centre NELSON-IJourn" du 13 3oût2ooS

tË Souscentre ZlNDA-1

f! Sous centre Z1NDA-1I

1'! Sous centre ZINDA-III• Journe. du 14 300t 2005

~ Sous centre ZlNOA-1

T! Sous centre ZlNDA-1i

tr:L

Mémoire de fin d'études Page 107 / 117

Page 110: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

ANNEXE-2 : QUELQUES ECRANS DE CONSULTATION DES

SITUATIONS ADMINISTRATIVES DES AGENTS DE LA FONCTION

PUBLIQUE

- Interface d'accès à l'application

t'J Connexion · Mozilla Firefox • ~@~Eichler ~dltion

< "- •

Bffichage Aller à Marque-pages QutHs L- --

http://127.0.0.1:6080/openc vJ OK 1

~====-====---- I

Authentification

Veuillezsaisir voIre numéro matricule etvotre motde passe

Numéro matricule :

Mot de passe:

• Modifierson mot de passe - S'inscrire

2

Terminé ,

Mémoire de fin d'éludes Page 108 1117

Page 111: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Identité de l'agent

t.3hllp :1I171 0 ,0 , :80 80 Id"nl ile "Unl Mo...f1 I.. Ffrorox • ~~"nlilé de l'u enl

Matricule

Nom

Prenom(a)

Dalede naissance

Nationalité

Situation SND

DiplOme le plus élévé

COMPAORE

1..'· _.~_•.

03-OS-',J . ,

Burldllab4

Dlsp&lIs4Ie) débutSND

NomdeJeune Fille

Ueu de naissance l ' b' ) ' ,

Sexe loi

fin SND

""."....,..".. 'd."".....["~."' ."'"

re,"""

Mémoire de fin d'études Page 109 / 117

Page 112: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Affichage de la situation et position administratives de l'agent

t;) hllp:II171.0.0.1 :8080 Silu~ljon el pesülon administ r~l iYllJ MOl llI~ fi refoa • ~§~

Sltua tle n el osillon lIdministrollYCS

. Positionadministrative ,- - ---

y-----

l

lJ 1

~ I

ldate

date 11.12·2003

date26-05·1975

date01.10 ·1975

oepuis le

depuis le

Nomel prénom COMPAORE .A· 'v..- _

AtlMlé

Ex8lÇdlll

.... cli.l. d t h ..~..• L.JI :

t,.U

Position

S6 position

Mobf

1 MatrlCU_I_e _

rSrtualion administratIVe

Mode Rec.

Qualrté Fonctionnaire thldalre

i Corps . l ',lC" . JI t d . L r•. .l,.L.. ... .. ~.I . ~ rf J1'.

i Cadre , ': ).J••• I. J . J .JI . ï : ' • 1 .J.- '-_ . . . ~

lc av eCh j 1 Classe '.JI 1c: r : ,

Echelon 01

------ - --------

-~'

- -- - --- - -- ------------

TemlIlé

Mémoire de fin d'études Page 110/117

Page 113: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Affichage des différents dossiers d'un agent

tj hllp:II121.0.0.1 :SOSO Ca nlulid lia n d". da n ier< Ma7U14 Flr"fox • rn~Consu lta ti on d" s do...i ers

Agent

Malncule :Nom etPrénom(s) : COMPAORE 1 .~

Dossiers l1all,ésou en cours deIrartemenl - - ·- - - - --- - ------- - -

10 dossier(s) trouvées)

P3QS précédenle

tnrormsno« non disPofliblemrormanon non disponible

mrormsnon non disponibletnrormaucn non disponibleinformabon non disponIbleinformation non aisponibleInforrn4l lion nondiSPOnible

informalton non diSPOnible

Informallon non dtspornnte

cliquer iCI pour vlJll le dOSSIer~

10·03-2000

13·08-2001

1)- 08-2001

13-08'2001

1)-08· 2001

1)·0 8·2001

13-08-2001

2t ·05·200~

----_.._-- - -

N.'lIureAvancement d'échelonAvancement d'échelon

R_rsementAvancement d'échelonAvancementd'échelonAvancemenl d'échelonAvancemenld'échelonAvancement d'échelonAvancementd'échelon

Décoration

Cotie Ile r.'l<:le

uy...DOOOM.­

..0 ...

....OOO~

....OOOOHlllè

...9I-OOOlJilit9i

....OOO~.....

JEII·OOO~

Pron.. soin do i ..mol 'o'" 4. ...' po.. m'.,quo .. . ut,os p.~or,n .s n) , «« on' 1 Fermerle dossier~

T""'*'é

Mémoi re de fin d'éludes Page 111 1117

Page 114: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Consultation de l'historique du circuit d'un dossier

r-J hllp:1Il1 / .O.U 1:BOBO (.".ulra llan d'un dani., Ma, lII. r".fa. • ~

NaturedudOSSI&f' . [)éc::0( _kM,

PO~lbon 8tllJelledu noss.er . SOlDE

Etateudossier : V.llkft

---- - - -- --_.._ ... -- Reférentes de l'atterélatlfau doss ler ··'­

N-dtordClé..... ~"'. d'éIann••• m o!lll

07-06-2004

Ddllt lf étlél

11-12·2003

O.)te li' slgrhlturé

lIi-Ob·20Q4

---- _ ..__.._ - - _.__._- - - ---_.

Circuit(Ju dossier- -

Ce eJrcuF1 retracel'hlslortque devolte ccssrer: data, seMee traiteur dudossier

D"' o "onwl2>0> 200 4

28-05 ·2 004

08-0&-2004

09 ·06 ·20 04

09-0&-2004

11·01;-2004

14·01;-2004

15-01;-2004

26·06 ·2004

Posalon dudossierBUleau d'ordreChef Ue SeMe!!!

RédacteurContrOle Flna ntl~(

Clltull

OPE

OOFP

S."lil.". GénéralCircUit

T........

Mémoire de fin d'études Page 112/ 117

Page 115: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Interface d'envoi de courrier électronique

"3hllp:II171.0 .0 .1 .BOBCl [nvoi d" ce ur rtce Manlla F"t!fax - • - - ~~PEJ

Envoi de ecumer

ExpediteUl

Objet

Message

COMPAORE

B U l

Votre e-mail

1­.-J- .-

Mémoire de fin d'études

_1

Page 113 1117

Page 116: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Annexes

Interface de mise à jour de la base de données

fichle'(1) "'"'

lichler(1)xml

fichl€.(3) xml

fichler(4)xml

fichla.(5) xml

1 Envoyar 1

1 P.. ron_ 1

1.- --:1 P.., ....... 1

1 Lance. la mal Il M,he. le Journaldela derniers IAA.J 1

NBVeuillez slynalarles ECHECS de MAl à radmmrstrateur

•• M.AJ de 1. lable ao_acie. journal du 12nJ2005 à 1257-­-- ECHEC INSERTION•• M.AJ EHECruEE

•• M.AJ de la 13ble be.Icurnal du 121712005à 1257-­•• ECHEC INSERnON-- M.AJ EFFECTIJEE

•• JAAJ de Iô table ag_acte,journal du 12!7JI005 a ·, 2 57 -­-- ECHEC INSERTION-- M!lJ EFFECTlJEE

-- IAA.J de le table cadre, [oumat cu 121712005 à 12:57-­.. ECHEC INSERTION.. IAA.J EFFEC'TlJEE

-- ECHEC INSERn ON1 --'- _ .. ...".." :n JJ;"- _rem-n!

Mémoire de fin d'études

l

Page 114 1117

Page 117: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Glossaire

GLOSSAIRE

• Application Web

Une application Web est une application délivrée par un serveur Web sur un réseau.

Elle repose sur une architecture client/serveur à plusieurs niveaux (Tiers) :

- niveau interface utilisateur;

- niveau contrôle ou logique;

- niveau des données ou objets;

- niveau « inter-niveaux» ou middleware.

Pour mettre en œuvre ces niveaux, un ensemble de technologies et de modèles

sous-jacents sont disponibles. Au niveau interface utilisateur, les technologies à

utiliser sont celles des pages Web: HTML, Javascript, styles CSS.

Le niveau contrôle est régi par les technologies de la génération dynamique de page

Web souvent associées à un langage de programmation: PHP, JSP (Java)...

Le niveau des données peut être objet et/ou relationnel. Lorsque les données sont

persistantes, une base de données est alors utilisée.

Enfin, pour faire communiquer ces technologies, des bibliothèques de composants

(API) existent dans le langage de développement choisi. Par exemple, en java l'API

JDSC (Java Data Base Connectivity) est utilisée pour se connecter à une base de

données.

• Serveur Web: processus logiciel chargé d'interpréter des requêtes de pages et

de renvoyer les pages demandées.

• Servlet: c'est une classe Java compilée (.c1ass) qui s'exécute dans un conteneur

JSP/Servlet hébergé dans un serveur Web, la Servlet est un composant qui étend

les fonctionnalités d'un serveur Web de manière portable et efficace.

• JSP (Java Server Page) : une JSP est une page HTML contenant des morceaux

de code Java et/ou des balises JSP spécifiques, permettant d'effectuer des

traitements et d'intégrer des données, afin de générer dynamiquement des pages

HTML.

Mémoire de fin d'études Page 115 / 117

Page 118: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Glossaire

• Conteneur Web JSP/Servlet: moteur d'exécution des Servlet/JSP coté serveur

(exemple Apache Tomcat).

• Client léger/lourd: Le client léger désigne un poste utilisateur dont la fonction se

limite à interpréter l'affichage de pages Web. Ce client léger, né avec les

technologies du Web, s'oppose au client lourd des architectures client/serveur.

Dans ce dernier cas, le poste client assume une part du traitement applicatif.

Résultat, le client léger demande beaucoup moins de maintenance que le client

lourd puisqu'il n'a pas à être mis à jour à chaque nouvelle version du logiciel. Le

seul composant requis est un navigateur Web.

• Le développement coté serveur en java: c'est écrire des composants Web

(Servlet, JSP) et des composants métiers en respectant une certaine architecture

(MVC par exemple) afin d'optimiser la création et la maintenance des

applications.

• E..IB (Entreprise Java Sean) : c'est une API qui fournit un modèle de conception

de composants métiers utilisés dans les applications basées sur une architecture

distribuée n/tiers.

• JavaSean: un JavaSean est un Objet compilé qui offre des services à travers ses

méthodes publiques. On peut par exemple les utiliser dans les JSP pour séparer

le code source java du code HTML.

• Framewoks (exemple Struts): les frameworks (squelettes d'application) sont des

structures logicielles qui définissent des cadres dans lesquels viennent s'insérer

les objets et concepts spécifiques à une application. En pratique, un framework

est un ensemble de classes et de mécanismes associés à une architecture

logicielle qui fournit un ou plusieurs services techniques ou métiers aux

applications qui s'appuient dessus.

\

Mémoire de fin d'études Page 116/117

Page 119: MEMOIRE DE FIN D'ETUDES · 1. UML (Unified Modeling Language) 13 2. Processus de développement 16 3. XML (eXtensible Markup Language) 18 4. Java 20 5. OpenCms 20 6. Modèle de développement

Bibliographie

BIBLIOGRAPHIE

• Références bibliographiques

Benjamin AUMAILLE. J2EE Développement d'applications Web. Nantes: Editions ENI, 2002, 361

p. ISBN 2-7460-1656-7

- Geoges Gardarin. XML des bases de données aux services Web. Paris: Dunod, 2002, 521 p.

ISBN 2 10 006933 0

- George Reese. Database Programming with JOSe and JAVA. Sebastopol : O'Reilly, 2000, 368 p.

Ben Laurie, Peter Laurie. Apache La référence. 3e édition. O'Reilly, Paris, 2003, 585 p. ISBN 2­

84177-255-X

SGG-CM. Réforme Globale de l'Administration Publique. Ouagadougou: Journal Officiel 2000,

302 p. Dépôt légal W 3446 ;

Ministère de la Fonction Publique et de Réforme de l'Etat. Système Intégré de la Gestion

Administrative et Salariale du Personnel de l'Etat (SIGASPE). Ouagadougou: MFPRE, 2002, 61p.

• Adresses Internet

http://java.sun.com/j2se/1.4.2/docs/apilindex.html

http://java.sun.com/j2ee/1.4/docs/tutorialldoclindex.html

http://www.labo-sun.com

http://www.lab-oracle.com

http://dev.mysgl.com/doc/

http://xmlfr.org/

http://www.developpez.com

http://www.opencms.com

http://uml.free.fr/

http://www.dotnetguru.org/articles/Persistancellivreblanc/ormapping.htm

http://struts.apache.org/

http://tomcatapache.org/

http://www·idom.org/docs/apidocslindex.html

http://www.oracle.com/technology/tech/plsgllindex.html

http://www.javascript.com/

http://java.sun.com/products/jsp/

http://java.sun.com/products/servtet/docs.html

http://www.fonction-publioue.gov.bf

http://www.delgi.gov.bf

Mémoire de fin d'études Page 117 1117