La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

U.M.L. O. BOUSSAID Page : 1 Modélisation en UML : Diagramme des classes Soit le cas Réservation de vols dans une agence de voyage 1° Des compagnies aériennes.

Présentations similaires


Présentation au sujet: "U.M.L. O. BOUSSAID Page : 1 Modélisation en UML : Diagramme des classes Soit le cas Réservation de vols dans une agence de voyage 1° Des compagnies aériennes."— Transcription de la présentation:

1 U.M.L. O. BOUSSAID Page : 1 Modélisation en UML : Diagramme des classes Soit le cas Réservation de vols dans une agence de voyage 1° Des compagnies aériennes proposent différents vols. 2° Un vol est ouvert à la réservation et fermé sur ordre de la compagnie. 3° Un client peut réserver un ou plusieurs vols, pour des passagers différents. 4° Une réservation concerne un seul vol, et un seul passager. 5° Une réservation peut être annulée ou confirmée. 6° Un vol a un aéroport de départ et un aéroport darrivée. 7° Un vol a un jour et une heure de départ et un jour et une heure darrivée. 8° Un vol peut comporter des escales dans des aéroports 9° Une escale a une heure darrivée et une heure de départ. 10° Chaque aéroport dessert une ou plusieurs villes

2 U.M.L. O. BOUSSAID Page : 2 Modélisation en UML : Diagramme des classes CompagnieAerinneVol Propose 1..* Modélisation de la phrase : 1° Des compagnies aériennes proposent différents vols. CompagnieAerienne et Vols sont 2 objets métiers : 2 classes Un vol est réalisé par une seule compagnie mais partagé par plusieurs affréteurs CompagnieAerinneVol Propose 1..* affréteur 1..*

3 U.M.L. O. BOUSSAID Page : 3 Modélisation en UML : Diagramme des classes Modélisation de la phrase : 2° Un vol est ouvert à la réservation et fermé sur ordre de la compagnie. Tout objet peut avoir un état (diagramme détats). Dans un diagramme de classes tout concept dynamique est modélisé en opération. Il faut représenter la 2° phrase par 2 opérations : ouvrirReservation( ) et fermerReservation ( ) Dans quelle classe ? Responsabilité dune classe CompagnieAerinne Propose 1..* affréteur 1..* Vol état (ouvert, fermé) CompagnieAerinne Propose 1..* affréteur 1..* Vol ouvrirVol( ) fermerVol( ) Les opérations sont déclarées dans lobjet dans lequel elles doivent sexécuter Les autres pourront déclencher ces opérations par envoi de messages Le classe CompagnieAerienne a une association avec la classe vol.

4 U.M.L. O. BOUSSAID Page : 4 Modélisation en UML : Diagramme des classes Modélisation des phrases : 7° Un vol a un jour et une heure de départ et un jour et une heure darrivée. Les dates et les heures de départ et darrivée ne représentent que des valeurs : attributs. CompagnieAerinne Propose 1..* affréteur 1..* Vol ouvrirVol( ) fermerVol( ) dateDepart heureDepart dateArrivee heureArrivee Pour savoir si un élément doit être représenté en attribut ou en objet : Sil n y a que sa valeur qui est intéressante : cest plutôt un attribut. Si plusieurs questions peuvent concerner lélément, alors il faut le représenter en objet.

5 U.M.L. O. BOUSSAID Page : 5 Modélisation en UML : Diagramme des classes Modélisation des phrases : 6° Un vol a un aéroport de départ et un aéroport darrivée. Modélisation peu parlante. Par quoi peut-on représenter lélément Aéroport ? 3 réponses sont envisageables : 1.Soit avec une classe et une association de multiplicité 2 { ordered} 2 Vol ouvrirVol( ) fermerVol( ) dateDepart heureDepart dateArrivee heureArrivee aeroportDepart aeroportArivvee Aéroport nom

6 U.M.L. O. BOUSSAID Page : 6 Modélisation en UML : Diagramme des classes Modélisation des phrases : 6° Un vol a un aéroport de départ et un aéroport darrivée. Modélisation non correcte. Tout aéroport peut être de départ et darrivée. 2. Soit avec 2 classes 1 Vols ouvrirReservation( ) fermerReservation( ) dateDepart heureDepart dateArrivee heureArrivee aeroportDepartr aeroportArivvee Aéroport nom AeroportDepart AeroportArrivee 1

7 U.M.L. O. BOUSSAID Page : 7 Modélisation en UML : Diagramme des classes Modélisation des phrases : 6° Un vol a un aéroport de départ et un aéroport darrivée. Le rôle de chaque association précise son sens. 2. Soit avec 2 associations 1 Vol ouvrirVol( ) fermerVol( ) dateDepart heureDepart dateArrivee heureArrivee Aéroport Nom … 1 Départ Arrivée

