Vous êtes sur la page 1sur 22

Rapport de conception

Projet de conception de fin de formation

Conception et réalisation d'un système


de gestion des réservation
d'une agence de voyage aérien
1 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

SOMMAIRE

I. Introduction : ............................................................................................................................. 3
a) Le but du projet :....................................................................................................................... 3
II. Diagramme de cas d'utilisation : .............................................................................................. 3
a) Définition :.................................................................................................................................. 3
b) Identification des acteurs :........................................................................................................ 3
c) Description détaillée des cas d’utilisation................................................................................ 4
III. Diagramme de classes : ............................................................................................................. 8
a) Définition :.................................................................................................................................. 8
b) Description détaillée des diagramme des classe : ................................................................... 8
IV. Diagramme de séquence : ....................................................................................................... 11
a) Définition :................................................................................................................................ 11
b) Description détaillée des diagrammes de séquence : ............................................................ 12
V. Diagramme d'états transitions : ............................................................................................. 14
a) Définition :................................................................................................................................ 14
b) Description détaillée de diagramme d'états transitions (Reservation) : ............................. 14
VI. Diagramme d'activités : .......................................................................................................... 15
a) Définition :................................................................................................................................ 15
b) Description détaillée de diagramme d'activités : .................................................................. 15
VII. Diagramme de déploiement : .................................................................................................. 17
a) Définition :................................................................................................................................ 17
b) Description détaillée de diagramme déploiement système : ................................................ 17
VIII. Architecture Applicative ......................................................................................................... 18
IX. Architecture Technique .......................................................................................................... 19
a) Choix technologiques .............................................................................................................. 20
b) Outils : ...................................................................................................................................... 21

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
2 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

LISTE DE FIGURES :

Figure 1 : diagramme de cas d'utilisation - gestion des utilisateurs. ....................................................... 4


Figure 2 : diagramme de cas d'utilisation - gestion des vols. .................................................................. 5
Figure 3 : diagramme de cas d'utilisation - gestion des réservation. ....................................................... 7
Figure 4 : diagramme de classes - gestion des utilisateurs. ..................................................................... 8
Figure 5 : diagramme de classes - gestion des vols. ................................................................................ 9
Figure 6 : diagramme de classes - gestion des réservations. ................................................................. 10
Figure 7 : diagramme de packages. ....................................................................................................... 11
Figure 8 : diagramme de séquence - réserver dans un vol..................................................................... 12
Figure 9 : diagramme de séquence - création d'un vol. ......................................................................... 13
Figure 10 : diagramme de séquence - affectation d'un avion à un vol. ................................................. 13
Figure 11 : diagramme d'états-transitions - réservation. ....................................................................... 14
Figure 12 : diagramme d'activités - réservation. ................................................................................... 15
Figure 13 : diagramme d'activités - vol. ................................................................................................ 16
Figure 14 : diagramme de déploiement système. .................................................................................. 17

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
3 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

projet de conception de fin de formation

Conception et réalisation d'un système de gestion des


réservation d'une agence de voyage aérien

Mise en garde: comme pour toute activité de modélisation, il n’existe pas une solution unique. Ce
document présente donc une solution possible.

I. Introduction :
a) Le but du projet :

Le but de ce projet est la création d’un système qui permettra la gestion des réservations des vols chez
une agence de voyage aérien. Cette agence dessert plusieurs villes (réelles ou imaginaires).
Il est donc nécessaire d'enregistrer les villes, les horaires des vols, les places disponibles sur chaque
vol, le prix du ticket, ... etc. Le programme doit pouvoir afficher les vols disponibles, selon les désirs
des utilisateurs, et permettre aux utilisateurs de réserver leurs places.

II. Diagramme de cas d'utilisation :


a) Définition :

Les diagrammes de cas d’utilisation décrivent les services les plus importants rendus par un système.
Partant des acteurs, participants externes qui interagissent avec le système, ils représentent les cas les
plus importants du système en cours d'utilisation. Un cas d'utilisation peut être divisé en diagrammes
de séquence, qui détaillent les différentes fonctions du cas d'utilisation.

b) Identification des acteurs :

Les acteurs sont des entités externes qui interagissent avec le système, comme une personne humaine,
un autre système ou un robot. Les acteurs sont représentés par un pictogramme sous-titré par le nom
de l'acteur.

On distingue 4 catégories d'acteurs :

• les acteurs principaux (ex : usager, client, ...etc.),


