Rapport PFE Finale

85
Sommaire Introduction générale........................................1 Chapitre I.......................Présentation du Cadre du Projet 3 Introduction................................................. 4 I. Présentation de l’organisme d’accueil.....................4 I.1 Attributions........................................... 4 I.2 Organisation administrative et structure...............4 I.3 Direction Générale.....................................4 I.4 Les structure rattachées directement à la Direction Générale....................................................5 I.5 L’organigramme de l’ONTT...............................5 II. Etude de l’existant....................................... 6 II.1 Description de l’existant..............................6 II.2 Critique de l’existant.................................7 II.3 Solution proposée......................................7 III. Méthodologie adoptée.....................................8 Conclusion................................................... 9 Chapitre II.............................Spécification des besoins 10 Introduction................................................ 11 I. Contexte du système...................................... 11 II. Étude des besoins........................................ 11 II.1 Besoins fonctionnels..................................11 II.1.1.........................................Authentification 11 II.1.2..................................La gestion des projets 11 Rapport du Projet de Fin d’Etudes

Transcript of Rapport PFE Finale

Sommaire

Introduction générale..................................................................................................................1

Chapitre I Présentation du Cadre du Projet............................................................................3

Introduction.................................................................................................................................4

I. Présentation de l’organisme d’accueil................................................................................4

I.1 Attributions...................................................................................................................4

I.2 Organisation administrative et structure......................................................................4

I.3 Direction Générale.......................................................................................................4

I.4 Les structure rattachées directement à la Direction Générale......................................5

I.5 L’organigramme de l’ONTT........................................................................................5

II. Etude de l’existant...............................................................................................................6

II.1 Description de l’existant...............................................................................................6

II.2 Critique de l’existant....................................................................................................7

II.3 Solution proposée.........................................................................................................7

III. Méthodologie adoptée......................................................................................................8

Conclusion..................................................................................................................................9

Chapitre II Spécification des besoins....................................................................................10

Introduction...............................................................................................................................11

I. Contexte du système.........................................................................................................11

II. Étude des besoins..............................................................................................................11

II.1 Besoins fonctionnels..................................................................................................11

II.1.1 Authentification..................................................................................................11

II.1.2 La gestion des projets..........................................................................................11

II.1.3 La gestion des types............................................................................................12

II.1.4 La gestion des intervenants.................................................................................12

II.1.5 Participer au projet..............................................................................................12

II.1.6 La gestion des structures internes de l’ONTT....................................................12

II.1.7 La gestion des acteurs externes...........................................................................12

II.1.8 La gestion du compte utilisateur.........................................................................12

II.2 Besoins non fonctionnels...........................................................................................12

II.2.1 Sécurité...............................................................................................................12

II.2.2 Performance........................................................................................................12

II.2.3 Ergonomie...........................................................................................................13

II2.4 Convivialité.........................................................................................................13

II.2.5 L’aptitude à la maintenance................................................................................13

III. Les diagrammes de cas d’utilisation..........................................................................13

III.1 Présentation des acteurs..........................................................................................13

III.2 Description des cas d’utilisation.............................................................................13

III.2.1 Diagramme de cas d’utilisation général..............................................................16

III.2.2 Raffinement des cas d’utilisation........................................................................17

Conclusion................................................................................................................................21

Chapitre III Conception......................................................................................................22

Introduction...............................................................................................................................23

I. Architecture globale de la solution...................................................................................23

II. Conception du niveau données.........................................................................................24

II .1 Règles de gestion........................................................................................................24

II.2 Diagramme de classes................................................................................................24

II.2.1 Identification des classes.....................................................................................25

II.2.2 Description des classes.......................................................................................25

II.2.3 Diagramme de classe.........................................................................................26

II.2.4 Modèle relationnel..............................................................................................27

III. Conception du niveau application..................................................................................27

III.1 Diagramme de séquences « Authentification »......................................................27

III.2 Diagramme de séquences « Gestion de Projet ».....................................................28

III.3 Diagramme de séquences « Démarche de Projet ».................................................30

III.3 Diagramme de séquences « Application ».............................................................31

IV. Conception du niveau présentation................................................................................32

IV.1 Structure de l’application........................................................................................32

IV.2 Charte graphique.....................................................................................................33

Conclusion................................................................................................................................33

Chapitre IV Réalisation.......................................................................................................34

Introduction...............................................................................................................................35

I. Environnement de développement....................................................................................35

I.1 Environnement matériel.............................................................................................35

I.2 Environnement logiciel..............................................................................................35

I.2.1 Apache Tomcat 7.0.............................................................................................35

I.2.2 Oracle 11g Express.............................................................................................35

I.2.3 Adobe Dreamweaver CSS.5...............................................................................36

I.2.4 Eclipse indigo......................................................................................................36

I.2.5 PowerAMC.........................................................................................................36

I.2.6 Adobe Photoshop cs6.........................................................................................36

I.3 Choix des outils de développement : J2EE................................................................36

II. Déploiement de l’application............................................................................................38

III. Principales interfaces graphiques...................................................................................39

III.1 Interface « Page d’authentification »......................................................................39

III.2 Les Interfaces de l’« Administrateur »..................................................................39

III.2.1 Liste des chefs de Projet.....................................................................................39

III.2.2 Statistique...........................................................................................................40

III.3 Les Interfaces du « chef de projet ».......................................................................40

III.3.1 Ajouter un Projet.................................................................................................40

III.3.2 Liste des Projets.................................................................................................41

III.3.3 Détail du projet..................................................................................................41

III.34 Modification de projet........................................................................................42

III.3.5 Historique...........................................................................................................43

III.3.6 Modification du mot de passe............................................................................43

III.4 Les Interfaces du « Participant (intervenant, acteur externe) ».............................43

III.4.1 Accueil...............................................................................................................43

III.4.2 Détail de projet par tâche :.................................................................................44

IV. Planification du projet....................................................................................................45

Conclusion................................................................................................................................45

Conclusion Générale et Perspectives........................................................................................46

Webographie.............................................................................................................................47

Annexe......................................................................................................................................48

Annexe A : Diagrammes des cas d’utilisation..........................................................................49

Annexe B : Définitions.............................................................................................................51

Annexe C : Les interfaces.........................................................................................................53

Liste des figures

Figure 1 : L’organigramme de l’ONTT......................................................................................5Figure 2:Organisation du Projet..................................................................................................8Figure 3 : Processus unifié..........................................................................................................9Figure 4:Diagramme de cas d'utilisation initial........................................................................16Figure 5: Raffinement de cas d’utilisation « Participer à un projet »......................................17Figure 6:Raffinementdu cas d'utilisation «Gérer les projets »..................................................18Figure 7:Raffinementde cas d'utilisation « Modifier le compte ».............................................19Figure 8: Raffinement de cas d'utilisation « Gérer les intervenants»......................................20Figure 9: Architecture 3-Tiers..................................................................................................23Figure 10: Diagramme de classes.............................................................................................26Figure 11: Diagramme de séquences «Authentification »........................................................28Figure 12: Diagramme de séquences « Gestion de Projet ».....................................................29Figure 13: Diagramme de séquences « Démarche du Projet ».................................................30Figure 14:Diagramme de séquences « Application »...............................................................31Figure 15: Structure de l’application........................................................................................32Figure 16: Charte graphique.....................................................................................................33Figure 17: Diagramme de déploiement de l'application...........................................................38Figure 18:Page d’authentification.............................................................................................39Figure 19:Liste des chefs de Projet...........................................................................................40Figure 20:Statistique.................................................................................................................40Figure 21: Nouveau Projet........................................................................................................41Figure 22:Liste des projets........................................................................................................41Figure 23:Détail du projet.........................................................................................................42Figure 24: Modification de projet.............................................................................................42Figure 25: Historique................................................................................................................43Figure 26: Modification du Mot de Passe.................................................................................43Figure 27:Page d’accueil d'un Participant.................................................................................44Figure 28:Détail du projet par Tâche........................................................................................44Figure 29: Diagramme de GANTT...........................................................................................45Figure 30:Raffinement de Cas d’utilisation « Gérer les structures »........................................49Figure 31:Raffinement de cas d’utilisation « Gérer les types »................................................50Figure 32:Page d’accueil d’un chef de projet...........................................................................53Figure 33:Liste de type de projet..............................................................................................53Figure 34:Liste des acteurs.......................................................................................................54Figure 35: Liste des intervenants..............................................................................................54Figure 36: Nouvel acteur..........................................................................................................55Figure 37:Nouveau chef de projet.............................................................................................55Figure 38:Nouveau intervenant.................................................................................................56Figure 39:Fin de création de projet...........................................................................................56Figure 40:Calendrier de date.....................................................................................................56Figure 41:Statistique de structure par projet.............................................................................57

