CHAPITRE VI : MODELISATION ET CONCEPTION
VI.1. Introduction à la notation UML
UML (Unified Modeling Language, traduisez "langage de
modélisation objet unifié") est né de la fusion
des trois méthodes qui ont le plus influencé la
modélisation objet au milieu des années 90 : OMT, Booch et
OOSE.
Issu "du terrain" et fruit d'un travail d'experts reconnus, UML
est le résultat d'un large consensus. De très nombreux acteurs
industriels ont adopté UML et participent à son
développement. UML est un langage d'analyse et de conception,
indépendant de tout processus de développement et s'adapte aux
différents types de systèmes.
UML propose neuf (09) diagrammes qui sont classés en
deux catégories : les diagrammes structurels (vue statique) et les
diagrammes comportementaux (vue dynamique).
Vue
|
Statique
|
Dynamique
|
diagrammes
|
Cas d'utilisation
Classes
Objets
Composants déploiement
|
Séquence
Collaboration
Activités
Etats-transitions
|
Dans étude, nous n'utiliserons que trois diagrammes
à savoir : le diagramme des cas d'utilisation, des classes, et de
séquences.
Le diagramme des cas d'utilisations
Les cas d'utilisations, appelés aussi use case
permettent de modéliser les fonctionnalités du système. Le
diagramme de cas d'utilisation fait ressortir les acteurs et les fonctions
d'interfaces offertes par le système.
Un acteur est une personne ou une machine agissant sur le
système dans le but de modifier ou de consulter.
Les cas d'utilisations sont une description du comportement du
système du point de vue utilisateur.
C'est la représentation d'une fonctionnalité,
déclenchée en réponse à une stimulation du
système.
Cas d'utilisation_1
Acteur
Cas d'utilisation_2
Acteur : entité externe qui agit sur le
système
Cas d'utilisation : ensemble des actions
effectuées par le système en réponse à une action
d'un acteur.
Diagramme de classe
Le diagramme de classe représente la structure du
système sous forme de classes. Une classe est une description abstraite
d'un ensemble d'objets ayant :
- des propriétés similaires ;
- un comportement commun ;
- des relations communes avec d'autres objets ;
- des sémantiques communes.
Un attribut d'une classe une propriété commune aux
objets d'une classe.
Une opération définit une fonction appliquée
à des objets d'une classe.
L'accessibilité aux attributs et aux opérations est
spécifiée par trois niveaux de protections :
- public (+) : accès à partir de toute
entité interne ou externe à la classe ; - privé (-) :
accès à partir des opérations de la classe ;
- protégé (#) : accès à partir de la
classe ou des sous-classes.
Association : exprime une connexion
sémantique bidirectionnelle entre deux classes.
Cardinalité : précise le nombre d'instances
participant à l'association.
Généralisation : relation entre un
élément de description générale (superclasse) et un
élément de description plus spécifique (sous-classe).
Multiplicité
|
I.1.1.1.1 Explication
|
1
|
Un et un seul
|
0..1
|
Zéro ou un
|
M..N
|
De M à N
|
*
|
De zéro à plusieurs
|
0..*
|
De zéro à plusieurs
|
1..*
|
De un à plusieurs
|
N
|
Exactement N
|
Classe_2
Classe_1
0..1
0..*
- Operation_1 () : Type_1 # Operation_2 () : Type_2 +
Operation_3 () : Type_3
- Operation_1 () : Type_1 # Operation_2 () : Type_2 +
Operation_3 () : Type_3
+ Attribut_1 - Attribut_2 # Attribut_3
: Type_1 : Type_2 : Type_3
+ Attribut_1 - Attribut_2 # Attribut_3
: Type_1 : Type_2 : Type_3
Message_3
Message reflexif
Diagramme de séquence
Les diagrammes de séquence permettent de
représenter des collaborations entre objet du point de vue temporel. On
y met l'accent sur la chronologie des envois de messages.
Il y a deux catégories de messages :
- synchrone : l'émetteur est bloqué jusqu'au
traitement effectif du message ; - asynchrone : l'émetteur n'est pas
bloqué et peut poursuivre son exécution.
Illustration
Objet1
|
|
Obj et2
|
Message_1
|
|
|
|
Periode d'activation
|
Message_2
|
|
|