• les acteurs secondaires (ex : opérateur de maintenance, administrateur, ...etc.),
• le matériel externe (capteur, imprimante, ...etc.),
• les autres systèmes (serveur, ...etc.).

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
4 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Les principaux acteurs qui auront à utiliser le système sont les suivants :

Acteurs Description
Administrateur C'est l'administrateur du système, il a le droit de
faire toutes les actions affecté au autres acteur,
plus la gestion des comptes des utilisateurs.
Agent C'est l'employé de l'agence, il a aussi le droit de
faire toutes les actions affecté aux clients et aux
visiteurs, plus la gestion des vols et les avions, la
vérification et la validation des réservations, et
l'affectation des avions aux vols.
Client Cet acteur peut consulter, réserver, et suivre le
déroulement d'une réservation.
Visiteur Il a le droit de consulter l'horaire et les prix des
tickets, et d'inscrire à partir de la portail.

c) Description détaillée des cas d’utilisation

Les cas d’utilisation du système sont organisés en plusieurs packages :


 Gestion des utilisateurs.
 Gestion des vols.
 Gestion des réservation.

UC1 : Système de gestion des utilisateurs

Diagramme :

Figure 1 : diagramme de cas d'utilisation - gestion des utilisateurs.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
5 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Sommaire d’identification :
Titre : Système de gestion des utilisateurs
Objectifs : Gérer les comptes des utilisateurs d'un manière autonome.
Résumé : Cette fonctionnalité permet :
1 - Aux administrateurs de gérer complètement les comptes des utilisateur.
Acteurs : Administrateur.

Description détaillée :
Pré conditions : L'administrateur doit s’authentifier pour avoir accès aux fonctionnalités du système.
Description du traitement nominal :
L'administrateur peut :
1. Gérer les comptes des utilisateurs.
2. Gérer les profils des utilisateurs.

Exceptions :
[Exception 1 : ChampsObligatoires] : Message d'erreur si l'un des champs obligatoires n'est
pas rempli.

UC2 : Système de gestion des vols

Diagramme :

Figure 2 : diagramme de cas d'utilisation - gestion des vols.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
6 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Sommaire d’identification :
Titre : Système de gestion des vols
Objectifs : Gestion des vols et validation des réservations.
Résumé : Cette fonctionnalité permet :
1 - Aux agents de l'agence de consulter les réservation, gestion des vols et les avions, la
vérification et la validation des réservations, et l'affectation des avions aux vols.

Acteurs : Agent.

Description détaillée :
Pré conditions : L'agent doit s’authentifier pour avoir accès aux fonctionnalités du système.
Description du traitement nominal :
L'agent peut :
1. Ajouter un vol.
2. Modifier un vol.
3. Annuler un vol.
4. Consulter les réservation.
5. Valider les demande des réservation.
6. Ajouter, modifier, supprimer un avion.
7. Affecter un avion à un vol.

Exceptions :
[Exception 1 : ChampsObligatoires] : Message d'erreur si l'un des champs obligatoires n'est
pas rempli.
[Exception 2 : ErreurDate] : Message d'erreur si la date de départ d'un vols est postérieure à la date
d'arrivé.
[Exception 3 : NbPlaceMax] : Message d'erreur si le nombre des places réservé dans un vols dépasse
le maximum mentionner.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
7 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

UC2 : Système de gestion des réservations

Diagramme :

Figure 3 : diagramme de cas d'utilisation - gestion des réservation.

Sommaire d’identification :
Titre : Système de gestion des réservations.
Objectifs : Gestion des réservations.
Résumé : Cette fonctionnalité permet :
1 - Aux Client de Réserver sur un vols, annuler réservation, et suivre le déroulement de ses
réservations.
2 - Aux Visiteur de Consulter l'horaire des vols, les prix des lignes, et de s'inscrire comme
client d'après la portail de l'agence.
Acteurs : Client, Visiteur.

Description détaillée :
Pré conditions : L'agent doit s’authentifier pour avoir accès aux fonctionnalités du système.
Description du traitement nominal :
Le client peut :
1. Réserver dans un vols.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
8 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

2. Annuler un réservation.
3. Suivre le déroulement de ses réservation.
Le visiteur peut :
1. Consulter les vols.
2. S'inscrire sur le système.

Exceptions :
[Exception 1 : ChampsObligatoires] : Message d'erreur si l'un des champs obligatoires n'est
pas rempli.

III. Diagramme de classes :