Liste des Tableaux

Tableau 1: Description des acteurs...........................................................................................13Tableau 2:Identification des cas d'utilisation............................................................................14Tableau 3: Description du sous cas d'utilisation "Participer à un Projet".................................17Tableau 4: Description du sous cas d'utilisateur «Gérer les projets ».......................................19Tableau 5:Description du sous cas d’utilisation « Gestion du compte »..................................19Tableau 6:Description du sous cas d’utilisation « Gestion des intervenants ».........................20Tableau 8:Description du sous cas d’utilisation « Gérer les structures ».................................49Tableau 9:Description du sous cas d’utilisation « Gestion des types »....................................50

1

Introduction générale

L’évolution rapide des technologies de l’information et des télécommunications

touche le monde du travail de plein fouet et transforme profondément les conditions et les

moyens de fonctionnement l’entreprise. L’intranet est devenu incontournable dans les

organisations. Il s’agit d’une organisation intelligente, d’un système interne d’information qui

permet à une organisation de se définir elle-même en tant que qu’entité, groupe, famille, où

chacun connaît son rôle et travaille à l’amélioration permanente et au bon déroulement du

travail au sein de l’organisation.

En effet, un portail web intranet permet de centraliser l’accès à l’information pour les

utilisateurs d’une part et offre un point unique de control et d’administration aux personnels

d’autre part. En se dotant d’un portail intranet, l’entreprise s’offre un outil unique qui

rassemble et personnalise, à travers une interface web, toutes les informations et services

nécessaires à ses activités, il a des très positifs reflets sur l’échange des informations et le

management.

Pour conclure le cursus de notre formation de licence appliquée à l’institut supérieur des

études technologiques de Charguia, nous avons eu l’occasion de réaliser notre projet de fin

d’études au sein de l’office nationale de tourisme tunisien. Notre projet consiste à mettre en

place un système intranet pour la direction informatique et plus précisément à développer une

application web de gestion et de suivi des projets

Le présent document contient toutes les étapes que nous avons réalisées pour atteindre notre

objectif, il est organisé comme suit :

Le premier chapitre «Présentation du Cadre du Projet» contient une description de la

société d’accueil, une étude de l’existant avec la problématique, les objectifs, la

démarche et les processus adoptés.

Dans le deuxième chapitre « spécification des besoins », nous allons énumérer les

principales fonctionnalités offertes par l’application en présentant les besoins

fonctionnels et non fonctionnels, ensuite nous allons déterminer les cas d’utilisation

ainsi que les principaux acteurs contribuant dans l’application.

2

Puis, au niveau du troisième chapitre intitulé «Conception », nous allons détailler

l’architecture de notre système et spécifier la conception de chaque partie de

l’architecture adoptée par le biais des diagrammes de séquence.

Finalement au niveau du quatrième et dernier chapitre « Réalisation » nous présentons

l’environnement de travail matériel et logiciel qu’on a utilisé, le diagramme de

déploiement qui illustre la mise en œuvre de la solution, les principales interfaces

graphiques et le planning prévisionnel et réel pour la gestion de notre projet.

3

Chapitre I

Présentation du

Cadre du Projet

Chapitre I Présentation du Cadre du Projet

4

Chapitre I : Présentation du cadre du projet

Introduction Ce chapitre représente une mise dans le contexte du projet de fin d’études intitulé Mise en

place d’un système intranet pour la Gestion des Projets de la direction informatique de

l’Office Nationale de Tourisme Tunisien, il contient une présentation de l’organisme

d’accueil, une étude de l’existant avec une idée sur la solution proposé pour remédier à la

problématique, ou ce qui va constituer notre projet.

I. Présentation de l’organisme d’accueil Ce projet de fin d’études s’est réalisé à l’Office Nationale de Tourisme Tunisien (ONTT).

C’est un établissement public à caractère non administratif doté de la personnalité civile et de

l’autonomie financière. Il est placé sous la tutelle du Ministère du Tourisme.

I.1 Attributions 

L’Office Nationale de Tourisme Tunisien a pour mission essentielle de mettre en œuvre la

stratégie de l’état en matière de tourisme, avec comme attributions :

o Développer le secteur touristique

o Réglementer et contrôler l’activité touristique

o Promouvoir le produit

o Assurer la formation hôtelière et touristique

I.2 Organisation administrative et structureL’L’Office Nationale de Tourisme Tunisien est administrée par un conseil d’établissement,

présidé par le Directeur Général.

I.3 Direction GénéraleLe directeur général assure le fonctionnement technique, administratif et financier de l’office

et assure d’une manière générale les attributions relatives à la loi de création de l’office, le

statut particulier du personnel et les législatifs et réglementaires en vigueur.

Le directeur général est assisté dans ses missions par le directeur général adjoint. Il a autorité

sur toutes les structures de l’office.

5

Chapitre I : Présentation du cadre du projet

I.4 Les structure rattachées directement à la Direction Généraleo Direction de l’audit interne

o Direction du contrôle de gestion

o Direction des affaires juridiques et des marchés

o Direction informatique

o Direction des études et de la coopération internationale

I.5 L’organigramme de l’ONTT

Figure 1 : L’organigramme de l’ONTT

6

Chapitre I : Présentation du cadre du projet

II. Etude de l’existant

II.1 Description de l’existantLa direction informatique de l’ONTT dispose de trois services :

- Développement.

- Système et sécurité.

- Technologies de l’information et de la communication.

Cependant, il existe deux façons de prise en charge d’un projet :

Le projet est pris en charge totalement par l’équipe de développement de la direction

informatique de l’ONTT et dans ce cas, il s’agit d’une gestion interne sans avoir

recours à un tiers externe.

Le projet est confié à un acteur externe. Dans ce cas, l’ONTT lance un appel d’offre,

suite auquel, un fournisseur est choisi pour la maîtrise d’œuvre, et ainsi la direction

informatique s’occupe de la maîtrise d’ouvrage et participe également au

développement.

La méthode de gestion des projets au sein de l’office se fait manuellement. En effet, le

plan des tâches est préparé manuellement sur des fichiers physiques de façon où chaque

intervenant peut manipuler ses projets associés d’une façon différente et enregistrer ses

propres observations.

Afin de gérer les projets et suivre leurs avancements, il est nécessaire de suivre certains

indicateurs pour comprendre le flux d’informations échangées, et pour ce faire le chef de

projet doit définir un ensemble de paramètres, à savoir :

Le projet, les phases, les tâches, l’équipe intervenante, la structure interne destinatrice,

l’acteur externe investisseur ou fournisseur.

Un intervenant doit pouvoir :

Gérer ses tâches pour un ou plusieurs projets

Voir son planning

Définir ses options de travail (valider tâche en cours…)

7

Chapitre I : Présentation du cadre du projet

