15/03/2022
UML
Langage Unifié pour la Modélisation Objet
Pr Bendahmane
UML -Langage Unifié pour la Modélisation Objet 1
Plan
• Présentation d’UML
• Modèle Fonctionnel
• Modèles Statiques
• Modèles Dynamiques
• UML et les méthodologies de développement logiciel
• Conception centrée sur l ’architecture
2
UML -Langage Unifié pour la Modélisation Objet
1
15/03/2022
Analyse des systèmes
1. Analyser un problème.
2. Proposer un modèle.
3. Concevoir une solution.
4. Réaliser (programmer) la solution
UML -Langage Unifié pour la Modélisation Objet 3
Le cycle de vie itératif
n fois Analyse
Conception
Codage
Grâce à la programmation orientée objet, Tests
on ajoute des propriétés aux classes déjà
introduites, ou on ajoute de nouvelles classes,
sans avoir à modifier l'existant
UML -Langage Unifié pour la Modélisation Objet 4
2
15/03/2022
Présentation d’UML
Principes généraux (1)
• UML n’est pas une méthode
• UML est un langage de modélisation Objet (Concepts,
sémantique, méta-modèle, Notation)
• Indépendance d ’un processus
• Généricité de l’approche
– Indépendante d ’un langage de programmation
– Indépendante d ’un type d ’architecture
– Indépendante d ’une classe de système
• Une capitalisation des bonnes pratiques de la C.O.O.
UML -Langage Unifié pour la Modélisation Objet 5
Présentation d’UML
Principes généraux (2)
• Un langage de modélisation des systèmes
– systèmes logiciels (SI, télécomm..) ou autre (industrie, transport …)
• Objectifs du langage
– pour documenter les besoins, les architectures, la conception, le code...
– pour visualiser (chaque symbole graphique a une sémantique)
– pour spécifier (de manière précise et complète, sans ambiguïté)
– pour construire (les documents nécessaire au bon développement
d'un logiciel orienté objet, génération de code à partir des diagrammes
…)
• Un langage visuel
– Génération de 9 diagrammes (UML 1,3) , 13 diagrammes (UML 2,3)
UML -Langage Unifié pour la Modélisation Objet 6
3
15/03/2022
Présentation d’UML
Principes généraux (4)
• Un système peut être modélisé selon différents points de vue
– Le point de vue des utilisateurs (spécification fonctionnelles)
– Le point de vue de l ’analyste (structurel, logique)
– Le point de vue constructeur (déploiement, matériel)
– Avec les facteurs de qualité nécessaires pour chaque point de
vue
• Le résultat de la modélisation selon un certain point de vue est
un ou plusieurs modèles
• Un modèle est un ensemble de diagrammes
• La définition des vues (Quelles vues ?) et des modèles (quels
diagrammes ?) n’est pas figée
UML -Langage Unifié pour la Modélisation Objet 7
Présentation d’UML
Axes de modélisation d ’un système
Statique (ce que le système EST)
diagramme de classes
diagramme d’objets
diagramme de composants
diagramme de déploiement
diagramme des paquetages
Dynamique
(comment le système EVOLUE) diagramme de structure composite (2,x)
diagramme de séquence Fonctionnel
(ce que le système FAIT)
diagramme de collaboration
diagramme de cas d’utilisation
diagramme d’états-transitions
diagramme de collaboration
diagramme d’activités
diagramme de communication (2,x)
UML -Langage Unifié pour la Modélisation Objet 8
4
15/03/2022
Présentation d’UML
Exemples : Quelques diagrammes
Système
cas d'utilisation
: acteur (intéragissant
Cas d’utilisation avec le Système
message
une fonctionnalité attendue du système par les
différents acteurs. message
message
Diagramme de Classes
objet 1
message
lien exprimant que "objet 2 est une sorte de objet 1"
Diagramme de séquence
lien exprimant que "objet 2
a une relation avec objet 4"
A chaque cas d'utilisation, on peut associer un scénario,
objet 2 objet 4
décrit par un diagramme de séquence.
Un diagramme de séquences montre les interactions
lien exprimant que entre les acteurs et le système selon un point de vue
"objet 2 est temporel pour accomplir une fonctionnalité attendue du
composé de objet 3"
système (un cas d ’utilisation). C’est un ensemble de
objet 3 messages échangés entre les acteurs et le système,
ordonnés chronologiquement.
UML -Langage Unifié pour la Modélisation Objet 9
Plan
• Présentation d’UML
• Modèle Fonctionnel
• Modèles Statiques
• Modèles Dynamiques
• UML et les méthodologies de développement logiciel
• Conception centrée sur l ’architecture
UML -Langage Unifié pour la Modélisation Objet 10
5
15/03/2022
UML
Diagramme des cas d’utilisation
Pr Bendahmane
UML -Langage Unifié pour la Modélisation Objet 11
Modèle Fonctionnel / Les cas d’utilisation
• Définitions
• Intérêt des cas d’utilisations
• Diagramme de cas d’utilisation
• Les acteurs
• Détermination des cas d’utilisations
• Relations entre cas d ’utilisations
UML -Langage Unifié pour la Modélisation Objet 12
6
15/03/2022
Modèle fonctionnel / Les cas d’utilisation
Définitions
• Expression du comportement du système (actions et de
réactions), selon le point de vue de l’utilisateur
• Un cas d’utilisation est une manière spécifique d’utiliser un
système.
• C’est l’image d’une fonctionnalité du système, déclenchée en
réponse à la stimulation d’un acteur externe.
• L’ensemble des cas d'utilisation représentent les
fonctionnalités que le système doit savoir faire.
UML -Langage Unifié pour la Modélisation Objet 13
Modèle fonctionnel / Les cas d ’utilisation
Intérêt des cas d’utilisation(1)
• Constituent un moyen pour recenser les besoins
fonctionnels et les définir
• Utilisés par les utilisateurs finaux pour exprimer leur
attentes et leur besoins: clarifier, filtrer et organiser les
besoins
• Permettent d’impliquer les utilisateurs dès les premiers
stades du développement
• Définir le périmètre du système future
• Constituent une base pour la validation et les tests
fonctionnels
UML -Langage Unifié pour la Modélisation Objet 14
7
15/03/2022
Modèle fonctionnel / Les cas d ’utilisation
Intérêt des cas d’utilisation (2)
Utilisateur C
Ensemble des besoins
Utilisateur A Utilisateur B
Les cas d’utilisation partitionnent Cahier des charges
l’ensemble des besoins d’un
système
UML -Langage Unifié pour la Modélisation Objet 15
Modèle fonctionnel / Les cas d ’utilisation
Exigences
• Recensement des besoins à partir des cahiers de charge ou
les enquêtes menés avec les utilisateurs ;
• Fonctions sont étiquetées par des numéros de référence
Référence fonctions Référence fonctions
R1 Démarrer à partir d’un nœud source R13 Laisser passer
R2 Changer de voie R14 Arrêter la circulation
R3 Changer de route R15 Changer feu de signalisation
R4 Tourner à droite R16 Créer un profil
R5 Tourner à gauche R17 Ecarter un conducteur
R6 Accélérer R18 Résoudre conflit
R7 ralentir R19 Paramétrer cycle
R8 S’ arrêter R20 paramétrer phase
R9 S ’insérer dans a file R21 Définir un comportement au conducteur
R10 Passer une intersection R22 Pénaliser un conducteur
R11 Traverser une route R23 Editer synthèse d’une simulation
R12 Initialiser la simulation
UML -Langage Unifié pour la Modélisation Objet 16
8
15/03/2022
Modèle fonctionnel / Les cas d ’utilisation
Diagramme de cas d’utilisation
• Un Diagramme de cas d ’utilisation représente les fonctions
du système de point de vue de l ’utilisateur.
Ceci est un cas
relation d’utilisation
Acteur Cas d ’utilisation
Ceci est Ceci est
un acteur une 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
UML -Langage Unifié pour la Modélisation Objet 17
Modèle fonctionnel / Les cas d ’utilisation
Diagramme de cas d’utilisation
UML -Langage Unifié pour la Modélisation Objet 18
9
15/03/2022
Modèle fonctionnel / Les cas d’utilisation
Les acteurs(1)
• Un acteur est une personne ou un système qui interagit avec un
système, en échangeant de l’information (en entrée et en sortie)
• On trouve les acteurs en observant les utilisateurs directs du
système, ceux qui sont responsable pour sa maintenance, ainsi
que les autres systèmes qui interagissent avec le système
• Deux catégories d’acteurs:
– Acteur parle au système (Acteur principale)
– Le système parle à un acteur (Acteur secondaire)
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
UML -Langage Unifié pour la Modélisation Objet 19
Modèle fonctionnel / Les cas d’utilisation
Les acteurs(2)
Exemple
Conçoit les schémas
et nomenclatures Récupère les
schémas
Gestion des schémas Récupère les
Développeur contraintes
Définit les contraintes
mécaniques
Gestion des contraintes Responsable
CFAO
Responsable Gestion des jobs Gère la création et
BE les révisions d ’un job
<<dépend>>
Gère la création
et les révisions
des dossiers variantes
Gestion des dossiers
UML -Langage Unifié pour la Modélisation Objet 20
10
15/03/2022
Modèle fonctionnel / Les cas d’utilisation
Détermination des cas d’utilisations
• Quelles sont les tâches de l’acteur ?
• Quelles informations l’acteur doit-il créer, sauvegarder,
modifier, détruire ou simplement lire ?
• L’acteur devra-t-il informer le système de changements
externes ?
• Le système devra-t-il informer l’acteur de conditions
internes au système ?
UML -Langage Unifié pour la Modélisation Objet 21
Exercice 1
UML -Langage Unifié pour la Modélisation Objet 23
11
15/03/2022
Modèle fonctionnel / Les cas d’utilisation
Les relations dans un diagramme cas d’utilisation
Types d’associations entre cas d’utilisation :
• L’inclusion ;
• L’extension ;
• L’héritage (généralisation/spécialisation).
UML -Langage Unifié pour la Modélisation Objet 25
Les relations dans un diagramme cas d’utilisation
L’inclusion :
• Un cas « A» inclut un autre cas d’utilisation «B», indique
que le cas d’utilisation «A» contient obligatoirement le
comportement définit dans «B».
26
UML -Langage Unifié pour la Modélisation Objet
12
15/03/2022
Les relations dans un diagramme cas d’utilisation
L’extension :
• Un cas « A» étend un autre cas d’utilisation «B», signifie
que le cas d’utilisation «B» peut être complémenter à un
certain point avec le comportement de «A» de manière
facultatif.
27
UML -Langage Unifié pour la Modélisation Objet
Les relations dans un diagramme cas d’utilisation
L’héritage (généralisation/spécialisation) :
• Cas d’utilisation fils est une spécialisation du cas
d’utilisation parent.
28
UML -Langage Unifié pour la Modélisation Objet
13
15/03/2022
Les relations dans un diagramme cas d’utilisation
Association entre acteurs :
– Ne peut être qu’une association de généralisation ;
– Signifie que l’acteur « fils » utilise les mêmes cas
d’utilisation de l’acteur « parent ».
29
UML -Langage Unifié pour la Modélisation Objet
Modèle fonctionnel / Les cas d’utilisation
Les relations dans un diagramme cas d’utilisation : exemple
<<include>>
Virement Identification
Client distant <<extend>>
montant > 500
Virement par Internet Vérification solde compte
UML -Langage Unifié pour la Modélisation Objet [PAM-00 p156] 30
14
15/03/2022
Modèle fonctionnel / Les cas d’utilisation
La relation d’inclusion
La relation d’inclusion a un caractère obligatoire, la source
spécifiant à quel endroit le cas d’utilisation cible doit être inclus.
<<include>>
Virement Identification
Client distant <<extend>>
montant > 500
Virement par Internet Vérification solde compte
UML -Langage Unifié pour la Modélisation Objet 31
Modèle fonctionnel / Les cas d’utilisation
La relation d’extension
Dans une relation d’extension entre cas d’utilisation, le cas
d’utilisation source ajoute son comportement au cas d’utilisation
destination (cible). L’extension peut être soumise à une condition.
<<include>>
Virement Identification
Client distant <<extend>>
montant > 500
Virement par Internet Vérification solde compte
UML -Langage Unifié pour la Modélisation Objet 32
15
15/03/2022
Ex1 suite
UML -Langage Unifié pour la Modélisation Objet 33
Exercice 3
UML -Langage Unifié pour la Modélisation Objet
16
15/03/2022
Exercice 4
UML -Langage Unifié pour la Modélisation Objet
Exercice 5
UML -Langage Unifié pour la Modélisation Objet
17