a) Définition :
Le diagramme de classe de conception représente bien la structure statique du code, par le
biais des attributs et des relations entre classes
C'est un diagramme principal qui est la vue de plus haut niveau avec l'ensemble des classes de
l'application, Il montre les briques de base statiques : classes, associations, interfaces, attributs,
opérations, généralisations, etc. on peut avoir des vues logiques plus spécialisées si nécessaire :
 Vue des classes participant à un scénario
 Vue des classes "privées" dans un package
 Vue d'une classe avec ses attributs et ses opérations
 Vue d'une hiérarchie d'héritage

b) Description détaillée des diagramme des classe :

DC1 : Gestion des utilisateurs.

Diagramme :

Figure 4 : diagramme de classes - gestion des utilisateurs.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
9 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Gestion des utilisateurs :


- Chaque Utilisateur est caractérisé par un Profil pour définir son compte dans l'application, plus un
id, nom, prénom, sexe, date de naissance, téléphone, e-mail, login, un mot de passe, un
codePieceIdent, et un TypePieceIdent.

- Et chaque Profil est identifier par un id, et une libelle.

Règles de gestion :
- Un Utilisateur a un et un seul Profil, et Un Profil peut caractériser un ou plusieurs Utilisateur.

- Un Utilisateur peut avoir une et un seul TypePieceIdent, et une TypePieceIdent peut identifier un
et un seul Utilisateur.

DC2 : Gestion des vols.

Diagramme :

Figure 5 : diagramme de classes - gestion des vols.

Gestion des vols :


- Chaque Avion est caractérisé par un TypeAvion, plus un id, reference, nom, dateEntree,
etatAvion, nbPlace.

- Et chaque TypeAvion est identifier par un id, et une libelle.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
10 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

- Une Ville est caractérisé par un id, un code, et un nomVille.


- Chaque Aeroport est caractériser par un id, et nomAeroport, et une Ville.

- Un vole est identifier par un id, dateDepart, dateArrivee, heurDepart, heurArrivee, prix, duree,
une etat, un Avion, un Aeroport d'arrivee, et un Aeroport de depart.

- Un Escale est caractérisé par un id, heurArrivee, heurDepart, un Vol, et un Aeroport.

Règles de gestion :
- Un Avion a un et un seul TypeAvion, et Un TypeAvion peut caractériser un ou plusieurs Avion.
- Un Avion peut participer dans un ou plusieurs Vole, et une Vole peut être effectuer par un et un
seul Avion.
- Chaque Aeroport se situer dans une et une seule Ville, et une Ville peut avoir un ou plusieur
Aeroport.
- Un Vol a un et un seul Aeroport de depart et un et un seul Aeroport d'arrivé, et un Aeroport peut
accepter plusieurs Vol.

- Un Escale peut être effectuer dans un seul Aeroport et il concerne un seul vol, par contre un vol
peut avoir plusieurs Escale, et un Aeroport peut accepter plusieurs Escale.

DC3 : Gestion des réservation.

Diagramme :

Figure 6 : diagramme de classes - gestion des réservations.

Gestion des vols :


- Chaque Reservation est caracteriser par un id, dateReservation, nbPlaceReserve, un Utilisateur
{Client} pour effectuer une réservation, un Vol pour réserver, et une etatReservation.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
11 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Règles de gestion :
- Une Reservation peut être effectuer par un et un seul Utilisateur {Client}, et Un Utilisateur
{Client} peut effectuer une ou plusieurs Reservations.

- Un Vol peut avoir une ou plusieurs Reservations, et une Reservation conserne un et un seul Vol.
- Une Reservation a une et une seule etatReservation, et une etatReservation peut caractériser
plusieurs Reservations.

DP1 : Diagramme de packages.

Diagramme :

Figure 7 : diagramme de packages.

Description :
Ce diagramme montre la communication entre les paquetages de système, et les relation de
dépendance entre packages qui nous aide à rendre visibles les éléments publics de l’un des packages
au sein d’un autre.

IV. Diagramme de séquence :

a) Définition :

Le diagramme de séquence décrit la dynamique du système. À moins de modéliser un très petit


système, il est difficile de représenter toute la dynamique d’un système sur un seul diagramme. Aussi
la dynamique globale sera représentée par un ensemble de diagrammes de séquence, chacun étant
généralement lié à une sous fonction du système.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
12 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Le diagramme de séquence décrit les interactions entre un groupe d’objets en montrant, de façon
séquentielle, les envois de message qui interviennent entre les objets. Le diagramme peut également
montrer les flux de données échangées lors des envois de message.

b) Description détaillée des diagrammes de séquence :

DS 1 : Réserver dans un vol.

Diagramme :

Figure 8 : diagramme de séquence - réserver dans un vol.

