Académique Documents
Professionnel Documents
Culture Documents
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 :
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
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.
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.
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.
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.
Diagramme :
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.
Diagramme :
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
Diagramme :
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.
Diagramme :
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
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.
Diagramme :
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
- 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.
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.
Diagramme :
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.
Diagramme :
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.
a) Définition :
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.
Diagramme :
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
Diagramme :
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
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.
ET 1 : Réservation.
Diagramme :
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.
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.
DA 1 : Réservation.
Diagramme :
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 :
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
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 :
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
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
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
Couche Présentation
Couche Sécurité
Couche Métier
Couche Couche
service domaine
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é.
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