Introduction à la modélisation UML2
Introduction à la modélisation UML2
Chapitre 1
Modélisation objet UML2
Positionnement deet méthode
l’unité
d’enseignement dans le Language
cursus
MODÉLISATION OBJET
Unified Modeling
Modèle de
2 Introduction
Introduction Approche Orientée Objet
d’enseignement de la deuxième année DSI:
•Vues d’un système
conception
•Diagrammes UML
Base de données
UML2
Enseignante : S. Mnif
Cultures et Langues
Enseignante : Salima MNIF Positionnement de la matière dans l’unité d’enseignement
Contact : [Link]@[Link]
concernée:
Modélisation Objet (UML2)
Programmation Objet
Atelier de Programmation Objet
Semestre 1 Institut Supérieur des Etudes Technologiques de Nabeul
Chapitre 1
Chapitre 1
Modélisation objet UML2 Modélisation objet UML2
q Fiche Matière Modèle et méthode de
Unified Modeling Language q Fiche Matière Modèle et méthode de
Unified Modeling Language
3 Introduction
Introduction
conception
Approche Orientée Objet •Vues d’un système 4 Introduction
Introduction
conception
Approche Orientée Objet •Vues d’un système
•Diagrammes UML •Diagrammes UML
O
Maîtriser la lecture, la conception et la compréhension des modèles d’un système d’information en Condensé du cours Forme de base
utilisant le langage UML2.
Cours interactif Optionnel
Travaux dirigés
Travaux personnalisés Optionnel, pas forcément avec correction (home work)
Mini projet Avancement au fur et à mesure du cours, est évalué
Conception, UML2, Modélisation objet, OMG
1
9/18/2024
Chapitre 1 Plan de la matière
Chapitre 1
Modélisation objet UML2
Modélisation objet UML2
q Fiche Matière Modèle et méthode de
Unified Modeling Language
q Chapitre 1 : Intorduction
Modèle et méthode de àApproche
la mmodélisation objet et
Unified Modeling Language
5 Introduction
Introduction Approche Orientée Objet •Vues d’un système 6 Introduction
Introduction Orientée Objet •Vues d’un système
Enseignante : S. Mnif
q Chapitre 7:Diagramme d’états-transitions
q Chapitre 8 : Diagramme d’activités
q Chapitre 9 : Diagramme de composants
q Chapitre 10 : Diagramme de déploiement
Chapitre 1
MODÉLISATION OBJET
et UML
UML2 Modèle et méthode de
Unified Modeling Language
8 Introduction
Introduction
conception
Approche Orientée Objet •Vues d’un système
•Diagrammes UML
2
9/18/2024
Chapitre 1 Introduction à la modélisation objet Introduction à la modélisation objet
Chapitre 1
et UML et UML
Unified Modeling Language Unified Modeling Language
Modèle et méthode de Modèle et méthode de
9 Introduction
Introduction
conception
Approche Orientée Objet •Vues d’un système 10 Introduction
Introduction
conception
Approche Orientée Objet •Vues d’un système
•Diagrammes UML •Diagrammes UML
Lorsqu’un développeur passe directement à l’étape En 1995, une étude du Standish Group sur les
Classes: 2ème année DSI
Enseignante : S. Mnif
initiales,
Problématique: 52,7% avaient subi des dépassements en
coût et délai,
Echec: 31,1% ont été purement abandonnés durant leur
développement.
Chapitre 1
et UML et UML
Unified Modeling Language Unified Modeling Language
Modèle et méthode de Modèle etetméthode
Modèle méthode de
11 Introduction
Introduction
conception
Approche Orientée Objet •Vues d’un système 12 Introduction
de conception
conception
Approche Orientée Objet •Vues d’un système
•Diagrammes UML •Diagrammes UML
Modélisation
Classes: 2ème année DSI
Enseignante : S. Mnif
Implémentation
3
9/18/2024
Chapitre 1 Introduction à la modélisation objet Introduction à la modélisation objet
Chapitre 1
et UML et UML
Unified Modeling Language Unified Modeling Language
Modèle etetméthode
Modèle méthode de Modèle etetméthode
Modèle méthode de
13 Introduction Approche Orientée Objet •Vues d’un système 14 Introduction Approche Orientée Objet •Vues d’un système
de conception
conception
•Diagrammes UML
de conception
conception
•Diagrammes UML
Enseignante : S. Mnif
phénomène en éliminant les détails qui n'influencent pas son
permet de mieux répartir les tâches comportement.
réduit les coûts et les délais. Il reflète ce que le concepteur croit important pour la
assure un bon niveau de qualité et une maintenance compréhension et la prédiction du phénomène modélisé.
efficace.
Le choix du modèle a une influence sur les solutions
obtenues.
Chapitre 1
et UML et UML
Unified Modeling Language Unified Modeling Language
Modèle etetméthode
Modèle méthode de Modèle etetméthode
Modèle méthode de
15 Introduction Approche Orientée Objet •Vues d’un système 16 Introduction Approche Orientée Objet •Vues d’un système
de conception
conception
•Diagrammes UML
de conception
conception
•Diagrammes UML
Enseignante : S. Mnif
Assurer une maintenance efficace du SI. complexité, etc.
Un formalisme (langage) et des types de documents
(modèles), qui facilitent la communication,
l’organisation et la vérification,
4
9/18/2024
Chapitre 1 Introduction à la modélisation objet Introduction à la modélisation objet
Chapitre 1
et UML et UML
Unified Modeling Language Unified Modeling Language
Modèle etetméthode
Modèle méthode de Modèle etetméthode
Modèle méthode de
17 Introduction Approche Orientée Objet •Vues d’un système 18 Introduction Approche Orientée Objet •Vues d’un système
de conception
conception
•Diagrammes UML
conception
de conception •Diagrammes UML
Enseignante : S. Mnif
Méthodes systémiques (dites de deuxième génération)
comme MERISE, SSADM, ... : séparation Faciliter la réutilisation,
données/traitements, niveaux conceptuels, organisationnels, Simpli fier les t ran sformati ons entre l e niveau
physiques. conceptuel et l’implantation.
Méthodes objets (dites de troisième génération) comme
OMT, OOA, OOD, Hood, OOSE, OOM, Fusion, ..
Chapitre 1
et UML et UML
Unified Modeling Language Unified Modeling Language
Modèle et méthode de Approche Orientée Modèle et méthode de Approche Orientée
19 Introduction Approche Orientée Objet •Vues d’un système 20 Introduction Approche Orientée Objet •Vues d’un système
conception Objet conception Objet
•Diagrammes UML •Diagrammes UML
Enseignante : S. Mnif
précise des caractéristiques (attributs et méthodes) communes à toute ses utilisateurs. Ce sera le rôle des
une famille d'objets et qui permet de créer (instancier) des objets méthodes.
possédant ces caractéristiques
Classe ou “moule” d. Agrégation: c’est une relation entre deux classes, spécifiant
que les objets d'une classe sont des composants de l'autre classe.
objet3
Une relation d'agrégation permet donc de définir des objets
4..4
composés d'autres objets. Voiture Roue
objet1 objet2
5
9/18/2024
Chapitre 1 Introduction à la modélisation objet Introduction à la modélisation objet
Chapitre 1
et UML et UML
Unified Modeling Language Unified Modeling Language
Modèle et méthode de Approche Orientée Modèle et méthode de Approche Orientée
21 Introduction Approche Orientée Objet •Vues d’un système 22 Introduction Approche Orientée Objet •Vues d’un système
conception Objet conception Objet
•Diagrammes UML •Diagrammes UML
Classes: 2ème année DSI
Enseignante : S. Mnif
sont propres. On parle aussi de super classe et de sous classe
Chapitre 1
et UML et UML
Unified Modeling Language Unified Modeling Language
Modèle et méthode de Approche Orientée Modèle et méthode de Approche Orientée
23 Introduction Approche Orientée Objet •Vues d’un système 24 Introduction Approche Orientée Objet •Vues d’un système
conception Objet conception Objet
•Diagrammes UML •Diagrammes UML
Classes: 2ème année DSI
Enseignante : S. Mnif
6
9/18/2024
Chapitre 1 Introduction à la modélisation objet Introduction à la modélisation objet
Chapitre 1
et UML et UML
Unified ModelingLangage
Unified Modeling Language Unified Modeling Language
Modèle et méthode de Modèle et méthode de
25 Introduction Approche Orientée Objet § Vues
•Vues d’un
d’un système
système 26 Introduction Approche Orientée Objet •Vues d’un système
conception § Diagrammes
conception
•Diagrammes UMLD’UML •Diagrammes UML
Classes: 2ème année DSI
Enseignante : S. Mnif
UML n'est pas une méthode, il a été proposé afin de standardiser
les produits du développement (modèles, notations, diagrammes)
sans standardiser le processus de développement.
L’OMG (Object Management Group) a proposé le premier standard
en 1997, basée principalement sur les méthodes OOD (de Booch),
OMT (de Rumbaugh) et OOSE (de Jacobson).
Chapitre 1
et UML et UML
Unified ModelingLangage
Unified Modeling Language Unified ModelingLangage
Unified Modeling Language
Modèle et méthode de Modèle et méthode de
27 Introduction Approche Orientée Objet § Vues
•Vues d’un
d’un système
système 28 Introduction Approche Orientée Objet § Vues
•Vues d’un
d’un système
système
conception § Diagrammes
conception § Diagrammes
•Diagrammes UMLD’UML •Diagrammes UMLD’UML
Enseignante : S. Mnif
• Septembre 2001 : Version d’UML 1.4.
• Mars 2003 : UML version 1.5.
• Juillet 2005 : UML 2.0
• Octobre 2007 : UML 2.1.2
• Janvier 2009 : UML 2.2
• Mai 2010 : UML 2.3
• Juillet 2011 : UML 2.4.1
• Décembre 2015 : UML 2.5.1
Source : [Link]
7
9/18/2024
Chapitre 1 Introduction à la modélisation objet Introduction à la modélisation objet
Chapitre 1
et UML et UML
Unified ModelingLangage
Unified Modeling Language Unified ModelingLangage
Unified Modeling Language
Modèle et méthode de Modèle et méthode de
29 Introduction Approche Orientée Objet § Vues
•Vues d’un
d’un système
système 30 Introduction Approche Orientée Objet § Vues
•Vues d’un
d’un système
système
conception § Diagrammes
conception § Diagrammes
•Diagrammes UMLD’UML •Diagrammes UMLD’UML
Enseignante : S. Mnif
Vue des Processus Vue de cas d’utilisation
Exprime la solution en termes d'activités concurrentes et Cette vue définit les besoins des clients du système et
parallèles, centre la définition de l'architecture du système sur la
C'est l'expression des problèmes de
satisfaction (la réalisation) de ces besoins
communication/synchronisation des activités. Exprime les scénarios d'utilisation, explique le système
Chapitre 1
et UML et UML
Unified ModelingLangage
Unified Modeling Language Unified Modeling Language
Modèle et méthode de Modèle et méthode de
31 Introduction Approche Orientée Objet § Vues
•Vues d’un
d’un système
système 32 Introduction Approche Orientée Objet •Vues d’un système
conception § Diagrammes
conception
•Diagrammes UMLD’UML •Diagrammes UML
Enseignante : S. Mnif
Combinés, les différents types de diagrammes
UML offrent une vue complète des aspects
statiques et dynamiques d'un système.
UML dans sa version 2, définit 13 diagrammes
pour ces vues
Figure : Les diagrammes UML
8
9/18/2024
Chapitre 1 Introduction à la modélisation objet Introduction à la modélisation objet
Chapitre 1
et UML et UML
Unified ModelingLangage
Unified Modeling Language Unified ModelingLangage
Unified Modeling Language
Modèle et méthode de Modèle et méthode de
33 Introduction Approche Orientée Objet § Vues
•Vues d’un
d’un système
système 34 Introduction Approche Orientée Objet § Vues
•Vues d’un
d’un système
système
conception § Diagrammes
conception § Diagrammes
•Diagrammes UMLD’UML •Diagrammes UMLD’UML
Enseignante : S. Mnif
d'actions
§ Diag. de déploiement : déploiement des composants sur § Diag. de communication : représentation spatiale des objets, des
les dispositifs matériels, liens et des interactions,
§ Diag. de package : représente la vue d’ensemble du § Diag. de séquence : représentation temporelle des objets et leurs
système structuré en paquetages, interactions,
§ Diag. de structure composite : représente la structure § Diag. de timing
interne d’un ensemble complexe composé du système. § Diag. Vue globale d’interaction
MODÉLISATION OBJET
et UML
Modèle et méthode de
Unified Modeling Language
UML2
35 Introduction Approche Orientée Objet •Vues d’un système
conception
•Diagrammes UML
Chapitre 2 : Diagramme de cas
Bibliographie
Classes: 2ème année DSI
d’utilisation
Livres (Use Cases Diagram)
Audi bert, L. (2009) . UML 2: D e l' ap p re nt i s s a g e à l a
pratique (Vol. 298). Ellipses. Niveau : 2ème année
Roques, P. (2008). les Cahiers du Programmeur UML2 , 4ème Développement des Systèmes d’Information
Enseignante : S. Mnif
9
9/18/2024
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principes et Description Principes et Description
37 Introduction
Introduction Application 38 Introduction
Introduction Application
éléments de base textuelle éléments de base textuelle
Enseignante : S. Mnif
Il a pour objectifs de :
délimiter les frontières du système
identifier les acteurs/utilisateurs du système
exprimer les besoins d’un système
préparer une base pour les tests fonctionnels.
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principes et Description Principeset et
Principes Description
39 Introduction
Introduction Application 40 Introduction éléments dedebase
Application
éléments de base textuelle éléments base textuelle
Le digramme de cas d’utilisation utilise une notation Le digramme se base sur 3 concepts :
Classes: 2ème années DSI
Enseignante : S. Mnif
d'utilisation.
Interaction cas
d'utilication
acteur
10
9/18/2024
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
41 Introduction éléments dedebase
Application 42 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
1. Acteur 1. Acteur
Classes: 2ème années DSI
Enseignante : S. Mnif
dispositif matériel
acteurs différents)
ou autre système
Samir, client de la banque et guichetier
C’est un Rôle qu’un utilisateur joue par rapport au Plusieurs personnes peuvent avoir le même rôle
système. Souha et Mohamed sont 2 clients de la banque
Une même personne peut jouer plusieurs rôles.
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
43 Introduction éléments dedebase
Application 44 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
1. Acteur 1. Acteur
Classes: 2ème années DSI
Le cas d'utilisation lui rend service. Il est sollicité par le système pour des informations
Le titre du cas d’utilisation doit correspondre à l’objectif complémentaires lors du cas d’utilisation.
Enseignante : S. Mnif
Enseignante : S. Mnif
de l’acteur principal. Il p eut retirer un résultat s econdaire lors du cas
C’est lui qui initie le cas d'utilisation par ses sollicitations. d’utilisation
Il obtient un résultat observable du système. Le stéréotype << secondary >> est utilisé pour les acteurs
11
9/18/2024
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
45 Introduction éléments dedebase
Application 46 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
Enseignante : S. Mnif
Télécharger un
<<actor>> (s’il y en a), etc.
Ordinateur peer
fichier connecté § Identifier les autres systèmes externes connexes qui
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
47 Introduction éléments dedebase
Application 48 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
Enseignante : S. Mnif
dessous. d'un acteur B si l'acteur A peut
§ La représentation d’un acteur système sous être substitué par l'acteur B.
la forme rectangulaire avec le mot-clé Dans ce cas, tous les cas
<<Actor>> (facultative). d'utilisation accessibles à A le
sont aussi à B, mais l'inverse n'est
pas vrai.
12
9/18/2024
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
49 Introduction éléments dedebase
Application 50 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
Enseignante : S. Mnif
Ne s’intéresse pas à la manière avec laquelle le § rechercher les besoins (intentions métier) pour lesquels il
système fera le comportement attendu. utilise le système,
§ déterminer dans le cahier des charges les services fonctionnels
Exemples : attendus du système.
retirer de l’argent, ajouter un client, supprimer client, etc. q Nommez les cas d’utilisation par un verbe à l’infinitif
suivi d’un complément, du point de vue de l’acteur (et
non pas du point de vue du système).
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
51 Introduction éléments dedebase
Application 52 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
2.2. Comment représenter les cas d’utilisation?(1) 2.3. Types de relations entre cas d’utilisation
Classes: 2ème années DSI
Enseignante : S. Mnif
13
9/18/2024
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
53 Introduction éléments dedebase
Application 54 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
2.3.1. Généralisation entre cas d’utilisation 2.3.2. Inclusion entre cas d’utilisation
Classes: 2ème années DSI
Enseignante : S. Mnif
Exemple : comportement de B. B ne peut être exécuté seul !
q On utilise cette relation pour éviter de décrire plusieurs
fois le même enchaînement, en regroupant le
comportement commun dans un cas d’utilisation à part.
Mise en commun de comportements communs à plusieurs
cas d’utilisation.
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
55 Introduction éléments dedebase
Application 56 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
2.3.2. Inclusion entre cas d’utilisation 2.3.3. Extension entre cas d’utilisation
Classes: 2ème années DSI
Enseignante : S. Mnif
14
9/18/2024
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principeset et
Principes Description Principeset et
Principes Description
57 Introduction éléments dedebase
Application 58 Introduction éléments dedebase
Application
éléments base textuelle éléments base textuelle
Enseignante : S. Mnif
d’utilisation.
Contient:
Lescas d’utilisation
Mais PAS les acteurs
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principes et Description
Description Principes et Description
Description
59 Introduction Application 60 Introduction Application
éléments de base textuelle
textuelle éléments de base textuelle
textuelle
5- Description textuelle
Classes: 2ème années DSI
Enseignante : S. Mnif
humain précise ce que fait l’acteur et comment réagit le
système.
On peut définir un scénario simple ou des scénarios
alternatifs plus détaillés faisant intervenir différentes
variantes et les scénarios d’erreurs.
La fiche de description textuelle d’un cas d’utilisation n’est
pas normalisée par UML.
15
9/18/2024
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principes et Description
Description Principes et Description
Description
61 Introduction Application 62 Introduction Application
éléments de base textuelle
textuelle éléments de base textuelle
textuelle
Enseignante : S. Mnif
Un cas d’utilisation contient en général
un scénario nominal
plusieurs scénarios alternatifs (qui se terminent de façon
normale)
plusieurs scénarios d’erreur (qui se terminent en échec).
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principes et Description
Description Principes et Description
Description
63 Introduction Application 64 Introduction Application
éléments de base textuelle
textuelle éléments de base textuelle
textuelle
Enseignante : S. Mnif
Pré-condition :
Post-condition
Scénario principal
Scénario alternatif
16
9/18/2024
Chapitre 2
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principes et Description
Description Principes et Description
65 Introduction
éléments de base textuelle
textuelle
Application 66 Introduction
éléments de base textuelle
Application
Application
6. Application directe
Description textuelle détaillée
Classes: 2ème années DSI
Enseignante : S. Mnif
Chapitre 2
Diagramme de cas d’utilisation Diagramme de cas d’utilisation
Principes et Description Principes et Description
67 Introduction
éléments de base textuelle
Application
Application 68 Introduction
éléments de base textuelle
Application
6. Application directe
Bibliographie
Classes: 2ème années DSI
Enseignante : S. Mnif
Il existe 3 catégories d'abonné: les étudiants qui s'acquittent d'une somme forfaitaire Roques, P. (2018). UML 2.5 par la pratique: Etudes de cas
pour un an. Les enseignants ont un accès libre. Les étudiants d'une autre université et exercices corrigés. Editions Eyrolles.
peuvent s'abonner moyennant une cotisation (nombre d'externes limité à 10% des
étudiants). [Link]
Chaque abonné ne peut emprunter que 3 ouvrages pendant 3 semaines. Un délai de 5
semaines est exceptionnellement possible.
Un nouveau service de consultation catalogue doit être mis en place.
Travail demandé : identifier les acteurs, identifier les cas d’utilisation et construire un
diagramme de cas d’utilisation ;
17
9/18/2024
Chapitre 3
MODÉLISATION OBJET Diagramme de classes
UML2
Principes et éléments de base
70
Introduction
Introduction • Les classes
Application
Modélisation statique • Les relations entre les classes
Enseignante : S. Mnif
Niveau : 2ème année
Développement des Systèmes d’Information d’utilisation.
Enseignante : Salima MNIF q L e s d i a g r a m m e s d e c l a s s e s pe r m e t t e n t d e
Contact : [Link]@[Link]
spécifier QUI intervient à l’intérieur du système
q Le diagramme de classes spécifie également quels
Version en ligne disponible sur le site de l’uvt
liens peuvent entretenir les objets du système.
Semestre1 Institut Supérieur des Etudes Technologiques de Nabeul
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments de base Principes et éléments
Principes de base
et éléments de base
71 Introduction
Introduction • Les classes
• Les relations entre les classes
Application 72 Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre
entre lesles classes
classes
Application
1. Généralement considéré comme le plus important
Classes: 2ème années DSI
Enseignante : S. Mnif
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
73
Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre les
entre les classes
classes
Application 74
Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre
entre lesles classes
classes
Application
1. Les classes 1. Les classes Commande Personne
Classes: 2ème années DSI
Enseignante : S. Mnif
Tout système orienté objet est organisé autour des classes. Soit les deux classes suivantes :
Une classe est la description formelle d'un ensemble Personne et Commandes
d'objets ayant une sémantique et des caractéristiques c1, c2 et c3 sont des instances
communes. de la classe commande.
Une instance est une concrétisation d'un concept abstrait. a et b sont des instances de la
classe personne
Un objet est une instance ou une occurrence d'une classe.
Syntaxe du nom des objets
nom:Type
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
75 Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre les
entre les classes
classes
Application 76 Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre
entre lesles classes
classes
Application
1. Les classes 1. Les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
19
9/18/2024
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
77
Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre les
entre les classes
classes
Application 78
Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre
entre lesles classes
classes
Application
1. Les classes 1. Les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
L’objet……..….est instance de la classe ………….. Une opération représente un élément de comportement
L’objet……..….est instance de la classe ………….. (un service) contenu dans une classe.
L’objet……..….est instance de la classe ………….. Exemples d’attributs d’une classe Voiture: vitesse, nombre
de chevaux, numéro d’immatriculation, etc.
L’objet……..….est instance de la classe …………..
Exemples d’opérations d’une classe voiture : Avancer(),
reculer(), tournerDroite(), tournerGauche(), etc.
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
79 Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre les
entre les classes
classes
Application 80 Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre
entre lesles classes
classes
Application
1. Les classes 1. Les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
81
Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre les
entre les classes
classes
Application 82
Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre
entre lesles classes
classes
Application
1. Les classes 1. Les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
Exemple d’Objet (Longuet, 2017)
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
83 Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre les
entre les classes
classes
Application 84 Introduction § Les• classes
Les classes
§ Les• relations
Les relationsentre
entre lesles classes
classes
Application
1. Les classes 1. Les classes
Classes: 2ème années DSI
Privé (-)
Enseignante : S. Mnif
Enseignante : S. Mnif
21
9/18/2024
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
85
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 86
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
- Une propriété peut être paramétrée par les éléments
privilégier un sens de lecture, mais une association suivants:
est par défaut bidirectionnelle. - Nom d’une terminaison d’association
Exemple : une personne peut posséder des voitures. - Rôle
- Visibilité
L a r e l a t i o n … … … …… e s t u n e a s s o c i a t i o n e n t r e l e s
- Multiplicité
classes ……….........… et ……………
- Sens de navigabilité
=> ………………………………………………………………
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
87 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 88 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
- Une association peut donc posséder autant de noms de rôle
que de terminaisons (deux pour une association binaire
et n pour une association n-aire) ;
- Visibilité: une terminaison d'association possède une visibilité
(public, privé, protégée). La visibilité est mentionnée à
proximité de la terminaison, devant le nom de la terminaison.
22
9/18/2024
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
89
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 90
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
- Multiplicité: Elle est mentionnée à proximité de la terminaison
ü Optionnel : 0..1 ü de un à six : 1..6
d’une association. Il n'est pas impératif de la préciser, par défaut ü plusieurs : * ou 0..*
la terminaison d'une terminaison d'association est non spécifiée.
La multiplicité associée à une terminaison d'association, Exemples d’association orientée (la navigabilité est dans un seul sens) :
d'agrégation ou de composition déclare le nombre d'objets
susceptibles d'occuper la position définie par la terminaison
d'association.
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
91 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 92 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
associées. Elle peut avoir un nom, avec éventuellement une précision du sens Enseignante : S. Mnif
23
9/18/2024
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
93
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 94
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
Sens de
Multiplicité d’une Visibilité d’une
navigabilité ou
terminaison d’une terminaison
de lecture
association d’une association
94
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
95 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 96 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
95 96
24
9/18/2024
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
97
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 98
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
- Remarque : De telles associations sont difficiles à déchiffrer et peuvent
induire en erreur. Il vaut mieux limiter leur utilisation, en définissant de
nouvelles catégories d'associations.
-
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
99 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 100 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
25
9/18/2024
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
101
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 102
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
L’entreprise contient un ou plusieurs camion.
Un camion est composé d’un moteur.
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
103 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 104 Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Spécialisation
autres classes plus spécialisées (sous-classes) une pure abstraction afin de factoriser des
Enseignante : S. Mnif
Enseignante : S. Mnif
26
9/18/2024
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments
Principes de base
et éléments de base Principes et éléments
Principes de base
et éléments de base
105
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application 106
Introduction § Les• classes
Les classes
§ Les• relations entre
Les relations entre les les classes
classes
Application
2. Les relations entre les classes 2. Les relations entre les classes
Classes: 2ème années DSI
Enseignante : S. Mnif
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments de base Principes et éléments de base
107 Introduction • Les classes
• Les relations entre les classes
Application
Application 108 Introduction • Les classes
• Les relations entre les classes
Application
Application
Application directe:
Classes: 2ème années DSI
1. Enseignante : S. Mnif
27
9/18/2024
Chapitre 3
Chapitre 3
Diagramme de classes Diagramme de classes
Principes et éléments de base Principes et éléments de base
109
Introduction • Les classes
• Les relations entre les classes
Application
Application 110
Introduction • Les classes
• Les relations entre les classes
Application
Application
Solution Exercice 1
Exercice 1:
Classes: 2ème années DSI
Enseignante : S. Mnif
u n nom, un pré nom et un e adres se . Les reco mm an d és,
caractérisés par l’expéditeur et le destinataire sont de deux sortes :
lettres ou colis, pour le colis, on désire stocker son poids. Comme
plusieurs facteurs peuvent intervenir sur la même zone, on
souhaite, connaître pour chaque recommandé, le facteur qui l'a
distribué.
109 110
Chapitre 3
Chapitre 3
Diagramme de classes
Principes et éléments de base Principes et éléments de base
111 Introduction • Les classes
• Les relations entre les classes
Application
Application 112 Introduction • Les classes
• Les relations entre les classes
Application
Exercice 2:
Classes: 2ème années DSI
Enseignante : S. Mnif
5. Une réservation peut être annulée ou confirmée. Roques, P. (2018). UML 2.5 par la pratique. Eyrolles.
6. Un vol a un aéroport de départ et un aéroport d’arrivée.
Debrauwer, L., & VAN DER HEYDE, F. (2016). UML
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. 2.5.
9. Une escale a une heure d’arrivée et une heure de départ.
10. Chaque aéroport dessert une ou plusieurs villes.
Nous allons entreprendre progressivement la réalisation d’un diagramme de classes.
28
9/18/2024
Chapitre 4
MODÉLISATION OBEJET-UML2 Diagramme d’objets
Rôle dudu
Rôle diagramme
diagramme Représentation
Modélisation statique 114
d’objets
d’objets graphique
Application
Enseignante : S. Mnif
Contact : [Link]@[Link]
associations) à un instant donné.
Ø donner une vue figée ou statique du système à un
moment précis.
Ø A chaque diagramme de classes correspond une infinité
de diagrammes d’objets.
Semestre2 Institut Supérieur des Etudes Technologiques de Nabeul
Chapitre 4
Chapitre 4
Diagramme d’objets Diagramme d’objets
Rôle dudu
Rôle diagramme
diagramme Représentation Rôle du diagramme Représentation
Représentation
115 Application 116 Application
d’objets
d’objets graphique d’objets graphique
graphique
q Graphiquement, chaque objet est représenté par un
Classes: 2ème années DSI
Enseignante : S. Mnif
des contre-exemples et des cas de figure.
=> Syntaxe du nom des objets nom:Type
q Avec un diagramme d’objets on définit une instance
particulière d’un diagramme de classes. Ø La valeur de un ou plusieurs attributs de l’objet.
q Comme pour la représentation d’une classe, la
représentation d’un objet pourra être plus ou moins
détaillée.
29
9/18/2024
Chapitre 4
Chapitre 4
Diagramme d’objets Diagramme d’objets
Rôle du diagramme Représentation
Représentation Rôle du diagramme Représentation
Représentation
117 Application 118 Application
d’objets graphique
graphique d’objets graphique
graphique
Classes: 2ème années DSI
Enseignante : S. Mnif
Chapitre 4
Chapitre 4
Diagramme d’objets Diagramme d’objets
Rôle du diagramme Représentation
Représentation Rôle du diagramme Représentation
Représentation
119 Application 120 Application
d’objets graphique
graphique d’objets graphique
graphique
Classes: 2ème années DSI
Enseignante : S. Mnif
30
9/18/2024
Chapitre 4
Chapitre 4
Diagramme d’objets Diagramme d’objets
Rôle du diagramme Représentation Rôle du diagramme Représentation
121 Application
Application 122 Application
d’objets graphique d’objets graphique
q Application:
Classes: 2ème années DSI
Enseignante : S. Mnif
Chapitre 4
31
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Diagramme de
Diagramme
Principes et Principes et
125 Introduction
Introduction Séquence
concepts de base
Application 126 Introduction deSéquence
séquence
concepts de base
Application
Système Système
Système
Enseignante : S. Mnif
précisément les diagrammes d’interactions. nommé diagramme de séquence système qui
q Il permet de représenter des échanges entre les permet de représenter les interactions entre le
différents objets et acteurs du système en fonction système et les différents acteurs.
du temps.
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de
Diagramme Diagramme de
Diagramme
Principes et Principes et
127 Introduction deSéquence
séquence Application 128 Introduction deSéquence
séquence Application
concepts de base concepts de base
Système
Système Système
Système
q Exemple 1: DAB
q Pour représenter le diagramme de séquence
système, il est recommandé de faire :
ü l’acteur principal à gauche,
ü un objet unique représentant le système en boîte
Enseignante : S. Mnif
Enseignante : S. Mnif
noire,
ü les éventuels acteurs secondaires sollicités durant le
scénario à droite du système.
32
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Diagramme de Principes et
Principes et Principes et
129 Introduction Séquence Application 130 Introduction Séquence concepts de Application
concepts de base concepts de base
Système Système base
Enseignante : S. Mnif
ü Les cadres d’interactions ou fragments avec opérateurs en
utilisant les opérateurs : loop, opt et alt, etc.
ü Les références entre les interactions pour référencer une
interaction décrite ailleurs en utlisant ref.
129
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
131 Introduction Séquence concepts de Application 132 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme de séquence : 1. Représentation du diagramme de séquence :
a. La ligne de vie
§ Un diagramme de séquence met en relation les instances des
classe (les objets) pour décrire la dynamique du système.
§ A chaque objet est associé une ligne de vie (en trait pointillés
Enseignante : S. Mnif
Enseignante : S. Mnif
à la verticale de l’objet) qui peut être considéré comme un
axe temporel (le temps s’écoule du haut vers le bas).
§ La ligne de vie indique les périodes d’activité de l’objet
Dans un diagramme de séquence: (généralement, les moments ou l’objet exécute une de ces
ü l’objet à la même représentation que dans le diagramme des méthodes).
objets : un rectangle dans lequel figure le nom de l’objet. § Lorsque l’objet est détruit, la ligne de vie s’achève par une
ü on représente les échanges entre les objets mais aussi les croix.
échanges avec les acteurs.
33
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
133 Introduction Séquence concepts de Application 134 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme de séquence :
1. Représentation du diagramme de séquence :
a. La ligne de vie
b. Les messages:
§ Exemple
§ Un message :
ü définit une communication particulière entre des lignes de vie.
ü une communication d’un objet vers un autre objet.
Enseignante : S. Mnif
Enseignante : S. Mnif
§ La réception d’un message est considérée par l’objet récepteur
comme un événement qu’il faut traiter et parfois non.
§ Plusieurs types de messages existent, les plus communs sont :
ü L’invocation d’une opération : message synchrone (appel
d’une méthode de l’objet cible).
ü L’envoi d’un signal : message asynchrone
ü La création ou la destruction d’une instance de classe.
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
135 Introduction Séquence concepts de Application 136 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme de séquence : 1. Représentation du diagramme
b. Les messages: de séquence :
i. Les messages synchrones : b. Les messages:
ü La réception d’un message synchrone doit provoquer chez le i. Les messages synchrones :
destinataire le lancement d’une de ses méthodes. Attention
ü L’expéditeur du message reste bloqué pendant toute l’exécution
Enseignante : S. Mnif
Enseignante : S. Mnif
34
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
137 Introduction Séquence concepts de Application 138 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme 1. Représentation du diagramme de séquence :
de séquence : b. Les messages:
b. Les messages: ii. Les messages asynchrones:
i. Les messages synchrones : - Un appel de méthode : fréquent dans un système multi-threads
(multi-tâches). Ainsi, l’objet expéditeur (émetteur) n’étant pas
bloqué pendant l’exécution de la méthode, il peut continuer ainsi
Enseignante : S. Mnif
Enseignante : S. Mnif
à envoyer d’autres messages.
- Un signal : l’objet expéditeur transmet juste une information à
l’objet destinataire. Souvent, ce sont les acteurs ou les
périphériques qui envoient des signaux, typiquement utilisé dans
la gestion événementielle d’une IHM graphique.
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
139 Introduction Séquence concepts de Application 140 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme de séquence : 1. Représentation du diagramme de séquence :
b. Les messages: b. Les messages:
iii. Les message récursifs: iv. Représentation schématique ou graphique:
§ Un objet peut s’envoyer un message à lui-même (utilisation Dans le diagramme de séquence, les envois de messages sont
d’une méthode du même objet). représentés par des flèches horizontales qui vont de la ligne de vie
§ Le diagramme présente alors un dédoublement de la bande de l’objet émetteur vers la ligne de vie de l’objet récepteur du
Enseignante : S. Mnif
Enseignante : S. Mnif
d’activation. message.
§ Les messages synchrones : (flèche avec un triangle plein à son
extrémité).
§ Les messages asynchrones : (simple flèche)
§ Les messages de retour (réponses) : (simple flèche en
pointillés).
35
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
141 Introduction Séquence concepts de Application 142 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme de séquence : 1. Représentation du diagramme de séquence :
b. Les messages: b. Les messages:
iv. Représentation schématique ou graphique: iii. Représentation schématique ou graphique:
Exemple1: Exemple2 :
Enseignante : S. Mnif
Enseignante : S. Mnif
Message de retour:
§ Si une méthode qui a été activée (par un message) doit retourner des
valeurs à la fin de son activation, cela se fait par un message retour.
§ Le message de retour n’est donc pas un appel de méthode (il ne provoque
donc pas l’activation d’un objet)
§ Le message retour porte souvent le nom de l’élément retourné.
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
143 Introduction Séquence concepts de Application 144 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
Enseignante : S. Mnif
du stéréotype « create » qui pointe sur le début (le sommet) de
la ligne de vie de l’objet créé (le rectangle de l’instance de la
classe réceptrice est alors surbaissée).
§ La destruction d’un objet est représentée par une croix à la fin
de sa ligne de vie. Souvent l’objet est détruit suite à la
réception d’un message mais ce n’est pas obligatoire. Dans ce
cas, il porte le stéréotype « destroy ».
36
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
145 Introduction Séquence concepts de Application 146 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme de séquence : Exercice :
b. Les messages: Ascenseur
Personne
v. Création et destruction d’objets: transporte
§ Exemple: bouton d'appel s'allume( )
appel de l'ascenceur étage( ) 0..* 0..* ouverture des portes étage( )
choix de l'étage( )
bouton d'étage s'allume( )
Enseignante : S. Mnif
Enseignante : S. Mnif
Scénarios
◦ Deux usagers situés à des étages différents
empruntent le même ascenseur pour se rendre au
3ème étage.
◦ Trois usagers situés au même étage empruntent le
même ascenseur pour se rendre aux 3 ème et 5 ème
étages. 146
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
Introduction Séquence concepts de Application 148 Introduction Séquence concepts de Application
147 concepts de base concepts de base
Système base Système base
Correction : 1. Représentation du diagramme de séquence :
Meriam :
Personne : Ascenseur
Mohamed: b. Les messages:
Personne
1: appel de l'ascenceur étage (RdC) v. Syntaxe des messages synchrones et asynchrones:
2: buton d'appel s'allume ( ) Il est possible de définir un message par :
3: ouverture des portes étage (RdC)
§ Son nom (qui est le nom de la méthode appelée ou du signal
envoyé).
Enseignante : S. Mnif
147
37
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
149 Introduction Séquence concepts de Application 150 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme de séquence :
1. Représentation du diagramme de séquence :
b. Les messages:
b. Les messages:
v. Syntaxe des messages synchrones et asynchrones:
vi. Syntaxe des réponses (messages retour) :
§ Exemple :
Pour représenter un message de retour, il est possible de:
§ Donner au message retour un simple nom,
SouleverCombiné()
Enseignante : S. Mnif
Enseignante : S. Mnif
§ Utiliser cette première syntaxe:
attribut = nomMessage (paramètres)
§ Utiliser cette deuxième syntaxe:
attribut = nomMessage (paramètres) :valeurDeRetour
§ Utiliser cette syntaxe 4, la plus précise :
numéro : attribut = nomMessage (paramètres) : valeurDeRetour
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
151 Introduction Séquence concepts de Application 152 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
1. Représentation du diagramme de séquence : 1. Représentation du diagramme de séquence :
b. Les messages: c. Les contraintes temporelles:
vi. Syntaxe des réponses (messages retour) : § Des repères temporels avec des contraintes peuvent être placés
Exemple : le long de la ligne de vie.
§ Un message avec un temps de propagation non négligeable
Enseignante : S. Mnif
Enseignante : S. Mnif
peut être représenté par une flèche oblique ou en l'écrivant
explicitement.
38
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
153 Introduction Séquence concepts de Application 154 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
2. Fragments d’interactions combinés: 2. Fragments d’interactions combinés:
a. Fragment d’interaction avec opérateur « opt » : b. Fragment d’interaction avec opérateur « alt » :
L’opérateur option (opt) comporte un opérande et une condition
§ L’opérateur alternatives (alt) est un opérateur conditionnel
de garde associée. Le sous fragment s’exécute si la condition de
garde est vraie et ne s’exécute pas dans le cas contraire. possédant plusieurs opérandes séparés par des pointillés.
Enseignante : S. Mnif
Enseignante : S. Mnif
§ C’est l’équivalent d’une exécution à choix multiples.
§ Chaque opérande détient une condition de garde.
§ Seul le sous-fragment dont la condition est vraie est exécuté.
§ La condition else est exécutée que si aucune autre condition
n’est valide.
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
155 Introduction Séquence concepts de Application 156 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
2. Fragments d’interactions combinés: 2. Fragments d’interactions combinés:
b. Fragment d’interaction avec opérateur « alt » : c. Fragment d’interaction avec opérateur « loop » :
§ Exemple § L’opérateur de boucle (loop) exécute une itérative dont la
séquence qu’elle contient est exécutée tant que la garde qui lui
est associée est vraie.
Enseignante : S. Mnif
Enseignante : S. Mnif
§ La garde s’écrit de la façon suivante : loop [min, max, condition]
ü Chaque paramètre (min, max et condition) est optionnel.
ü Le contenu du cadre est exécuté min fois, puis continue à
s’exécuter tant que la condition et que le nombre d’exécution
de la boucle ne dépasse pas max fois.
39
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
157 Introduction Séquence concepts de Application 158 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
2. Fragments d’interactions combinés
2. Fragments d’interactions combinés
c. Fragment d’interaction avec opérateur « loop » :
c. Fragment d’interaction avec opérateur « loop » :
§ Exemple:
Exemple (ALT et LOOP)
Enseignante : S. Mnif
Enseignante : S. Mnif
Par exemple:
loop[3]→ signifie La séquence s’exécute 3 fois.
Loop[1, 3, code=faux] La séquence s’exécute 1 fois puis un
maximum de 2 autres fois si code=faux.
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
159 Introduction Séquence concepts de Application 160 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
2. Fragments d’interactions combinés: 2. Fragments d’interactions combinés:
d. Fragment d’interaction avec opérateur « par » : e. Autres fragments d’interactions:
Un fragment d’interaction avec l’opérateur de traitements § ref : permet de faire appel à un autre diagramme de séquence.
parallèles (par) contient au moins deux sous fragments § ignore et considere : pour les fragments facultatifs ou obligatoires.
( opé ran de s) sé parés p ar d es poi nt i l lé s q u i s ’e x éc ut en t
§ critical : pour les fragments qui doivent se dérouler sans être interrompus.
simultanément (traitements concurrents).
Enseignante : S. Mnif
Enseignante : S. Mnif
40
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
161 Introduction Séquence concepts de Application 162 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
2. Fragments d’interactions combinés:
e. Autres fragments d’interactions:
§ seq : indique que le fragment est composé de plusieurs sous fragments qui
peuvent s’exécuter dans n’importe quel ordre (mais pas en même temps).
Enseignante : S. Mnif
Enseignante : S. Mnif
§ strict : pour les fragments dont les messages doivent se dérouler dans un
ordre bien précis.
§ neg : pour indiquer que la séquence à l’intérieur du fragment n’est pas
valide.
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Principes et Diagramme de Principes et
Principes et Principes et
163 Introduction Séquence concepts de Application 164 Introduction Séquence concepts de Application
concepts de base concepts de base
Système base Système base
Stéréotypes de Jacobson
A l’intérieur d’un système, il existe souvent des classes
qui possèdent un rôle particulier qu’on aimerait
préciser dans le diagramme de séquence.
« boundary » : classes qui servent à modéliser les
interactions entre le système et ses acteurs.
Enseignante : S. Mnif
Enseignante : S. Mnif
41
9/18/2024
Chapitre 5
Chapitre 5
Stéréotypes de Jacobson Diagramme de séquence
Diagramme de Principes et Diagramme de
Principes et Principes et
165 Introduction Séquence concepts de Application 166 Introduction Séquence Application
Applications
concepts de base concepts de base
Système base Système
Exemple : Exercice1 :
Le diagramme de classes suivant décrit des robots composés de
bras articulés, eux-mêmes composés de pinces.
Enseignante : S. Mnif
Enseignante : S. Mnif
L'implémentation des classes en question est la suivante :
Chapitre 5
Chapitre 5
Diagramme de séquence Diagramme de séquence
Diagramme de Diagramme de
Principes et Principes et
167 Introduction Séquence Application
Applications 168 Introduction Séquence Application
Applications
concepts de base concepts de base
Système Système
class Robot{
class Pince { Exercice2 :
private BrasArticulé brasArticulé ;
... Soit la description textuelle du scénario nominal du cas
public void chercherPièce() {
public void fermer() { ... }
brasArticulé.déplier() ;
public void ouvrir() { ... } d’utilisation retirer de l’argent du guichet de la banque:
brasArticulé.replier() ;
} 1. Le guichetier saisit le numéro de compte du client ;
}
} 2. L'application valide le compte auprès du système d’information du guichet;
Début programme principal
Enseignante : S. Mnif
42
9/18/2024
Chapitre 5
Chapitre 5
Diagramme de séquence
Diagramme de Diagramme de
Principes et Principes et
169 Introduction Séquence Application
Applications 170 Introduction Séquence Application
concepts de base concepts de base
Système Système
Exercice3 : q Bibliographie
Réaliser le diagramme de séquence correspondant au cas § Roques, P., & Renault, G. (2018). UML 2.5 par la
d’utilisation « Retirer de l’argent par une carte bancaire par un pratique: Etudes de cas et exercices corrigés. Editions
utilisateur non client de la banque » réalisé dans le chapitre 2. Eyrolles.
§ Remy Manu, Diagramme de séquences, consulté le
17/02/2019
Enseignante : S. Mnif
Enseignante : S. Mnif
[Link]/UML/Cours/[Link]
Chapitre
Chapitre 56
MODÉLISATION OBJET-UML2 Diagramme de communication
Diagramme de
Modélisation Dynamique 172 Introduction
Introduction Séquence
Principes et
Application
concepts de base
Chapitre 6: Diagramme de Système
q Dans les versions 1.x, il était appelé diagramme de
communication
collaboration,
(Communication Diagram)
q Depuis la version 2.0, il est appelé diagramme de
communication.
Enseignante : S. Mnif q Un diagramme dynamique qui constitue une
représentation de l'interaction entre objets en
Enseignante : Salima MNIF
Contact : [Link]@[Link] soulignant les relations entre eux et les messages
échangés en vue de réaliser une opération.
q Affiche des informations similaires à un diagramme
de séquence (une alternative au diagramme de
Semestre2 Institut Supérieur des Etudes Technologiques de Nabeul
séquence)
43
9/18/2024
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et Principes et
173 Introduction
Introduction Séquence
concepts de base
Application 174 Introduction
Introduction Séquence
concepts de base
Application
Système Système
q Diagramme de séquence Vs diagramme de communication q Du Diagramme de séquence vers diagramme de
Diagramme de séquence Diagramme de communication communication
Points communs - Modélisation dynamique du système.
- L’échange de messages entre les entités (la communication entre
deux entités : objet, acteur , sous-système).
- Les mêmes types de messages : synchrone, asynchrone, retour
Enseignante : S. Mnif
Enseignante : S. Mnif
- Deux faces pour la même monnaie.
Points de - Les messages peuvent être - L e t e m p s e s t r e p r é s e n t é
différence numérotés pour représenter implicitement par la
l’évolution dans le temps. numérotation des messages.
- L’écoulement du temps est - Les messages doivent être
du haut vers le bas. nécessairement n umérotés
pour représenter l’évolution
dans le temps vue que la
représentation est spatiale.
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et Principes et Principes et Principes et
175 Introduction Séquence
concepts de base
Application 176 Introduction Séquence
concepts de base
Application
concepts de base concepts de base
Système Système
q Un diagrammes de communication est composé: Exemple 1
q des objets
q des connecteurs d'association entre les objets.
q des messages qui sont ajoutés à des associations
et des flèches montrent aussi courts pointant
Enseignante : S. Mnif
Enseignante : S. Mnif
dans la direction du flux de messages.
q La séquence des messages est présentée à travers un
système de numérotation.
44
9/18/2024
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et Principes et Principes et Principes et
177 Introduction Séquence
concepts de base
Application 178 Introduction Séquence
concepts de base
Application
concepts de base concepts de base
Système Système
Exemple 2 q Les objets: sont représentés par des rectangles contenant
une étiquette suivant la syntaxe :
[<nom_du_rôle>] : [<Nom_du_type>]
Remarques:
1. Au moins un des deux noms doit être spécifié.
2. Les deux points (:) sont obligatoires.
q Les connecteurs d’associations: indique un chemin de
Enseignante : S. Mnif
Enseignante : S. Mnif
communication entre deux objets (deux lignes de vie), sur
lequel passent les messages.
q Les messages : sont généralement ordonnés selon un
numéro de séquence croissant. Un message peut être
synchrone ou asynchrone ou de retour. Il est, habituellement,
Proposer le diagramme de séquence correspondant au diagramme de communication ci- spécifié sous la forme suivante :
dessus. ['['<sync>']' '['<cond>']' [<séq>] [ *[||] ['['<iter>']'] ] :] [<var> :=] <msg>([<par>])
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et Principes et Principes et Principes et
179 Introduction Séquence
concepts de base
Application 180 Introduction Séquence
concepts de base
Application
concepts de base concepts de base
Système Système
q Un message a généralement la forme suivante : q Un message a généralement la forme suivante :
['['<sync>']' '['<cond>']' [<séq>] [ *[||] ['['<iter>']'] ] :] [<var> :=] <msg>([<par>]) ['['<sync>']' '['<cond>']' [<séq>] [ *[||] ['['<iter>']'] ] :] [<var> :=] <msg>([<par>])
<sync> synchronisation de message. envoi d’un message ssi d’autres <iter> spécifie l'envoi séquentiel (ou en parallèle, avec ||) de plusieurs
messages ont déjà été envoyés. Par exemple message1/ message2. Le message mess ag es. On peut omettre cette spécification et ne garder que l e
2 ne sera envoyé ssi le message 1 est envoyé. caractère * (ou *||) pour désigner un message récurrent, envoyé un certain
Enseignante : S. Mnif
Enseignante : S. Mnif
<cond> est une condition sous forme d'expression booléenne entre crochets. nombre de fois.
<séq> est le numéro de séquence du message. On numérote les messages par <var> est la valeur de retour du message, qui sera par exemple transmise en
envoi et sous-envoi désignés par des chiffres séparés par des points : ainsi paramètre à un autre message.
l'envoi du message 1.4.4 est postérieur à celui du message 1.4.3, tous deux <msg> est le nom du message.
étant des conséquences (i.e. des sous-envois) de la réception d'un message 1.4. <par> désigne les paramètres (optionnels) du message.
La simultanéité d'un envoi est désignée par une lettre : les messages 1.6a et C e t t e s y nt a x e un pe u c o m p l e xe p e rm et de pr é c i s e r p a r fa it e m e nt
1.6b sont envoyés en même temps. l'ordonnancement et la synchronisation des messages entre les objets du
diagramme de communication.
45
9/18/2024
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et
Représentation Principes et
Représentation
181 Introduction Séquence Application 182 Introduction Séquence Application
concepts de base
graphique concepts de base
graphique
Système Système
Enseignante : S. Mnif
q Depuis UML 2.X l’objet n’est plus souligné.
:Objet DellInspiron153000:
DellInspiron153000:OrdinateurPortable
:OrdinateurPortable
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et
Représentation Principes et
Représentation
183 Introduction Séquence Application 184 Introduction Séquence Application
concepts de base
graphique concepts de base
graphique
Système Système
q Les connecteurs d’association: se représentent par q Les messages : Il existe 3 types de messages :
un trait plein reliant deux lignes de vie (ou deux Message synchrone Message asynchrone
46
9/18/2024
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et
Représentation Principes et
Représentation
185 Introduction Séquence Application 186 Introduction Séquence Application
concepts de base
graphique concepts de base
graphique
Système Système
q Numérotation des messages : dans les diagrammes q Numérotation des messages : dans les diagrammes
de séquences et de communication. de séquences et de communication.
Rappel : Exemple de numérotation de message dans un diagramme de séquence
Rappel : Exemple d’envoi de message dans un diagramme de séquence
Enseignante : S. Mnif
numérotés
séquentiellement, à
partir de un.
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et
Représentation Principes et
Représentation
187 Introduction Séquence Application 188 Introduction Séquence Application
concepts de base
graphique concepts de base
graphique
Système Système
q Numérotation des messages : dans les diagrammes q Numérotation des messages :
de séquences et de communication.
q L'envoi du message 1.4.4 est postérieur à celui du message Exemple
1.4.3, tous deux étant des conséquences (i.e. des sous-
envois) de la réception d'un message 1.4.
Enseignante : S. Mnif
Enseignante : S. Mnif
q Numerotation englobante (cas d’appels de procédure) : 2
(appel initial) puis 2.1 (premier appel imbriqué) puis 2.2
(second sous-appel) puis 3 (appel du même niveau que le q La direction d’un message dans le diagramme de
numéro 2). communication est spécifiée par une petite flèche
q La simultanéité d'un envoi est désignée par une lettre : les a j o ut é e à c ô t é du n o m d u m e s s a ge e t de l a
messages 1.6a et 1.6b sont envoyés en même temps. numérotation pointant vers l'un ou l'autre des objets
de l'interaction relié par le connecteur.
47
9/18/2024
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et Principes et
189 Introduction Séquence Application
Application 190 Introduction Séquence Application
Application
concepts de base concepts de base
Système Système
q Exemple 1: signification des messages q Exemple 1: signification des messages
Rappel : un message s’écrit avec la syntaxe suivante : Rappel : un message s’écrit avec la syntaxe suivante:
['['<sync>']' '['<cond>']' [<séq>] [ *[||] ['['<iter>']'] ] :] [<var> :=] <msg>([<par>]) ['['<sync>']' '['<cond>']' [<séq>] [ *[||] ['['<iter>']'] ] :] [<var> :=] <msg>([<par>])
Enseignante : S. Mnif
§ [heure = midi] 1 : manger() uniquement si t est inferieur à 10s. De plus, la fonction demanderAge
Ce message « manger() » n'est envoyé que s'il est midi. prend deux paramètres (nom,prenom)et revoie une valeur dans la variable
§ 1 / *|| 2.1 : fermer() age.
Ce message « fermer() » n’est envoyé qu’une fois le message 1 fini, et il Expliquez ce que ces deux messages font :
est envoyé en parallèle (en même temps) sur tous les récepteurs (||) un § 1.3 / [disk full] 1.7.a : deleteTempFiles()
nombre inconnu de fois (*). § 1.3 / [disk full] 1.7.b : reduceSwapFile(20%)
Les deux messages sont envoyés en même temps (c’est le .a et le .b qui
permet de le voir) après que le message 1.3 soit envoyé et que la condition
disk full soit vrai.
Chapitre
Chapitre
Chapitre 56
Chapitre 56
Diagramme de communication Diagramme de communication
Diagramme de Diagramme de
Principes et Principes et
191 Introduction Séquence Application
Application 192 Introduction Séquence Application
Application
concepts de base concepts de base
Système Système
q Exemple 2: Elaboration d’un diagramme de q Application
communication à partir d’une description On souhaite gérer l’activité d’un magasin de vente de fleurs.
– Le client demande au vendeur des renseignements sur les compositions
florales.
Décrire par un diagramme de communication le fonctionnement – Le vendeur lui fournit toutes les informations nécessaires.
d'un ascenseur (une personne appuie sur un bouton de la porte, – Le client commande alors la composition de son choix et le vendeur émet le
Enseignante : S. Mnif
Enseignante : S. Mnif
l'ascenseur arrive, les portes s'ouvrent, la personne entre et bon de fabrication qu’il transmet à son ouvrier fleuriste.
choisit l’étage, etc.). – Le vendeur édite ensuite la facture correspondante.
– L’ouvrier fleuriste crée la composition puis archive le bon de fabrication et
remet alors la composition au vendeur.
– La facture est remise au client pour règlement lorsque le bouquet est réalisé.
– Une fois la facture réglée, le client récupère sa composition et quitte le
magasin.
Modéliser cette situation à l’aide d’un diagramme de communication.
48
9/18/2024
Chapitre
Chapitre 56
Diagramme de communication CONCEPTION ORIENTÉE OBJET
Diagramme de
193 Introduction Séquence
Principes et
Application
Application Modélisation Dynamique
concepts de base
Système Chapitre 7: Diagramme d’états-transitions
q Correction (State-Machine Diagram)
Version disponible en ligne sur l’espace de cours dédié sur la plateforme de l’UVT
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Représentation Principes et Représentation
195 Introduction
Introduction
concepts de base graphique
Application 196 Introduction
Introduction
concepts de base graphique
Application
Enseignante : S. Mnif
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et
Principes et Représentation Principes et Représentation
197 Introduction
Introduction
concepts de base graphique
Application 198 Introduction concepts de
concepts de base graphique
Application
base
1. Principaux Composants:
Classes: 2ème années DSI
Enseignante : S. Mnif
allument les lampes).
ü état initial : représente l'état au démarrage du
système.
ü état final : représente l'état dans lequel se trouve
le système à la fin d u fonctionnement (un
système peut avoir 0 ou plusieurs états finaux)
q transition : représente le passage d'un état à un autre.
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
199 Introduction concepts de Application 200 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
Enseignante : S. Mnif
partitionné en plusieurs compartiments séparés par une ligne
q paquetage : divise et organise la représentation du horizontale. Le premier compartiment contient le nom de l’état et
diagramme (de la même manière que les répertoires les autres peuvent recevoir des transitions internes, ou des sous-
organisent les fichiers. états, quand il s’agit d’un état composite.
q Dans le cas d’un état simple, on peut omettre la barre de
séparation.
q Super-état : est un élément de structuration des diagrammes d'états-
transitions (c’est un état qui englobe d'autres états et transitions).
50
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
201 Introduction concepts de Application 202 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
3. Les évènements
Classes: 2ème années DSI
Enseignante : S. Mnif
- Il est possible de considérer un objet avion dans l’état «en vol» - Quand un événement est reçu, une transition peut être
et de considérer l’action "vol Paris-Londres", en train de déclenchée et faire basculer l’objet dans un nouvel
s’exécuter. état.
- Un événement n’est pas local à une classe particulière.
Il peut être partagé par deux objets.
- Un événement est, en général porteur d’information.
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
203 Introduction concepts de Application 204 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
Enseignante : S. Mnif
ü la sonnerie du téléphone, car il sera pris en charge lorsque le
receveur sera disponible. - L e s p a ra m è t r e s d e l ’ o p é r a t i o n s o n t ce u x d e
Exemples d’événements porteurs d’information: l’événement d’appel.
ü l’événement « appuyer-bouton-souris » porte les informations - La syntaxe d’un événement d’appel est la même que
suivantes : bouton, coordonnées. celle d’un signal.
ü L’événement «départ-vol» d’un avion porte les informations - Les événements d’appel sont des méthodes déclarées
suivantes : compagnie, numéro-vol, ville-destination) au niveau du diagramme de classes.
51
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
205 Introduction concepts de Application 206 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
passage du temps. d ’ un e e xp r e s s i o n bo ol é en n e s u r de s v a l e u rs
- Par défaut, le temps commence à s’écouler dès d’attributs.
l’entrée dans l’état courant. - C’est une manière déclarative d’attendre qu’une
Enseignante : S. Mnif
Enseignante : S. Mnif
- Ils sont spécifiés soit : condition soit satisfaite.
a. de manière absolue (date précise): - Syntaxe : when ( condition_booléenne)
Syntaxe : after ( <durée> ) 3.4. Événement paramétré
a. de manière relative (temps écoulé): - UML permet d’écrire des évènements avec des
Syntaxe : when ( date = <date> ) paramètres
- Syntaxe : Nom_évènement (paramètres)
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
207 Introduction concepts de Application 208 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
4. Transition
Classes: 2ème années DSI
Enseignante : S. Mnif
déclencheur se produit et que la condition de garde est vérifiée. q Une seule transition peut se déclencher dans un même flot
q Peut-être interne ou externe. d’exécution.
q Syntaxe adoptée depuis la spécification UML 2.4: q Si deux transitions sont activées en même temps par un même
événement, une seule se déclenche.
[ <événement> ][ '[' <garde> ']' ] [ '/' <activité> ] q Exemple:
<événement>: évènement expliqué dans le paragraphe 3.
<garde> : condition de garde expliquée dans le paragraphe 4.1.
<activité> : effet d’une transition expliquée dans le paragraphe 4.2.
52
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
209 Introduction concepts de Application 210 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
Enseignante : S. Mnif
q La condition de garde est évaluée uniquement lorsque effectuer une opération (lancer une méthode), envoyer un
l’événement déclencheur se produit: signal à un autre objet ou à soi-même.
ü Si l’expression est fausse, alors la transition ne se q Lorsqu’une transition se déclenche, son effet s’exécute.
déclenche pas, q Lorsque l'exécution de l'effet est terminé, l'état cible de la
ü Si elle est vraie, alors la transition se déclenche et ses transition devient actif.
effets se produisent.
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
211 Introduction concepts de Application 212 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
Classes: 2ème années DSI
Enseignante : S. Mnif -
- Il existe des états qui effectuent plusieurs activités explicite.
successivement ou en parallèle. - Elle se déclenche à la fin de l’activité contenue dans l’état
- L’enchaînement de ces activités à l’intérieur d’un même état peut source.
être spécifié grâce à des transitions internes. - Elle peut contenir une condition de garde qui est évaluée au
- Les transitions internes s’écrivent à l’intérieur de l’état, séparé du moment où l’activité contenue dans l’état s’achève, et non pas
nom de l’état par un trait. ensuite.
53
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
213 Introduction concepts de Application 214 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
Enseignante : S. Mnif
segments de transition sortants avec différentes conditions de
garde. Ceci réalise une branche conditionnelle statique.
Représentation graphique : un petit cercle noir plein.
Diagramme équivalent à
diagramme 1 en utilisant
un point de jonction
Jonction
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Principes et
Principes et Représentation Principes et Représentation
215 Introduction concepts de Application 216 Introduction concepts de Application
concepts
base
de base graphique concepts
base
de base graphique
Enseignante : S. Mnif
- Cela permet de baser le choix sur des résultats obtenus en
franchissant le segment avant le point de choix.
- Il est possible d’utiliser une garde particulière, notée [else], sur
Diagramme équivalent à un des segments en aval d’un point de choix. Ce segment n’est
diagramme 1 en utilisant franchissable que si les gardes des autres segments sont toutes
un point de jonction fausses.
- Représentation graphique : un symbole en forme de losange.
54
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et
Principes et Représentation Principes et Représentation
Représentation
217 Introduction concepts de Application 218 Introduction Application
concepts
base
de base graphique concepts de base graphique
graphique
Enseignante : S. Mnif
2. Compartiment 2 : Action ou Activité Interne: Cette zone permet de
décrire des actions internes ou activités exécutées associés à un état
pendant que l’objet est dans l’état. Chaque entrée a le format suivant :
<label-type-comportement> ['/' <expression-comportement>]
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et
Principes et Représentation Principes et Représentation
Représentation
219 Introduction concepts de Application 220 Introduction Application
concepts
base
de base graphique concepts de base graphique
graphique
UML définit des mots clé correspondant à des événements 1. Représentation graphique d’un état :
Classes: 2ème années DSI
Enseignante : S. Mnif
est terminée.
Cette zone contient la décomposition de l’état composite
- on évènement / activité: (optionnel) définit l’activité à en d’autres sous-états.
exécuter à chaque fois que l’événement cité survient.
55
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Représentation
Représentation Principes et Représentation
Représentation
221 Introduction Application 222 Introduction Application
concepts de base graphique
graphique concepts de base graphique
graphique
q Un état composite :
Classes: 2ème années DSI
Enseignante : S. Mnif
Un état final correspond à une étape où l'objet n'est
plus nécessaire dans le système et où il est sous état initial.
détruit. Il est représenté par un rectangle à coin arrondi
Etat final
L’état final se représente par un point entouré d’un contenant d’autres sous-états, un état initial,
cercle. un ou plusieurs états finaux.
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Représentation
Représentation Principes et Représentation
Représentation
223 Introduction Application 224 Introduction Application
concepts de base graphique
graphique concepts de base graphique
graphique
Remarque :
Classes: 2ème années DSI
Enseignante : S. Mnif
correspondre à l'es pace graphique disponible pour le
diagramme.
Dans ce cas, l’État composite peut être représenté par un simple
graphique d’État avec un «composite» spécial. Au lieu de cela,
le contenu de l'état composite est présenté dans un diagramme
distinct.
56
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Représentation
Représentation Principes et Représentation
Représentation
225 Introduction Application 226 Introduction Application
concepts de base graphique
graphique concepts de base graphique
graphique
2. Transition
Classes: 2ème années DSI
Enseignante : S. Mnif
Transition
externe
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Représentation Principes et Représentation
227 Introduction
concepts de base graphique
Application
Application 228 Introduction
concepts de base graphique
Application
Application
Exemple2: Exercice 1:
Classes: 2ème années DSI
Enseignante : S. Mnif
57
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Représentation Principes et Représentation
229 Introduction
concepts de base graphique
Application
Application 230 Introduction
concepts de base graphique
Application
Application
Enseignante : S. Mnif
3. Quand on appuie une nouvelle fois sur le bouton mode,
la montre passe en « modification minute ». Chaque
pression sur le bouton avance incrémente les minutes
d’une unité.
4. Quand on appuie une nouvelle fois sur le bouton mode,
la montre repasse en mode « Affichage ».
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Représentation Principes et Représentation
231 Introduction
concepts de base graphique
Application
Application 232 Introduction
concepts de base graphique
Application
Exercice 2:
Classes: 2ème années DSI
Modification heure
entry: clignoter heure
Action
58
9/18/2024
Chapitre 7
Chapitre 7
Diagramme d’états-transitions Diagramme d’états-transitions
Principes et Représentation Principes et Représentation
233 Introduction
concepts de base graphique
Application 234 Introduction
concepts de base graphique
Application
Application
Enseignante : S. Mnif
l’alarme se déclenche pendant une minute sinon le sas point de décision?
redevient vide et fermé. 2. A quoi servent le Join et le Fork et quelle est la
Lorsqu’un intrus essaie d’accéder au sas l’alarme se
différence?
déclenche durant une minute
Donner le diagramme d'état-transition
q Bibliographie
§ OMG, 2017, Unified Modeling Langage specification
version 2.5.1, 2017.
[Link]
Enseignante : Salima MNIF
§ Roques, P. , 2005, UML 2 par la pratique, Études de cas
Enseignante : S. Mnif
Contact : [Link]@[Link]
et exercices corrigés, Edition Eyrolles.
[Link]
§ Remy Manu, Diagramme d’états-transitions consulté le
20/02/2019.
[Link] Version en ligne disponible au lien [Link]
59
9/18/2024
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes et concepts de Principes et concepts de
237 Introduction
Introduction
base
Application 238 Introduction
Introduction
base
Application
Classes: 2ème années DSI
Enseignante : S. Mnif
Ø ⊗ nœud de fin flot (état de sortie),
Les transitions sont franchies lors de la fin des Ø ◊ nœud de décision (choix).
actions ; des étapes peuvent être réalisées en Points de - s ’ a p p l i q u e a u x f l o t s d e - est relatif à une seule classe
différence c o n t r ôl e e t a u x f l o t s d e pour décrire son évolution.
parallèle ou en séquence. données propres à un
q Il doit représenter l’ensemble des actions réalisées ensemble d’activités.
p a r l e s y s t èm e , a ve c t o u s l es b ra n c he m e n t s
conditionnels et toutes les boucles possibles.
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
239 Introduction Application 240 Introduction Application
conceptsbase
de base conceptsbase
de base
Classes: 2ème années DSI
Enseignante : S. Mnif
q Une action correspond à un traitement qui modifie
l’état du système.
q Cette action consiste à affecter une valeur à un attribut, créer
ou détruire un objet, effectuer une opération, envoyer un
signal à un autre objet ou à soi-même.
q Une activité peut recevoir des paramètres en entrée et en
produire en sortie.
60
9/18/2024
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
241 Introduction Application 242 Introduction Application
conceptsbase
de base conceptsbase
de base
1. 1. Action
Classes: 2ème années DSI
Enseignante : S. Mnif
l’activité de destination.
q Il n’y a pas d’événement associé à la transition.
q L’enchaînement des actions constitue le flot de contrôle.
q Représentation graphique :
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
243 Introduction Application 244 Introduction Application
conceptsbase
de base conceptsbase
de base
1. 1. Nœud initial: Exemple de représentation d’une activité :
Classes: 2ème années DSI
Enseignante : S. Mnif
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
245 Introduction Application 246 Introduction Application
conceptsbase
de base conceptsbase
de base
1.3. Nœud de bifurcation (fourche) FORK: Exemples de représentation d’un nœud de bifurcation:
Classes: 2ème années DSI
Enseignante : S. Mnif
également plusieurs activités de destination. Dès
qu’il est franchi, toutes les activités de destination
sont enclenchées en parallèle. Nœud de bifurcation
q Représentation graphique :
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
247 Introduction Application 248 Introduction Application
conceptsbase
de base conceptsbase
de base
1.4. Nœud de jonction (synchronisation) JOIN: 1.4. Nœud de jonction (synchronisation) JOIN:
Classes: 2ème années DSI
Enseignante : S. Mnif
Exemples de représentation
bifurcation. d’un nœud de jonction:
q Un enchaînement d’activités de type synchronisation
possède plusieurs activités d’origine et une seule
activité de destination. Il faut que toutes les activités
d’origine soient terminées pour qu’il soit franchi et
que l’activité de destination soit enclenchée.
62
9/18/2024
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
249 Introduction Application 250 Introduction Application
conceptsbase
de base conceptsbase
de base
1.5. Nœud de Test-Décision: Exemple de représentation d’un nœud de Test-Décision:
Classes: 2ème années DSI
Enseignante : S. Mnif
condition2.
entrée.
q On peut aussi utiliser seulement deux flots de sortie:
le premier correspondant à la condition vérifiée et
l’autre traitant le cas sinon. Quelle est la différence entre un nœud de
q Représentation graphique : bifurcation et un nœud de Test-Décision?
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
251 Introduction Application 252 Introduction Application
conceptsbase
de base conceptsbase
de base
Exemples de représentation d’un nœud de Test-Décision: Exemple de représentation d’un nœud de Test-Décision:
Classes: 2ème années DSI
Enseignante : S. Mnif
63
9/18/2024
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
253 Introduction Application 254 Introduction Application
conceptsbase
de base conceptsbase
de base
Exemple :
Classes: 2ème années DSI
rejetée retenue
Enseignante : S. Mnif
Enseignante : S. Mnif
Lettre de
refus Convocation
Préparation Préparation
entretien d'entretien
technique DRH
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
255 Introduction Application 256 Introduction Application
conceptsbase
de base conceptsbase
de base
1.6. Couloirs d’activités Exemple
Classes: 2ème années DSI
Enseignante : S. Mnif
64
9/18/2024
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
257 Introduction Application 258 Introduction Application
conceptsbase
de base conceptsbase
de base
Les couloirs d’activités servent à identifier les objets 1.7. Actions de communication
Classes: 2ème années DSI
Enseignante : S. Mnif
q Les types d’événement concernés sont :
ü signal,
ü écoulement du temps.
q Représentation graphique :
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes et concepts de Principes et concepts de
259 Introduction
base
Application
Application 260 Introduction
base
Application
Application
Classes: 2ème années DSI
Enseignante : S. Mnif
Si le siège est défavorable, le projet est abandonné et la banque est
prévenue. Si le siège accepte de cofinancer le projet, on attend la infructueuses sont enregistrées dans un fichier sur le serveur.
réponse de la banque pour décider de poursuivre ou de réétudier le Une fois l'identification faite, un terminal est ouvert et l'utilisateur
dossier. peut alors saisir des commandes qui sont interprétées par le démon
Quand les deux réponses sont positives, un dossier de financement
et exécutées sur le serveur.
définitif est établi puis le projet est lancé. La commande exit déconnecte le client du serveur.
65
9/18/2024
Chapitre 8
Chapitre 8
Diagramme d’activités Diagramme d’activités
Principes et concepts de Principes et concepts de
261 Introduction
base
Application
Application 262 Introduction
base
Application
Classes: 2ème années DSI
Enseignante : S. Mnif
exercices corrigés, Edition Eyrolles.
jusqu’à ce qu’ils soient bien fermes. Les incorporer délicatement à la
préparation chocolat sans les briser. Verser dans des ramequins individuels.
Mettre au frais au moins 3 heures au réfrigérateur avant de servir.
1. Représentez une version 1 du diagramme d’activité en supposant que vous
avez des ressources illimitées.
2. Représentez une version 2 du diagramme d’activité en supposant que vous
avez deux personnes pour réaliser la recette.
Chapitre 9
composant UML?
MODÉLISATION OBJET
UML2 264 Introduction
Introduction
Principes et concepts de
Conclusion
base
66
9/18/2024
Chapitre 9 Qu'est-ce qu'un diagramme de Les éléments d'un diagramme de
Chapitre 9
composant UML? composant UML
Principes et concepts de Principes
Principes et
et concepts de
265 Introduction
Introduction Conclusion 266 Introduction Conclusion
base conceptsbase
de base
Classes: 2ème années DSI
Enseignante : S. Mnif
p a r l e s les connexions peuvent
qGrâce à un diagramme de composant UML, il est possible de mieux logiciels eux-mêmes,
composants ou être établies.
comprendre la structure d'un système logiciel et de faciliter la tels que les
les exigences
communication entre les différents acteurs impliqués dans son exécutables, les
imposées à ceux-
fichiers sources, les
développement. ci.
librairies, etc.
Chapitre 9
Chapitre 9
Les interfaces et les ports Un composant
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
267 Introduction Conclusion 268 Introduction Conclusion
conceptsbase
de base conceptsbase
de base
Classes: 2ème années DSI
Les interfaces spécifient Les ports sont des points de remplaçable dans son environnement.
des contrats que les connexion à travers qEst une unité autonome qui encapsule l'état et le
Enseignante : S. Mnif
Enseignante : S. Mnif
classes ou les composants lesquels les composants comportement d'un certain nombre de classificateurs.
doivent remplir. peuvent communiquer. qPrécise un contrat formel des services qu'il fournit à
ses cl ients et de ceux qu'i l exige des autres
composants ou des services dans le système en
Source : [Link]
termes de ses interfaces fournies et requises.
67
9/18/2024
Chapitre 9 Les éléments d'un diagramme de
Chapitre 9
composant UML Notations possibles
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
269 Introduction Conclusion 270 Introduction Conclusion
conceptsbase
de base conceptsbase
de base
Classes: 2ème années DSI
Enseignante : S. Mnif
Source : [Link]
Source : [Link]
Chapitre 9
Un composant composite composants
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
271 Introduction Conclusion 272 Introduction Conclusion
conceptsbase
de base conceptsbase
de base
Classes: 2ème années DSI
Dépendance
Enseignante : S. Mnif
Enseignante : S. Mnif
La dépendance représente une
connexion entre deux composants, où un
changement dans un composant peut
affecter un autre.
Utilisation
L'utilisation indique qu'un composant
peut utiliser un service ou une interface
fournie par un autre composant.
Source : [Link]
68
9/18/2024
Chapitre 9
Chapitre 9
Exemples de Composants Conclusion
Principes
Principes et
et concepts de Principes et concepts de
273 Introduction Conclusion 274 Introduction Conclusion
Conclusion
conceptsbase
de base base
Classes: 2ème années DSI
Enseignante : S. Mnif
entre les parties prenantes.
relations d'héritage et interagissent pour leur rôle dans
de dépendance. former des sous- l'architecture 2 Visualisation
Ces diagrammes fournissent une vue claire des composants et de leurs
systèmes. logicielle. interrelations, aidant ainsi à identifier les opportunités d'optimisation et
d'amélioration du système.
3 Déploiement
Ils peuvent également être utilisés pour planifier le déploiement et la
configuration physique des systèmes logiciels.
4 Conception modulaire
Facilite la conception modulaire du système en mettant en lumière les sous-
systèmes et leurs composants.
Chapitre 9
Chapitre 9
Conclusion Bibliographie
Principes et concepts de Principes et concepts de
275 Introduction Conclusion
Conclusion 276 Introduction Conclusion
Conclusion
base base
q Bibliographie
Classes: 2ème années DSI
Enseignante : S. Mnif
Facilite la compréhension de la
structure et du fonctionnement
Améliore la communication
entre les membres de l'équipe de
Permet d'optimiser l'architecture
logicielle en identifiant les
exercices corrigés, Edition Eyrolles.
d'un système logiciel. développement et les parties dépendances et les interactions [Link]
prenantes. entre composants.
69
9/18/2024
Rôle du diagramme de
Chapitre 9
déploiement
MODÉLISATION OBJET
UML2 278 Introduction
Introduction
Principes et concepts de
Conclusion
base
Modélisation statique
Enseignante : S. Mnif
Développement des Systèmes d’Information
Chapitre 9
déploiement UML Noeud
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
279 Introduction Conclusion 280 Introduction Conclusion
conceptsbase
de base conceptsbase
de base
70
9/18/2024
Chapitre 9
Chapitre 9
Les chemins de communications Les chemins de communications
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
281 Introduction Conclusion 282 Introduction Conclusion
conceptsbase
de base conceptsbase
de base
Classes: 2ème années DSI
Enseignante : S. Mnif
qIl est possible de faire figurer sur ce lien :
§ les cardinalités ; Source : Spécification UML 2.5
Chapitre 9
Un artefact Un artefact
Principes
Principes et
et concepts de Principes
Principes et
et concepts de
283 Introduction Conclusion 284 Introduction Conclusion
conceptsbase
de base conceptsbase
de base
Classes: 2ème années DSI
Enseignante : S. Mnif
d’artefacts.
qOn dit que l’artefact est la manifestation du modèle qu’il Source : Spécification UML 2.5
implémente.
q Ce sont les artefacts qui sont déployés sur les nœuds et
non pas les composants.
71
9/18/2024
Chapitre 9 Les avantages du diagramme de
Chapitre 9
Bibliographie
déploiement
Principes et concepts de Principes et concepts de
285 Introduction
base Conclusion
Conclusion 286 Introduction
base
Conclusion
Classes: 2ème années DSI
Enseignante : S. Mnif
[Link]
potentiels.
Planification efficace
Facilite la planification et l'organisation des
déploiements logiciels dans un environnement
matériel.
72