Vous êtes sur la page 1sur 12

Conception de systèmes d’information

Cours 7 – UML, la suite de la suite

František Kardoš

fkardos@labri.fr
Classes et objets

La notion de classe de UML correspond (grosso-modo) à la


notion d’entité de MERISE. Un objet correspond alors à une
occurence d’une entité.

Une classe est la description formelle d’un ensemble d’objets


ayant une sémantique et des caractéristiques communes.
Un objet est une instance d’une classe. C’est une entité
concrète dotée d’une identité, d’un état et d’un comportement
que l’on peut invoquer.
Diagramme de classes

est parmi les diagrammes statiques le plus utilisé.

Éléments :
I classe (entité)
I attribut
I opération
I association
I aggrégation
I composition
I généralisation / spécialisation
I cardinalités
I ...
Diagramme de classes : attributs

Pour un attribut, on peut spécifier


I le type :
I nom : String
I dateNaissance : Date
I adresse : Adresse
I la cardinalité :
I visite : Visite[1..*]
I la valeur par défaut :
I solde : Euros = 0
I une contrainte :
1. nom: String {nom -> notEmpty()}
Diagramme de classes : attributs

Pour distinguer l’attribut identifiant, on peut remarquer {id}


comme propriété.
I id: String {id}
D’autres propriétés applicables :
I readOnly
I ordered
I unique
I ...
Diagramme de classes : opérations

On peut spécifier encore :


I type de paramètre(s) :
I executeQuery(sql : String): ResultSet
I propriétés :
I getPublicKey() : PublicKey {query}
I check (directive : String) {redefines
status}
Diagramme de classes : attributs et opérations

Un attribut / une opération peut être statique :


I c’est un attribut / une opération de la classe elle-même,
pas de ces objets
I il/elle est le/la même pour tout objet de la classe
Exemple : opération create()
Diagramme de classes : cardinalités

Pour une patte d’association avec une cardinalité 1..* ou * on


peut spécifier les propriétés
I ordered
I unique
pour dire, s’il s’agit d’une liste ou d’un ensemble, et pour dire si
les occurences peuvent se répéter ou pas.
Par défaut : unique, mais pas ordered – un ensemble.

Raccourci : bag veut dire ni ordered ni unique.


Diagramme de classes : exemple
Classeurs

I « enumerate » – liste de possibles valeurs


I « dataType » – définition d’un type composé
I « interface »
I « utility » – que des attributs et des opérations
statiques
I ...
Agrégation et Composition

Une agrégation est une association qui représente une relation


d’inclusion structurelle ou comportementale d’un élément dans
un ensemble. (appartenir à)

La composition, également appelée agrégation composite,


décrit une contenance structurelle entre instances. Ainsi, la
destruction de l’objet composite implique la destruction de ses
composants. (faire part de)

Exemple : Entreprise – Camion – Moteur


Diagramme de classes : navigabilité d’associations

Patte d’association navigable :


I un objet de la classe de l’autre coté peut utiliser les
opérations le l’objet associé de la classe pointée.
Patte d’association non-navigable :
I un objet de la classe de l’autre coté ne peut pas utiliser les
opérations le l’objet associé de la classe pointée.
Par défaut : la navigabilité n’est pas spécifiée.

Vous aimerez peut-être aussi