Le chef de projet contrôle l’état d’avancement d’un projet en fixant les dates de fin de

différentes phases et tâches ainsi que les dates de validation ,et puis il doit clôturer le projet

après l’accomplissement de toutes les phases.

II.2 Critique de l’existantAprès l’analyse de la méthode de travail actuelle au sein de la société, nous pouvons

maintenant dégager les inconvénients et les insuffisances suivantes :

D’une part, l’absence d’un système permettant la gestion automatique des projets ce qui

engendre un volume important des informations traitées manuellement, et ça provoque parfois

des erreurs dans l’établissement des documents et dans la planification. Il y a mise au point

aussi de la perte de temps, car on risque de perdre ces données ou de tomber dans des

ambiguïtés, ainsi que la possibilité d’erreur dans le remplissage des différents documents ne

cesse d’augmenter.

D’autre part, l’absence aussi des moyens de collaboration qui permettent de faciliter le

travail en équipe et des outils de suivi permettant de connaître en temps réel le résultat de

projet, ainsi que son état d’avancement, donc s’ajoute ici le problème d’organisation.

II.3 Solution proposée

Après avoir observé l’existant et recensé les besoins des utilisateurs, et dans le but

d’optimiser le travail, nous avons assigné à notre étude les points suivants :

Diminuer le coût et le support papier.

Permettre le partage des informations et la communication au sein de l’entreprise en

toute sécurité ; Une application intranet facilite la circulation de l’information, c’est

une des raisons de son succès.

Faciliter les tâches administratives des projets tout en offrant des outils de suivi.

Assurer la collaboration et la coordination entre les différents intervenants en offrant une

meilleure gestion des projets.

La solution qu’on propose consiste à concevoir un système qui gère le planning de

réalisation d’un projet, depuis sa création à sa livraison finale, il doit également nous

permettre de connaître l’ensemble des tâches à réaliser pour un projet quelconque, les

intervenants concernés, les durées nécessaires et l’état d’avancement du projet…

8

Chapitre I : Présentation du cadre du projet

Figure 2:Organisation du Projet

III. Méthodologie adoptée

Le choix de la méthodologie d’analyse et de conception de notre application est basé sur

le processus unifié, qui est un processus de développement logiciel regroupant les activités à

mener pour transformer les besoins d’un utilisateur en système logiciel. Il est à base de

composants, piloté par les cas d’utilisateur, centré sur l’architecture, itératif, incrémentale et

utilise le langage UML…

En effet, le point fort du processus unifié réside dans son ambiguïté car il est adaptable à

divers types de projets [1].

Le langage propose de nombreux types de modèles, construits sur un certain nombre de

concepts communs. Ce choix est basé sur les avantages apportés par UML (Unified Modeling

Language), parmi lesquels on peut citer par exemple le support de communication performant

puisqu’il facilite la compréhension et représentations abstraites complexes. De plus, UML est

un langage universel qui permet de servir de support pour tout langage orienté objet. Il assure

en plus une notation graphique simple, compréhensible même pour les non-informaticiens.

9

Chapitre I : Présentation du cadre du projet

Développement itératif

Figure 3 : Processus unifié

ConclusionDans ce chapitre, nous avons donc mis le projet dans son contexte et cité les limites du

système actuel ainsi que la solution que nous proposons. Dans le chapitre suivant, nous allons

spécifier et analyser les techniques et fonctionnalités du système à réaliser, et cela avant de

procéder à la planification lors de la phase d’élaboration.

10

Chapitre II

Spécification des

besoins

Chapitre II Spécification des besoins

11

Chapitre 2 : Spécification des besoins

IntroductionLe présent chapitre présente la phase d’analyse et de spécification des besoins. Nous

commençons tout d’abord, par l’étude préliminaire dans laquelle nous faisons la capture des besoins. Ensuite, nous procédons à l’étude fonctionnelle et technique de notre projet. Et enfin, nous identifions les acteurs de notre système et les différents cas d’utilisation.

I. Contexte du systèmeNotre mission au sein de l’office Nationale de Tourisme Tunisien consiste à mettre en

place un système Intranet pour la gestion des projets de la direction informatique qui permet

de suivre le cycle de vie d’un projet de l’introduction à sa livraison finale.

II. Étude des besoins

L’objectif de la phase de spécification des besoins consiste à définir avec détails

l’ensemble des fonctionnalités offertes par le système. Notre application doit être

opérationnelle, évolutive, conviviale et offrant les informations nécessaires en temps réel.

II.1 Besoins fonctionnels

Un besoin fonctionnel est un besoin spécifiant une action qu’un système doit être capable

d’effectuer, sans considérer aucune contrainte physique. C’est un besoin spécifiant un

comportement d’entrée/sortie d’un système.

Notre futur système doit assurer les fonctionnalités techniques suivantes :

II.1.1 Authentification : la notion de sécurité est très importante au sein d’un

système multi-utilisations. Pour cette raison, il est indispensable d’ajouter un cas d’utilisation

« S’authentifier ». Tous les acteurs doivent s’identifier avant de réaliser n’importe quelle

opération.

II.1.2 La gestion des projets : les nouveaux projets sont introduits par le chef de

projet qui doit insérer dans le système plusieurs paramètres tel que la structure destination,

l’équipe intervenante, la durée estimée pour la création des phases et des tâches. Le chef de

projet assure aussi le suivi de l’exécution d’un projet, dans le but de permettre au système de

mentionner l’état d’avancement selon les phases et tâches clôturées. Il peut également

modifier un projet ou le supprimer.

12

Chapitre 2 : Spécification des besoins

II.1.3 La gestion des types : afin de créer un projet, le chef doit mentionner son

type, il peut également gérer les types des projets en ajoutant un nouveau type, le consulter et

le mettre à jour en le modifier ou en le supprimant.

II.1.4 La gestion des intervenants : Un projet correspond à un projet de travail.

Ce projet peut concerner une ou plusieurs personnes appelées intervenants, et qui sont

contrôlées par un chef de projet qui les affecte à un projet en leur attribuant une tâche. Par la

suite, chaque intervenant doit pouvoir accéder à ses tâches associées et pouvoir les gérer.

II.1.5 Participer au projet : Un simple intervenant peut accéder aux tâches de ses

associées et consulter leurs informations et peut aussi les gérer en ajoutant des observations et

les valider après clôture.

II.1.6 La gestion des structures internes de l’ONTT : (directions centrales et

directions…) elle permet d’ajouter une nouvelle structure interne, la consulter et la mettre à

jour en la modifiant ou en la supprimant.

II.1.7 La gestion des acteurs externes : société, cabinet de conseils… : Gérer,

modifier ou supprimer une structure.

II.1.8 La gestion du compte utilisateur: un intervenant peut modifier ses informations, changer son mot de passe.

II.2 Besoins non fonctionnelsUn besoin non fonctionnel est un besoin spécifiant des propriétés du système, tel que

les contraintes liées à l’environnement et l’implémentation, et les exigences en matière de

performances, de dépendances de plateforme, de facilité de maintenance, d’extensibilité et de

fiabilité.

Dans notre système on distingue les besoins non fonctionnels suivants :

II.2.1 Sécurité : l’application doit garantir la sécurité en assurant l’intégrité et non

répudiation des données stockées dans la base, compte tenu qu’elles reflètent des informations

privées sur les différents utilisateurs.

II.2.2 Performance: L’application doit faire face à un grand nombre de requêtes et

le temps de traitement de données doit être minimum. L’accès à la base donnée doit être à la

fois facile et rapide.

II.2.3 Ergonomie : Les interfaces doivent être claires et faciles à manipuler.

13

Chapitre 2 : Spécification des besoins

II2.4 Convivialité : La future application doit être facile à utiliser. En effet, les

