Vous êtes sur la page 1sur 7

Rappels UML Diagrammes de Classes et Objet

Une note
Chapitre 2 Classe Objet

Modélisation statique • Association = symétrique


Diagramme de classes entre classes = relation, entre objets = lien
• Association nommée avec un sens :
Université <Etudie dans Etudiant
Héberge>

UML VDe 1 UML VDe 2

Ex. Diagramme de classes Ex. de diagramme de classes


• Gestion bancaire
– Un client possède des comptes; il peut effectuer
des virements entre ses comptes
– Un compte peut avoir jusqu’à 4 titulaires
distincts.
– Un compte peut avoir plusieurs CB associées
– Un titulaire signataire unique est associé à la
carte Bleue délivrée avec le compte
– Certaines banques sont regroupées en
consortium, auquel sont associés des
distributeurs (GAB)
UML VDe 3 UML VDe 4

1
Multiplicités Multiplicités : signification
1 (par défaut)
• Elle doit être vraie à tout moment du cycle
0..1 de vie des instances
optionel
m..n entre deux bornes précises
• Induit donc des contraintes lors de
l’instanciation des classes
0..* de 0 à plusieurs (ou * )
1..* de 1 à plusieurs

ATTENTION : ORDRE INVERSE DE MERISE !

UML VDe 5 UML VDe 6

Validité des multiplicités Multiplicités : signification


• Ex.: un étudiant en IUT projette • La multiplicité sera différente selon la
éventuellement de poursuivre ses études sémantique des classes :
Mari 1 Marié avec 1 Epouse
Etudiant 1 <Concerne 0..1 Projet
Poursuite
mari A_un_contrat_ épouse Femme
Homme
0..1 mariage 0..1
À sa création, un étudiant n’a pas nécessairement de projet
de poursuite : multiplicité 0..1 A_été_marié_avec
Homme Femme
Par contre quand on instancie un projet, nécessairement 0..* 0..*
l’étudiant concerné doit être aussi instancié : multiplicité 1 Selon
Selonles
lesrelations
relationsétudiées
étudiéesentre
entreles
lespersonnes
personnesd’un
d’uncouple…
couple…
UML VDe 7 UML VDe 8

2
Liens d’héritage exemple

Véhicule Véhicule Véhicule Carrosserie

Moteur

Camion Voiture Camion Voiture Camion Voiture

Système
Freinage
« SORTE DE »
Héritage des attributs, des méthodes
et des associations ! Etc.
UML VDe 9 UML VDe 10

Héritage multiple Contraintes de classes


• Une classe hérite de plusieurs super-classes. • En cas d’héritage multiple
• Toujours vérifier que l’on respecte le • Discriminant + contrainte {inclusif} ou
principe de substitution : {recouvrement} (overlapping)
– Sous-classes non disjointes
• Ex. véhicules à voile / mécanique
En cas d’héritage, Véhicules nautiques ou terrestres
un objet d’une sous-classe doit pouvoir, à tout • Contrainte {exclusif} ou {disjointe}
moment, remplacer un objet de sa classe parente
– Sous-classes disjointes
sans modifier le comportement du système. • Ex. véhicules diesel, essence ou GPL

Ex.: si on ajoute une sous-classe Voilier à Véhicule • Contrainte {complète} vs. {incomplète}
Véhicule.getMoteur(), Véhicule.Arrêter()… – L’arborescence est définitive ou extensible
UML VDe
Æ Voilier.getMoteur() , Voilier.Arrêter() !! 11 UML VDe 12

3
Agrégation et composition Propriétés des associations
1 • Contraintes portant sur les instances des classes, à
IUT Département
* une extrémité d’une association
• {ordered} ou {ordonné}
Les objets doivent être ordonnés
1
Table 4 Pied Rq : rien sur comment ça sera ordonné (choix conception)
• {frozen} ou {gelé}
Relations non symétriques – Un lien ne peut plus être modifié ni détruit après sa
Agrégation : la partie est partageable, cycle de vie des création
instances non imbriqué • {addOnly}
Composition : la partie est uniquement celle du composé, – On ne peut qu’ajouter un objet, pas le détruire
cycles imbriqués (notamment création et suppression)
UML VDe 13 UML VDe 14

Exemple SIVEX : suivi de mission


• Un polygone contient au moins 3 points EvenementMission
date
1..n concerne 1
SuiviMission
/ dateDepart
• C’est un agrégat de points ordonnés t ype {ordered, addOnly} {frozen} / dateArrivee

