Vous êtes sur la page 1sur 64

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique

Ecole Centrale Polytechnique Privée de Tunis

Rapport de Stage

Présenté en vue de l’obtention du Diplôme nationale d’ingénieur en informatique

SPECIALITE : Systèmes d’Information

Elaboré par

Khaled Barnis

Mise en place d’une plateforme


d’helpdesk pour le service Workflow
TT selon la norme ITIL V3

Réalisé au sein de

Tunisie Télécom

Encadré par

Encadrant(s) universitaire(s) Encadrant(s) professionnel(s)


Mr : Ali Laribi Mr : Nizar Hadj Ferjani

Année universitaire
2014 - 2015
2
Dédicaces

Du plus profond de mon cœur, je dédie ce travail :

A ma chère mère

Pour son affectation, son soutien et son amour mais surtout ses sacrifices.

A mon cher père

Qui m’adresse au ciel les vœux les plus ardents pour la conservation de leur santé et de
leur vie.

Mon frère et mes sœurs a tous mes amies et mes professeur(e)s

Pour son amour, ses conseils et ses aides durant mes années d’études.

i
Remerciements

Au terme de ce travail, je tiens à exprimer mes vives reconnaissances et mon


profond respect à mes encadreurs Mr. Nizar Hadj Ferjani et Mr. Ali Laribi pour son
encadrement et ses précis conseils.

Je remercie également les membres de jury pour avoir accepté de juger mon
travail.

Je profite également de l’occasion pour remercier tout le personnel de Tunisie


Telecom et de la Polytech Centrale pour les efforts déployés afin de m’assurer la meilleure
formation.

Ainsi, que tous ceux qui m’ont aidé, d’une manière ou d’une autre, à l’élaboration
de ce travail trouvent ici l’expression de notre profonde reconnaissance.

ii
Table des matières

Dédicaces................................................................................................................................i
Remerciements.......................................................................................................................ii
Table des matières.................................................................................................................iii
Liste des figures.....................................................................................................................v
Liste des tableaux..................................................................................................................vi
Liste des abréviations...........................................................................................................vii
Introduction générale.............................................................................................................1
CHAPITRE I. TITRE DU CHAPITRE N°1..................................................................................................2
I.1 Introduction......................................................................................................................................2
I.2 Consignes d’écriture du texte...........................................................................................................2
I.2.1 Insertion de figures.................................................................................................................2
I.2.2 Insertion de tableaux...............................................................................................................3
I.2.3 Notes bas de page...................................................................................................................3
I.2.4 Conseils divers........................................................................................................................3
I.2.5 Rappels des règles de ponctuation..........................................................................................4
I.3 Format de page.................................................................................................................................4
I.3.1 Marges....................................................................................................................................4
I.3.2 Entête et pied de page.............................................................................................................4
I.4 Hiérarchie des titres des parties........................................................................................................4
I.5 Titre niveau 2....................................................................................................................................5
I.5.1 Titre niveau 3..........................................................................................................................5
I.5.1.1 Titre niveau 4................................................................................................................5
I.5.1.2 Titre niveau 4................................................................................................................5
I.6 Utilisation des puces et numéros......................................................................................................5
I.7 Conclusion........................................................................................................................................6
CHAPITRE II. TITRE DU CHAPITRE N° 2.................................................................................................7
II.1 Introduction......................................................................................................................................7
II.1.1 Titre niveau 3..........................................................................................................................7
II.1.1.1 Titre niveau 4................................................................................................................7
II.1.1.2 Titre niveau 4................................................................................................................7
II.2 Conclusion........................................................................................................................................7
Conclusion générale...............................................................................................................8
Bibliographie..........................................................................................................................9
Annexes................................................................................................................................10
Annexe 1 Journal du stage...................................................................................................10
Annexe 2 Titre......................................................................................................................15
Annexe 3 Titre......................................................................................................................16

iii
Mise en place d’une plateforme d’helpdesk pour le service Workflow TT selon la norme
ITIL V3

Rapport de Stage Polytech

_________________________________________________________________

RESUME

Ce rapport présente en premier lieu, le milieu de travail de la société Tunisie Télécom


(TT). Il décrit ensuite l’application développée qui porte sur la création et le
développement de la nouvelle application « Mise en place d’une plateforme d’helpdesk
pour le service Workflow TT selon la norme ITIL V3», afin de faciliter la gestion du des
différentes incidents selon la résolution, l’affectation, la durée de résolution d’incident et le
service qui fait la résolution.

Mots clés : Workflow.

_________________________________________________________________

SUMMARY

This report presents first the society of Telecommunication (TT). Second, it describes the
development of the application related to the platform oh Helpdesk for the service
Workflow in TT according to the norm ITIL V3. This application makes the resolution of
the incidents very easy to the Helpdesking and all the workers in TT because it saves all
the stain of the resolution of all incidents affected and resolved to the workers.

Key words: Helpdesk, Helpdesking.

iv
Liste des figures 1

Figure 1 - Logo de Tunisie Télécom..............................................................................................................2


Figure 2 - Organigramme de Tunisie Télécom………...………………………………………………………5
Figure 3 - Interface graphique…………………………………………………………….……………………6
Figure 4 - Bibliothèque ITIL V3…………………………………………………………………………….…9
Figure 5 - Noyau de gestion ITIL………………………………………………………………………………9
Figure 6 - Diagramme de cas d'utilisation de notre système………………………………………………….15
Figure 7 - Diagramme de cas d'utilisation <Gérer compte client>……………………………………………16
Figure 8 - Diagramme de cas d'utilisation <Gérer les incidents>…………………………………………….17
Figure 9 - Diagramme de cas d'utilisation <gérer les incidents>……………………………………………..18
Figure 10 - Diagramme de cas d'utilisation <Gérer droit d'accès>………………………………………….21
Figure 11 - Diagramme de classe……………………………………………………………………………..27
Figure 12 - Diagramme de séquence < Gérer compte clients>……………………………………………...29
Figure 13 - Diagramme de séquence < Gérer les incidents >……………………………………………......30
Figure 14 - Diagramme de séquence < Gérer les droits d'accès >…………………………………………....31
Figure 15 - Interface d'identification………………………………………………………………………….45
Figure 16 - Interface d'accueil………………………………………………………………………………...46
Figure 17 - Interface d'intervention…………………………………………………………………………...47
Figure 18 - Interface d'intervention traitée………………………………………………………………….47
Figure 19 - Interface de suivi……..………………………………………………………………………….48
Figure 20 - Interface de mise à jour de ville ………………………………………………………………….48
Figure 21 - Interface de m.à.j de personnel………………………………………………………………….49
Figure 22 - Interface de m.à.j de siège ……………………………………………………………………….50
Figure 23 - Interface de m.à.j de direction …………………………………………………………………...50

v
Liste des tableaux

Tableau 1 – compte de personnels...........................................................................................16…..3


Tableau 2 – Description des enchainement..............................................................................17…..7
Tableau 3 – Traitements des incidents......................................................................................19….3
Tableau 4 – Description des enchainement...............................................................................20….7
Tableau 5 – Droit d’accés.........................................................................................................21….3
Tableau 6 – Description des enchainement...............................................................................22….7

vi
Liste des abréviations

TT Tunisie Télécom

JSF JavaServer Faces

C.V.D Ca veut dire

m.à.j Mise à Jour

etc excitera

vii
INTRODUCTION GÉNÉRALE

Introduction générale

Le stage est un facteur essentiel pour s’intégrer dans la vie professionnelle, pour
cette raison, l’université centrale ‘Polytechnique Centrale’ nous donne l’occasion
d’effectuer un stage dans diverses sociétés et aussi elle cherche à nous des stages si on
n’est peut pas trouver des stages.

C’est avec un plaisir et un encadrement efficace que j’ai passé un stage du


01/02/2015 au 31/05/2015 au sein de la société Tunisie Télécom (TT). L’objectif de ce
stage est le rapprochement de la notion théorique à la notion pratique.

Pour cela, et face à une évolution de l’informatique, TT de Tunis a implanté dans


chacun de ses départements un service informatique. C’est dans ce cadre que s’inscrit ce
projet de fin d’études, qui permet de réaliser une application qui permettra de gérer les
différents problèmes (incidents) qui se passe dans chaque département et l’intégrer dans
une application web.

L’objectif de l’application est de permettre au responsable de service informatique


(Helpdesking) d’interagir avec le système dans le but d’assurer une bonne gestion des
différents incidents affectés aux personnels existants dans TT.

Ce rapport contient quatre chapitres :

1
CHAPITRE I GÉNÉRALITÉS

Généralités
________________________________________________________

I.1 Introduction
Nous commencerons ce chapitre par une représentation générale de Tunisie
Télécom et on se basant sur son organigramme je vais présenter la Subdivision Workflow
qui est liée à la direction centrale des systèmes d’information au quel j’ai effectué mon
stage.

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