interfaces utilisateurs doivent être conviviales c’est-à-dire simples, ergonomiques et adaptées

à l’utilisateur.

II.2.5 L’aptitude à la maintenance : La flexibilité de l’application pour qu’elle

facilite les améliorations et la maintenance.

III. Les diagrammes de cas d’utilisation

III.1 Présentation des acteurs

Un acteur représente une abstraction d’un ensemble des rôles joués par entités externes et

qui interagissent directement avec le système. Nous avons identifié principalement 4 acteurs.

Acteur DescriptionAdministrateur L’administrateur peut faire la gestion des chefs de projet (ajout, mise à

jour).L’administrateur peut avoir les listes du projet et les statistiques.

Intervenant Un intervenant participe à la réalisation de projet. Il peut également gérer son compte utilisateur.

Acteur externe Un acteur externe peut participer à la réalisation de projet si on lui demande de faire une tâche.

Chef de projet Cet acteur est un intervenant qui a des super privilèges. Son rôle principal est de contrôler l’avancement d’un projet dès sa création jusqu’à sa validation. Il peut donc créer, modifier, supprimer ou valider un projet, gérer ses phases et tâches. Il gère aussi les structures internes, les types de projet, les acteurs externes et intervenants et peut les affecter alors à un projet quelconque.Le chef de projet peut avoir les statistiques.

Tableau 1: Description des acteurs

III.2 Description des cas d’utilisation

Chaque usage du système par l’un des acteurs est représenté par un cas d’utilisation.

Chaque cas d’utilisation représente donc une fonctionnalité offerte par notre application afin

de produire le résultat attendu. Ainsi, « le diagramme de cas d’utilisation décrit l’interaction

entre le système et l’acteur, en déterminant les besoins de l’utilisateur et tout ce que doit faire

le système pour l’acteur ».

Le tableau ci-dessous contient une classification des cas d’utilisateur par acteur :

Acteur Cas d’utilisationAdministrateur S’authentifier

14

Chapitre 2 : Spécification des besoins

Gérer les chefs de projet Visualiser les statistiques

Intervenant S’authentifier Gérer son compte utilisateur Participer au projet associé

Acteur externe S’authentifier Participer au projet associé

Chef de projet S’authentifier Gérer les projets Gérer les intervenants Gérer les acteurs externes Gérer les structures internes Gérer les types de projet Visualiser les statistiques

Tableau 2:Identification des cas d'utilisation

L’objectif fondamental de cette étape est d’identifier les principaux cas d’utilisation :

Gérer les chefs de projet : L’administrateur peut ajouter les chefs de projet, comme

il peut les modifier ou les supprimer.

Visualiser les statistiques : Peut avoir les statistiques.

S’authentifier : Il doit passer par la saisie du login et du mot de passe pour

s’identifier

Gérer son compte utilisateur : Un intervenant peut modifier ses informations

personnelles, tel que son mot de passe.

Participer au projet associé : Chaque intervenant est doté de sa propre interface,

qui est différente de celle du chef de projet, et dans laquelle il peut voir les tâches

qui lui ont été affectées par le chef de projet et peut donc consulter le projet en cours

et mettre à jour ses tâches.

Gérer les projets : Le chef de projet peut créer un projet qui contient au minimum

une phase et une tâche ainsi que les dates de validation, comme il peut supprimer le

projet au moment de l’approbation de toutes les phases. Il peut également mettre à

jour un projet en cours en le modifiant (Ajouter une phase, prolonger le projet,

change l’état d’un projet…).

Gérer des intervenants : Le chef de projet peut ajouter un nouvel intervenant, le

consulter ou le mettre à jour, soit en le modifiant ou en le supprimant.

Le chef de projet peut affecter un intervenant à une tâche de projet.

15

Chapitre 2 : Spécification des besoins

Gérer les acteurs externes : Le chef de projet peut ajouter un nouvel acteur

externe, le consulter ou le mettre à jour soit en l’affectant à un projet, soit en le

modifiant ou en le supprimant.

Gérer les structures internes : Le chef de projet peut ajouter une nouvelle

structure, la consulter ou la mettre à jour soit en l’affectant à un projet, soit en la

supprimant ou en la modifiant.

Gérer les types de projet : Le chef de projet peut ajouter un nouveau type de projet

et le mettre à jour soit en le supprimant ou en le modifiant.

III.2.1 Diagramme de cas d’utilisation général

16

Chapitre 2 : Spécification des besoins

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

Chef Projet

Gérer les intervenants

Gérer les projets

Gérer les Types

Gérer les Structures

Gérer Les Acteurs

Authentification

Base des données

Participer à un projet

Modifier le compte

intervenant

Gérer la l iste des chefs de projets

Visualiser les statistiques

Administrateur

Acteur externe

Figure 4:Diagramme de cas d'utilisation initial

17

Chapitre 2 : Spécification des besoins

III.2.2 Raffinement des cas d’utilisation

III.2.2.1 Participer à un projet 

<<include>>

<<extend>>

<<extend>> <<extend>>Participant

chef projet

Participer à un projet

consulter un projet

voir les taches

valider une taches

Authentification

Acteur externe

Intervenant

Figure 5: Raffinement de cas d’utilisation « Participer à un projet »

Description du cas d’utilisation « Participer à un projet » :

Titre Participer à un projetActeurs : Participant (Acteur externe, Intervenant, chef de projet)

Pré condition : Un participant doit être authentifiéScénario Nominal : Le système affiche l’interface de gestion de projet

associé.L’intervenant, ou acteur externe choisit le projet associé.Le système affiche les informations relatives au projet (nom, équipe d’intervenants, structure destinatrice, acteurs externes, liste des phases et tâches…)L’intervenant ou acteur externe clique sur gérer tâches.Le système affiche l’interface des tâches associées au projet sélectionné.L’intervenant choisit une tâche.Le système affiche l’interface de gestion de tâche.L’intervenant crée un commentaire si nécessaire.L’intervenant définit ses options de travail et valide.

Post condition : Participant authentifié

Tableau 3: Description du sous cas d'utilisation "Participer à un Projet"

18

Chapitre 2 : Spécification des besoins

III.2.2.2 Gérer les projets 

<<include>>

<<extend>>

<<extend>>

<<extend>>

<<include>>

<<include>>

Chef Projet Gérer les projets

Authentification

Ajouter un ProjetModifier un projetSupprimer un projet

Créer phase Créer tâche

Figure 6:Raffinementdu cas d'utilisation «Gérer les projets »

Description du sous cas d’utilisation « Gérer les projets » :

Titre Gérer les projetsActeur Chef de projet

Pré condition Le chef de projet doit être authentifié.

Scénario Nominal Le chef de projet accède à l’interface de gestion de projet.Le chef de projet crée un nouveau projet.Le chef de projet ajoute une phaseDans chaque phase, le chef de projet ajoute au moins une tâche.Le chef de projet saisit toutes les informations nécessaires pour terminer l’ajout d’un projet.Le système vérifie la validation d’ajout et met à jour la base de données et affiche un message de confirmation.

Post condition Projet Crée

Exception Si le chef de projet saisit des informations

19

Chapitre 2 : Spécification des besoins

erronées, un message d’erreur sera affiché.Tableau 4: Description du sous cas d'utilisateur «Gérer les projets »

III.2.2.3 Modifier le compte 

<<include>>

<<extend>><<extend>>

intervenant

chef Projet

gestion de compte

Modifier le mot de passe Modifier les informations personelles

Anthentification

Figure 7:Raffinementde cas d'utilisation « Modifier le compte »

Description du sous cas d’utilisation « Modifier le compte » :

Titre Modifier le compteActeurs Intervenant, chef de projet

Pré condition L’intervenant ou chef de projet doit être authentifié