Pré conditions : le Client s’est authentifiée sur le système.


Description :
- Le client sélectionne un vol.
- Une validation automatique du système se déclenche.
- Si le nombre de places réservés est inferieur au nombre de place disponible dans un vol la
création de la réservation se lance, si non un erreur s'affichera au client.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
13 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

DS 2 : Création d'un vol.

Diagramme :

Figure 9 : diagramme de séquence - création d'un vol.

Pré conditions : l'agent s’est authentifiée sur le système.


Description :
Avant de créer un vol l'agent peut sélectionner un avion pour ce vol, en suite il doit sélectionner un
aéroport de départ et un autre d'arrivée, puis il crée un vol après avoir spécifier les autres informations
requis.

DS 3 : Affectation d'un avion à un vol.


Diagramme :

Figure 10 : diagramme de séquence - affectation d'un avion à un vol.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
14 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Pré conditions : l'agent s’est authentifiée sur le système.


Description :
Pour que l'agent affecter un avion à un vol, il doit sélectionner un avion, puis sélectionner le vol
concerné, et finalement affecter cet avion a ce vol.

V. Diagramme d'états transitions :

a) Définition :

Le diagramme d’états transitions décrit le cycle de vie des objets chargés d’assurer la dynamique
du système. Cette description du cycle de vie est réalisée séparément pour chacun de ces objets.
Cette modélisation est très importante pour s’assurer que les objets puissent répondre aux
interactions décrites dans les diagrammes de séquence et de communication.

b) Description détaillée de diagramme d'états transitions (Reservation) :

ET 1 : Réservation.
Diagramme :

Figure 11 : diagramme d'états-transitions - réservation.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
15 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Description :
Ce diagramme représente la cycle de vie d'une réservation, un client a la possibilité de créer une
réservation ou l'annuler, une réservation peut avoir plusieurs états après certain transition et le
diagramme ci-dessus représente les états et les transitions possible.

VI. Diagramme d'activités :


a) Définition :

Le diagramme d’activités représente les activités que réalisent un ou plusieurs objets. Il peut
correspondre à la description en détail d’une activité du diagramme d’états transitions, à la description
d’une méthode. Il peut également décrire l’activité d’un système ou d’un sous système en assignant les
responsabilités à chaque acteur. Le diagramme d’activités constitue aussi un bon choix pour décrire un
cas d’utilisation.

b) Description détaillée de diagramme d'activités :

DA 1 : Réservation.

Diagramme :

Figure 12 : diagramme d'activités - réservation.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
16 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

Description :
Ce diagramme représente les différents activités réalisé par le clients et l'agents durant la procédure
de réservation. Il commence par la création de la réservation de la part de client, puis l'agent de la
agence la vérifier, et si la réservation est raisonnable il la valide, sinon il annule la réservation. Après
que l'agent valide la réservation, le client achève le processus de la réservation soit de la régler puis
l'agent imprime la ticket, soit annuler la réservation.

DA 2 : Vol.

Diagramme :

Figure 13 : diagramme d'activités - vol.

Description :
Ce diagramme représente les différents activités réalisé l'agent pour la création d'un vol,
premièrement il crée un vol, et si un avion est disponible il l'affect directement au vol, sinon il attend
tant qu'un avion sera disponible, ou annuler le vol, et après l'affectation d'avion au vol, il peut annuler
ou valider un vol.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
17 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

VII. Diagramme de déploiement :


a) Définition :

Le diagramme de déploiement montre le déploiement physique des artefacts (éléments concrets tels
que fichiers, exécutables, etc.) sur les ressources matérielles.
b) Description détaillée de diagramme déploiement système :

Diagramme :

Figure 14 : diagramme de déploiement système.

Description :
La réalisation d'une application en JEE, consiste à suivre des concepts et respecter certain norme,
chaque application web doit être séparer en couches :
- Couche présentation.
- Couche abstraction.
- Couche métier.
- Couche persistante.
Le diagramme ci-dessus présente la schématisation des composantes utilisés dans la création de
l'application :
- Serveur Web(Apache Tomcat 7) : c'est où le système va être installé, le serveur contient un
interpréteur java (JVM - Java Virtual Machin) qui va exécuter le code java installé on interrogeant un
serveur de base de données.
- Serveur de base de données (MySQL) : Le SGBD MySQL est supporté par un large éventail
d'outils, il est surtout installé pour les applications Web, et celui qui va contenir la base de données du
système.
- PC client : qui contient un navigateur internet qui va se connecter avec le serveur web via
l'internet et par des requêtes HTTP il va scruter le système.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
18 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