I.2.1 Historique de Tunisie Telecom

Figure 1 – Logo de Tunisie Télécom [1]

La loi portant création de l'Office national des télécommunications, dont le nom


commercial est Tunisie Télécom, est promulguée le 17 avril 1995 et entre en vigueur
le 1er janvier 1996. Devenu société anonyme de droit public fin 2002, il change de statut
juridique, par un décret du 5 avril 2004, pour devenir une société anonyme dénommée
« Tunisie Télécom ». Elle connaît une privatisation partielle en juillet 2006 avec l'entrée
dans son capital, à hauteur de 35 %, du consortium émirati ETI (Emirates International
Telecommunications).

2
CHAPITRE I GENERALITES

Tunisie Télécom met en place, exploite et commercialise le premier réseau GSM


en Mauritanie (Mattel) à partir de mai 2000. Elle conclut également une convention de
coopération technique avec Djibouti Télécom pour le développement de ses réseaux de
télécommunications.

À partir de 2008, Tunisie Télécom offre la possibilité aux détenteurs de cartes


bancaires nationales d'alimenter le solde de leurs lignes prépayées via les distributeurs
automatiques de billets de l'Arab Tunisian Bank (service Mobilink).

Le 21 mars 2009, Tunisie Télécom lance une nouvelle marque, Elissa, avec des
offres spécifiquement conçues pour les jeunes de moins de 25 ans, elle devient accessible à
tous sans limite d'âge dès le 10 mars 2012.

Au printemps 2011, suite à la révolution tunisienne, la société est secouée par un


important conflit social entre les représentants de l'Union générale tunisienne du travail et
ceux de son actionnaire émirati au sujet du sort d'une soixantaine de contractuels (sur 8 500
employés) représentant 3,5 % de la masse salariale, il est marqué par des grèves et sit-in
affectant le bon fonctionnement de l'opérateur. Il s'achève avec la fin de ces contrats de
travail, à l'exception de dix contractuels gardant leurs fonctions. [2]

I.2.2 Mission

Tunisie Télécom propose des services dans le domaine des télécommunications


fixes et mobiles. En juin 2006, il est fort de 1 259 000 abonnés au réseau fixe (RTCP), dont
il détient le monopole, et de 3 265 000 abonnés au réseau GSM (la première ligne est
inaugurée le20 mars 1998), faisant de lui le leader sur ce marché devant les opérateurs
privés Ooredoo et Orange.

Il est également un fournisseur d'accès à Internet (Frame Relay, ADSL, X.25,


LS, RNIS et WLL pour la téléphonie rurale).

En novembre 2014, Tunisie Télécom signe un partenariat avec le groupe


Khechine qui consiste pour l'entreprise de télécom d'offrir des avantages sur les services du
groupe de tourisme, en échange d'une offre de télécommunication avantageuse pour les
établissements hôteliers et touristiques du groupe Khechine. [2]

3
CHAPITRE I GENERALITES

I.2.3 Données financières

Son capital est de 875 millions d'euros et son chiffre d'affaires, en 2004, de 750
millions d'euros. Son chiffre d'affaires en 2008 est de 884 millions de dinars. [2]

I.2.4 Effectifs

Tunisie Télécom contient 8500 employés dans toute la Tunisie. [2]

I.2.5 Les valeurs de Tunisie Télécom

Les clients et les partenaires de Tunisie Télécom sont au centre


de nos priorités :

Tunisie Télécom engage à satisfaire ses clients et à répondre à leurs exigences


dans les meilleures conditions. Elle œuvre également à mettre en place une relation de
confiance qui s’inscrit dans la durée avec ses partenaires. L’innovation est en outre le
principal moteur de leur activité. Telles sont les valeurs autour desquelles s’articule son
mission. [3]

La qualité du service :

Tunisie Télécom efforce à répondre au mieux aux attentes de leur clientèle. La


satisfaction de ses abonnés et de leurs clients est le pilier de son action. Elle œuvre à leur
apporter les meilleurs conseils en vue de simplifier leurs démarches. Vous êtes notre
première source de motivation, et votre fidélité à Tunisie Télécom est notre meilleure
récompense. [3]

L’innovation :

Dans un environnement hautement concurrentiel, être au diapason de l'évolution


technologique est primordial pour Tunisie Télécom. De ce fait, elle mobilise leurs
compétences humaines, matérielles et techniques pour être proactif, livrer un service de
qualité et une réponse aux exigences et besoins de leurs clients. [3]

Le sens de la responsabilité :

Tunisie Télécom respecte son engagement envers leurs clients, ses partenaires, ses
fournisseurs et ses employés. Nos relations avec toutes les parties prenantes sont motivées
par les règles de transparence, d’équité et d’intégrité nous permettant de relever les défis et
atteindre nos objectifs. [3]

4
CHAPITRE I GENERALITES

I.2.6 Organigramme de Tunisie Télécom

Figure 2 – Organigramme de Tunisie Télécom [4]

5
CHAPITRE I GENERALITES

I.3 Présentation de service d’accueil « Workflow DATA »


I.3.1 Introduction

Le provisioning, mot anglais désignant l'approvisionnement, est un terme utilisé


dans le monde de l'informatique et des Télécommunications, désignant l'affectation plus ou
moins automatisée de ressources.

Les outils de provisioning sont des outils de gestion de configuration permettant


d'installer et de configurer des logiciels à distance ce qui permet de :

Stocker et tracer les différentes versions de toute information destinée à être


utilisée par un système (matériel, logiciel, document, etc.).

Déployer des configurations à travers un parc informatique sous formes de


fichiers et données.

Chez Tunisie Telecom, ceci est réalisé à l'aide du logiciel de gestion de ressources
« Workflow Data ».

I.3.2 Définition

Le Workflow Data est un système d’information implémenté chez Tunisie


Telecom, qui a pour rôle la modélisation et la gestion informatique de l'ensemble des
tâches à accomplir par des différents acteurs impliqués dans la réalisation d'un processus
métier, ainsi que l'affectation des ports.

Figure 3 : Interface graphique

6
CHAPITRE I GENERALITES

I.4 Conclusion
Ce chapitre présente en détaille l’entreprise d’accueil ‘Tunisie Télécom’, et le
service Workflow ou j’effectue mon stage. Ces services est en besoin d’une application
pour gérer les incidents, et dans le chapitre suivant je détaille cette thème.

7
CHAPITRE II ANALYSE

Analyse
________________________________________________________

I.5 Introduction
Ce chapitre a pour objectif principal la présentation de thème de notre étude. Nous
allons également faire cas de notre démarche d’analyse pour mener à bien le projet.

Enfin, nous présenterons les différents acteurs du projet et nous donnerons un


planning prévisionnel du déroulement des différentes phases de l’analyse.

I.6 Norme ITIL v3


I.6.1 Historique

Fin des années 1980 et début des années 1990, le gouvernement britannique lance
une étude pour connaître les meilleures pratiques et les pratiques ayant le plus de réussites
pour mettre en place la gestion des services des TI.

Cette étude a produit une série de livres documentant une approche de la gestion
des services informatiques nécessaires pour supporter les utilisateurs des organisations
d’affaires.

Cette bibliothèque pratique a reçu le titre de "IT Infrastructure Library" ou ITIL.

La bibliothèque originelle a grossi jusqu’à recevoir plus de 40 livres et a entraîné


un engouement dans la communauté britannique des services des TI.

Le terme "Gestion des services des TI" (IT Service Management) n’était pas
connu à cette époque mais est passé dans le langage commun dans le milieu des années
1990 au fur et à mesure que croissait la popularité de ITIL.

En 1991, un forum utilisateur, le "IT Information Management Forum" (ITIMF) a


été créé pour permettre aux utilisateurs d’ITIL d’échanger des idées et des expériences. Le
nom a ensuite été changé et est devenu le "IT Service Management Forum" (itSMF).

Aujourd’hui, l’itSMF a une étendue mondiale au fur et à mesure que la popularité


d’ITIL continue de croître.

8
CHAPITRE II ANALYSE

I.6.2 Que contient ITIL

La bibliothèque ITIL propose trois niveaux de publication :

Figure 4- Bibliothèque ITIL

Il y a trois grandes familles :

 le noyau de la gestion ITIL des services : structuration des processus et


fonctions en 5 familles constituant le cycle de vie des services

 conseils complémentaires sur la gestion ITIL des services apportant une


flexibilité sur la mise en œuvre : publications déclinant le noyau spécifiquement sur des
secteurs industriels, types d’organisation, modèles opérationnels et architectures
technologiques

 les services web de support ITIL : produits en ligne disponibles sur