Scénario Nominal Le système affiche l’interface de mise à jour de compte. L’intervenant clique sur le menu gérer compte.Sous le menu gérer compte, on trouve modifier (mot de passe, informations personnelles).L’intervenant ou le chef de projet clique sur l’un des sous-menus de gérer le compte et clique sur le bouton valider pour enregistrer

Post condition Mise à jour réussie du compte

Exception Si l’intervenant saisit des informations erronées, un message d’erreur sera affiché.

Tableau 5:Description du sous cas d’utilisation « Gestion du compte »

20

Chapitre 2 : Spécification des besoins

III.2.2.4 Gérer les intervenants

<<include>>

<<extend>>

<<extend>>

<<extend>>

chef Projet

Gérer les intervenants

Ajouter intervenant

Supprimer intervenant

Authentification

Modifier intervenant

Figure 8: Raffinement de cas d'utilisation « Gérer les intervenants»

Description du sous cas d’utilisation « Gérer les intervenants » :

Titre Gérer les intervenantsActeur Chef de projet

Pré condition Le chef de projet doit être authentifié.

Scénario Nominal Le chef de projet clique sur le menu gestion des intervenants.Sous le menu gestion des intervenants, on trouve (Ajouter, supprimer et modifier).Le chef de projet clique sur l’un de ces sous-menus.Il y a une interface appropriée pour chaque choix.Le chef de projet ajoute ou supprime ou modifie un intervenant, puis clique sur le bouton valider pour enregistrer.

Post condition Mise à jour réussie des intervenants

Exception Si le chef de projet saisit des informations erronées, un message d’erreur sera affiché.

Tableau 6:Description du sous cas d’utilisation « Gestion des intervenants »

21

Chapitre 2 : Spécification des besoins

Conclusion La spécification des besoins fonctionnels et non fonctionnels du système, et par la

suite, la définition des différents diagrammes des cas d’utilisation, nous ont permis de

déterminer les principales fonctionnalités offertes par notre système.

22

Chapitre III

Conception

Chapitre III Conception

23

Chapitre III : Conception

IntroductionDans ce chapitre, nous allons présenter la notion d’architecture trois tiers. Ensuite,

nous passons à détailler la conception de notre application.

I. Architecture globale de la solutionGénéralement, la création des sites ou les applications web est effectuée selon

l’architecture 3-tiers, cette architecture est un modèle logique d’architecture applicative qui

vise à séparer très nettement trois couches logicielles au sein d’une même application ou

système, à modéliser et présenter cette application comme un empilement de trois couches.

Cette architecture est présentée par la figure ci-dessous :

Figure 9: Architecture 3-Tiers

La partie client   : c’est la partie qui permet le dialogue avec l’utilisateur. Elle

peut être composée d’une application web ou d’applets.

La partie métier   :(appelée également middleware) c’est la partie qui encapsule

les traitements.

La partie donnée   : c’est la partie qui stocke les données.

Une requête est traitée en 3 niveaux, le client l’envoi à un serveur d’applications qui la

traite et l’envoi à son tour à un serveur de données accompagné généralement d’une base de

24

Chapitre III : Conception

données, cette requête est ré-envoyée depuis le serveur de données au serveur d’applications

qui la transfère finalement en tant que réponse au client.

II. Conception du niveau donnéesLa conception du niveau données permet de mieux spécifier la structure du système tout

en décrivant ses règles de gestion afin d’améliorer la compréhension et la lisibilité du

diagramme de classes.

II .1 Règles de gestionNous présentons dans ce qui suit les principales règles de gestion relatives à notre

application.

L’administrateur peut ajouter un ou plusieurs chefs de projet.

L’administrateur peut voir la liste des projets.

Un participant peut être un chef de projet.

Un participant peut être un intervenant.

Un participant peut être un acteur externe.

Un participant peut être un administrateur.

Chaque chef du projet peut ajouter un ou plusieurs projets.

Chaque projet appartient à zéro ou plusieurs structures.

Un projet est associé à un seul type.

Chaque projet est composé par un ou plusieurs phases associées.

Une phase est composée par au moins une ou plusieurs tâches

Chaque tâche est associée à une seule phase.

Chaque tâche est associée à un seul participant (intervenant, acteur externe)

Un participant(intervenant, acteur externe) peut avoir une ou plusieurs tâches.

L’administrateur peut visualiser les statistiques.

Le chef de projet peut visualiser les statistiques.

II.2 Diagramme de classes

Une classe représente la structure d'un objet, c'est-à-dire la déclaration de l'ensemble des

entités qui le composent. Elle est constituée d'attributs dont les valeurs représentent l'état de

l’objet et des méthodes qui sont les opérations applicables aux objets.

25

Chapitre III : Conception

II.2.1 Identification des classes

Administrateur Projet Participant Intervenant

Type Structure Phase Tâche

Acteur externe Commentaire Chef de projet

II.2.2 Description des classes

Administrateur   : est une classe fille qui contient les informations d’administrateur.

Projet   : elle contient toutes les informations nécessaires du projet (phase, tâche, structure et

type).Elle contient aussi la liste des participants (intervenant, acteur externe) associés pour

chaque projet.

Participant   : est une classe mère contenant tous les participants existants comme chef de

projet, intervenant, acteur externe, administrateur.

Intervenant   : est une classe fille qui contient les informations de l’intervenant.

Chef de projet   : est une classe fille qui contient les informations du chef de projet.

Acteur externe   : est une classe fille qui contient les informations de l’acteur externe.

Structure   : cette classe contient les informations de la structure.

Type   : classe contient tous les types de projets.

Phase   : elle contient toutes les listes de phases des projets.

Tâche   : elle contient la liste des tâches associées au participant (intervenant, acteur externe)

dans une phase.

II.2.3 Diagramme de classe

26

Chapitre III : Conception

0..*

1..1

1..1

1..*

1..1

1..*

1..1

1..1

1..1

0..11..1

0..*

1..1

0..*

1..1

0..*

Chef Projet

Projet

--------

IdTitreDescriptionDate_debutDate_finLangageLogicielEtat

: int: String: String: Date: Date: String: String: String

++++

ajouter ()Supprimer ()Modifier ()afficher ()...

: void: void: void: void

Phase

----

idDescriptionDate_DebutDate_fin

: int: String: Date: Date

++++

ajoute ()Supprimer ()modifier ()afficher ()...

: void: void: void: void

Tache

-----

idDescriptionDate_debutDate_FinEtat

: int: String: Date: Date: Date

++++

ajoute ()Supprimer ()modifier ()afficher ()...

: void: void: void: void

Structure

-----

idDescriptionDirectureLieuTel_Struc

: int: String: String: String: String

++++

Ajouter ()Modifier ()Supprimer ()afficher ()...

: void: void: void: void

Type

--

idDescription

: int: String

++++

ajoute ()Supprimer ()modifier ()afficher ()...

: void: void: void: void

Participant

---------

Idtype_participantNomPrénomAdresseTélephonneMailLoginMot de passe

: int: int: String: String: String: String: String: String: String

++++

Ajoute ()Supprimer ()Modifier ()afficher ()...

: void: void: void: void

Intervenant

- privilege : String

Acteur externe

- Spécialité : String

Administrateur

Figure 10: Diagramme de classes

II.2.4 Modèle relationnelUne fois notre diagramme de classes est établi, nous pouvons déduire le modèle relationnel

correspondant, qui est le suivant :

27

Chapitre III : Conception

Participant (id,type_participant, nom, prénom,adresse, téléphone, mail, login, password,

privilège, Spécialité);

Structure (idStruc,description_struc, directeur, adresse_struc, téléphone_struc) ;

Type ( idType, Description_type);

