michel tollenaere u.m.l. fondamentaux 1 modélisation objet des données et processus uml (unified...
TRANSCRIPT
![Page 1: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/1.jpg)
Michel Tollenaere U.M.L. fondamentaux1
Modélisation objet des données et processus
UML (Unified Modelling Language)
Michel Tollenaere (INPG)http://www.g-scop.fr/~tollenam/Ipro3
Master 2 Mécanique et Génie MécaniqueParcours : Intégration en Conception de Produit
![Page 2: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/2.jpg)
Michel Tollenaere U.M.L. fondamentaux2
UML : Unified Modelling Language
Historique : Grady Booch 1981, ADA, « Object Oriented Development » James Rumbaugh 1991, OMT, JOOP (Journal of OO programming) Ivar Jacobson, OOSE
sept 97, UML 1.1
Références : http://www.omg.orghttp://uml.free.fr/ site en françaisen France Pierre Alain Muller (U-Mulhouse) et Valtechhttp://uml.developpez.com/
Outils : StarUML 5.0 Objecteering http://www.objecteering.com/us/produits_pe.php
Rational ROSE , http://www.rational.complus de 30 outils de modélisation et de CASE(Computer Aided Software Engineering)
![Page 3: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/3.jpg)
Michel Tollenaere U.M.L. fondamentaux3
TechnologieTechnologie
ArchitectureArchitecture
PERSONNE Num_securite_sociale Nom Prenom Code_postal Telephonen-uplet1 1 76 02 99 167 098 Dupont Marcel 41500 06 08 78 65 88n-uplet2 2 76 04 95 165 008 Durand Elisabeth 31900 02 99 167 098n-uplet3 1 78 12 38 122 4332 Faure Bertrand 38700 04 38 56 45 32n-uplet4 1 68 02 99 5649 876 Dumontier Michel 75016 01 55 45 34 87
STAGE Num_securite_sociale D_type_stageTitren-uplet1 1 76 02 99 167 098 Inge_Adjoint Définition d'une politique Qualitén-uplet2 2 76 04 95 165 008 Inge_Adjoint Mise en place d'un SI pour la maintenancen-uplet3 1 68 02 99 5649 876 EDT Reconfiguration des achatsn-uplet4 2 76 04 95 165 008 EDT Reconfiguration des achatsn-uplet5 1 76 02 99 167 098 PFE Mise en place d'un ERP
propriétés propriétés
Constituant ConstituantConstituantConstituant
Document Adobe
Acrobat
: acteur (intéragissant avec VEGA2)
Système (VEGA2)
message
messagemessage
message
objet 1
objet 3
objet 2 objet 4
lien exprimant que "objet 2 est
composé de objet 3"
lien exprimant que "objet 2 a une relation avec objet 4"
lien exprimant que "objet 2 est une sorte de objet 1"
UML • modelling information systems• at conceptual level• at logical level
![Page 4: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/4.jpg)
Michel Tollenaere U.M.L. fondamentaux4
Booch method OMT
Unified Method 0.8OOPSLA ´95
OOSEOther methods
UML 0.9Web - June ´96
publicfeedback
Final submission to OMG, Sep ‘97
First submission to OMG, Jan ´97
UML 1.1OMG Acceptance, Nov 1997
UML 1.3
UML 1.0UML partners
Creating the UML
UML 2.0 2005UML 2.22009
![Page 5: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/5.jpg)
Michel Tollenaere U.M.L. fondamentaux5
Meyer
Before and after conditions
Harel
StatechartsGamma, et al
Frameworks and patterns,
HP Fusion
Operation descriptions and message numbering
Embley
Singleton classes andhigh-level view
Wirfs-Brock
Responsibilities
Odell
Classification
Shlaer - Mellor
Object lifecycles
Rumbaugh
OMT
Booch
Booch method
Jacobson
OOSE
Contributions to the UML
![Page 6: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/6.jpg)
Michel Tollenaere U.M.L. fondamentaux6
• diagramme de classes
• diagramme d’objets
• diagramme de composants
• diagramme de déploiement
Statique (ce que le système EST)
• diagramme de séquence
• diagramme de collaboration
• diagramme d’états-transitions
• diagramme d’activités
Fonctionnel (ce que le système FAIT)
Dynamique(comment le système EVOLUE)
• diagramme de cas d’utilisation
• diagramme de collaboration
Axes de modélisation d ’un système
![Page 7: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/7.jpg)
Michel Tollenaere U.M.L. fondamentaux7
• Conceptuel• organisationnel• logique• physique
En UML, les mêmes modèles peuvent être utilisés à différents niveaux d’abstraction du plus conceptuel à l’implantation.
On peut donc appliquer des mécanismes de transformation continue.
Niveaux d’abstraction d’un SI
![Page 8: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/8.jpg)
Michel Tollenaere U.M.L. fondamentaux8
• diagramme de cas d’utilisation
• diagramme de classes
• diagramme de séquence
• diagramme de collaboration
• diagramme d’objets
• diagramme d’états-transitions
• diagramme d’activités (nous utiliserons IDEF 0)
• diagramme de composants
• diagramme de déploiement
Les 9 diagrammes d’UML 1.1 (13 diag en 2.0)
![Page 9: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/9.jpg)
Michel Tollenaere U.M.L. fondamentaux9
Diagramme
Classes
Composants DéploiementCollaboration
Etats Transitions Séquence
Objets
Cas d ’utilisationCas d ’utilisation Classes Etats Transitions Séquence
Ceci est un commentaire
Description UML des diagrammes UML
Activité
![Page 10: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/10.jpg)
Michel Tollenaere U.M.L. fondamentaux10
Cas d’utilisation
une fonctionnalité attendue du système par les différents acteurs.
cas d'utilisation
Exemples : Quelques diagrammes
: acteur (intéragissant avec VEGA2)
Système (VEGA2)
message
messagemessage
message
Diagramme de séquence
Chaque cas d'utilisation apparaît comme un scénario, décrit par un ou plusieurs diagrammes de séquence.
Un diagramme de séquences montre les interactions entre les acteurs et le système selon un point de vue
temporel pour accomplir une fonctionnalité attendue du système (un cas d ’utilisation). C’est une ensemble de
messages échangés entre les acteurs et le système, ordonnés chronologiquement.
Diagramme de Classes
objet 1
objet 3
objet 2 objet 4
lien exprimant que "objet 2 est
composé de objet 3"
lien exprimant que "objet 2 a une relation avec objet 4"
lien exprimant que "objet 2 est une sorte de objet 1"
![Page 11: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/11.jpg)
Michel Tollenaere U.M.L. fondamentaux11
Modèle Fonctionnel
• Use Cases = cas d’utilisation• diagramme de collaboration
![Page 12: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/12.jpg)
Michel Tollenaere U.M.L. fondamentaux12
Représente les fonctions du système de point de vue de l ’utilisateur.
Cas d ’utilisationActeur
relation
Eléments du diagramme :
• acteur : un rôle joué par une personne, un service, etc. qui interagit avec le système étudié
• cas d’utilisation : manière spécifique d ’utiliser un système. Image d’une fonctionnalité attendue, déclenchée en réponse à la stimulation d’un acteur
• relations entre cas d’utilisations et acteurs
Ceci est un cas d’utilisation
Ceci est une relation
Ceci est un acteur
Diagramme de cas d’utilisation
![Page 13: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/13.jpg)
Michel Tollenaere U.M.L. fondamentaux13
Trois types de relations :
• relation de communication : entre un acteur et un cas d’utilisation. Exprime l’échange d’informations entre l’acteur et le système.
Déclencher virementclient
• relation d’utilisation : entre deux cas d’utilisation. Exprime que le cas d’utilisation source comprend également le comportement décrit par le cas d’utilisation destinataire (utile pour la factorisation de cas).
Déclencher virement
identification
« use »
• relation d’extension : entre deux cas d’utilisation. Exprime que le cas d’utilisation source étend le comportement du cas d’utilisation cible (utile pour la spécialisation de cas).
Virement par Internet
Déclencher virement
« extend »
Relations entre cas d ’utilisation
![Page 14: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/14.jpg)
Michel Tollenaere U.M.L. fondamentaux14
Source http://uml.free.fr/
![Page 15: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/15.jpg)
Michel Tollenaere U.M.L. fondamentaux15
Récupère les
Acteur humain : il s’agit ici d’un rôle et non d’un acteur identifié.
Acteur non humain : exemple un logiciel de comptabilité ou d’ERP avec lequel le système interagit
Exemple
Définit les contraintes mécaniques
Conçoit les schémas et nomenclatures
Gère la création et les révisions des dossiers variantes
Gère la création et les révisions d ’un job
DéveloppeurGestion des schémas
Responsable
CFAO
Gestion des jobs
Gestion des contraintes
Gestion des dossiers
<<dépend>>
Responsable BE
schémas
Récupère les contraintes
Acteurs : diagramme de cas d’utilisation
![Page 16: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/16.jpg)
Michel Tollenaere U.M.L. fondamentaux16
Interactions entre objets du système avec un accent particulier sur la structure spatiale statique des objets (contexte des objets). Les messages sont numérotés pour indiquer l’ordre des envois.
Permet de situer le contexte du système.
Message : Simple, Asynchrone, Synchrone, Minuté
: ascenseur
: cabine
: porte
: lumière
1 : monter
3 : fermer
2 : allumer
Objet 1
Objet 2
Objet 3
1 : message
3 : message
2 : message
4 : message 5 : message
Diagramme de Collaboration
![Page 17: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/17.jpg)
Michel Tollenaere U.M.L. fondamentaux17
Modèle Statique
• diagramme d ’objets• Diagramme de classes
![Page 18: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/18.jpg)
Michel Tollenaere U.M.L. fondamentaux18
TaVoiture : Voiture
Marque = Renault
Modèle = Megane
Immatriculation = 648DBX38
1re immatriculation = 16 sept 2009
Kilométrage = 125 000
Kilométrage-annuel ? ()
AutreVoiture : Voiture
Marque = Renault
Modèle = Megane
Immatriculation = 648DBX38
1re immatriculation = 16 sept 2007
Kilométrage = 125 000
Kilométrage-annuel ? ()
Objet : une entité concrète avec une identité bien définie qui encapsule un état et un comportement. L’état est représenté par des valeurs d’attribut et des associations, le comportement par des méthodes.
Un objet est une instance d’une classe.
Classe : une description d’un ensemble d’objets qui partagent les mêmes attributs, opérations, méthodes, relations et contraintes.
Une classe peut posséder des attributs ou des méthodes «de classe».
Objets et classes
Voiture
Marque : chaîne
Modèle : chaîne
Immatriculation : chaîne (8)
1re immatriculation : date
Kilométrage : entier
Kilométrage-annuel ? ( )
Kilometrage_annuel_moyen ( )
MaVoiture : Voiture
Marque = Renault
Modèle = Megane
Immatriculation = 648DBX38
1re immatriculation = 16 sept 1997
Kilométrage = 125 000
Kilométrage-annuel ? ()
![Page 19: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/19.jpg)
Michel Tollenaere U.M.L. fondamentaux19
Structure statique d’un système, en termes d’objets et de liens entre ces objets.
Ces objets et ces liens possèdent des attributs qui possèdent des valeurs.
Un objet est une instance de classe et un lien est une instance d’association.
Personne
âge : entier
patron
collaborateur
1
*
Diagramme de classes
Nom de l’objet : Classe
Attributs = valeurs
Liens diagramme d’objets -/- diagramme de classes
Etienne : personne
âge = 35
Jean-Luc : personne
âge = 25
patron
Diagramme d ’objets
collaborateur
emploie>
Abs
trac
tionConcrétisation
![Page 20: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/20.jpg)
Michel Tollenaere U.M.L. fondamentaux20
Structure statique d’un système, en termes de classes et de relations entre ces classes.
Nom de classe
Attributs
Opérations ()
Voiture
Couleur
Cylindrée
Vitesse max
Démarrer ()
Accélérer ()
Freiner ()
Visibilité : trois niveaux de visibilité pour les attributs et les opérations:
• public (+) : élément visible à tous les clients de la classe
• protégé ( #) : élément visible aux sous-classes de la classe
• privé (-) : élément visible à la classe seule
Syntaxe:
• nom_attribut : type_attribut = valeur initiale
• nom_opération (nom_argument : type_argument = valeur_par_défaut, …) : type_retourné
exemple :
Diagramme de classes
![Page 21: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/21.jpg)
Michel Tollenaere U.M.L. fondamentaux21
Nommage des associations
véhiculeconstructeur
<construit par
Construire>fabricant
produit
véhiculepersonneConduit>conducteur véhicule
Possède>propriétaire véhicule
<Transportepassager véhicule
entreprisepersonneDirige>directeur société
Possède>actionnaire société
<Emploieemployé employeur
![Page 22: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/22.jpg)
Michel Tollenaere U.M.L. fondamentaux22
Personne SociétéEmployeur
Employé 1
0..*
1
0 .. 1
m .. n
* ou 0 .. *
1 .. *
Un et un seul (obligatoire)
Zéro ou un (optionnel)
De m à n (entiers)
quelconque
Au moins 1
Multiplicité des associations
![Page 23: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/23.jpg)
Michel Tollenaere U.M.L. fondamentaux23
Agrégation:
• Association transitive : si voiture est composée de moteur et si moteur est composé de courroie alors voiture est composée de courroie
• Association non systémique : si voiture est composée de moteur, moteur ne peut pas être composé de voiture
• Association qui peut être réflexive : exemple, une fonction peut être composée d’autres fonctions, un sous ensemble d’autres sous ensembles.
Rôle et multiplicité :
• Une classe a un rôle dans une association.
• Les rôles portent une information de multiplicité précisant le nombre d ’associations auquel une instance d ’objet peut être associée. Les multiplicités les plus courantes sont : 1 / 0..1 / m..n / * /0..* / 1..*
Associations
![Page 24: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/24.jpg)
Michel Tollenaere U.M.L. fondamentaux24
Classe-association
Permet de «qualifier» plus finement une association
Commande
+Num-commande+date+PoidsTotal
SociétéTransport
+NumSIRET+NomCommercial+TypeTransport
Véhicule
+NumImmatriculation+ChargeUtile
Chauffeur
+Nom+Prénom+Adresse+TypePermis
conduit
0..1
1...2
affrète
1..*
0..1
traite
*
0..1
SociétéTransport
+NumSIRET+NomCommercial+TypeTransport
Véhicule
+NumImmatriculation+ChargeUtile+PermisRequis
Chauffeur
+Nom+Prénom+Adresse+TypePermis
+KilometrageAnnée()
conduit
0..*
0..*
affrète 1..*
0..1PeriodeConduite
+t0+tf+kilometrage
![Page 25: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/25.jpg)
Michel Tollenaere U.M.L. fondamentaux25
Placement des attributs et des associations
Diplôme
TravailEtudiant
Chambre
Réalise >
Note- valeur
Numéro
Mention
0..* 0..*
1
0..1
0..*
1
![Page 26: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/26.jpg)
Michel Tollenaere U.M.L. fondamentaux26
Contraintes
comptepersonne
{Ordonnée}
Est_titulaire>
10 .. *
classepersonne{Sous ensemble}
0 .. *
0 .. *
Parent d ’élève
Délégués
universitépersonne
{Ou-exclusif}
0 .. *
0 .. *
Enseignants
Etudiants
![Page 27: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/27.jpg)
Michel Tollenaere U.M.L. fondamentaux27
Agrégation
ChapitreLivre
{Ordonnée}1
1 .. *
Paragraphe
{Ordonnée}1 .. *
![Page 28: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/28.jpg)
Michel Tollenaere U.M.L. fondamentaux28
Composition
TêteHomme 1 1
La composition traduit une dépendance existentielle forte.
![Page 29: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/29.jpg)
Michel Tollenaere U.M.L. fondamentaux29
Outil Simulation
Créer_Projet()Modifier_Projet()
ModifierParamètre_Projet()Créer_Problème()Modifier_Problème()
ModifierParamètre_Problème()Créer_Etude()Modifier_Etude()
ModifierParamètre_Etude()FaireAppelAUneAncienne_Etude()Conclure_Etude()Créer_Cycle()Modifier_Cycle()ModifierPramètre_Cycle()Rajouter_Entité()Conclure_Cycle()
1..*
Projet
NomProjetNuméroPDMDateDebutProjet
Projet()Tes_infos?()Nouv_Paramètres()Créer_Problème()
Problème
Titre_ProblèmeObjectifDelaiPrixNiveauPrioriteFicheEtudeConclusion
Problème()Tes_infos?()Nou_Paramètres()Créer_Etude()
Etude
Titre_EtudeNomPièceButEtudeTypeEtudeConclusion
Etude()Tes_infos()Nouv_Paramètres()Créer_Cycle()Ajouter_Conclusion()
11..*
1..*
1
0..*
EstResoluPar
1
0..*
1..*
11..* Induit
1..*
LesProblèmes LesProjets
1..*1..*LesEtudes
0..1
ComplétéePar
0..*
0..1
0..*
0..1
Suivant
0..*
0..1
0..*
Exemple de diagramme de classes
![Page 30: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/30.jpg)
Michel Tollenaere U.M.L. fondamentaux30
Modèle Statique Passage d’un diagramme de classe UML
à un modèle relationnel pour SGBD
![Page 31: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/31.jpg)
Michel Tollenaere U.M.L. fondamentaux31
Relation / Table
Produit (Réf-produit, Libellé-p, Prix-vente-p)
Fournisseur (Code-fournisseur, Adresse, Téléphone)
Règle 0 & 1: attribut et classe
produitRéf-produitLibellé-pPrix-vente-p
fournisseurCode-fournisseurAdresseTéléphone
ClassePassa
ge du modèle statique
UML au relationnel :
les associations
![Page 32: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/32.jpg)
Michel Tollenaere U.M.L. fondamentaux32
Produit (Réf-produit, Libellé-p, Prix-vente-p, Code-fournisseur, remise)
Fournisseur (Code-fournisseur, Adresse, Téléphone)
Relation / Table
Règle 2 : relation de multiplicité (1)
fournisseurCode-fournisseurAdresseTéléphone
Classe
< fournir 1produitRéf-produitLibellé-pPrix-vente-p
Passage du modèle sta
tique UML au
relationnel :
les associations
Remise- valeur
![Page 33: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/33.jpg)
Michel Tollenaere U.M.L. fondamentaux33
Classe
Produit (Réf-produit, Libellé-p, Prix-vente-p, remise, Code-fournisseur)
Fournisseur (Code-fournisseur, Adresse, Téléphone)
Relation / Table
Règle 3 : relation de multiplicité (0-1)
fournisseurCode-fournisseurAdresseTéléphone
< fournir 0-1produitRéf-produitLibellé-pPrix-vente-p
Passage du modèle sta
tique UML au
relationnel :
les associations
*
Remise- valeur
![Page 34: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/34.jpg)
Michel Tollenaere U.M.L. fondamentaux34
Produit (Réf-produit, Libellé-p, Prix-vente-p)
Fournisseur (Code-fournisseur, Adresse, Téléphone)
Relation / Table
Fournir (Réf-produit, Code-fournisseur, remise)
Règle 4 : relation de multiplicité (0..*) (1..*)
fournisseurCode-fournisseurAdresseTéléphone
< fournir 0..*ou1..*
produitRéf-produitLibellé-pPrix-vente-p
ClassePassa
ge du modèle statiq
ue UML au
relationnel :
les asso
ciations
Remise- valeur
![Page 35: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/35.jpg)
Michel Tollenaere U.M.L. fondamentaux35
Père (nom-fils, nom-père)
Relation / Table
Personne
nom
père de >
Classe
0..*
1
Règle 5 : relation réflexive orientée
Passage du modèle sta
tique UML au
relationnel :
les associations
![Page 36: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/36.jpg)
Michel Tollenaere U.M.L. fondamentaux36
Personne
nom
frère de
Classe
Personne (Nom)Frère (nom, nom)
Relation / Table
Règle 6 relation réflexive symétrique
Passage du modèle sta
tique UML au
relationnel :
les associations
Attention, la relation étant transitive, des traitements devront être associés au modèle.
![Page 37: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/37.jpg)
Michel Tollenaere U.M.L. fondamentaux37
Modèle Dynamique
• Diagramme d’état transition• Diagramme de séquences
![Page 38: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/38.jpg)
Michel Tollenaere U.M.L. fondamentaux38
Diagramme d ’états-Transition
Description des séquences possibles d’états et d ’actions par lesquelles un objet peut passer tout au long de sa vie. Ces séquences résultent de sa réaction à des événements discrets.
Eléments du diagramme :
• état : situation d’un objet à un moment donné
• transition : connexion entre deux états, permettant le passage d’un état à l’autre
• événement : occurrence d ’une situation donnée dans le domaine du système qui déclenche la transition
• garde : condition booléenne qui valide ou non le déclenchement d’une transition lors de l’occurrence d’un événement (cas de plusieurs transitions exclusives déclenchées par le même événement)
• action : opération exécutée pendant que l’objet est dans un état donné ou lorsque une transition est déclenchée (correspondant à des opérations déclarées dans la classe de l’objet destinataire). Une action d’un état est dite activité quand l’opération associée a un temps d’exécution non négligeable (do : nom_opération) (exemple notification)
Etat A
action
do:opération
Etat BEvénement [garde] / Action
…. ….
état initial état final
![Page 39: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/39.jpg)
Michel Tollenaere U.M.L. fondamentaux39
Personne
age Société0..11..*
Les personnes ne possèdent pas toutes un emploi et se trouvent, à un moment donné, dans un des états suivants : en activité, au chômage, à la retraite
L’état d ’une personne donnée est déterminé selon son âge et la présence ou non d ’un lien vers une société.
Diagramme d ’états-Transition
Exemple
Diagramme de classes Diagramme d ’états-transitions
En activité
do: travailler
Au chômage
A la retraite
Perte d ’emploi
Embauche
Plus de 60 ans
Plus de 60 ans
![Page 40: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/40.jpg)
Michel Tollenaere U.M.L. fondamentaux40
Diagramme de Séquences
Pour chaque cas d’utilisation , nous pouvons décrire un ou plusieurs scénario, décrit chacun par un diagramme de séquences.
Diagramme de séquence : exprime la séquence des interactions entre objets du système selon un point de vue temporel, pour réaliser le cas d’utilisation.
![Page 41: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/41.jpg)
Michel Tollenaere U.M.L. fondamentaux41
Diagramme de Séquences
Objet 1 Objet 2
1 : [condition A] message
2 : message synchrone
4 : message
6 : [condition B] message
9 : message asynchrone
7 : message réflexif
Evénement / Communication
entre objets
Objet 33 : message de création
5 : message
8 : message de destruction
Période d’activité de l’objet
![Page 42: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/42.jpg)
Michel Tollenaere U.M.L. fondamentaux42
• message synchrone: l’émetteur est bloqué et attend que l’appelé ait fini de traiter le message (message 1)
message asynchrone: l’émetteur n’est pas bloqué et peut continuer son exécution (message 6)
• Un message réflexif indique souvent un point d ’entrée dans une activité de plus bas niveau qui s ’exerce entre objets contenus par l ’objet composite (message 7)
• Un message dont les délais de transmission sont non négligeables est matérialisé par une flèche oblique (message 4)
• Messages conditionnés : flèches prenant leur origine au même instant avec des conditions mutuellement exclusives (messages 1 et 6)
• Possibilité de compléments d ’informations sous forme de texte libre ou de pseudo-code à côté du diagramme
• Période d ’activité : temps pendant lequel un objet effectue une action, directement ou par l ’intermédiaire d ’un autre objet sous-traitant
• Des contraintes temporelles peuvent être exprimées en graduant la ligne de vie (pour dire par exemple: « 10 secondes plus tard »)
Diagramme de Séquences
Cas particuliers
![Page 43: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/43.jpg)
Michel Tollenaere U.M.L. fondamentaux43
Diagramme de Séquences
Exemple
AppelantLigne
téléphonique Appelé
décroche
tonalité
numérotation
sonnerieindication de sonnerie
décroche
allô
![Page 44: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/44.jpg)
Michel Tollenaere U.M.L. fondamentaux44
Gestion des composants externes: Création composant constance
: BE
système
demande création
vérifier droit utilisateur
afficher dialogue de création [droit = OK]
Saisie code composant - Valider
rechercher infos dans fichier export de
constanceaffichage infos relatifs au composant [composant existe]
affichage dialogue sans infos [composant inexistant]
valider création
création du composant dans VEGA
fabricantréf-fabricantdésignation
saisie manuelle infos relatifs au composant
![Page 45: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/45.jpg)
Michel Tollenaere U.M.L. fondamentaux45
Gestion des composants externes: Mise à jour composant constance
Solution N°1 (non retenue): Avec validation par l’opérateur Système
: BE
fichier export de constance
arrivée (mise à disposition)
créer collection des composants modifiés
afficher collection
sélectionner composants
valider modification
mise à jour des composants sélectionnés dans VEGA
rechercher composants constance dans VEGA non
marquésrechercher les composants
comparer fichier par rapport à composants
fournir composants (désignation / fabricants / réf_fabricant)
marquer composants modifiés
informer de l'arrivée de la collection
demander collection
démarquer les composants sélectionnés
![Page 46: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/46.jpg)
Michel Tollenaere U.M.L. fondamentaux46
fichier export de constance
Système
arrivée (mise à disposition)
mise à jour composants dans
rechercher les composants dans fichier d'export
fournir composants (désignation / fabricants / réf_fabricant)
comparer fichier par rapport aux composants constance dans VEGA [ si composant
present dans fichier constance]
fabricantdésignationréf-fabricant
rechercher dans VEGA les composants constance
enregistrer les modifications dans un fichier Log
Gestion des composants externes: Mise à jour composant constance
Solution N°2 (retenue): avec validation par l’opérateur
![Page 47: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/47.jpg)
Michel Tollenaere U.M.L. fondamentaux47
Modèle Organisationnel de Traitements (MOT) de Merise
• Enchaînement des opérations ou taches• condition d’enchaînement• acteur affecté (qui ?)• période de traitement (quand ?)
![Page 48: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/48.jpg)
Michel Tollenaere U.M.L. fondamentaux48
![Page 49: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/49.jpg)
Michel Tollenaere U.M.L. fondamentaux49
![Page 50: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/50.jpg)
Michel Tollenaere U.M.L. fondamentaux50
Diagramme de Classes Métier
comp. externe comp. externe
plan CIP<<rep>>
plan mécanique<<rep>>
comp. interne
CdC<<rep>>
structure
schema<<rep>>
plan CIM<<rep>>
composant
Spec de test<<rep>>
Accessoires
sous-ensembleEM
<<rep>>
comp. mécanique
caractéristiques<<rep>>
plan-mécanique<<rep>>
comp. interne
CdC<<rep>>
CIP
plan<<rep>>
conditionnement
Master<<rep>>
soft
étiquette vierge
etiquette
comp. électronique
Micro-processeurCarte electronique
notice<<rep>>
Documentation
![Page 51: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/51.jpg)
Michel Tollenaere U.M.L. fondamentaux51
Modélisation de S.I.Étude de cas
Compagnie aérienne : CRM
ENSGI – MSI 2ème annéeMichel Tollenaere
http://gilco.inpg.fr/~tollenaere/msi/MSI2A-etude-cas.ppt
Inspiré deUML par la pratique
2ème EditionPascal Roque
Groupe Eyrolles, 2003ISBN : 2-212-11246-7
![Page 52: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/52.jpg)
Michel Tollenaere U.M.L. fondamentaux52
ÉTUDE D’UN SYSTÈME DE GESTION DE LA RELATION CLIENT POUR UN RESEAU D’AGENCES DE VOYAGES
Un réseau d’agences de voyages désire améliorer son système d’information pour la relation avec sa clientèle. Il a été convenu de commencer ce travail par la gestion de la composante « transport aérien ».Les fonctions principales attendues du système sont :-- permettre une sélection dans l’offre de vols et de places disponibles.-- assurer les réservations pour les passagers.-- permettre aux compagnies aériennes partenaires d’ouvrir ou de fermer des vols-- mettre en place des tableaux de bord permettant de mieux connaître les clients.
Les principaux utilisateurs visés par le système sont :-- les hôtesses dans les agences qui sont en contact avec les clients.-- les opérateurs de guichets dans les aéroports qui délivrent les cartes d’embarquement aux passagers-- les responsables du réseau d’agences qui désirent disposer de tableaux de bord sur l’activité-- les clients et les passagers via Internet-- les compagnies aériennes partenaires
Les interviews des experts métier ont permis de résumer leur connaissance du domaine sous la forme des phrases suivantes :1. Des compagnies aériennes proposent différents vols.2. Un vol est ouvert à la réservation et refermé 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 d’arrivée.7. Un vol a un jour et une heure de départ, et un jour et une heure d’arrivée.8. Un vol peut comporter des escales dans des aéroports.9. Une escale a une heure d’arrivée et une heure de départ.10. Chaque aéroport dessert une ou plusieurs villes.
![Page 53: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/53.jpg)
Michel Tollenaere U.M.L. fondamentaux53
Fonctions et acteurs : Cas d’utilisation
réserver
Hôtesse d’agence
Fonctions : permettre une sélection dans l’offre de vols et de places disponibles.-- assurer les réservations pour les passagers.-- permettre aux compagnies aériennes partenaires d’ouvrir ou de fermer des vols-- mettre en place des tableaux de bord permettant de mieux connaître les clients.
Délivrer carte embarquement
Guichet aéroport
Ouvrir et fermer des vols
Compagnie
Consulter disponibilités
Les principaux utilisateurs visés par le système sont :-- les hôtesses dans les agences qui sont en contact avec les clients.-- les opérateurs de guichets dans les aéroports qui délivrent les cartes d’embarquement aux passagers-- les responsables du réseau d’agences qui désirent disposer de tableaux de bord sur l’activité-- les clients et les passagers via Internet-- les compagnies aériennes partenaires
Consulte tableaux de bord
Responsable agence
« extend »
Réserver par Internet
Consulter disponibilités par
Internet
Client et passager
« extend »
![Page 54: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/54.jpg)
Michel Tollenaere U.M.L. fondamentaux54
Modèle statique : classes et objets
1. Des compagnies aériennes proposent différents vols.
VolCompagnie
propose>1.. ? 1 .. *
nom numéro
![Page 55: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/55.jpg)
Michel Tollenaere U.M.L. fondamentaux55
Modèle statique : classes et objets
2. Un vol est ouvert à la réservation et refermé sur ordre de la compagnie.
VolCompagnie
propose>1 1 .. *
nom NuméroÉtat : (ouvert, fermé)
affréteur
![Page 56: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/56.jpg)
Michel Tollenaere U.M.L. fondamentaux56
Modèle statique : classes, états - transitions
2. Un vol est ouvert à la réservation et refermé sur ordre de la compagnie.
VolCompagnie
propose>1 1 .. *
nom
affréteur
NuméroÉtat : (ouvert, fermé)
Ouvert état
initial
Fermé
Ouverture par compagnie
état final
Fermeture par compagnie
Diagramme d’état – transition de la classe « Vol »
Dia
gram
me
d’ét
at –
tran
siti
onD
iagr
amm
e de
cla
sses
OuvrirRéservation ()FermerRéservation ()
![Page 57: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/57.jpg)
Michel Tollenaere U.M.L. fondamentaux57
Modèle dynamique : diagramme de collaboration
VolCompagnie
propose>1 1 .. *
nom
affréteur
Numéro
Dia
gram
me
de c
olla
bora
tion
Dia
gram
me
de c
lass
es
ouvrirRéservation ()fermerRéservation ()
AirFrance : Compagnie
AF506 : Vol
AF519 : Vol
AF714 : Vol
1 : ouvrirRéservation ()
2 : fermerRéservation ()
3 : ouvrirRéservation ()
![Page 58: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/58.jpg)
Michel Tollenaere U.M.L. fondamentaux58
Continuons d’affiner la classe « Vol »
VolCompagnie
propose>1
1 .. *nom
affréteur
numérodateDépartheureDépartdateArrivéeheureArrivée
Ouvert état
initial
Fermé
Ouverture par compagnie
état final
Fermeture par compagnie
Diagramme d’état – transition de la classe « Vol »
ouvrirRéservation ()fermerRéservation ()
6. Un vol a un aéroport de départ et un aéroport d’arrivée.7. Un vol a un jour et une heure de départ, et un jour et une heure d’arrivée.8. Un vol peut comporter des escales dans des aéroports.9. Une escale a une heure d’arrivée et une heure de départ.10. Chaque aéroport dessert une ou plusieurs villes.
![Page 59: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/59.jpg)
Michel Tollenaere U.M.L. fondamentaux59
Les aéroports
Vol
21 .. *
numérodateDépartheureDépartdateArrivéeheureArrivéeaeroportdépartaeroportArrivée
ouvrirRéservation ()fermerRéservation ()
6. Un vol a un aéroport de départ et un aéroport d’arrivée.
{ordered}
utilise>
Aeroport
nompays
![Page 60: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/60.jpg)
Michel Tollenaere U.M.L. fondamentaux60
Les aéroports (suite)
Vol
1
1 .. *
numérodateDépartheureDépartdateArrivéeheureArrivée
ouvrirRéservation ()fermerRéservation ()
6. Un vol a un aéroport de départ et un aéroport d’arrivée.
part-de>
Aeroport
nompays
arrive-à>
1
AeroportArrivée
Aeroportdépart
1 .. *
![Page 61: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/61.jpg)
Michel Tollenaere U.M.L. fondamentaux61
Les aéroports (fin)
Vol
11 .. *numérodateDépartheureDépartdateArrivéeheureArrivée
ouvrirRéservation ()fermerRéservation ()
6. Un vol a un aéroport de départ et un aéroport d’arrivée.
départ>
Aeroport
nompays
11 .. * arrivée>
![Page 62: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/62.jpg)
Michel Tollenaere U.M.L. fondamentaux62
Les villes
Vol
11 .. *numérodateDépartheureDépartdateArrivéeheureArrivée
ouvrirRéservation ()fermerRéservation ()
départ>
Aeroport
nompays
11 .. * arrivée>
10. Chaque aéroport dessert une ou plusieurs villes.
Ville
nompays
1.. *?dessert>
![Page 63: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/63.jpg)
Michel Tollenaere U.M.L. fondamentaux63
Association « dessert » (multiplicité)
Aeroport
nompays
10. Chaque aéroport dessert une ou plusieurs villes.
Ville
nompays
1.. **
dessert>
Charles de Gaulle : Aeroport Paris :Ville
Orly : Aeroport
Metz-nancy-lorraine : Aeroport
Metz :Ville
Nancy :Ville
Passage par les diagrammes
d’objets
![Page 64: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/64.jpg)
Michel Tollenaere U.M.L. fondamentaux64
ou…. factorisation des attributs
Aeroport Ville
1.. **
dessert>
Lieu-geo
nompaysdecalage-horaireAffiche(carte)
Affiche(carte)Affiche(carte)
![Page 65: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/65.jpg)
Michel Tollenaere U.M.L. fondamentaux65
Vol
10 .. *numérodateDépartheureDépartdateArrivéeheureArrivée
ouvrirRéservation ()fermerRéservation ()
départ>
Aeroport
nompays
10 .. * arrivée>
*0 .. * faitEscale>
InfosEscale
heureDépartheureArrivée
Les escales
{ordered}
![Page 66: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/66.jpg)
Michel Tollenaere U.M.L. fondamentaux66
Vol
10 .. *numérodateDépartheureDépartdateArrivéeheureArrivée
ouvrirRéservation ()fermerRéservation ()
départ>
Aeroport
nompays
10 .. *arrivée>
*0 .. *faitEscale>
InfosEscaleheureDépartheureArrivée
Ville
nompays
1.. **dessert>
Compagnie
propose>1
1 .. *
nom
affréteur
Récapitulons (1)
Ouvert état
initial
Fermé
Ouverture par compagnie
état final
Fermeture par compagnie
Diagramme d’état – transition de la classe « Vol »
+
{ordered}
![Page 67: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/67.jpg)
Michel Tollenaere U.M.L. fondamentaux67
Vol
numérodateDépartheureDépartdateArrivéeheureArrivéecapacité
ouvrirRéservation ()fermerRéservation ()
Réservation
concerne>0..*
1annuler ()confirmer ()
Les réservations
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.
Passagernomprénomtéléphonee-mailnum-cartenb-pts
créditer-pts (res)
concerne>
1
![Page 68: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/68.jpg)
Michel Tollenaere U.M.L. fondamentaux68
Vol
numérodateDépartheureDépartdateArrivéeheureArrivéecapacité
ouvrirRéservation ()fermerRéservation ()
Réservation
concerne>0..*
1annuler ()confirmer ()
Les réservations
3. Un client peut réserver un ou plusieurs vols, pour des passagers différents.
Passagernomprénomtéléphonee-mailnum-cartenb-pts
créditer-pts (res)
conc
erne
>
1
0..*
Clientnomtéléphonee-mailFaxadresse
totalfacturé ()
effectue>
1 0..*
date
![Page 69: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/69.jpg)
Michel Tollenaere U.M.L. fondamentaux69
Vol
10 .. *numérodateDépartheureDépartdateArrivéeheureArrivéecapacité
ouvrirRéservation ()fermerRéservation ()
départ>Aeroport
10 .. *arrivée>
*0 .. *faitEscale>
InfosEscale
heureDépartheureArrivée
Ville
1.. **dessert>
Compagnie
propose>
1
1 .. *
nom
affréteur
Récapitulons (2)
Ouvert
état initial
Fermé
Ouverture par compagnie
état final
Fermeture par compagnie
Diagramme d’état – transition de la classe « Vol »
+
Réservation conc
erne
>
0..*
1
annuler ()confirmer ()
Passagernomprénomtéléphonee-mailnum-cartenb-pts
créditer-pts (res)
conc
erne
>
1
0..*
Clientnomtéléphonee-mailFaxadresse
totalfacturé ()
effectue>
1 0..*
date
Lieu-geonompaysdecalage-horaire
{ordered}
![Page 70: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/70.jpg)
Michel Tollenaere U.M.L. fondamentaux70
Dynamique de la réservation
Vol
numérodateDépartheureDépartdateArrivéeheureArrivéecapacité
ouvrirRéservation ()fermerRéservation ()Réservation
conc
erne
>
0..*
1
annuler ()confirmer ()
Passager
nomprénomtéléphonee-mailnum-cartenb-ptscréditer-pts (res)
conc
erne
>
1
0..*
date
Délivrer carte embarquement
Guichet aéroport
Guichet aéroport
Liste passagers (n° vol)
Diagramme de séquences
Passager
Vol Réservation Passager
Présente identité
passagers (etat =
confirmé)
Délivrer carte
Si {état = attente paiement ; Demande
paiement}
Passager-id ()
Liste passagers ()
Passer (état = embarqué)
Sélectionne réservation
Passager-id
![Page 71: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/71.jpg)
Michel Tollenaere U.M.L. fondamentaux71
Dynamique de la réservation
Etat – transition de « réservation »
Guichet aéroport
Liste passagers (n° vol)
Passager
Vol Réservation Passager
Présente identité
passagers (etat =
confirmé)
Délivrer carte
Si {état = attente paiement ; Demande
paiement}
Passager-id ()
Passer (état = embarqué)
Sélectionne réservation
Vol
numérodateDépartheureDépartdateArrivéeheureArrivéecapacité
ouvrirRéservation ()fermerRéservation ()Réservation
conc
erne
>
0..*
1
annuler ()confirmer ()
Passager
nomprénomtéléphonee-mailnum-cartenb-pts
créditer-pts (res)
conc
erne
>
1
0..*
date
Passager-id
Liste passagers ()
Demandée
état initial
Confirmée
par client
état final
par compagnie
Diagramme d’état – transition de la classe « Réservation »
Payée
par aéroport embarquée
Annulée Jvol - 8
![Page 72: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/72.jpg)
Michel Tollenaere U.M.L. fondamentaux72
![Page 73: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/73.jpg)
Michel Tollenaere U.M.L. fondamentaux73
Implémentation dans MSAccess
Notez les pertes sémantiques sur : • les états – transitions, • les associations {ordered}, • l’héritage ville-aéroport ……. etc
![Page 74: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/74.jpg)
Michel Tollenaere U.M.L. fondamentaux74
Analyse de la classe « Vol »
• comporte de nombreuses responsabilités
• est elle en troisième forme normale ?
• la clef primaire « Num-vol » est elle correcte ?
• parle-t-on des vols « réguliers » ou affrétés ?
Vol
10 .. *numérodateDépartheureDépartdateArrivéeheureArrivéecapacité
ouvrirRéservation ()fermerRéservation ()
départ>Aeroport
10 .. *arrivée>
*0 .. *faitEscale>
InfosEscaleheureDépartheureArrivée
*
Compagnie
propose>
1
1 .. *
nom
affréteur
Réservation conc
erne
>
0..*
1
annuler ()confirmer ()
Passagernomprénomtéléphonee-mailnum-cartenb-pts
conc
erne
>
1
Clientnomtéléphonee-mailFaxadresse
totalfacturé ()
effectue>
1 0..*
date
{ordered}
Domaine de l’offre de volsl’offre de volsDomaine des réservations
![Page 75: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/75.jpg)
Michel Tollenaere U.M.L. fondamentaux75
Analyse de la classe « Vol »
• Les éléments de l’offre sont plus stables que ceux des réservations
Vol-générique
10 .. *numéro
heureDépart
heureArrivée
capacité
départ>Aeroport
10 .. *arrivée>
*0 .. *faitEscale>
InfosEscaleheureDépartheureArrivée
*
Compagnie
propose>
1
1 .. *
nom
affréteur
Réservationconcerne>
0..*
1
annuler ()confirmer ()
Passagernomprénomtéléphonee-mailnum-cartenb-pts
conc
erne
>
1
Clientnomtéléphonee-mailFaxadresse
totalfacturé ()
effectue>
1 0..*
date
{ordered}
Domaine de l’offre de volsl’offre de vols
Vol
dateDépart
dateArrivée
ouvrirRéservation ()fermerRéservation ()
Est-dé
crit-p
ar>
1
0..*
Domaine des réservations
== > les responsabilités sont mieux établies
![Page 76: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/76.jpg)
Michel Tollenaere U.M.L. fondamentaux76
Implémentation dans MSAccess
Reste à traiter l’aspect dynamique : • les requètes, • les formulaires et interfaces, • ……. etc
![Page 77: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/77.jpg)
Michel Tollenaere U.M.L. fondamentaux77
Traitement de l’embarquement
Guichet aéroport
Liste passagers (n° vol)
Passager
Vol Réservation Passager
Présente identité
passagers (etat =
confirmé)
Délivrer carte
Si {état = attente paiement ; Demande
paiement}
Passager-id ()
Passer (état = embarqué)
Sélectionne réservation
Vol
numérodateDépartheureDépartdateArrivéeheureArrivéecapacité
ouvrirRéservation ()fermerRéservation ()Réservatio
n conc
erne
>
0..*
1
annuler ()confirmer ()
Passagernomprénomtéléphonee-mailnum-cartenb-ptscréditer-pts (res)
conc
erne
>
1
0..*
date
Passager-id
Liste passagers ()
Demandée état
initial
Confirmée
par
client état
final
par compag
nie
Diagramme d’état – transition de la classe « Réservation »
Payée
par aéroport
embarquée
Annulée
Jvol - 8
![Page 78: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/78.jpg)
Michel Tollenaere U.M.L. fondamentaux78
Traitement de l’embarquement
Guichet aéroport
Liste passagers (n° vol)
Passager
Vol Réservation Passager
Présente identité
passagers (etat =
confirmé)
Délivrer carte
Si {état = attente paiement ; Demande
paiement}
Passager-id ()
Passer (état = embarqué)
Sélectionne réservation
Vol
numérodateDépartheureDépartdateArrivéeheureArrivéecapacité
ouvrirRéservation ()fermerRéservation ()Réservatio
n conc
erne
>
0..*
1
annuler ()confirmer ()
Passagernomprénomtéléphonee-mailnum-cartenb-ptscréditer-pts (res)
conc
erne
>
1
0..*
date
Passager-id
Liste passagers ()
Demandée état
initial
Confirmée
par
client état
final
par compag
nie
Diagramme d’état – transition de la classe « Réservation »
Payée
par aéroport
embarquée
Annulée
Jvol - 8
![Page 79: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/79.jpg)
Michel Tollenaere U.M.L. fondamentaux79
Délivrer carte embarquement
Guichet aéroport
![Page 80: Michel Tollenaere U.M.L. fondamentaux 1 Modélisation objet des données et processus UML (Unified Modelling Language) Michel Tollenaere (INPG) tollenam/Ipro3](https://reader035.vdocuments.fr/reader035/viewer/2022062622/551d9dbc497959293b8df201/html5/thumbnails/80.jpg)
Michel Tollenaere U.M.L. fondamentaux80
Pays de Loire
ENS Cachan
ENSAM
Ile de France
Auvergne
Toulouse
Rhône Alpes Ouest
Lorraine
Nord Pas de calais
Dauphiné Savoie
Franche comté
Centrale Paris