internet avec, entre autres, un glossaire, études de cas, et ITIL Live
(www.bestpracticelive.com)

Le noyau de la gestion ITIL des services constitue le noyau et cinq publications en


font partie :

Figure 5 – Noyau de gestion ITIL

9
CHAPITRE II ANALYSE

I.6.3 Exploitation des services (Service operation)

I.6.3.1 Historique

Les objectifs du processus de gestion des incidents sont de :

 rétablir le fonctionnement normal du service aussi rapidement que possible

 réduire au minimum l’impact défavorable sur le fonctionnement des clients et


des utilisateurs assurant ainsi que les meilleurs niveaux possibles de qualité de service et de
disponibilité sont maintenus.

I.6.3.2 Définition d’un incident

Il s'agit d'une interruption non planifiée ou de la dégradation de la qualité d’un


service informatique. Dans ce premier cas, il sera plutôt signalé par un utilisateur.

Il s'agit aussi de la défaillance d’un élément de configuration n’ayant pas encore


impacté le service. Dans ce second cas, il sera plutôt signalé par un outil de supervision ou
le personnel d'exploitation.

I.6.3.3 Incident majeur

La définition d'un incident majeur est à valider. Elle est positionnée dans la
hiérarchisation des incidents (incident de priorité la plus forte).

Les incidents majeurs doivent être traités dans un processus spécifique avec des
échelles de temps réduites.

I.6.3.4 Escalade fonctionnelle

Il s'agit de celle prévue dans le processus et l'outil de gestion des incidents :


supports de niveau 2, 3, etc.

I.6.3.5 Escalade hiérarchique

Il s'agit d'une escalade en dehors du fonctionnement normal du processus : à


tout moment dans le processus lorsqu’on s’aperçoit que l’exécution normale du
processus a un fort risque d’échec, il y a transfert de la responsabilité des décisions vers
la hiérarchie.

10
CHAPITRE II ANALYSE

I.7 Description du thème et problématique


I.7.1 Description du thème

La mise en place d’une plateforme d’helpdesking selon la norme ITIL v3


(exploitation de service) pour assurer la gestion et la meilleure résolution des différents
incidents envoyé à la subdivision Workflow TT. Cela pour répondre aux objectifs suivants :

Avoir une meilleure maitrise des problèmes informatiques dans Tunisie Télécom
el Kasbah.

Bien gérer les différents incidents en utilisant une plateforme associée.

I.7.2 Problématique

L’ensemble des sociétés de Tunisie Télécom dispose d’un important lot de


matériels informatiques et des logiciels à divers fonctionnalité qui sont gérés par la direction
des systèmes d’informations. A l’heure actuelle, il n’existe pas de mécanisme fiable pour
assurer un suivi d’états d’incidents (résolu ou non).

Alors cette direction dispose d’une plateforme pour bien assurer la gestion des
incidents et pour facilite les taches aux employées de la subdivision Workflow. Cette
plateforme permettre de :

 Enregistrer les incidents,

 Catégoriser l’incident,

 Définir la priorité des incidents (incident majeur/normale),

 Escalade fonctionnelle / hiérarchique,

 Investiguer et diagnostiquer ces incidents,

 Résoudre & rétablir ces incidents,

 Faire les statistiques pour chaque incident.

I.8 Etude fonctionnelle


L’étude fonctionnelle a pour but de définir les contraintes fonctionnelles c’est-à-
dire ce que notre plateforme doit réaliser en termes de métier. Elle comprend la capture des
besoins fonctionnels et non fonctionnels et l’identification des acteurs.

11
CHAPITRE II ANALYSE

I.8.1 Capture des besoins fonctionnels

La capture des besoins permet d’identifier les fonctionnalités réalisées par le


système. Elle produit un modèle des besoins focalisé sur le métier des acteurs.

Les principales besoins fonctionnels du système sont décrits dans les points
suivants :

 Se connecter : le Helpdesking doit se connecter avant de pouvoir utiliser


l’application, il doit décliner son identifiant : son nom et son mot de passe.

 Se déconnecter : le Helpdesking doit se pouvoir se déconnecter après


avoir utilisé l’application.

 Définir les droits d’accès : le Helpdesking seule qui peut attribuer ou


supprimer le droit d’accès à un nouvel personnel.

 Gérer les comptes clients : le Helpdesking doit permettre l’ajout, la


modification et la suppression des comptes des personnels.

 Gérer les incidents: le Helpdesking reçu les incidents ensuite il affecte à


l’administrateur pour traiter si se possible sinon il l’affecte soit aux personnels soit à la
directeur de la direction exécutif.

I.8.2 Capture des besoins non fonctionnels

Outre les besoins fonctionnels évoqués, le système doit assurer les besoins non
fonctionnels qui constituent des fonctionnalités qui améliorent notre système. Les
exigences non fonctionnelles se divisent comme suit :

 Ergonomie : L’ergonomie est une discipline qui vise l’adaptation de


plateforme à son Helpdesking et à l’administrateur afin que ce dernier puisse mener ses
activités avec un maximum d’efficacité, de satisfaction et de bien-être, avec une phase
d’adaptation réduite.

 Facilité de navigation et structure : Il est évident que la chose la plus


importante à considérer est la satisfaction de tous les utilisateurs. Il faut donc hiérarchiser
l’information selon une structure efficiente pour minimiser la navigation vers
l’information. Donc, la structure hiérarchisée est la meilleure façon d’organiser les
informations.

12
CHAPITRE II ANALYSE

 Performance : Le site web doit permettre un accès rapide au contenu de


l’application. Ainsi, il faut trouver des moyens de stockage et restitution des données qui
permettent des temps de réponse acceptables.

 Fiabilité : L’application doit toujours être en mesure de fonctionner


correctement, il ne doit pas y avoir de problème de fonctionnement ou des cas limites qui
donnent des résultats non souhaités ou erronés.

 Sécurité : La confidentialité du code secret doit être assurée de bout en


bout (de la station de travail au serveur de traitements et de données). L’échange de
données doit se faire en pleine sécurité et ceci sur tout pour garantir la sécurisation des
paramètres et des informations du client.

I.8.3 Identification des acteurs

Un acteur est une personne ou un système qui interagit avec le système étudié, en
échangeant de l’information (en entrée et en sortie). On trouve les acteurs en observant les
utilisateurs directs du système, les responsables de sa maintenance, ainsi que les autres
systèmes qui interagissent avec lui.

Les acteurs de notre système sont :

Le Helpdesking : (Service desk) : c'est le seule point de contact avec les


utilisateurs de système. Il traite tous les incidents reçu (identification, enregistrement,
catégorisation, priorité). Après ces étapes il l'affecte à l’administrateur de subdivision
(escalade hiérarchique).

L’administrateur : quand il reçu un ou plusieurs incidents il vérifie si se possible


de les traiter sinon il l'affecte affecte les incidents (escalade fonctionnelle) à la subdivision
qui peut traiter ces incidents. Finalement s'il aperçoit que l'exécution normale du processus
à un fort risque d'échec, il transfère la responsabilité des décisions vers la hiérarchie
(direction exécutif / directeur du service).

Les personnels : il s’agit des utilisateurs de cette plateforme qui reçu les incidents
de la part de l’administrateur pour les traiter.

Le directeur : quand l’administrateur remarque qu’un incident à un fort risque


d’échec, il transfère la responsabilité des décisions vers le directeur pour résoudre.

13
CHAPITRE II ANALYSE

I.9 Capture des besoins non fonctionnels

Les cas d’utilisation sont une technique de description du système étudié


privilégiant le point de vue de l’utilisateur. Ils délimitent le système, ses fonctions (ses
cas), et ses relations avec son environnement. Ils constituent un moyen de déterminer les
besoins du système. Ils permettent d’impliquer les utilisateurs dès les premiers stades du
développement pour exprimer leurs attentes et leurs besoins (analyse des besoins). Ils
constituent un fil conducteur pour le projet et la base pour les tests fonctionnels.

Pour le cas de notre plateforme les cas d’utilisation que nous pouvons retenir
sont :

Gérer compte client : le helpdesking gère tous les comptes d’utilisateurs de


système,

Gérer les droits d’accès : le helpdesking et l’administrateur affecte et supprime les


droit des personnels,

Gérer les incidents : le helpdeskig affecte les incidents à l’administrateur et lui-


même l’affectes soi au directeur exécutif soit aux personnels.

I.9.1 Diagramme de cas d’utilisation générale

A l’aide d’un premier diagramme de cas d’utilisation nous allons essayer de


donner une vision globale des fonctionnalités de notre outil, ensuite nous allons essayer de
subdiviser certaines fonctionnalités très complexes dans d’autres diagrammes de cas
d’utilisation afin de réduire leur complexité.

14
CHAPITRE II ANALYSE

Gérer comptes
clients