Projet (idPro , Titre, Description, DateDébut_pro, DateFin_pro, Etat_pro,language,

logiciel,#idStruc, #idType, #idChef);

Phase (idPhase, description_Phase, DateDébutPhase, DateFinPhase, #idPro);

Tâche (idTâche, description_tâche, DateDébutTâche, DateFinTâche, état_tâche ,#idPhase,

#idAct, #idInter) ;

III. Conception du niveau application

III.1 Diagramme de séquences « Authentification »

Ce diagramme schématise l’opération d’authentification du participant au système

(l’opérateur « loop » explique comment le système interagit avec la demande

d’authentification). Si les informations saisies sont invalides, une alerte informe l’utilisateur.

Sinon, le participant accède à la page d’accueil sans problèmes.

28

Chapitre III : Conception

Authentification

Vérefication de login et mot de passe

Affichage de menu

Succes de connexion

Resaisir login et mot de passe

Message d'erreur

Saisi login/mot de passe

Systeme

Participant

[Condition]loop

Vérefication de login et mot de passe

Affichage de menu

Succes de connexion

Resaisir login et mot de passe

Message d'erreur

Saisi login/mot de passe

Figure 11: Diagramme de séquences «Authentification »

III.2 Diagramme de séquences « Gestion de Projet »

Le diagramme ci-dessous décrit le cas d’utilisation « Gestion de Projet » définissant la

création d’un projet. Dans ce cas le chef de projet doit créer un projet qui contient plusieurs

phases et chaque phase inclut plusieurs tâches, il faut aussi indique le type de chaque projet et

leur structure.

29

Chapitre III : Conception

Création Projet

Supprimer un projet

Modifier un projet

Suivie l 'evolution des projets

gestion des structure

ajouter les structure

gestion des types

indique son type

affecter une intervenant ou un acteur

gestion des intervenants ou des acteurs

ajouter les taches

ajouter les phase

crée une nouveau projet

Chef Projet

Projet

par

par

par

par

Supprimer un projet

Modifier un projet

Suivie l 'evolution des projets

gestion des structure

ajouter les structure

gestion des types

indique son type

affecter une intervenant ou un acteur

gestion des intervenants ou des acteurs

ajouter les taches

ajouter les phase

crée une nouveau projet

Figure 12: Diagramme de séquences « Gestion de Projet »

30

Chapitre III : Conception

III.3 Diagramme de séquences « Démarche de Projet »

Le diagramme suivant décrit le « Démarche de Projet » qui explique la démarche d’un

projet, qui contient tout d’abord l’authentification, puis la création de projet, en suite chaque

intervenant ou acteur externe voir les tâches à réaliser et le validée. Le chef de projet a

consulté le suivi et l'évaluation du projet

démarche Projet

4: Suivre l 'evolution des phases

3: suivire l 'evolution

2: Validée les taches réalisée

1: voir les taches à réaliser

Chef Projet Participant (intervenant, acteur)

Projet

refAuthentification()

par

refCréation Projet()

4: Suivre l 'evolution des phases

3: suivire l 'evolution

2: Validée les taches réalisée

1: voir les taches à réaliser

Figure 13: Diagramme de séquences « Démarche du Projet »

31

Chapitre III : Conception

III.3 Diagramme de séquences « Application »

On passe maintenant au diagramme de séquences décrivant la démarche d’application

« Application» qui regroupe toutes les types des gestions qu’on peut faire ; gestion des

participants, gestion des structures, gestion des types et gestion de compte.

Application

Gestion de compte

Gestion des Types

Gestion de compte

gestion des Strurtures

gestion des participants

Chef Projet Participant (intervenant, acteur)

Système

refAuthentification()

ref

Création Projet()

refdémarche Projet()

Gestion de compte

Gestion des Types

Gestion de compte

gestion des Strurtures

gestion des participants

Figure 14:Diagramme de séquences « Application »

32

Chapitre III : Conception

IV. Conception du niveau présentation

IV.1 Structure de l’application

Pour maintenir une hiérarchie équilibrée qui aidera à accéder rapidement aux informations

et permet une compréhension intuitive de la façon dont les éléments sont organisés, nous

avons opté pour la structure en évolution.

La structure à laquelle on a abouti pour notre application est illustrée par la figure suivante :

Figure 15: Structure de l’application

33

Chapitre III : Conception

IV.2 Charte graphique

Le but de la charte graphique est de conserver une cohérence graphique entre les

réalisations graphiques d’un même projet. Pour cela, nous avons choisi la structure suivante

pour toutes les interfaces de notre application :

Figure 16: Charte graphique

Conclusion 

Dans ce chapitre, nous avons donc présenté la conception de notre système. Par la

suite, nous avons détaillé l’architecture trois tiers avant de procéder à l’implémentation des

diagrammes de classes et des diagrammes de séquences.

34

Chapitre III : Conception

Chapitre IV Réalisation

Chapitre IV

Réalisation

35

Chapitre IV : Réalisation

IntroductionAu niveau de cette dernière partie, on va s’intéresser aux outils utilisés pour la

réalisation de notre application ainsi qu’aux principales interfaces développées, en passant par

le diagramme de déploiement, et cela avant de finir avec la planification du projet.

I. Environnement de développement

I.1 Environnement matérielDeux ordinateurs portables sont utilisés avec les caractéristiques suivantes :

I.2 Environnement logiciel

I.2.1 Apache Tomcat 7.0 

Tout le travail a été effectué avec le serveur de Tomcat vu que c’est un serveur d’une

grande qualité qui permet le développement et la distribution d’applications web.

I.2.2 Oracle 11g Express 

36

Chapitre IV : Réalisation

Oracle Database est un système de gestion de base de données relationnel (SGBDR),

qui depuis qu’il a permis le support du modèle objet dans sa version 8 peut être aussi qualifié

de système de gestion de base de données relationnel-objet(SGBDRO). Fourni par Oracle

Corporation, il a été développé par Larry Ellison. « Oracle Database Express Edition » est une

version gratuite de la base. Il s'agit d'une version 11g Standard Edition One limitée. [2]

I.2.3 Adobe Dreamweaver CSS.5

Dreamweaverest un éditeur HTML professionnel destiné à la conception, au codage et

au développement de sites, de pages et d’applications Web. Quel que soit l’environnement de

travail utilisé (codage manuel HTML ou environnement d’édition visuel), Dreamweaver

propose des outils qui aident à créer des applications Web facilement et efficacement.

I.2.4 Eclipse indigo

Dans la programmation informatique , Eclipse est un multi-langue environnement de

développement intégré (IDE) comprenant une base qui sert comme un espace de travail, et un

extensible plug-in système de personnalisation de l'environnement. Eclipse peut être aussi

utilisé pour développer des applications en Java.

Les environnements de développement comprennent l'Eclipse Java Développent Tools

(JDT) pour Java et Scala, Eclipse CDT pour C / C + + et PHP pour Eclipse PDT. [3]

I.2.5 PowerAMC

PowerAMC est un logiciel de conception créé par la société SDP, qui permet de

modéliser les traitements informatiques et leurs bases de données associées.

I.2.6 Adobe Photoshop cs6

Photoshop est un logiciel de retouches, de traitement et de dessin assisté par

ordinateur édité par Adobe. Il est principalement utilisé pour le traitement de photographies

numériques.

I.3 Choix des outils de développement : J2EE

37

Chapitre IV : Réalisation

Nous avons choisi la plateforme J2EE vu qu’un grand nombre de fonctionnalités sont mises

à jour régulièrement au niveau du système de façon à produire des applications robustes,

faciles à entretenir et susceptibles d’accompagner l’accroissement des besoins. [2]

La plateforme Java Entreprise Edition, ou Java EE, est une plateforme de développement

d’applications distribuées de logiciels d’entreprise. Elle offre de nombreux avantages :

- Elle fournit une plateforme standard pour la construction de composants logiciels qui

sont transférables dans les implémentations.

- Elle favorise l’interopérabilité dans les environnements hétérogènes.

Cette plateforme est conçue donc pour offrir un standard permettant de développer des

applications complexes capables de supporter des milliers de transactions et d’utilisateurs

requérants une sécurité élevée.

Pour la réalisation de notre travail donc, on a utilisé les outils correspondants à cette

plateforme pour développer les pages web de notre application et préparer la base de données.

On va introduire ces outils et justifier le choix qu’on a fait en précisant les avantages et les

atouts qui ont guidé ce choix :

JSP (Java Server Pages) : ce sont des pages HTML qui contiennent du code Java.

JSP permet une meilleure division des tâches à travers la présentation générale par

les graphistes et le coté dynamique par les scriptlets en java. C’est notre couche

présentation.

Servlet : Une servlet est une classe Java qui permet de créer dynamiquement des

données au sein d'un serveur HTTP. Ces données sont le plus généralement

présentées au format HTML, mais elles peuvent également l'être au format XML

ou tout autre format destiné aux navigateurs web. Les servlets utilisent l'API Java

Servlet (package javax.servlet).

HTML5  (HyperText MarkupLanguage): Nous l’avons utilisé pour la gestion et

l’organisation du contenu des pages JSP.

CSS3 (Cascading Style Sheets): Nous avons utilisé le langage CSS pour la

gestion de l'apparence des pages JSP (agencement, positionnement, décoration,

couleur, taille du texte...) et donc pour compléter le HTML.

38

Chapitre IV : Réalisation

Java Script : C'est un langage de programmation qui est inclus dans le code

HTML. Il permet d'apporter des améliorations au langage HTML en permettant

d'exécuter des commandes.

II. Déploiement de l’application

L’architecture d’un système informatique est la façon dont les fonctions ou traitements du

système sont distribués entre ses divers composants matériels et logiciels. De ce fait, on peut

distinguer plusieurs niveaux lors du développement d’applications informatiques. Le modèle

de déploiement indique l’architecture matérielle d’un système, et spécifie les composants

physiques nécessaires pour l’application.

L’architecture utilisée est une architecture client-serveur 3 tiers. Dans le diagramme de

déploiement ci-dessous, on a représenté la répartition physique des Micro-ordinateurs clients,

et le serveur d’application qui est composé à son tour de trois couches : couche présentation,

couche métier et la couche de données liée au serveur de données.

Figure 17: Diagramme de déploiement de l'application

39

Chapitre IV : Réalisation

III. Principales interfaces graphiques

La réalisation des interfaces utilisateurs homogènes, cohérentes et réutilisables est une

tâche très difficile.

Dans cette partie, nous allons présenter quelques interfaces de l’application. Nous

profiterons cette présentation pour faire quelques scénarios d’exécution afin de tirer quelques

résultats de test de notre application.

III.1 Interface « Page d’authentification »

Figure 18:Page d’authentification

Au lancement de l’application, la page d’authentification qui restreint l’accès sera

affichée, et le participant (Administrateur, chef de projet, intervenant, acteur externe) doit

saisir son login et son mot de passe.

III.2 Les Interfaces de l’« Administrateur »

III.2.1 Liste des chefs de Projet : Une fois authentifié, l’administrateur peut ajouter

les chefs de projets, comme il peut les modifier ou les supprimer.

40

Chapitre IV : Réalisation

Figure 19:Liste des chefs de Projets

III.2.2 Statistiques : L’administrateur peut aussi voir toutes les statistiques

concernant l’application. Cette interface contient les statistiques des projets classés par état

d’évolution (en cours, terminé, interrompu).

Figure 20: Interface dévoilant les Statistiques sur les projets

III.3 Les Interfaces du « chef de projet »

III.3.1 Ajouter un Projet : Le chef de projet quant à lui, est responsable de l’ajout

des projets. Pour ce faire, il doit commencer par s’authentifier aussi, et puis entamer la

procédure d’ajout d’un projet qui comporte plusieurs étapes. Tout d’abord, il doit

commencer par remplir les champs d’un projet, ensuite il enchaine avec l’ajout d’une

41

Chapitre IV : Réalisation

phase et d’une tâche, sans oublier de préciser dans chacune de ces tâches un intervenant

ou un acteur externe. Une fois terminé, on peut voir tous les détails du projet qu’on a créé.

Figure 21: Processus de création d’un nouveau projet

III.3.2 Liste des Projets : Le chef de projet peut également gérer la liste des projets

crées, la modifier, et voir tous les détails concernant ces projets. C’est lui aussi qui peut

supprimer un projet au moment de l’approbation de toutes ses phases.

Figure 22:Liste des projets

42

Chapitre IV : Réalisation

III.3.3 Détail du projet : Dans l’interface ci-dessous, on peut voir tous les détails

d’un projet : les dates (début, fin), toutes les phases inclues dans ce projet, ainsi que les tâches

et les participants (intervenant, acteur externe) associés.

Figure 23:Détails du projet

III.3.4 Modification de projet : La modification d’un projet peut se faire en 3

opérations possibles. On peut changer l’état du projet (en cours, terminé ou interrompu), ou

bien ajouter une phase, ou bien faire une prolongation de projet en cas ou on souhaite

l’élargir.

43

Chapitre IV : Réalisation

Figure 24: Modification de projet

III.3.5 Historique : Cette interface contient la liste des projets pour chaque chef de

projets, avec pour chaque projet son état actuel (en cours, terminé, interrompu).

Figure 25: Historique des projets

III.3.6 Modification du mot de passe : Chaque participant peut modifier son mot

de passe, pour n’importe quelles raisons. Pour cela, il doit saisir son ancien mot de passe et

proposer le nouveau et confirmer son choix.

44

Chapitre IV : Réalisation

Figure 26: Modification du Mot de Passe

III.4 Les Interfaces du « Participant (intervenant, acteur externe) »

III.4.1 Accueil : Après l’authentification, le participant (intervenant, acteur externe)

peut consulter la liste de projets qui lui est associée.

Figure 27:Page d’accueil d'un Participant

III.4.2 Détail de projet par tâche : Lorsqu’un intervenant ou un acteur externe

clique sur un projet, une étoile apparait après chaque tâche associée à cet intervenant.

45

Chapitre IV : Réalisation

Figure 28:Détails du projet par Tâche

IV. Planification du projet

Un projet comporte un certain nombre de tâches à réaliser dans des délais impartis et selon

un agencement bien déterminé. Le diagramme de GANTT permet de planifier le projet et de

rendre plus simple le suivi de son avancement.

46

Chapitre IV : Réalisation

Figure 29: Diagramme de GANTT

ConclusionDurant ce dernier chapitre, on a commencé par décrire notre environnement de travail

matériel et logiciel. Puis on a créé le diagramme de déploiement correspondant, et on a

présenté quelques interfaces réalisées de notre application selon le profil de l’utilisateur, et

cela avant de finir par la spécification du planning du projet.

47

Webographie

Conclusion Générale et Perspectives

Notre travail consistait donc à développer une application web de gestion de projets

pour l’Office Nationale de Tourisme Tunisien.

Pour accomplir ce travail, et durant la phase de conception, nous avons utilisé le

processus de développement unifié qui utilise les notations UML, permet de bien comprendre

la problématique et de bien modéliser les objectifs à atteindre, et qui offre même la possibilité

de commencer la réalisation du système à un stade avancé de son cycle de vie. Ce processus

nous a guidé et nous a permis de réaliser un travail itératif et un système stable, évolutif et

qui s’adapte bien à l’évolution des besoins.

Au cours de cette expérience, nous avons rencontré des difficultés au niveau des outils

utilisés et des nouvelles technologies de développement, comme on a retrouvé quelques

lacunes pendant la définition des besoins.

De plus, à la fin de chaque enchaînement d’activités, nous avons eu l’opportunité de

reconsidérer ce qui a été fait, et par conséquent, de poursuivre ou de modifier le processus en

fonction de l’évaluation de nos encadreurs.

Le projet s’est déroulé selon trois axes principaux afin de passer par les trois étapes

essentielles de tout projet : l’analyse, la conception et la réalisation.

Coté implémentation, on a utilisé le langage de programmation J2EE, tout en

manipulant l’architecture à trois niveaux puisque notre système a été développé en

architecture trois tiers. Pour la mise en place de notre base de données, nous avons utilisé le

système de gestion de base de données ORACLE.

Dans la future de système d’application, on peut faire d’avancement d’un projet avec l’andriod.

48

Webographie

Webographie

[1] : Processus unifié : http://www.memoireonline.com/07/08/1363/m_conception-realisation-application-gestion-centre-kinesie11.html

[2] : Oracle : https://sites.google.com/site/jeromesimoninhomepage/logiciels-utiliss

http://fr.wikipedia.org/wiki/Oracle_Database

[3]: Eclipse http://en.wikipedia.org/wiki/Eclipse_(software)

[4]: UML http://www.in2p3.fr/actions/formation/InfoTempsReel/Cours-UML-LaLonde.pdf

[5]: J2EE http://fr.wikipedia.org/wiki/Java_EE

[6]:JSP http://www.techterms.com/definition/jsp

[7] : Servlet http://www.jmdoudoux.fr/java/dej/chap-servlets.htm

49

Annexe

Annexe

Annexe

50

Annexe A

Annexe A : Diagrammes des cas d’utilisation

Gérer les structures

<<extend>>

<<extend>>

<<extend>>

<<include>>

Chef Projet

AuthentificationGestion des structures

Ajouter un structure

Modifier un structure

Supprimer un structure

Figure 30:Raffinement de Cas d’utilisation « Gérer les structures »

Description du sous cas d’utilisation « Gérer les structures »

Titre Gérer Les intervenantsActeur Chef de projet

Pré condition Le chef de projet doit être authentifié.

Post condition Mise à jour des structures

Description du scénario principal Le chef de projet clique sur le menu gestion des structures.Sous le menu gestion des structures, on trouve (Ajouter, supprimer et modifier).Le chef de projet clique sur l’un de ces sous-menus.Il y a une interface appropriée pour chaque choix.Le chef de projet ajoute ou supprime ou modifie une structure, puis clique sur le bouton valider pour enregistrer.

Exception Si le chef de projet saisit des informations erronées, un message d’erreur sera affiché.

Tableau 7:Description du sous cas d’utilisation « Gérer les structures »

51

Annexe A

Gérer les types

<<extend>>

<<extend>> <<extend>>

<<include>>

Chef Projet

Gestion des types

Ajouter un type

Modifier un type

Supprimer un type

Authentification

Figure 31:Raffinement de cas d’utilisation « Gérer les types »

Description du sous cas d’utilisation « Gérer les types »

Titre Gérer les typesActeur Chef de projet

Pré condition Le chef de projet doit être authentifié.

Post condition Mise à jour des types

Description du scénario principal Le chef de projet clique sur le menu gestion des types.Sous le menu gestion des types, on trouve (Ajouter, supprimer et modifier).Le chef de projet clique sur l’un de ces sous-menus.Il y a une interface appropriée pour chaque choix.Le chef de projet ajoute ou supprime ou modifie un type, puis clique sur le bouton valider pour enregistrer.

Exception Si le chef de projet saisit des informations erronées, un message d’erreur sera affiché.

Tableau 8:Description du sous cas d’utilisation « Gestion des types »

52

Annexe B

Annexe B : DéfinitionsJ2EE :

Java Enterprise Edition, ou Java EE (anciennement J2EE), est une spécification pour la technique Java de Sun plus particulièrement destinée aux applications d’entreprise. Ces applications sont considérées dans une approche multi-niveaux1. Dans ce but, toute implémentation de cette spécification contient un ensemble d’extensions au framework Java standard (JSE, Java Standard Edition) afin de faciliter notamment la création d’applications

réparties.

Pour ce faire, Java EE définit les éléments suivants :

Une plate-forme (Java EE Platform), pour héberger et exécuter les applications, incluant outre Java SE des bibliothèques logicielles (ou JDK) additionnelles,

Une suite de tests (Java EE Compatibility Test Suite) pour vérifier la compatibilité,

Une réalisation de référence (Java EE Reference Implementation), dénommée GlassFish,

Un catalogue de bonnes pratiques (Java EE BluePrints); [5]

UML 2.0 :

UML = Unified Modeling Language

Langage unifié pour la modélisation objet

Langage de modélisation des applications construites à l’aide

D’objets, indépendant de la méthode utilisée

Différence Langage – Méthode

Langage de modélisation = notations, grammaire, sémantique

Méthode : comment utiliser le langage de modélisation (Recueil des besoins, analyse, conception, mise en œuvre, Validation…)

Objet = représentation du problème basée sur des Entités (concrètes ou abstraites) du monde réel [4]

JSP :

Signifie "Java Server Page." Cette norme a été développée par Sun Microsystems en tant qu'alternative à la page active de serveur de Microsoft (ASP ) de la technologie. Les pages JSP sont similaires aux pages ASP en ce qu'ils sont compilées sur le serveur, plutôt que dans le navigateur Web de l'utilisateur. Après tout, ils ne remettent pas les "pages du serveur" pour

53

Annexe B

rien. Cependant, JSP est basé sur Java, tandis qu’ASP est basé sur Visual Basic. Les pages JSP sont utiles pour la création de sites Web dynamiques et l'accès aux informations de base de données sur un serveur Web. Bien que les pages JSP peuvent avoir Java entrecoupées de HTML, tout le code Java est analysé sur le serveur. Par conséquent, une fois que la page va au navigateur, ce n'est que HTML. JavaScript, d'autre part, est généralement analysé par le navigateur Web, et non le serveur Web. [6]

Servlet :

Une servlet est un programme qui s'exécute côté serveur en tant qu'extension du serveur. Elle reçoit une requête du client, elle effectue des traitements et renvoie le résultat. La liaison entre la servlet et le client peut être directe ou passer par un intermédiaire comme par exemple un serveur http.

Même si pour le moment la principale utilisation des servlets est la génération de pages html dynamiques utilisant le protocole http et donc un serveur web, n'importe quel protocole reposant sur le principe de requête/réponse peut faire usage d'une servlet.

Ecrite en java, une servlet en retire ses avantages : la portabilité, l'accès à toutes les API de java dont JDBC pour l'accès aux bases de données, ...

Une servlet peut être invoquée plusieurs fois en même temps pour répondre à plusieurs requêtes simultanées.

La servlet se positionne dans une architecture Client/Serveur trois tiers dans le tiers du milieu entre le client léger chargé de l'affichage et la source de données. [7]

54

Annexe C

Annexe C : Les interfaces

Page d’accueil d’un chef de projet.

Figure 32:Page d’accueil d’un chef de projet.

Liste de types de projets.

Figure 33:Liste de types de projets

55

Annexe C

Liste des acteurs.

Figure 34: Liste des acteurs

Liste des intervenants.

Figure 35: Liste des intervenants

56

Annexe C

Nouvel acteur.

Figure 36: Coordonnées d’un nouvel acteur

Nouveau chef de projet.

Figure 37:Nouveau chef de projet

Nouveau intervenant.

Figure 38:Nouveau intervenant

57

Annexe C

Fin de création de projet.

Figure 39:Fin de création de projet

Calendrier de date.

Figure 40:Calendrier de date

Statistique de structure par projet.

58

Annexe C

Figure 41:Statistique de structure par projet