VIII. Architecture Applicative

Notre application est constituée de trois couches. Ces trois couches se conforment à l’architecture
de couches fermées «Closed layer architecture» (une couche peut communiquer seulement avec la
couche qui lui est adjacente).
La figure suivante présente l’architecture Java EE d’une application web en trois couches :

Couche Présentation

Couche Métier

Couche Persistance de données


Base de données

Le concept de partitionner une application en couches et de garder toute la logique de


l’application dans ces couches distinctes et séparées, a été introduite bien avant l’approche orientée
objet. Ainsi une application est divisée en trois couches logiques, chacune traitant des fonctions
spécifiques :
 Présentation : interface usager et présentation.
 Logique du logiciel à produire (besoins, services de l’entreprise) : les règlements de
l’entreprise et la logique de l’application.
 Logique des données : Base de données et intégration des services de l’entreprise.
Ce concept nous permet de créer des composants indépendants et de les déployer sur des plates-
formes différentes. En fait, ce concept est très utilisé dans le développement des applications multi-
tier. Plus tard, il fut adapté au modèle de conception Model-View- Controller (MVC) qui est un
modèle très commun pour développer des applications distribuées et multi-tier.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
19 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

IX. Architecture Technique

Couche Présentation

Couche Sécurité

Couche Métier

Couche Couche
service domaine

Couche Persistance de données


Base de données
Couche
DAO

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
20 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

a) Choix technologiques

 JSF :
Java Server Faces est un framework de développement d’application Web en Java permettant de
respecter le modèle d’architecture MVC et basé sur des composants côté présentation.
 Facelet :
Technologie de présentation pour le développement d'applications web en Java ; Système de
templating : permet de définir des vues de JSF en utilisant des calibres du modèle HTML ;
Réduit la quantité de code nécessaire pour intégrer des composants dans la vue.
 Richfaces :

Librairie de composants JSF pour le développement d'applications web riches (RIA) Rich Internet
Application avec Ajax.
 Spring :
Spring est un framework open source J2EE pour applications 3-tiers ;
Faciliter l'intégration des différentes technologies qui a priori sont pour le moins hétérogènes.
 Hibernate :

Hibernate est un framework open source gérant la persistance des objets en base de données
relationnelle.
 Spring Security :

Framework qui permet la gestion de deux grandes problématiques liées à la sécurité applicative :
Authentification ;
Autorisation.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B
21 Rapport de conception - Système de gestion des réservation d'une agence de voyage aérien

b) Outils :

TOMCAT

L'utilisation d'un serveur Java EE est obligatoire pour le développement de pages Web
dynamiques en Java EE. Un serveur HTTP classique reçoit des requêtes HTTP et renvoie des
réponses mais il ne connait pas les Servlets, les JSP... Il est donc essentiel d'utiliser un
programme appelé moteur de Servlets qui est contenu dans le serveur Java EE et qui permet de
pallier ce manque.

ECLIPSE

Eclipse est l'environnement de développement (spécialisé pour le langage Java) qui sera utilisé
dans ce projet. Le choix d'Eclipse repose essentiellement sur sa gratuité, sa facilité
d'utilisation, sa puissance de développement et surtout ses nombreux plugins (bibliothèques
additives).

APACHE

Apache est le serveur Web le plus utilisé sur Internet. Dans une architecture en production, il
est recommandé d'utiliser un serveur Web en frontal d'un serveur d'applications. Ces
recommandations sont également appliquées dans le cas de l'utilisation d'un conteneur Web
comme Tomcat.

L'utilisation d'un serveur Web en frontal est nécessaire dans ce projet pour des raisons de
performance, de sécurité et de flexibilité.

Coupler Tomcat et le serveur web Apache

L'intégration d'un serveur Tomcat avec un serveur Web se fait au travers d'un connecteur
configuré au sein de Tomcat et d'une extension ajoutée au serveur Web. Un connecteur
Tomcat est une classe Java qui supporte un protocole réseau spécifique et propriétaire. La
librairie d'extension du serveur Web permet un dialogue entre les deux serveurs.

MySQL

Le SGBD MySQL est supporté par un large éventail d'outils. MySQL est surtout installé pour
les applications Web, ce SGBD est solide et utilisé par de grands groupes spécialisés dans
l'Internet. Plusieurs pilotes natifs de type 4 sont disponibles pour MySQL et sont conseillés
pour une utilisation en Java.

19 mars 2013
Abdelalime MACHKOUK - CRJJ Group B

Vous aimerez peut-être aussi