<<include>>

Gerer les <<include>>


Helpdesking incidents Authentification

<<include>>

Gérer les droits d'


accés

Figure 5 – Diagramme des cas d’utilisation des notre système

La figure montre les cas d’utilisations principaux. Dans la partie suivante, nous
affinons en apportant plus de détails.

15
CHAPITRE II ANALYSE

I.9.2 Diagramme de cas d’utilisation «Gérer compte clients »

La figure montre le cas d’utilisation de la gestion des comptes clients :

<<extend>> <<include>>

Ajouter

Modifier

Gérer comptes clients <<extend>>


<<include>>
Helpdesking S'authentifier
<<extend>>

<<include>>
Consulter

Users <<extend>>

<<include>>
Supprimer

Figure 7 – Diagramme des cas d’utilisation « Gérer compte clients »

Tableau 1 – Compte des personnels


Titre : Gérer les comptes clients/personnels
Résumé : Ce cas d’utilisation permet à l’administrateur d’effectuer toutes
les opérations de gestion des comptes clients notamment l’ajout,
l’affichage, la modification et la suppression d’un compte
clients pour assurer la sécurité de l’application.
Acteurs principaux : Le Helpdesking
Acteurs secondaires : Les personnels
Date de création : 09/02/2015
Date de mise à jour : 19/02/2015
Version :
Responsable : Mr Nizar Ferjani

Tableau 2 – Description des enchainements

16
CHAPITRE II ANALYSE

Cas d’utilisation : Compte des personnels


Acteurs : Helpdesking
Pré condition : -l’ordinateur est alimenté,

-La fenêtre de l’application est ouverte.


Scénario nominal : - Le Helpdesking saisit son login et son mot de passe,

- Le système vérifie ces informations (si vrai alors il


donne l’autorisation d’accès, sinon un message qui
s’affiche login ou mot de passe incorrect s’il est déjà
inscrit sinon effectuer une inscription),

- Le Helpdesking doit choisir l’action soit ajouter,


modifier ou consulter un ou plusieurs personnels,

- Le système valide l’action,

- Le Helpdesking traite son travail,

Le système enregistre la modification dans une base de données.


Enchainements alternatifs : - Login ou mot de passe erroné,

Enchainements d’erreur: - Panne dans l’ordinateur,

- L’application ne s’ouvre pas correctement,

- Login ou mot de passe et définitivement erroné,

- Modification non autorisé.


Post condition: - L’application est ouverte,

- Le Helpdesking choisit son action.

- Modification et enregistrement de donnée effectué avec


succès.

17
CHAPITRE II ANALYSE

I.9.3 Diagramme de cas d’utilisation «Gérer les incidents »

La figure montre le cas d’utilisation de la gestion des incidents :

<<extend>> <<include>>
Identifier incidents

<<extend>> <<include>>
Enregistrer
incidents

<<extend>> <<include>>
Catégoriser
incidents

<<extend>>
Définir priorité d'
incidents
<<include>> S'authentifier

Gerer les incidents Incident


Incident
Helpdesking majeur normale

<<extend>> Réaliser <<include>>


Affecter Incidents diagnostique
initiale

<<extend>> Escalade <<include>>


Administrateur fonctionnelle/
hiérarchique

<<include>>
<<extend>> Investiguer et
diagnostiquer

Personnels Directeur
<<extend>> <<include>>
Résoudre & établir

Figure 8 – Diagramme des cas d’utilisation « Gérer les incidents »

18
CHAPITRE II ANALYSE

Tableau 3 – Traitement des incidents


Titre : Gérer les incidents
Résumé : Cas d’utilisation permet aux Helpdesking de gérer les incidents
(identifier, enregistrer, catégoriser et définir la priorité) ensuite il
l’affecte à l’administrateur pour la résolution de l’incident.
Acteurs principaux : Le Helpdesking, l’administrateur, le directeur
Acteurs secondaires : Les personnels
Date de création : 09/02/2015
Date de mise à jour : 19/02/2015
Version :
Responsable : Mr Nizar Ferjani

Tableau 4 – description des enchainements


Cas d’utilisation : Traitement des incidents
Acteurs : Helpdesking, Administrateur et Directeur
Pré condition : -L’ordinateur est alimenté,

-La fenêtre de l’application est ouverte.


Scénario nominal : - Le Helpdesking, l’administrateur et le directeur
saisissant son login et son mot de passe,

- Le système vérifie ces informations (si vrai alors il


donne l’autorisation d’accès, sinon un message qui
s’affiche login ou mot de passe incorrect s’il est déjà
inscrit sinon effectuer une inscription),

- Le Helpdesking vérifie s’il reçoit des nouveaux


incidents,

- Le système affiche les nouveaux incidents,

- Le Helpdesking identifie, catégoriser et définir la priorité


d’incident (majeur/normale),

- Après ces étapes le Helpdesking affecte cet/ces

19
CHAPITRE II ANALYSE

incident(s) à l’administrateur,

- Le système valide l’action de Helpdesking,

- L’administrateur résoudre et rétablir cet/ces incident(s) si


se possible sinon il l’affecte soit aux personnels
(escalade fonctionnelle) soit à la directeur de la direction
exécutif (escalade hiérarchique : transfert de la
responsabilité des décisions vers la hiérarchie),

- Le système valide l’action de l’administrateur,

- Le Helpdesking reçu un ou plusieurs incidents résolu,

Le système enregistre la modification dans une base de


données.
Enchainements alternatifs : - Login ou mot de passe erroné ;

- L’application est bloquée.


Enchainements d’erreur : - Panne dans l’ordinateur,

- Panne dans le serveur,

- L’application ne s’ouvre pas correctement,

- Login ou mot de passe et définitivement erroné,

- Incidents ne s’ouvre pas correctement.


Post condition : - L’application est ouverte,

- Le Helpdesking traite cet/ces incident(s),

- L’administrateur reçu cet/ces incident(s).

20
CHAPITRE II ANALYSE

I.9.4 Diagramme de cas d’utilisation «Gérer les droits d’accès »

La figure montre le cas d’utilisation de la gestion des comptes clients :

<<extend>>
<<include>>
Modifier droit

<<extend>> <<include>>
Attribuer droit
Gerer droit d'accés S'authentifier

Helpdesking

<<extend>> <<include>>
Retirer droit

Administrateur

Figure 7 – cas d’utilisation « Gérer droit d’accès »

Tableau 5 – Droit d’accès


Titre : Gérer les droits d’accès
Résumé : Ce cas d’utilisation permet aux Helpdesking et l’administrateur
d’effectuer toutes les opérations de gestion des droits d’accès
notamment l’attribution, la modification et la retiration
d’un droit.
Acteurs principaux : Le Helpdesking et l’Administrateur
Acteurs secondaires :
Date de création : 09/02/2015
Date de mise à jour : 15/02/2015
Version :
Responsable : Mr Nizar Ferjani

Tableau 6 – Description des enchainements


Cas d’utilisation : Droit d’accès

21
CHAPITRE II ANALYSE

Acteurs : Helpdesking et Administrateur


Pré condition : -l’ordinateur est alimenté,

-La fenêtre de l’application est ouverte.


Scénario nominal : - Le Helpdesking/l’administrateur saisissant son login et
son mot de passe,

- Le système vérifie ces informations (si vrai alors il


donne l’autorisation d’accès, sinon un message qui
s’affiche login ou mot de passe incorrect s’il est déjà
inscrit sinon effectuer une inscription),

- Le Helpdesking/l’administrateur doit choisir l’action soit


attribuer, modifier ou supprimer le droit d’un ou
plusieurs personnels,

- Le système valide l’action,

- Le Helpdesking/l’administrateur traite son travail,

Le système enregistre la nouvelle modification dans la base de


données.
Enchainements alternatifs : - Login ou mot de passe erroné ;

- Attribuer droit,

- Modifier droit,

- Retirer droit.
Enchainements d’erreur: - Panne dans l’ordinateur,

- L’application ne s’ouvre pas correctement,

- Login ou mot de passe et définitivement erroné,

- Donnée entré et non valide,

- Modification de droit non autorisé.


Post condition: - L’application est ouverte,

- Le Helpdesking/l’administrateur choisit son action,

22
CHAPITRE II ANALYSE

- Affichage de nouveau droit attribué.

I.9 Conclusion
Ce chapitre a servi, d’une part à la présentation de nos besoins et d’autre part à leur
formalisation en modèle informatique. Cette description dégagée prépare le terrain pour la
phase de conception à un niveau d’abstraction plus bas.

Conception de l’outil d’helpdesk


________________________________________________________

23
CHAPITRE II ANALYSE