8 U.M.L. O. BOUSSAID Page : 8 Modélisation en UML : Diagramme des classes Modélisation des phrases : 10° Chaque aéroport dessert une ou plusieurs villes Aéroport dessert 1..* Ville 0..* Si on considère que desservir une ville signifie laéroport le plus proche, il n en y a quun : la multiplicité est de 1 Si on considère que desservir une ville signifie les aéroports dans un rayon de 35 km : la multiplicité est de 0..* On ne peut pas savoir la multiplicité de Aéroport

9 U.M.L. O. BOUSSAID Page : 9 Modélisation en UML : Diagramme des classes Modélisation des phrases : 8° Un vol peut comporter des escales dans des aéroports 9° Une escale a une heure darrivée et une heure de départ. Vol ouvrirVol( ) fermerVol( ) dateDepart heureDepart dateArrivee heureArrivee Aéroport nom 1 1 Depart Arrivee Escale heureArrivee heureDepart 0..* Une escale a les propriétés heure darrivée et heure de départ, cest donc un objet. Quelles sont alors les multiplicités entreVols et Escale, entre Escale et Aeroport et entre Aeroport et Vols ? 0..* 1..* 1 0..*

10 U.M.L. O. BOUSSAID Page : 10 Modélisation en UML : Diagramme des classes Modélisation des phrases : 8° Un vol peut comporter des escales dans des aéroports 9° Une escale a une heure darrivée et une heure de départ. Escale a peu dinformations propres. Elle nest quune partie de Vol. On peut la représenter comme une spécialisation de Aéroport. Mais elle nest pas totalement un aéroport. La meilleure solution serait de la modéliser comme une classe dassociation entre et Vols et Aéroport. Vol ouvrirVol( ) fermerVol( ) dateDepart heureDepart dateArrivee heureArrivee Aéroport nom 1 1 Départ Arrivée Escale heureArrivee heureDepart Escale 0..* {Ordered}

11 U.M.L. O. BOUSSAID Page : 11 Modélisation en UML : Diagramme des classes Modélisation des phrases : 4° Une réservation concerne un seul vol, et un seul passager. 5° Une réservation peut être annulée ou confirmée. La réservation et le passager sont 2 concepts métier : 2 classes dobjets Un réservation concerne un seul vol et un seul passager: donc 2 associations entre Vol etRéservation et entre Réservation et Passager. La 5° phrase se traduit par lajout de 2 opérations annuler( ) et confirmer( ) dans Reservation. Vol ouvrirVol( ) fermerVol( ) dateDepart heureDepart dateArrivee heureArrivee Passager 1 1 concerne Réservation Annuler( ) Confirmer( ) concerne

12 U.M.L. O. BOUSSAID Page : 12 Modélisation en UML : Diagramme des classes Modélisation des phrases : 3° Un client peut réserver un ou plusieurs vols, pour des passagers différents. Il faut discerner un client dun passager a effectué 0..* Vol Passager 1 1 concerne Réservation Annuler( ) Confirmer( ) concerne Client 1

13 U.M.L. O. BOUSSAID Page : 13 Modélisation en UML : Diagramme des classes Le diagramme des classe complet est : Vol ouvrirVol( ) fermerVol( ) dateDepart heureDepart dateArrivee heureArrivee Aéroport nom 1 1 départ arrivée InfosEscale heureArrivee heureDepart escale 0..* {ordered} Ville 0..* Passager 1 concerne Réservation Annuler( ) Confirmer( ) Client a effectué 0..* 1 1 concerne CompagnieAerinne Propose 1..* nom Prénom adresse téléphone nom nom Prénom nom date numéro

14 U.M.L. O. BOUSSAID Page : 14 Modélisation en UML : Diagramme des classes Diagramme des classe complet et annoté InfosEscale heureArrivee heureDepart Vol ouvrirVol( ) fermerVol( ) dateDepart heureDepart dateArrivee heureArrivee Aéroport nom 1 1 départ arrivée escale 0..* {ordered} Ville 0..* Passager 1 concerne Réservation Annuler( ) Confirmer( ) Client a effectué 0..* 1 1 concerne Propose * nom Prénom adresse tél nom Prénom nom {frozen} CompagnieAerinne nom numéro {reservation.date <= vol.dateDepart} date numéro

15 U.M.L. O. BOUSSAID Page : 15 Modélisation en UML : Diagramme des classes Le diagramme des classe complet devient : InfosEscale heureArrivée heureDépart métaclasse VolGenerique ouvrirVol( ) fermerVol( ) jour heureDépart heureArrivée /durée périodevalidité Aéroport nom 1 1 départ arrivée escale 0..* {ordered} Ville 0..*1 concerne Réservation Annuler( ) Confirmer( ) Client a effectué 0..* 1 1 concerne Propose nom Prénom adresse téléphone Passager nom Prénom nom {frozen} CompagnieAérienne nom numéro {reservation.date <= vol.dateDepart} date numéro Vol ouvrirVol( ) fermerVol( ) dateDépart dateArrivée {frozen}{AddOnly} décrit 0..*1 1..* 0..* propose Affréteur