t ransmettre()

• Il peut être composé d’une caractéristique archiver()

1 3..*
Polygone Possède> Point IncidentMission

{ordered} descriptif

acquitt er()

1 Caractéristique
0..1 Couleur
IncidentTrajet n 1
Incident Etape
Etape
Texture typeIncidentTrajet
retardEstime
typeIncidentEtape {frozen}

UML VDe Motif 15 UML VDe 16

4
Rôle des classes Attributs dérivés
• On le mentionne au bord de la classe pour • Quand un attribut est déduit à partir des
clarifier une association autres :
Contrainte exprimée en
Personne
Élève> OCL (Object Constraint
Parent 1..2 Nom Language)
Personne
dateNaissance
* /age {age=dateCourante–dateNaissance}
enfant

UML VDe 17 UML VDe 18

Ex. SIVEX Attributs dérivés en Analyse


n concerne 1
Client
(from Clients) • Normalement en analyse, un attribut dérivé
{frozen} 1 Commande
reference
indique :
coutEstime {Commande.poidsEstime =
0..1
typeService
modePaiement
Somme (DescriptionColis.poidsEstime)} – Une contrainte entre 2 propriétés
ConfirmationCmd
dateEnvoi / poidsEstime
1 1..n
DescriptionColis – Un invariant, …
descriptif
n n matiere
poidsEstime
volumeEstime
• On ne se préoccupe pas de ce qui doit être
LivraisonCmd
adresse
EnlevementCmd
adresse calculé par rapport à ce qui doit être stocké
nomContact nomContact
dateProbaLivraison dateProbaEnlevement – Indication d’une relation de dépendance
livraison
– dans l’exemple précédent, le poidsEstimé d’une
enlevement
commande est « dépendant » du poidsEstimé de
0..1 0..1
ses colis
Site
(from Réseau)
UML VDe 19 UML VDe 20

5
Attributs de classe Diagramme d’objets
• Attribut par défaut de tous les objets de la Pays Ville
A_pour_capitale> 1
classe : il apparaît en souligné
Pièce • Diagramme d’instances
Libellé
Canada:Pays Ottawa:Ville
Volume A_pour_capitale>
nbPointsQualité=12
NbContrôlés Suisse:Pays Berne:Ville
A_pour_capitale>
/écart
{écart= nbPointsQualité–NbContrôlés}
UML VDe 21 UML VDe 22

Associations ternaires Associations ternaires


• Entre 3 classes • Classe d’association associée à une relation
• Relations n-aires (n classes) ternaire
• Utilisée lorsqu’on ne peut pas réduire la – Ex.: Un lanceur de baseball peut jouer dans
plusieurs équipes la même année;
relation à la simple « addition » de 2
• une équipe possède plusieurs lanceurs;
relations binaires. • pour chaque combinaison équipe/année, un lanceur
a participé à différents matchs qui ont été gagnés ou
perdus par l’équipe.
• Exemple
– Un programmeur utilise un langage donné pour
un projet informatique donné.
UML VDe 23 UML VDe 24

6
Ex. du Baseball
Un lanceur peut avoir jouer plusieurs Equipe
matchs avec une même équipe au cours un lanceur peut avoir
d’une année; on décompte alors le nbre joué dans 0 ou n
Nom
de matchs gagnés et perdus. équipe sur l’année
Lanceur Ville
Nom * Année

dateNaissance 1..*

Classe de
une équipe peut l’association
avoir engagé Engagement
plusieurs lanceurs ternaire
sur une année Nb victoires
Nb défaites
UML VDe 25