I.10 Introduction
Ayant défini et analysé les cas d’utilisations de notre application dans le chapitre
précédent, nous focalisons dans ce chapitre sur la conception d’une structuration adéquate
pour l’implémentation de notre application. Cette étape est primordiale dans le
déroulement du projet et a pour but de détailler les tâches à entreprendre et de préparer le
terrain pour l’étape de la réalisation.

Nous détaillons, ensuite cette phase du projet, en établissant des vues statiques
décrivant l’état de l’application via le diagramme de classe. Des vues dynamiques seront
proposées montrant le fonctionnement de l’application à travers les diagrammes de
séquences et les diagrammes d’activités.

I.11 Outils de modélisation


I.11.1 UML

Vu l’importance cruciale de la modélisation dans le cycle de vie de n’importe quel


logiciel de petite ou grande envergure, il faut utiliser un langage de modélisation qui
s’adapte le mieux à nos besoins et à nos exigences qui sont entre autres :l’ouverture, la
réutilisabilité, la modularité et l’extensibilité .Nous avons choisi de concevoir la future
application en utilisant le langage de modélisation UML qui s’adapte parfaitement à la
modélisation des applications à base d’objets et qui offre grâce à ses différents diagrammes
une grande souplesse permettant la modélisation de différents aspects (statique ou
dynamique ) de l’application. Notre choix pour ce langage se justifie aussi par le fait
qu’UML est devenu un standard de modélisation adopté pour toutes les applications à
aspect orienté objet. [5]

La plateforme de modélisation : 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.

Créé par SDP sous le nom AMC*Designor, racheté par Power soft, ce logiciel est
produit par Sybase depuis le rachat par cet éditeur en 1995. Hors de France, la version
internationale est commercialisée par Sybase sous la marque Power Designer.

PowerAMC permet de réaliser tous les types de modèles informatiques. Il reste un


des seuls qui permet de travailler avec la méthode Merise. Selon Riff News, cela permet
d'améliorer la modélisation, les processus, le coût et la production d'applications.

24
CHAPITRE II ANALYSE

Le référentiel est un outil de Power AMC permettant de gérer le travail en


commun, en groupe dans un environnement client/serveur.

Cet outil permet de faciliter ce qu'implique le travail en équipe :

• partage de l'information entre les concepteurs,

• préservation de l'intégrité des données à l'aide de restrictions d'ordre


administratif sur le contenu du référentiel.

Il est possible de suivre toute la traçabilité et l'évolution des objets placés dans le
référentiel grâce à la gestion par configurations, branches et versions.

Des alternatives libres à PowerAMC existent comme DB Designer ou Analyse SI,


ne couvrant généralement qu'une partie des modélisations, notamment la modélisation E/R
ou UML. Graphomane s'ajoute aussi à la liste des logiciels libres concurrents.

Pour les outils Merise, les principaux, sont: Mega, WinDesign (Cecima), Windev,
Adelia, etc. Un outil RAD comme Delphi inclut dans ses éditions haut de gamme des outils
de modélisation UML comme Model Maker ou Together selon les versions.

D'autres outils existent, orientés UML comme ArgoUML, BOUML et Open


Model Sphère en Open Source, Poseidon for UML Rational Software Architect...

Citons aussi Devaki écrit en Java/Swing et sous licence GPL. [6]

I.12 Diagramme de classe


Le diagramme de classes est considéré comme le plus important de la
modélisation orientée objet, il est le seul obligatoire lors d'une telle modélisation.

Alors que le diagramme de cas d'utilisation montre un système du point de vue


des acteurs, le diagramme de classes en montre la structure interne. Il permet de fournir
une représentation abstraite des objets du système qui vont interagir pour réaliser les cas
d'utilisation. Il est important de noter qu'un même objet peut très bien intervenir dans la
réalisation de plusieurs cas d'utilisation. Les cas d'utilisation ne réalisent donc pas une
partition des classes du diagramme de classes. Un diagramme de classes n'est donc pas
adapté (sauf cas particulier) pour détailler, décomposer, ou illustrer la réalisation d'un cas
d'utilisation particulier.

Il s'agit d'une vue statique, car on ne tient pas compte du facteur temporel dans le
comportement du système. Le diagramme de classes modélise les concepts du domaine

25
CHAPITRE II ANALYSE

d'application ainsi que les concepts internes créés de toutes pièces dans le cadre de
l'implémentation d'une application. Chaque langage de Programmation orienté objet donne
un moyen spécifique d'implémenter le paradigme objet (pointeurs ou pas, héritage multiple
ou pas, etc.), mais le diagramme de classes permet de modéliser les classes du système et
leurs relations indépendamment d'un langage de programmation particulier.

Les principaux éléments de cette vue statique sont les classes et leurs relations :
association, généralisation et plusieurs types de dépendances, telles que la réalisation et
l'utilisation. [7]

26
CHAPITRE II ANALYSE

personel
1..1 - idpersonel : int reclamation
fonction
appartient - adressepersonel : String
- idfonction : int - idreclamation : int
- autorisation : String
- nomfonction : String 1..* - Siegereclamation : String
- codepostalIdcodepostal : String
- descriptionreclamation : String
- directionpersonne : String
- directionreclamation : String
- emailpersonel : String
- etatrecl : String
- etat : String
- reclamation : String
- fonctionpersonne : String
- idchefhiar : String
direction - login : String 0..*
telbureau - nompersonel : String envoyer
- iddirection : int
- idtelbureau : int - password : String
- iddirectionsup : String 1..*
- nomdirection : String - directionIddirection : String - prenompersonel : String
- num : String - specialiterpersonne : String
- siegedirection : String
- telportable : String
- titrepersonne : String
- villepersonne : String
reclamationtraiter
ville - idreclamation : int
- idville : int - Siegereclamation : String
- descriptionreclamation : String
- nomville : String 1..*
- directionreclamation : String
- etatrecl : String
- idreclamationprimaire : String
siege

outil - idsiege : int


- adressesiege : String
- idoutil : int
- nomsiege : String
- directionoutil : String
- villesiege : String
- nomoutil : String
- typeoutiltype : String
0..*
envoyer
intervention
- idintervention : int
1..1 - acceptaion : String
contient
- descriptionreclamation : String
- directionreclamation : String
1..*
titre specialiter - etatintervention : String
- etatrecl : String
- idtitre : int - idspecialiter : int
typeoutil - idreclamationprimaire : String
- nomtitre : String - nomspecialiter : String
- idtypeoutil : int - intervenant : String
- siegereclamation : String
- descriptiontypeoutil : String
- nomtype : String

Figure 10- Diagramme de séquence

27
CHAPITRE II ANALYSE

I.13 Diagramme de séquence