16 U.M.L. O. BOUSSAID Page : 16 Modélisation en UML : Diagramme des classes Le diagramme des classes peut être réorganisé en packages InfosEscale heureArrivee heureDepart metaclasse VolGenerique ouvrirVol( ) fermerVol( ) jour heureDepart heureArrivee /durée periodevalidite Aéroport nom 1 1 départ arrivée escale 0..* {ordered} Ville 0..*1 concerne Réservation Annuler( ) Confirmer( ) Client a effectué 0..* 1 1 concerne Propose * nom Prénom adresse tééphonel Passager nom Prénom nom {frozen} CompagnieAerinne nom numéro {reservation.date <= vol.dateDepart} date numero Vol ouvrirVol( ) fermerVol( ) dateDepart dateArrivee {frozen}{AddOnly} décrit 0..*1 1..* 0..* propose Affréteur

17 U.M.L. O. BOUSSAID Page : 17 Modélisation en UML : Diagramme des classes Réduire la dépendance mutuelle afin daugmenter la modularité et lévolutivité dune application 0..*1 concerne { frozen } Réservation Annuler( ) Confirmer( ) date numéro Réservations Vol ouvrirVol( ) fermerVol( ) dateDepart dateArrivee Vol

18 U.M.L. O. BOUSSAID Page : 18 Modélisation en UML : Diagramme des classes Réservations Réservation Annuler( ) Confirmer( ) Client a effectué 0..* 1 1 concerne nom Prénom adresse téléphone Passager nom Prénom {frozen} date numéro Vol InfosEscale heureArrivee heureDepart metaclasse VolGenerique ouvrirVol( ) fermerVol( ) jour heureDepart heureArrivee /durée periodevalidite Aéroport nom 1 1 départ arrivée escale 0..* {ordered} Ville Propose nom CompagnieAerinne nom numéro Vol ouvrirVol( ) fermerVol( ) dateDepart dateArrivee {frozen}{AddOnly} decrit 0..*1 1..* 0..* propose Affréteur 0..* 1 concerne {frozen}

19 U.M.L. O. BOUSSAID Page : 19 Modélisation en UML : Diagramme des classes Généralisation et réutilisation On veut élargir ce domaine aux voyages par bus que des transporteurs assurent. Un voyage en bus à une ville de départ et un ville darrivée avec des dates et des heures associées. Un trajet peut comporter des arrêts dans des villes intermédiaires. Un client peut réserver un ou plusieurs voyages pour un ou plusieurs passagers VoyageEnBus OuvrirVoyage( ) fermerVoyage( ) dateDepart dateArrivee VoyagesBus ReservationsBus ReservationBus Annuler( ) Confirmer( ) date numéro 0..*1 concerne { frozen }

20 U.M.L. O. BOUSSAID Page : 20 Modélisation en UML : Diagramme des classes concerne VoyagesBus InfosArret heureArrivee heureDepart VoyageEnBus ouvrirVoyage( ) fermerVoyage ( ) dateDepart heureDepart dateArrivee heureArrivee /durée 1 1 départ arrivée arrêt 0..* {ordered} Propose Voyagiste nom référence Ville nom ReservationsBus 0..* 1..* concerne Client nom Prénom adresse téléphone Passager nom Prénom {frozen} ReservationBus Annuler( ) Confirmer( ) date numéro a effectué 0..* 1 { frozen }

21 U.M.L. O. BOUSSAID Page : 21 Modélisation en UML : Diagramme des classes Fusion des 2 modèles 1. Il faut isoler les classes communes dans des packages 2. Il faut factoriser les propriétés communes AVION Vols ReservationVols BUS ReservationBus VoyagesBus Lieux

22 U.M.L. O. BOUSSAID Page : 22 Modélisation en UML : Diagramme des classes Il faut isoler les classes communes dans des packages Vol ( from Vols ) ReservationVol (from ReservationsVols) ReservationBus (from ReservationsBus) VoyageEnBus ( from VoyagesBus ) concerne {frozen} 1 1 Réservations 0..*1 concerne Client nom Prénom adresse tél Passager nom Prénom Réservation Annuler( ) Confirmer( ) date numéro {frozen} a effectué 0..*1 Classe abstraite

23 U.M.L. O. BOUSSAID Page : 23 Modélisation en UML : Diagramme des classes VolsVoyagesBus Lieux Package réutilisable ReservationsBus Réservations ReservationsVols Packages spécialisésPackage généralisé


Télécharger ppt "U.M.L. O. BOUSSAID Page : 1 Modélisation en UML : Diagramme des classes Soit le cas Réservation de vols dans une agence de voyage 1° Des compagnies aériennes."

Présentations similaires


Annonces Google