Vous aimerez peut-être aussi

  • c04 Image Maillage
    c04 Image Maillage
    Document5 pages
    c04 Image Maillage
    Cyrille Lamassé
    Pas encore d'évaluation
  • SI Exos
    SI Exos
    Document5 pages
    SI Exos
    Cyrille Lamassé
    Pas encore d'évaluation
  • Formulaire Langage Et Automates
    Formulaire Langage Et Automates
    Document7 pages
    Formulaire Langage Et Automates
    Cyrille Lamassé
    Pas encore d'évaluation
  • c02 Image Math
    c02 Image Math
    Document7 pages
    c02 Image Math
    Cyrille Lamassé
    Pas encore d'évaluation
  • c09 Image Rendurapide
    c09 Image Rendurapide
    Document7 pages
    c09 Image Rendurapide
    Cyrille Lamassé
    Pas encore d'évaluation
  • c01 Image Intro
    c01 Image Intro
    Document4 pages
    c01 Image Intro
    Cyrille Lamassé
    Pas encore d'évaluation
  • c05 Image Illumination
    c05 Image Illumination
    Document6 pages
    c05 Image Illumination
    Cyrille Lamassé
    Pas encore d'évaluation
  • c09 Image Animation
    c09 Image Animation
    Document3 pages
    c09 Image Animation
    Cyrille Lamassé
    Pas encore d'évaluation
  • coursDiagClasses2 10p
    coursDiagClasses2 10p
    Document10 pages
    coursDiagClasses2 10p
    Cyrille Lamassé
    Pas encore d'évaluation
  • LD Progfonct Scheme Cours
    LD Progfonct Scheme Cours
    Document9 pages
    LD Progfonct Scheme Cours
    Cyrille Lamassé
    Pas encore d'évaluation
  • coursUML Introgenerale 16p
    coursUML Introgenerale 16p
    Document16 pages
    coursUML Introgenerale 16p
    Cyrille Lamassé
    Pas encore d'évaluation
  • coursUMLDynamique2 8p
    coursUMLDynamique2 8p
    Document8 pages
    coursUMLDynamique2 8p
    Cyrille Lamassé
    Pas encore d'évaluation
  • PgmationParContratsUML 3p
    PgmationParContratsUML 3p
    Document3 pages
    PgmationParContratsUML 3p
    Cyrille Lamassé
    Pas encore d'évaluation
  • coursPU UML 2004
    coursPU UML 2004
    Document6 pages
    coursPU UML 2004
    Cyrille Lamassé
    Pas encore d'évaluation
  • Naheulbeuk Paladin
    Naheulbeuk Paladin
    Document2 pages
    Naheulbeuk Paladin
    Cyrille Lamassé
    Pas encore d'évaluation
  • Demarche UML
    Demarche UML
    Document10 pages
    Demarche UML
    Cyrille Lamassé
    Pas encore d'évaluation
  • Unified Modeling Language
    Unified Modeling Language
    Document30 pages
    Unified Modeling Language
    Cyrille Lamassé
    Pas encore d'évaluation
  • coursUMLDynamique1 23p
    coursUMLDynamique1 23p
    Document23 pages
    coursUMLDynamique1 23p
    Cyrille Lamassé
    Pas encore d'évaluation
  • Lang C Ayache
    Lang C Ayache
    Document131 pages
    Lang C Ayache
    Cyrille Lamassé
    Pas encore d'évaluation
  • ReflexionsModeleClasses 5p
    ReflexionsModeleClasses 5p
    Document5 pages
    ReflexionsModeleClasses 5p
    Cyrille Lamassé
    Pas encore d'évaluation
  • Maraudeur 20
    Maraudeur 20
    Document116 pages
    Maraudeur 20
    Cyrille Lamassé
    Pas encore d'évaluation
  • coursDiagActivitesUML 3p
    coursDiagActivitesUML 3p
    Document3 pages
    coursDiagActivitesUML 3p
    Cyrille Lamassé
    Pas encore d'évaluation
  • Immcm 2
    Immcm 2
    Document42 pages
    Immcm 2
    Cyrille Lamassé
    Pas encore d'évaluation
  • L'éclaireur 3
    L'éclaireur 3
    Document80 pages
    L'éclaireur 3
    Cyrille Lamassé
    Pas encore d'évaluation
  • Immcm 1
    Immcm 1
    Document31 pages
    Immcm 1
    Cyrille Lamassé
    Pas encore d'évaluation
  • NHB Barbares Regles
    NHB Barbares Regles
    Document12 pages
    NHB Barbares Regles
    Cyrille Lamassé
    Pas encore d'évaluation
  • Untitled
    Untitled
    Document17 pages
    Untitled
    Cyrille Lamassé
    Pas encore d'évaluation
  • TH' Ese
    TH' Ese
    Document196 pages
    TH' Ese
    Cyrille Lamassé
    Pas encore d'évaluation
  • L'éclaireur 1
    L'éclaireur 1
    Document38 pages
    L'éclaireur 1
    Cyrille Lamassé
    Pas encore d'évaluation
  • Untitled
    Untitled
    Document9 pages
    Untitled
    Cyrille Lamassé
    Pas encore d'évaluation