Les diagrammes de séquence sont couramment utilisés par nombre d'acteurs d'un
projet, même quelque fois à leur insu, sans savoir qu'ils utilisent là un des diagrammes
UML. En effet, le diagramme de séquence est une représentation intuitive lorsque l'on
souhaite concrétiser des interactions entre deux entités (deux sous-systèmes ou deux
classes d'un futur logiciel). Ils permettent à l'architecte/designer de créer au fur et à mesure
sa solution. Cette représentation intuitive est également un excellent vecteur de
communication dans une équipe d'ingénierie pour discuter cette solution.

Les diagrammes de séquence peuvent également servir à la problématique de test.


Les traces d'exécution d'un test peuvent en effet être représentées sous cette forme et servir
de comparaison avec les diagrammes de séquence réalisés lors des phases d'ingénierie. [8]

28
CHAPITRE II ANALYSE

I.13.1 Diagramme de séquence « Gérer compte clients»

29
CHAPITRE II ANALYSE

Gestion de compte du personnels

sys:système

Helpdesking Personnel
afichage page de connexion()

demande connexion()

verifier validiter()

affichage page d'accueil()

loop [ajout d'un nouvel personnel=vrai]

enregistrer personnel()

interface d'enregistrement()

saisir personnel()

personnel enregistrer()

opt [si personnel enregistrer()]


affichage page de connexion()

demande connexion

verifier validiter()

affichage page d'accueil()

opt [mis à jour de compte personnel]


modifier personnel()
personnel modifier()

rechercher personnel()

personnel

supprimer personnel()

personnel supprimer()

Figure 11- Gérer compte clients

30
CHAPITRE II ANALYSE

I.13.2 Diagramme de séquence « Gérer les incidents»

gérer affectations d'incidents

système

Helpdesking Administrateur Directeur Personnel


demande de page d'ajout()
la formulaire contient
affichage page()
l'identification, la
envoyer formulaire() catégorisation et la priorité
d'incidents

verifier incident()

alt in incident==exist
msg:incident existe

else
enregistrer incident()

msg:incident enregistré()

loop [tant qu'il y'a des incidents]

opt [if incidents enregistré]


affecter incidents()

verifier etat incident()

alt if admin recu un incidents


escalade
fonctionnelle affecter incidents()

résoudre & rétablir()


escalade
hiérarchique else
affecter incidents()
résoudre & rétablir

Figure 12- Gérer les incidents

31
CHAPITRE II ANALYSE

I.13.3 Diagramme de séquence « Gérer les droits d’accès»

gérer droit d'accés

système

Helpdesking Administrateur
demande de connexion()
demande de connexion()

verifier validiter

affichage page d'accueil()

affichage page d'accueil()

loop [tant qu'il y'a modification]

attribuer droit()
attribuer droit()

droit attribuer ()
droit attribuer ()
modifier droit()
modifier droit()

droit modifier()

droit modifier()

supprimer droit()

supprimer droit()

droit supprimer()

droit supprimer()

Figure 13- Gérer les droits d’accès

32
CHAPITRE II ANALYSE

I.14 Diagramme d’activité


Les diagrammes d'activités permettent de mettre l'accent sur les traitements.
Ils sont donc particulièrement adaptés à la modélisation du cheminement de flots de
contrôle et de flots de données. Ils permettent ainsi de représenter graphiquement le
comportement d'une méthode ou le déroulement d'un cas d'utilisation.

Les diagrammes d'activités sont relativement proches des diagrammes


d'états-transitions dans leur présentation, mais leur interprétation est sensiblement
différente. Les diagrammes d'états-transitions sont orientés vers des systèmes
réactifs, mais ils ne donnent pas une vision satisfaisante d'un traitement faisant
intervenir plusieurs classeurs et doivent être complétés, par exemple, par des
diagrammes de séquence. Au contraire, les diagrammes d'activités ne sont pas
spécifiquement rattachés à un classeur particulier. On peut attacher un diagramme
d'activités à n'importe quel élément de modélisation afin de visualiser, spécifier,
construire ou documenter le comportement de cet élément.

La différence principale entre les diagrammes d'interaction et les diagrammes


d'activités est que les premiers mettent l'accent sur le flot de contrôle d'un objet à
l'autre, tandis que les seconds insistent sur le flot de contrôle d'une activité à l'autre.
[9]

33
CHAPITRE II ANALYSE

Incidents

Helpdesking

Identifier

Enregistrer

Catégoriser

Définir la priorité

[oui] Gestion des incidents majeurs


Incidents majeurs

[Non]

Réaliser le diagnostique initiale

oui
Escalade fonctionnelle ? Escalade fonctionnelle vers le niveau 2
&3

Escalade
oui
fonctionnelle ?
Investiguer et Diagnostiguer

non

oui

Gestion des escalades hierarchiques Résoudre & Etablir

Cloturer l'incident

Figure 14 : Diagramme d’activité « Gestion des incidents»

34
CHAPITRE II ANALYSE

I.15 Conclusion
Dans ce chapitre, une conception complète et détaillée des diagrammes de séquence
et diagramme de classe et la présentation des outils de modélisation ce qui permet de
passer à l’établissement du chapitre réalisation.

35
CHAPITRE IV REALISATION

Réalisation
________________________________________________________

I.16 Introduction
Après avoir achevé l’étape de conception de l’application, nous avons entamé
dans la partie réalisation dans laquelle nous assurons que l’application est prête pour être
exploitée par les utilisateurs finaux.

Nous préoccuperons ainsi, de l’explication de l’environnement logiciel de


l’application, par la suite une démonstration de quelques interfaces sera présentée.

A la fin de cette partie, les objectifs doivent avoir été atteints.

I.17 Présentation des outils de développement


I.17.1 Netbeans IDE 7.2

NetBeans est un développement de logiciels plateforme écrit en Java . Le


NetBeans Platform permet aux applications d'être développés à partir d'un ensemble de
modules composants logiciels appelés modules. Les applications basées sur la plate-
forme NetBeans, y compris l'EDI environnement de développement intégré (IDE),
peuvent être prolongés par des développeurs tiers .

L'EDI NetBeans est principalement destiné pour le développement en Java,


mais prend également en charge d'autres langues, en particulier PHP , C / C +
+ et HTML5 .

NetBeans est multiplateforme et fonctionne sur Microsoft Windows , Mac OS


X , Linux , Solaris et d'autres plates-formes supportant un compatible JVM .

L'équipe de NetBeans soutenir activement le produit et consulter longs


suggestions de la communauté plus large. Chaque version est précédée par un temps
pour les essais et évaluations Communauté.

36
CHAPITRE II ANALYSE

NetBeans a commencé en 1996 comme Xelfi (jeu de mot sur Delphi ), un projet
étudiant IDE Java sous la direction de la Faculté de mathématiques et de physique
à l'Université Charles de Prague . En 1997, Roman Staněk formé une entreprise autour
du projet et produit des versions commerciales de l'EDI NetBeans jusqu'à ce qu'il a été
acheté par Sun Microsystems en 1999. Sun open source NetBeans IDE en Juin de l'année
suivante. Depuis lors, la communauté NetBeans a continué de croître. En 2010, Sun (et
donc NetBeans) a été acquise par Oracle .

NetBeans IDE 6.0 soutien à l'élaboration de modules IDE et applications client


riche basé sur la plate-forme NetBeans introduit, un Java Swing GUIBuilder
(anciennement connu sous le nom «Projet Matisse"), amélioré CVS soutien, WebLogic 9
et JBoss 4 support, et de nombreuses améliorations de l'éditeur. NetBeans 6 est disponible
dans les dépôts officiels de grandes distributions Linux.

NetBeans IDE 6.5, sorti en Novembre 2008, a étendu les existantes Java
EE caractéristiques (y compris le soutien Java Persistance, EJB 3 et JAX-WS). En outre, le
NetBeans Enterprise Pack prend en charge le développement de Java EE 5 applications
d'entreprise, y compris SOA outils de conception visuelle, outils de schéma XML, les
services Web orchestration (pour BPEL), et UML modélisation. L'EDI NetBeans Bundle
pour C / C ++ supporte C / C ++ et le développement de FORTRAN.

NetBeans IDE 6.8 est le premier IDE à fournir un soutien complet de Java EE 6 et
le serveur GlassFish v3 Enterprise . Développeurs hébergement leurs projets open-source
sur kenai.com bénéficient en outre de la messagerie instantanée et de suivi des problèmes
d'intégration et de navigation droite dans l'IDE, le soutien au développement d'applications
Web avec PHP 5.3 et le framework Symfony, et le code amélioration de la complétion,
layouting, des conseils et de la navigation dans des projets Java FX.

NetBeans IDE 6.9, sorti en Juin 2010, ajouté le support pour OSGi , Spring
Framework 3.0, l'injection de dépendance Java EE (JSR-299), le Zend
Framework pour PHP , et plus facile la navigation de code (tels que "est remplacée / Mise
en œuvre" annotations), le formatage , astuces, et de refactoring dans plusieurs langues.

NetBeans IDE 7.0 est sorti en Avril 2011. Le 1er Août 2011, l'équipe de NetBeans
IDE NetBeans libéré 7.0.1, qui possède un support complet pour la sortie officielle de
la Java SE 7 plate-forme.

37
CHAPITRE II ANALYSE

NetBeans IDE 7.3 est sorti en Février 2013 qui a ajouté le support de HTML5 et
les technologies Web.

NetBeans IDE 7.4 a été libéré le 15 Octobre 2013.

NetBeans IDE 8.0 a été libéré le 18 Mars 2014.

NetBeans a un document de feuille de route pour les plans de libération.

Cadre pour simplifier le développement de Java swing applications de bureau. Le


faisceau NetBeans IDE pour Java SE contient ce qui est nécessaire pour commencer à
développer NetBeans plugins et applications basées sur la plate-forme NetBeans; pas de
SDK supplémentaire ne est nécessaire.

Les applications peuvent installer des modules dynamiquement. Toute application


peut inclure le module Update Center pour permettre aux utilisateurs de l'application à
télécharger signés numériquement améliorations et de nouvelles fonctionnalités
directement dans l'application en cours d'exécution. Réinstallation une mise à niveau ou
d'une nouvelle version ne oblige pas les utilisateurs à télécharger l'application entière à
nouveau.

La plate-forme offre des services réutilisables communs aux applications de


bureau, permettant aux développeurs de se concentrer sur la logique spécifique à leur
application. Parmi les caractéristiques de la plate-forme sont:

 la gestion de l'interface utilisateur (par exemple, les menus et les barres


d'outils)

 Gestion des paramètres de l'utilisateur

 La gestion du stockage (sauvegarde et le chargement tout type de


données)

 gestion de fenêtre

 Assistant cadre (prend en charge les boîtes de dialogue, étape par étape)

 NetBeans Visual Library

 Outils de développement intégrés

NetBeans IDE est un logiciel gratuit, open-source, multiplateforme IDE avec


support intégré pour Java Programming Language.

38
CHAPITRE II ANALYSE

NetBeans IDE est un open-source environnement de développement


intégré. NetBeans IDE soutient le développement de tous les types d'applications Java
( Java SE (y compris Java FX ), Java ME , web , EJB et mobiles applications) hors de la
boîte. Parmi les autres caractéristiques sont une Ant système à base de
projet, Maven soutien, refactoring , contrôle de
version (soutien CVS , Subversion , Git ,Mercurial et Clearcase ).

Modularité : Toutes les fonctions de l'IDE sont fournies par modules. Chaque
module dispose d'une fonction bien définie, tels que le soutien pour le langage Java ,
l'édition, ou de soutien pour le CVS système de version nage et SVN. NetBeans contient
tous les modules nécessaires pour le développement Java dans un seul téléchargement,
permettant à l'utilisateur de commencer à travailler immédiatement. Modules permettent
également NetBeans à être étendues. Nouvelles fonctionnalités, comme le support pour
d'autres langages de programmation, peuvent être ajoutés en installant des modules
supplémentaires. Par exemple, Sun Studio , Sun Java Studio Enterprise et Sun Java Studio
Creator de Sun Microsystems sont toutes basées sur l'EDI NetBeans.

Licence : De Juillet 2006 à 2007, l'EDI NetBeans a été distribué sous licence de
Sun commune du développement et de licence de distribution (CDDL), une licence basée
sur le Mozilla Public License (MPL). En Octobre 2007, Sun a annoncé que NetBeans serait
désormais proposés sous une double licence de la CDDL et GPL Version 2 licences, avec
l'exception GPL reliant pour GNU Classpath. [10]

I.18 Présentation de l’easyPHP


EasyPHP fut le premier package WAMP à voir le jour (1999). Il s'agit d'une
plateforme de développement Web, permettant de faire fonctionner localement (sans
se connecter à un serveur externe) des scripts PHP. EasyPHP n'est pas en soi un
logiciel, mais un environnement comprenant deux serveurs (un serveur web Apache et
un serveur de bases de données MySQL), un interpréteur de script (PHP), ainsi qu'une
administration SQL phpMyAdmin. Il dispose d'une interface d'administration
permettant de gérer les alias (dossiers virtuels disponibles sous Apache), et le
démarrage/arrêt des serveurs. Il permet donc d'installer en une seule fois tout le
nécessaire au développement local du PHP. Par défaut, le serveur Apache crée un nom
de domaine virtuel (en local) 127.0.0.1 ou localhost. Ainsi, quand on choisit « Web

39
CHAPITRE II ANALYSE

local » dans le menu d'EasyPHP, le navigateur s'ouvre sur cette URL et affiche la page
index.php de ce site qui correspond en fait au contenu du dossier wwwd'EasyPHP.

UN ENVIRONNEMENT COMPLET ET PRÊT À L'EMPLOI POUR LES


DÉVELOPPEURS PHP

EasyPHP est un package WAMP y compris le côté serveur langage de script PHP,
le serveur Web Apache, le serveur SQL MySQL, ainsi que des outils de développement
tels que le gestionnaire de base de données PhpMyAdmin, le débogueur Xdebug et bien
d'autres. Rien à configurer. C'est déjà fait! Vous avez juste besoin de télécharger, Install ...
et le code. La page d'administration vous permet de lister les doc root, extensions, modifiez
le port Apache, le fuseau horaire, le temps d'exécution max, les rapports d'erreurs,
téléchargez taille du fichier max, ajouter / supprimer des alias, de gérer les modules ....

MODULES: APPLICATIONS WEB PRÉ-CONFIGURÉS POUR EASYPHP

Vous avez juste besoin de télécharger le module et exécuter l'installation. Ainsi,


vous pouvez installer rapidement des applications comme WordPress (Blog), Spip, Drupal,
Joomla! (Content Management System - CMS), Presta shop (e-Commerce / Boutique en
ligne), phpBB, Forum (Forum / Bulletin Board) ... Un moyen facile de coder et tester vos
modèles.

UN ENVIRONNEMENT POUR LES DÉVELOPPEURS PHP

Toutes les erreurs, les avertissements et les avis y compris meilleures pratiques de
codage et a recommandé des normes de codage en PHP sont affichées. Cette configuration
est destinée à forcer les débutants et même certains programmeurs expérimentés pour
développer de bonnes habitudes et écrire un code propre et cohérent.

POUR LES DÉVELOPPEURS ET LE DÉVELOPPEMENT NE ...

Non pour la production ou l'hébergement web. EasyPHP est un outil de


développement et n’est pas destiné à héberger des sites Web ou des applications. La
configuration est optimisée pour le codage et le débogage.

EASYPHP EST PORTABLE

Vous pouvez l'installer sur votre système, une clé USB, un lecteur flash USB,
une carte mémoire, un disque dur portable ... et de développer ou présents localement votre
code PHP, des projets, des sites Web, des scripts, applications ...

40
CHAPITRE II ANALYSE

EasyPHP peut être utilisé comme une application portable, c’est-à-dire lancé
sur une clé USB.

Détection automatique du répertoire d’installation en fonction des droits de


l'utilisateur

Détection automatique des ports disponibles

Gestion des composants : plusieurs versions de PHP (ou plusieurs fois la


même) peuvent être installées

Possibilité de basculer d'une version de PHP à une autre en un clic

PHP configuration Manager (max execution time, error reporting, upload max
file size...)

MySQL configuration Manager (storage engine: InnoDB/MyISAM...)

Apache configuration Manager (time zone, available ports...)

Alias Manager (ajout/suppression)

Virtual Hosts Manager (ajout/suppression/activation/désactivation). [11]

I.19 Les langages utilisés pour le développement de l’application


I.19.1 Le langage J2EE
Java Enterprise Edition, ou Java EE (anciennement J2EE), est
une spécification pour la technique Java d'Oracle plus particulièrement destinée aux
applications d’entreprise. Ces applications sont considérées dans une approche multi-
niveaux. 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 additionnelles
du Java Development Kit (JDK) ;

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


compatibilité ;

41
CHAPITRE II ANALYSE

 Une réalisation de référence (Java EE Reference Implementation),


dénommée GlassFish ;

 Un catalogue de bonnes pratiques (Java EE BluePrints).

Positionnement de Java EE
Alors que Java SE constitue le framework de référence pour Java – avec des
bibliothèques standards répondant à la plupart des besoins – Java EE complète ce
framework avec des bibliothèques logicielles additionnelles dédiées à des applications
professionnelles, facilitant par exemple le développement d'applications pour architecture
distribuée.

Les JDK spécifiques à Java EE sont conçus de façon à ce qu'une application


réalisée avec Java EE fonctionne sur le même JRE qu'une application écrite avec Java SE,
mais nécessitera cependant qu'en complément, les bibliothèques exploitées soient fournies
par un « conteneur Java » lourd tel que Apache Tomcat, JBoss ou JOnAS, ou léger tel que
Spring.

La première version des spécifications de J2EE fut publiée en 1999, la version 1.3
apparut en 2001, puis la version 1.4 en 2003 (support XML et services Web) et la version
1.5 (renommée Java EE 5) en 2007. Depuis septembre 2014, la dernière version en cours
est Java EE 8 ; elle fonctionne avec les JDK de Java SE 8.

Interfaces de l’application
Ci-dessous, une liste de composants pouvant être contenus dans une
implémentation Java EE :

 Servlet : Composant représentant le C (Controller) du paradigme MVC

 Portlet : Conteneur Web (extension de l’API Servlet)

 JavaServer Pages (JSP) : Framework Web

 Java Standard Tag Library (JSTL) : bibliothèque de balises pour les JSP

 JavaServer Faces (JSF) : Java Server Face, Framework Web

 EJB : Composants distribués transactionnels

 JNDI : API de connexion à des annuaires, notamment des


annuaires LDAP, et espace de noms d’objet (ENC)

42
CHAPITRE II ANALYSE

 JDBC : API de connexion à des bases de données

 Java Message Service (JMS) : API de communication asynchrone par


message

 JCA : API de connexion, notamment à des PGI

 Java Mail : API de gestion des mails

 JMX : Extension d’administration des applications

 JPA : API de gestion de la persistance des données

 JTA : API de gestion des transactions

 Java API for XML Processing (JAXP) : API d’analyse XML

 JAXM : API de communication asynchrone par XML

 JAX-RPC / JAX-WS : API de communication synchrone par XML, par


exemple à l’aide du protocole SOAP

 JAXB : API de sérialisation par XML

 JAXR : API de gestion des registres XML, permettant d’enregistrer


des Web Services en ebXML

 Java RMI : API de communication distante entre des objets Java

 Java IDL : API de communication entre objets Java et objets non-Java,


via le protocole CORBA [12]

I.19.2 Le Framework utilisées


I.19.1 JSF 2
JavaServer Faces (abrégé en JSF) est un framework Java, pour le développement
d'applications Web.

À l'inverse des autres frameworks MVC traditionnels à base d'actions, JSF est
basé sur la notion de composants, comparable à celle de Swing ou SWT, où l'état d'un
composant est enregistré lors du rendu de la page, pour être ensuite restauré au retour de la
requête.

43
CHAPITRE II ANALYSE

JSF est agnostique à la technologie de présentation. Il utilise Facelets par défaut


depuis la version 2.0, mais peut être utilisé avec d'autres technologies, comme JSP (qui
était utilisé jusqu'à la version 1.2) ou XUL.

JSF 2.0 :

Les spécifications de JSF 2.0 sont définies dans la JSR 314 sortie le 28 juin 2009.
Elle remplace les précédentes versions et correspond à la première mise à jour majeure des
spécifications entrainant de nombreuses modifications, afin d'en faciliter l'utilisation,
augmenter les fonctionnalités et les performances selon le Java Community Process. Cette
sortie coïncide avec celle de Java EE 6.

JSF 2.1 :

C'est donc la version antérieure a la version 2.2 de JSF sortie le 22 octobre 2010.
Elle comporte uniquement des corrections mineures. De ce fait, elle s'appuie sur la même
JSR que JSF 2.0.

JSF 2.2 :

Version sortie en avril 2013. Les spécifications sont définies dans la JSR 344.

Constituant des JSF :

JSF est constitué principalement de:

 Un ensemble d'APIs pour la représentation et la gestion des composants,


de leur état, des évènements, de la validation des entrées et la conversion des sorties,
l'internationalisation et l'accessibilité ainsi que la navigation inter-vues

 Deux jeux de composants standards (affichage de texte, saisie de texte,


tables, zone à cocher, etc.) : html et core

 Deux bibliothèques de balises JSP (une pour chaque jeu de composants)


pour permettre l'utilisation des JSPs pour la construction de vues JSF

 Un modèle évènementiel côté serveur

 Les Managed-Beans : qui forment la couche contrôle de JSF

 Unified Expression Language (abrégé en EL) ou langage d'expressions


unifié pour JSF et JSP 2.0. Il permet de lier les composants aux managed-beans [13]

I.19.3 Hibernate

44
CHAPITRE II ANALYSE

Hibernate est un framework open source gérant


la persistance des objets en base de données relationnelle.

Hibernate est adaptable en termes d'architecture, il peut donc être utilisé aussi
bien dans un développement client lourd, que dans un environnement web léger de
type Apache Tomcat ou dans un environnement Java EE complet : WebSphere, JBoss
Application Server et Oracle WebLogic Server.

Hibernate apporte une solution aux problèmes d'adaptation entre le paradigme


objet et les SGBD en remplaçant les accès à la base de données par des appels à
des méthodes objet de haut niveau.

Hibernate a été développé par un groupe de développeurs Java dirigés par Gavin
King. L'entreprise JBoss (maintenant une division de Red Hat) a embauché les
développeurs principaux d'Hibernate et a travaillé avec eux afin de maintenir et développer
le produit.

La version 3 a introduit de nouvelles fonctionnalités comme l'architecture


"Interceptor/Callback", les filtres utilisateurs et les annotations introduites par le JDK 5.0.
Hibernate 3 est également très proche des spécifications EJB 3.0 (même si la bibliothèque
logicielle a été livrée avant les spécifications définitives) et servit de colonne vertébrale à
l'implantation d'EJB 3.0 par JBoss.

La version courante d'Hibernate mi-2014 est la version 4.3.5.

Hibernate se compose de plusieurs modules développés par des équipes différentes.

Le module principal d'Hibernate contient les fonctionnalités clefs (principalement


connues depuis la version 2 de la bibliothèque) telles que les sessions, les transactions,
le cache d'objet ou le langage SQL.

Apporte le support des Annotations tel que décrit dans JSR 175. Cette approche
permet d'éviter la description de la correspondance entre les champs d'une table et les
champs du POJO en XML. [14]

45
CHAPITRE II ANALYSE

I.20 Prototype des interfaces de l’application


I.20.1 Interface de login

Figure 15 : Interface d’identification

L’interface d’identification permet à l’administrateur de connecter et aux personnels


d’envoyer des messages.

46
CHAPITRE II ANALYSE

I.20.2 Interface d’accueil

Figure 16 : interface d’accueil

Cette interface affiche les incidents envoyer à l’administrateur, il y’a deux étapes à
faire soit intervenir (envoyer l’incident à un personnel spécifique pour le résoudre),
soit terminer qui signifie que l’incident est résolu.

47
CHAPITRE II ANALYSE

I.20.3 Interface d’intervention

Figure 17 : interface d’intervention

Cette interface affiche la formulaire à remplir pour affecter un incident (en cliquant
sur le bouton intervenir).

I.20.4 Interface d’intervention non traité

Figure 18 : interface d’intervention non traiter

48
CHAPITRE II ANALYSE

Cette interface contient deux action soit terminer (c.v.d réclamation traiter) soit
consulter, donc en passe à l’espace de suivi des interventions or incidents.

I.20.5 Interface de suivi

Figure 19 : interface de suivi

Cette interface affiche l’état des incidents comme montre la figure «en cour».

I.20.6 Interface de mise à jour

Figure 20 : interface de mise à jour de ville

49
CHAPITRE II ANALYSE

Cette interface permet d’ajouter la ville pour les personnels et pour la place ou se
trouve l’entreprise TT.

I.20.7 Interface de m.à.j de personnel

Figure 21 : interface de m.à.j de personnel

Cette interface permet à l’administrateur d’ajouter les personnels et de lui affecter


leur titre, autorisation, etc.

50
CHAPITRE II ANALYSE

I.20.8 Interface de m.à.j de siège

Figure 22 : interface de m.à.j de siège

I.20.9 Interface de m.à.j de direction

Figure 23 : interface de m.à.j de direction

51
CHAPITRE II ANALYSE

I.21 Conclusion
En exploitant au mieux les différents outils de réalisation, nous avons élaboré et
exposé au cours de ce chapitre quelques interfaces de notre application «Mise en place
d’une plateforme d’helpdesk pour le service Workflow TT selon la norme ITIL V3 »
donnant ainsi une vue globale de notre application.

52
Conclusion générale

Ce stage a été pour nous une première deuxième expérience professionnelle très
enrichissante sur tous les plans : aussi bien du point de vue de l’approfondissement de
notre connaissance en informatique que du point de vue relationnel.

Nous avons donc pu approfondir de manière conséquente nos connaissances dans


l’utilisation du J2EE ainsi que nos connaissances dans la conception des applications en
général.

L’application, que nous avons créée, permettra à Tunisie Télécom de gérer ses
incidents dans une application web bien organisée.

Cette expérience a été mon premier projet informatique de longue durée, qui m’a
permis d’approfondir mes connaissances en informatique mais également d’améliorer mes
compétences professionnelles, ceci grâce à un groupe de personnes qui m’a encadré au
cours de ce projet tout en me laissant une certaine autonomie. Je pense donc d’avoir réussi
ce stage en étant à l’écoute des demandes de chacun et sans hésiter à demander conseil si
nécessaire.

53
Bibliographie

[1]https://www.google.tn/search?
q=logo+tunisie+telecom&biw=1366&bih=667&tbm=isch&tbo=u&source=univ&sa=X&ei
=HyjkVMu9MuXXyQPFsoGgDQ&ved=0CBoQsAQ

[2]http://fr.wikipedia.org/wiki/Tunisie_T%C3%A9l%C3%A9com

[3]http://www.tunisietelecom.tn/tt/internet/fr/tunisietelecom/valeurs

[4]http://www.tunisietelecom.tn/tt/wcm/connect/0dfbfa004c0e2c7598909c39974dd8b0/tt_
organisation+structurelle.pdf?
MOD=AJPERES&CACHEID=0dfbfa004c0e2c7598909c39974dd8b0
[5] http://fr.wikipedia.org/wiki/UML
[6] http://fr.wikipedia.org/wiki/PowerAMC
[7] http://fr.wikipedia.org/wiki/Diagramme_de_classes
[8] http://fr.wikipedia.org/wiki/Diagramme_de_s%C3%A9quence
[9] http://fr.wikipedia.org/wiki/Diagramme_d'activit%C3%A9
[10] http://en.wikipedia.org/wiki/NetBeans
[11] http://fr.wikipedia.org/wiki/EasyPHP
[12] http://fr.wikipedia.org/wiki/Java_EE
[13] http://fr.wikipedia.org/wiki/JavaServer_Faces
[14] http://fr.wikipedia.org/wiki/Hibernate

54