Gestion Automatisée d'un Aéroclub
Gestion Automatisée d'un Aéroclub
PROJET D‘UML
Membre du projet :
KAMO NDIBATCHOU Jude Levy
IPOUK Jeannette Herine Valérie
PEGWE WANDJI Daniele Kemone
OTSALIE MELONGO Joanne Salem
NGOUMENE KENE Billy Brandown
TOUOPA Willy Landry
LOUOCDOM JOUONANG Auklin Jordan
POHLA Franck
TEMEU SIELENOU Vaneka
MEKUATE KAMGA Oriane
AHOUKENG DONWOUNG Audrey
NKENG PEH Bruno Julien
SOMMAIRE.....................................................................................................................................i
PRESENTATION DU PROJET.....................................................................................................1
PRESENTATION DE LA METHODE DE TRAVAIL.................................................................2
I. GESTION DES PILOTES....................................................................................................3
1. Diagramme de cas d’utilisation........................................................................................3
2. Diagramme de séquence...................................................................................................9
3. Diagramme de classe......................................................................................................16
4. Diagramme de composant...............................................................................................17
II. GESTION DES VOLS.......................................................................................................18
1. Diagramme de cas d’utilisation......................................................................................18
2. Diagramme de séquence.................................................................................................20
3. Diagramme de classe......................................................................................................22
4. Diagramme de composant...............................................................................................23
III. GESTION DES AVIONS...............................................................................................24
1. Diagramme de cas d’utilisation......................................................................................24
2. Diagrammes de séquence................................................................................................29
3. Diagramme de classe......................................................................................................34
4. Diagramme de composant...............................................................................................34
IV. DIAGRAMME DE DEPLOIEMENT............................................................................35
V. DIAGRAMME DE COMPOSANT GLOBAL..................................................................36
Conclusion.....................................................................................................................................37
BIBLIOGRAPHIE..........................................................................................................................ii
i
PRESENTATION DU PROJET
Dans le cadre de l’atelier UML, du projet de conception portant sur la gestion de l’aéroclub
du Castellet, l’objectif principal est d'évaluer le degré de maîtrise de nos différentes notions
présentées en cours. Le texte relatif au projet est tiré d'un exemple traité par le groupe de travail
Anna Gram, constitué en janvier 1979, sous l'égide de l'AFCET. L'application demandée doit
permettre la gestion automatisée et simplifiée de cet aéroclub. Les besoins du club sont les
suivants : la gestion des pilotes, des vols, des avions. Chaque type de gestion correspond à un
certain nombre d’éléments à prendre en compte.
La gestion des pilotes permet de gérer les cas suivants : l’inscription d’un nouveau pilote,
le départ d’un autre, l’édition de la liste des pilotes et faciliter la gestion de la comptabilité plus
précisément en ce qui concerne les comptes des pilotes, les différentes cotisations.
La gestion des vols quant à elle consiste à enregistrer les informations sur les vols des
avions pour chaque pilote, pour l'ensemble des pilotes, pour un avion, pour l'ensemble des
avions.
La gestion des avions sert à enregistrer des avions, à les supprimer, à éditer leurs
caractéristiques. Les ventes et achats d’avion seront comptabilisés.
37
PRESENTATION DE LA METHODE DE TRAVAIL
Un processus unifié est un processus construit sur UML (Unified Modeling Language).
Les processus unifiés sont le résultat de l’unification, non pas des processus, mais plus
exactement les meilleures pratiques du développement objet. Ils sont :
Itératifs ;
Pilotés par les risques ;
Conduits par les cas d’utilisation ;
Orientés composant.
La branche fonctionnelle sera scindée en 2 (deux), la capture des besoins fonctionnels qui
correspond aux diagrammes de cas d’utilisation et de séquence et l’analyse qui correspond au
diagramme de classe.
37
I. GESTION DES PILOTES
AEROCLUB
S'inscrire
<<extend>> Editer
<<include>> Debiter Compte Caracteristiques
Acheter
Fourniture Editer Noms
Crediter Compte
Pilote
Gestionnaire
Demander position
<<include>> du compte
Demissionner
37
b) Description textuelle des cas d’utilisation
Scenario 1 : S’inscrire
Scenario nominal :
Scenarios alternatifs :
Scenario 2 : Démissionner
Acteurs concernés : le pilote et le gestionnaire. Soit le pilote fait une demande de démission
soit le gestionnaire le retire du club en cas d’inactivités.
Post condition : le pilote doit être supprimé de l’ensemble des membres du club.
37
Scenario nominal :
Scenario nominal :
Objectif : élaboration d’un relevé de compte comportant des débits et crédits pour une
période donnée.
37
Scenario nominal :
Scenario nominal :
Objectif : Permettre à chaque pilote d’effectuer un versement d’argent dans son compte
37
Scenario nominal :
Objectif : Elaboration du relevé des comptes comportant des débits et crédits pour une
période donnée
Acteurs concernés : Le gestionnaire ayant pour but d’élaborer un relevé de compte pour
l’ensemble des pilotes du club.
37
Scenario nominal :
Acteurs concernés : Le gestionnaire ayant pour but d’élaborer un relevé de compte pour
l’ensemble des pilotes du club.
37
2. Diagramme de séquence
a) S’inscrire
S'inscrire
IHM cpte_entreprise
Gestionnaire
Afficher formulaire
<<create>>
:Pilote
creer_pilote
<<create>>
Compte
creer compte()
crediter()
<<create>>
:Mouvement_compt
creer()
Pilote inscrit
debiter() <<create>>
:mouvement_compt2
creer()
crediter()
37
c) Démissionner
Demissioner
Gestionnaire
choix du pilote
suppression du pilote
getSolde()
desactiver()
supprimer()
<<destroy>>
detruire()
<<destroy>>
detruire()
37
d) Edition des noms avec ou sans caractéristiques
Edtier les noms avec ou sans caractéristiques
:IHM :Pilote
Gestionnaire
demande d'afficher
getAll()
Affichage de liste de tous les pilotes
Gestionnaire
choix du pilote
getPilote()
generer releve de compte
getCompte()
getOperations()
37
f) Acheter fourniture
achat fournitures
Gestionnaire
getSolde()
Fonction qui
compare le solde_suffisant()
solde et le prix
de la
fourniture
alt solde suffisant
debiter()
<<<<create>>>>
:mouvement_compt()
creer()
crediter()
creer()
Achat effectué
solde insuffisant
37
g) Crédit sur le compte d’un pilote
Crediter compte
Gestionnaire
Formulaire de versement
validation
crediter() <<<<create>>>>
creer() :mouvement_compt
37
h) Subir visite médicale
subir viste medicale
Pilote
debiter()
crediter()
37
i) Edition du relevé des comptes pour l’ensemble des pilotes
Edition dun releve de compte pour l'ensemble des pilotes
Gestionnaire
:IHM :Pilote
Acteur_1
setPilote()
Edtion des informations du pilote effectuée
37
3. Diagramme de classe
pilote
- nom : String
- penom : String
- adresse : String
- date_naiss : Date
- heure_vol : int
1..1
- habilitation :
appartenance
+ get () : java.lang.Object
compte
+ set () : void
+ acheter () : void 1..1 - matricule : int
+ visite () : void propriétaire - Etat : String
+ heure_vol () : int - solde : int
+ debiter () : void
+ crediter () : void
1..1 1..1 Fournitures
1..1
patient propriete
0..1 - nom : String debit/credit
- montant : int
- description : String
0..*
Brevet
1..* - libellé : String
avoir 1..*
1..*
posseder
subir
mouvement_comptable
visite_medicale 0..1
- intitule : String - Type : String
- Nature : String
- date : Date
- heure : int 0..* - Date : Date
- Libelle : String
- Montant : int
Categorie
- type_avion : String
- description : String
+ get () : int
...
37
4. Diagramme de composant
<<component>>
pilote
fourniture
- nom : string
- prix : int 0,*
- description : string
0,1
pilote
- nom : String Port_1
- penom : String
- adresse : String compte
Port_2 - date_naiss : Date
gestion_pilote - habilitation : String visite medicale
1,1 1,*
+ get () : java.lang.Object - intitule : String
+ set () : void - date : Date
+ acheter () : void - heure : int
+ visite () : void
1..1
0..n
Brevet
- intitule : String
- type : char
<<component>>
compte
compte
- matricule : int
- Etat : String
- solde : int
+ debiter () : void
+ crediter () : void
Port_1 1,*
gestion_compte
1,*
mouvement_comptable
- Type : String
- Nature : String
- Date : Date
- Libelle : String
- Montant : int
37
II. GESTION DES VOLS
1. Diagramme de cas d’utilisation
a) Diagramme
Modèle orienté objet
Modèle : DCU gestion vol
Package :
Diagramme : DCU GEST_VOL
Auteur : LUDOVIC Date: 16/02/2017
Version:
<<include>>
gestionnaire de vols
afficher vols
lister par
pilotes
37
Scenario alternatif :
1. Les informations ne sont pas valides.
2. Le système renvoi un message d’erreur et ramène l’utilisateur à l’étape1.
Scenario alternatif :
37
5. Diagramme de séquence
a) Enregistrer plan de vol
Modèle orienté objet
Modèle : DSE enregistrer plan de vol
Package :
Diagramme : enregistrer plan de vol
Auteur : LUDOVIC Date: 28/02/2017
Version:
gestionnaire
alt
si information non valide
affiche message d'erreur et formulaire de
saisie des informations
information valide
<<create>>
creer un vol
vol
verifier brevet
affecter_avion()
return
debiter ()
crediter()
operation effectuer
37
l) Afficher la liste des vols
avion ou
pilote
gestionnaires
saisir information de recherche
GetId(code)
alt
si code n'existe pas
affiche message d'erreur et ramene au
formulaire de saisi
si code existe
Get_liste()
affiche la liste
37
6. Diagramme de classe
Modèle orienté objet
Modèle : DCL gestion vol
Package :
Diagramme : DCL gestion vol
Auteur : LUDOVIC Date: 02/03/2017
Vol Version:
+ date_dep : Date 1..1 Avion
1..*
+ date_arriv : Date affecter
realise + immat : Character
+ compt_dep : int
- infotech : Character
+ compt_arriv : int
+ type_vol : Character + Get () : java.lang.objet
+ destination : Character 1..1 + Affecter () : voi d
- prix_vol : int correspond + Get_nbr_heure () : int
+ ajouter () : voi d
+ Get_liste () : Character
+ delete () : voi d
...
1..*
1..* correspond
effectue
1..1 categorie
1..* appartenir
possede + type_avion : Character
+ description : Character
mouvement_comptable
+ get () : java.lang.obj et
1..1 + type : Character ...
affecter 1..*
+ date : Date
attribuer
Pilote + libelle : Character
+ nom : Character + montant : Float
+ prenom : Character + nature : Character
+ adresse : Character
+ habilitation : Character
1..* 1..*
+ Get () : java.l ang.objet possede possede
+ set () : void
... 1..1 1..1
1..1 1..1
debiter/crediter credite
appartient appartient
Compte compte_entrprise
1..1
possede + solde : Float - solde : Float
+ matricule : Character
+ crediter () : void
+ Debiter () : void ...
+ crediter () : void
brevet
+ libelle : Character 1..1
1..* relier
peut avoir
37
7. Diagramme de composant
<<component>>
vol
vol .
+ date_dep : Date
+ date_arriv : Date
+ compt_dep : int
+ compt_arriv : int correspond
+ type_vol : Character 1..1
pilote
+ destination : Character
..
+ Attribut_8 : float
+ get_liste () : Character
... possede
1..*
... avion
mouvement_compt
gestion_vol
+ type : Character
+ date : Date
+ libelle : Character
+ montant : Float
- nature : int
possede
1..*
compte_entrprise
- solde : Float
credite
+ crediter () : void 1..1
...
37
III. GESTION DES AVIONS
1. Diagramme de cas d’utilisation
a) Diagramme
vendre avion
<<extend>>
Gestionnaire <<include>>
supprimer avion
perdre avion
<<include>>
editer caracteristique
Scenario1 : ajouter avion
37
Scénario nominale :
Scénario alternatif :
37
Précondition : l’avion doit être utilisable par les pilotes.
Scénario nominal :
Scénarios alternatifs :
4.1. Les informations saisies ne correspondent à aucun avion.
4.1.a. Le système affiche un message d’erreur.
6.1. L’avion est le seul de sa catégorie.
6.1.a. Le système supprime la catégorie correspondante à la table des tarifs.
Scénario nominal :
37
6. Le gestionnaire valide la perte.
6.1. Le système vérifie si l’avion n’est pas le seul da sa catégorie.
7. Le système supprime l’avion de la liste des avions utilisables par les pilotes.
Scénario alternatif :
Scénario nominal :
Scénario alternatif :
37
Scenario5 : contrôler visites techniques
Scénario nominal :
Scénario alternatif :
37
8. Diagrammes de séquence
a) Ajouter avion
DiagrammeSequence_1 ajout avion
gestionnaire
verications informations
verification avions
get avion()
else
verification categorie
enregistrer modification
else
ajout de l avion
add avion()
ajout de l avion
create
:achat
37
n) Vendre avion
DiagrammeSequence vente
gestionnaire
loop [informations non valides]
demande daffichage du formulaire
verification d infos
get avion()
else
confirmation de vente
validation
get cat()
get all()
<<destroy>>
delete cat()
<<destroy>>
delete avion()
<<create>>
:vente
creer
avion vendu
37
o) Perdre un avion
DiagrammeSequence perte
gestionnaire
getavion()
else
confirmation de perte
validation perte
verifications
get cat()
get-all()
<<destroy>>
del ete avion
avion perdu
37
p) Editer les caractéristiques d’un avion
DiagrammeSequence edition
:IHM :AVION
gestionaire
verifications d infos
verification avion
get avion()
else
validation dedition
enregistrement
37
q) Contrôler visites techniques
visite technique
IHM :avion
gestionnaire
demande-d-avion
saisie-infos
verification infos
get-avion()
alt avion-n-existe-pas
cet avion n-existe pas
else
<<create>>
visite
creer
visite enregistree
37
9. Diagramme de classe
categorie
- nom : char
- typre : char
- description : char
+ get() () : java.lang.Object
...
1..1
correspond
compte 0..*
- solde : char visite subit
+ debiter () : void - date : date
+ crediter () : void + get () : java.lang.Object 1..1 1..*
... apareil appartient
compte
... avion
1..1
debiter/crediter - immat : int
- infotech : char
+ ajouter () : void
+ perdre () : void
+ delete () : void
+ editer () : void
+ get () : java.lang.Object
+ affecter () : char
+ get_nbre_heure () : int
...
1..*
est concerné
0..*
posseder
0..1
mvtcomptable
concerne
- date : Date
- type : char
- libele : char
- nature : char
categori e
compte
- nom : char
- sol de : float - type : char
+ debiter () : voi d - descri ption : char
+ crediter () : voi d
compte
...
1..1
1..1
Port_1
37
IV. DIAGRAMME DE DEPLOIEMENT
.sql
pc client
1..1
.ico
.js
TCP/IP 3306
.css .jpg
.html 1..1
CPU: 2.0 DUAL CORE RAM: 2Go DD:50Go serveur web (apache 2)
Bibliotheque
pour rendre les
pages html en
0..* fichier
.pdf pdf(factures)
TCP/IP 8080
1..1
.php
Fichier de
certification
pour le .crt
protocole
SSL
Serveur web (apache 2) : Il contient des pages web qui seront distribuée au client en
interrogeant un serveur de base de données ;
Serveur de base de données (MySQL 5.5) :il contient la base de données du système ;
PC client :il contient un navigateur qui va se connecter avec le serveur web par des
requêtes HTTP
37
V. DIAGRAMME DE COMPOSANT GLOBAL
gestionCastellet
......
<<component>>
castellet
<<component>>
.
avion
gestionAvion
<<component>> .....
... vol
....
gestionVol
<<component>>
.. pilote Port_2
gestionPilote
<<component>>
compte ......
gestionCompte
37
Conclusion
Parvenu au terme de notre projet portant sur la modélisation d’une application de gestion
automatisée : l’Aéroclub du Castellet qui en son sein regroupe plusieurs besoins fonctionnels
(gestion pilote, gestion vols et gestion avion), il nous a été demandé d’analyser ce projet suivant
la méthode 2TUP (two track unified process) en utilisant le langage UML. Pour amplifier notre
travail nous avons utilisé le logiciel POWER AMC afin de représenter les différents
diagrammes.
37
BIBLIOGRAPHIE
Livre UML2 Joseph Gabay, David Gabay;
Logiciel utiliser: PowerAMC
ii