0% ont trouvé ce document utile (0 vote)
22 vues67 pages

Diagrammes de classe en modélisation UML

La Partie I du document traite de la modélisation statique à travers les diagrammes de classe, qui définissent la structure et les relations entre les objets d'un système. Elle aborde des concepts clés tels que les classes, les attributs, les opérations, ainsi que les relations d'association, d'agrégation et d'héritage. Le document explique également des notions comme l'encapsulation, la dépendance et les interfaces, essentielles pour la conception de systèmes orientés objet.

Transféré par

glodielukose
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
22 vues67 pages

Diagrammes de classe en modélisation UML

La Partie I du document traite de la modélisation statique à travers les diagrammes de classe, qui définissent la structure et les relations entre les objets d'un système. Elle aborde des concepts clés tels que les classes, les attributs, les opérations, ainsi que les relations d'association, d'agrégation et d'héritage. Le document explique également des notions comme l'encapsulation, la dépendance et les interfaces, essentielles pour la conception de systèmes orientés objet.

Transféré par

glodielukose
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Partie I: Modélisation statique

Partie I: Modélisation statique

Allegra Nzeba

2023-2024
Partie I: Modélisation statique

II.1 Diagramme de classe

Diagrammes de classe I

Denition
Le diagramme de classe permet de spécier la structure et les liens
entre les objets qui composent le système.(les Objets interagissent
entre eux et avec les acteurs pour réaliser des cas d'utilisations dans
un système).
Un objet peut intervenir dans la réalisation de plusieurs cas
d'utilisation
Le diagramme de classe spécie QUI sera à l'÷uvre dans le
système pour réaliser les fonctionnalités décrites par le
diagramme de cas d'utilisation.
Le diagramme de classe ne tient pas compte de l'aspect
temporel
Partie I: Modélisation statique

II.1 Diagramme de classe

Diagrammes de classe II

Il modélise les classe et relations du système indépendamment


du langage de programmation
Les principaux éléments de ce diagramme sont les classe et les
relations (association, généralisation et plusieurs type de
dépendance telle que la réalisation et l'utilisation)
Partie I: Modélisation statique

II.1 Diagramme de classe

Instance d'une classe

Instance d'une classe I

Une instance est une concrétisation d'un concept abstrait.


Concept : Ordinateur
Instance : l'ordinateur qui contient le cours projeté en ce
moment est une instance de la classe machine. il a sa propre
taille, sa propre quantité de mémoire utilisé,...
Un objet est une instance d'une classe.
Un lien est une instance d'une association
Une classe spécie la manière dont tous les objets de même
type seront décrits.
Partie I: Modélisation statique

II.1 Diagramme de classe

Classe et Objets

Classe et Objets I

Une Classe décrit un ensemble


d'objet ayant la même sémantique
et des caractéristiques communes Figure  Ex : Une
(des mêmes attributs, méthodes et classe
relations)
Une classe est composée d'un nom,
des attributs et des méthodes.
Une classe est un classeur
représenté par un rectangle divisé
en trois compartiments indiquant
respectivement le nom de la
classe, les attributs et les
opérations.
Partie I: Modélisation statique

II.1 Diagramme de classe

Propriétés : Attribut et Opérations

Propriétés : Attribut et Opérations I

Les attributs et les opérations constituent les propriétés


d'une classe.
le nom des propriétés doivent commencer par une lettre
minuscule
Lorsque la classe est instanciée, les attributs prennent des
valeurs (c'est comme des variables attachée à des objets). Un
attribut est une donnée d'une classe ;
Partie I: Modélisation statique

II.1 Diagramme de classe

Propriétés : Attribut et Opérations

Propriétés : Attribut et Opérations II

Une opération décrit un service oert par la classe (Un


traitement que peuvent eectuer les objets d'une classe).
On peut initialiser un attribut et dénir sa visibilité lors de sa
déclaration. Ex : visibilité nomAttribut :nomClasse=valeur
Une opération est dénie par son nom, ses paramètres et leurs
types ainsi que le type de sa valeur de retour. Ex : visibilité
nomOperation (parametre ) typeRetour
Une opération est la spécication d'une méthode
indépendamment de son implémentation. c'est la signature
d'une méthode.
Partie I: Modélisation statique

II.1 Diagramme de classe

Propriétés : Attribut et Opérations

Propriétés : Attribut et Opérations III

Figure  Ex : La classe Ordinateur


Partie I: Modélisation statique

II.1 Diagramme de classe

Propriétés : Attribut et Opérations

Propriétés : Attribut et Opérations IV

La visibilité dénit la possibilité pour un élément de la


modélisation de référencé un autre élément se trouvant dans
un espace de nom diérent, il en existe quatre prédénies.
Public ou + : tout les éléments qui peuvent voir le conteneur
peuvent aussi voir l'élément indiqué ;
Protected ou # : seul l'élément situé dans le conteneur ou
ses descendants peuvent voir l'élément indiqué.
Private ou - :seul un élément situé dans le conteneur peut
voir l'élément
Package ou  : seul un élément déclaré dans le même
paquetage peut voir l'élément
Le marquer de visibilité pour une classe se situe au niveau de
chacune des caractéristique d'une classe (attribut et méthode)
et indique si une autre peut y avoir accès ;
Partie I: Modélisation statique

II.1 Diagramme de classe

Propriétés : Attribut et Opérations

Propriétés : Attribut et Opérations V

Dans un paquetage le marqueur de visibilité se situe sur les


éléments contenus dans le paquetage (Ex : les classes) et
indique si un autre paquetage peut voir ses éléments
Partie I: Modélisation statique

II.1 Diagramme de classe

Relation entre classe

Relation entre classe I

Il existe plusieurs type de relation entre les classes :


L'association représentent une relations sémantique entre les
objets d'une classe.
L'agrégation décrit une relation de composition ou de
contenance.
L'héritage est une relation de Généralisation/Spécialisation
qui permet l'abstraction.
La dépendance est une relation unidirectionnelle qui exprime
une dépendance sémantique entre les éléments du modèle.
Partie I: Modélisation statique

II.1 Diagramme de classe

Relation d'Association

Relation d'Association I
Denition
Une association est une relation entre deux ou plusieurs classe qui
décrit les connexions structurelles entre leurs instance. Elle indique
qu'il peut y avoir un lien entre les classe de la relation. Une
association peut avoir un nom, une multiplicité et une navigation.
Elle est représentée par un trait.
Association Binaire : Association n-aire : elle
représenté par un trait relie plus de deux classes
plein entre les classes et est représentée par un
associées, elle peut avoir grand losange et un
un nom et une chemin partant de
navigation. chaque classe qui
participe à l'association.
Partie I: Modélisation statique

II.1 Diagramme de classe

Cardinalité/Multiplicité

Cardinalité/Multiplicité I

La cardinalité détermine le nombre d'objet d'une classe pouvant


être en relation avec un autre objet d'une autre classe.
ˆ 1 ou 1..1 Exactement un objet
ˆ * ou 0..* Plusieurs objets
ˆ 1..* au moins un objet
ˆ 2..5 De deux à cinq objets
Partie I: Modélisation statique

II.1 Diagramme de classe

Navigabilité

Navigabilité I

Denition
La navigabilité indique le sens de la relation. Elles est représentée
par une éché du coté de la terminaison navigable et une croix du
coté de la terminaison non navigable.

Figure  Ex : navigabilité
Partie I: Modélisation statique

II.1 Diagramme de classe

Classe d'association

Classe d'association I

Denition
Une association peut avoir ses propres attributs qui ne sont
disponibles dans aucune classe qu'elle lie. Dans un modèle objet,
seule les classes peuvent avoir des attributs et donc cette
association se transformera en une classe dite Classe d'association.
Une classe d'association est issue de la relation entre deux
classes et possède ses propres attributs ;
Elle est rattachée à l'association d'où elle provient par un trait
en continu.
Une relation de plusieurs à plusieurs (1..* ; 0..* ; *..*) génère
une classe d'association.
Partie I: Modélisation statique

II.1 Diagramme de classe

Classe d'association

Classe d'association II

Figure  Ex : Classe d'association


Partie I: Modélisation statique

II.1 Diagramme de classe

Agrégation/Composition

Agrégation/Composition I

L'agrégation
ˆ L'agrégationˆ permet de modéliser une relation où une classe
constitue un élément plus grand (tout) qui est composé
d'éléments plus petits (partie).
C'est une association qui représente une relation
d'inclusion structurelle ou comportementale d'un
élément (agrégé) dans un ensemble(agrégat). Elle est
représentée par une association avec un losange vide du
coté de l'agrégat (Tout).
L'agrégation ne contraint pas la navigabilité ou même la
durée de vie des parties par rapport au tout.
Partie I: Modélisation statique

II.1 Diagramme de classe

Agrégation/Composition

Agrégation/Composition II

Figure  Ex : Agregation
Partie I: Modélisation statique

II.1 Diagramme de classe

Agrégation/Composition

Agrégation/Composition III
La composition ou agrégation composite
ˆ Elle décrit une contenance structurelle entre instance, ce qui
signie que la destruction de l'objet composite implique celle
de ses composants.
ˆ La multiplicité du coté composite ne doit pas être supérieur
à 1 (Ex :1 ou 0..1). Elle est représentée par un losange plein
du coté de l'agrégat.
ˆ L'agrégation ne contraint pas la navigabilité ou même la durée
de vie des parties par rapport au tout.

Figure  Ex : Composition
Partie I: Modélisation statique

II.1 Diagramme de classe

Généralisation et héritage

Généralisation et héritage I

La généralisation décrit une relation entre une classe


générale (classe parent) et une classe spéciale (sous classe). La
classe spéciale est cohérente à la classe parent mais avec
quelques informations supplémentaires (attribut, méthode,
association).
La relation de généralisation se traduit par le concept
d'héritage (relation d'héritage),
L'héritage permet la classication d'objet. Représentée par un
trait plein avec un triangle fermé à son extrémité désignant le
cas le plus général.
Une classe peut avoir plusieurs parents, on parle d'héritage
multiple.
Partie I: Modélisation statique

II.1 Diagramme de classe

Généralisation et héritage

Généralisation et héritage II

Figure  Ex : Héritage
Partie I: Modélisation statique

II.1 Diagramme de classe

Encapsulation

Encapsulation I

L'encapsulation consiste à protéger une partie du système en


dénissant le niveau de visibilité des éléments d'un connecteur
(classe, package, ...)
Dans un diagramme de classes UML, l'encapsulation est
représentée par la visibilité des attributs et des opérations. Les
attributs sont généralement déclarés comme privés (-) ou
protégés (#), tandis que les opérations sont souvent publiques
(+).
Partie I: Modélisation statique

II.1 Diagramme de classe

Encapsulation

Encapsulation II

Figure  Ex : Encapsulation
Partie I: Modélisation statique

II.1 Diagramme de classe

Dépendance

Dépendance I

La dépendance est souvent utilisée quand une classe en utilise une


autre comme argument dans la signature d'une opération. La
modication de la classe utilisée (dont on dépend) implique celle
qui utilise (qui dépend).
Example
classe Course qui utilise une classe Voiture. La classe Course
dépend de la classe Voiture car elle utilise des objets de type
Voiture pour eectuer ses opérations.
Partie I: Modélisation statique

II.1 Diagramme de classe

Dépendance

Dépendance II

Types de dépendances Il existe diérents types de dépendances,


notamment :
Dépendance d'utilisation : une classe utilise une autre classe.
Dépendance d'abstraction : une classe dépend d'une
interface ou d'une classe abstraite.
Dépendance de permission : une classe a la permission
d'accéder aux membres (Attributs ou méthodes) d'une autre
classe même si ces éléments ne sont pas public. (Exemple :Une
classe utilisateur peut avoir la permission d'accéder aux
attributs pivés de la classe CompteBancaire pour eectuer des
opérations sur le compte).
Partie I: Modélisation statique

II.1 Diagramme de classe

Dépendance

Dépendance III

Quand utiliser la dépendance ?


La dépendance est une relation faible qui est souvent utilisée
lorsque :
Une classe utilise une autre classe comme paramètre d'une
méthode.
Une classe utilise une autre classe comme variable locale dans
une méthode.
Une classe utilise une autre classe comme type de retour d'une
méthode.
Partie I: Modélisation statique

II.1 Diagramme de classe

Dépendance

Dépendance IV

Diérence entre dépendance et association


La dépendance est souvent confondue avec l'association, mais il
existe une diérence importante entre les deux. L'association
implique une relation structurelle entre deux classes, tandis que la
dépendance implique une relation d'utilisation.
En d'autres termes, l'association indique qu'une classe a une
référence à une autre classe, tandis que la dépendance indique
qu'une classe utilise une autre classe d'une manière ou d'une autre.
Partie I: Modélisation statique

II.1 Diagramme de classe

Dépendance

Dépendance V

Figure  Ex : Dépendance
Partie I: Modélisation statique

II.1 Diagramme de classe

Interface

Interface I

Denition
Une interface est un contrat ou une spécication que les classes
peuvent choisir de mettre en ÷uvre. Elle dénit un ensemble
d'opérations (méthodes) qu'une classe doit fournir, mais ne spécie
pas comment ces opérations sont implémentées.
Dans un diagramme de classes, une interface est représentée
par un rectangle avec le stéréotype " interface " en haut.
Les opérations de l'interface sont listées dans le compartiment
inférieur du rectangle.
Une interface doit être réalisée par au moins une classe. Une
classe peut réaliser plusieurs interface (on utilise le stéréotype
realize) et une classe peut dépendre d'une interface (on
utilise le stéréotype use).
Partie I: Modélisation statique

II.1 Diagramme de classe

Interface

Interface II

Example
une interface Conductible qui dénit les opérations démarrer(),
accélérer() et freiner(). Une classe Voiture peut choisir de mettre
en ÷uvre cette interface et de fournir des implémentations
concrètes pour ces opérations.

Quand une classe dépend d'une interface (Interface requise)


pour réalisée ses opérations, on l'appelle Classe cliente de
l'interface.
Partie I: Modélisation statique

II.1 Diagramme de classe

Interface

Interface III

La relation de dépendance est utilisée entre la classe cliente et


l'interface requise.

Figure  Ex : Un classe interface "Dessinable"


Partie I: Modélisation statique

II.1 Diagramme de classe

Construction du diagramme de classe

Construction du diagramme de classe I

Le Diagramme de classe est utilisé pour représenté un système à


diérents niveaux d'abstraction :
ˆ Spécication En mettant l'accent sur les interfaces des
classes plus-tôt que leurs contenu
ˆ Conceptuel En capturant les concepts du domaine et les liens
entre eux. Ici on ne s'intéresse pas à la manière d'implémenter
les concepts et leurs relations dans un langage
d'implémentation
ˆ Implantation En détaillant le contenu et l'implémentation de
chaque classe. c'est ce qui est le plus utilisé.
Partie I: Modélisation statique

II.1 Diagramme de classe

Construction du diagramme de classe

Construction du diagramme de classe II

Pour construire un Diagramme de classe, il faut :


Trouver les classes du domaine étudié ;
1

Trouver les associations entre classes (Sous la forme verbale


2

mettant en relation plusieurs classes)


Trouver les attributs des classe
3

Organiser et simplier le modèle en utilisant l'héritage et en


4

supprimant les redondances.


Partie I: Modélisation statique

II.2 Diagramme d'objet

Diagrammes d'objet

Denition
Le Diagramme d'objet permet de représenter les objets d'un
système à un instant donné. Il permet :
ˆ D'illustrer le diagramme de classe (par un exemple en précisant
certains aspects non présenté dans le diagramme de classe) ;
ˆ De représenter une image du système à un moment donné (en
montrant des cas particulier ou non généralisables ou
imperceptibles dans un diagramme de classe)
ˆ Le diagramme d'objet ne montre pas l'évolution du système
dans le [Link] modélise Les faits alors que le diagramme
de classe modéliser les règle.
Partie I: Modélisation statique

II.2 Diagramme d'objet

Représentation

Représentation I

Un objet se présente comme une classe mais sans opérations ;


Le nom de la classe dont l'objet est l'instance est précédée
d'un " : " et est souligné.
L'identiant d'un objet peut se placer devant le nom de la
classe pour le diérencier des autres et les nom des objets sont
soulignés ;
Les valeurs ou l'état d'un objet peuvent être spéciées

Prenons l'exemple d'une classe Voiture avec les attributs


marque, modèle et couleur. Un objet de la classe Voiture
pourrait être voiture1 : Voiture avec les valeurs marque =
"Nissan", modèle = "Note" et couleur = "Grise".
Partie I: Modélisation statique

II.2 Diagramme d'objet

Représentation

Représentation II
Les relations du diagramme de classe, deviennent des liens
dans un diagramme d'objet, la relation de généralisation
n'est jamais représentée
Les multiplicités ne sont naturellement pas représentées ;
La classe d'association ne peut être associée qu'à une instance
de chacune des classes qui y sont associées ;

La relation de dépendance d'instanciation (stéréotypée


instance of) décrit la relation entre un classeur et ses
instances. Les liens sont reliés aux associations et les objets
aux classes.
Partie I: Modélisation statique

II.2 Diagramme d'objet

Lien Entre objets

Lien Entre objets

Un Lien est une instance d'une association


On représente le lien comme une association mais s'il porte un
nom, on le souligne
Un lien ne porte pas de multiplicité au niveau des objets
Les relations entre objets sont représentées par des liens, qui
sont des lignes reliant les objets. Les liens peuvent être décorés
pour indiquer le type de relation, comme l'association,
l'agrégation ou la composition.
Les diagrammes d'objets sont utilisés pour :
Illustrer des scénarios d'utilisation spéciques.
Montrer l'état d'un système à un moment précis.
Comprendre le comportement des objets et leurs interactions.
Tester la conception d'un système.
Partie I: Modélisation statique

II.2 Diagramme d'objet

Relation de dépendance d'instanciation

Relation de dépendance d'instanciation I

La relation de dépendance d'instanciation permet de décrire


la relation qui existe entre un classeur et ses instances
Elle relie les associations aux liens et les classes aux objets.
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Diagrammes de paquetage (Package)


Denition
C'est une représentation graphique qui permet d'organiser et
structurer les éléments d'un modèle complexe en groupes logiques.
Les paquetages : conteneurs pouvant contenir des classes, des
interfaces, des composants, d'autres paquetages, etc. Ils aident à
structurer et à simplier les modèles complexes en les décomposant
en unités (fonctionnelle, thématique, etc.) plus petites et plus
faciles à gérer.
Un paquetage est représenté par un rectangle avec un onglet en
haut à gauche. son nom est inscrit à l'intérieur du rectangle. Les
éléments contenus dans le paquetage peuvent être représentés à
l'intérieur du rectangle ou y être liés par des dépendances.
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Utilisation des diagrammes de packages

Utilisation des diagrammes de packages I

Organiser les modèles :


Regrouper les éléments par fonctionnalité, domaine métier,
couche d'architecture, etc.
Créer une structure hiérarchique pour reéter l'organisation du
système.
Gérer les dépendances :
Visualiser les relations de dépendance entre les packages.
Identier les cycles de dépendance potentiels.
Faciliter la collaboration :
Attribuer des responsabilités pour chaque package à des
équipes ou des développeurs.
Favoriser le travail parallèle sur diérentes parties du système.
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Concepts clés

Concepts clés

Package : Représenté par un rectangle avec le nom du


package en haut et le stéréotype package.
Dépendance : Représentée par une èche en pointillé entre
deux packages.
Visibilité : Indique le niveau d'accès aux éléments d'un
package (public, protégé, privé).
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Dépendance entre paquetage

Dépendance entre paquetage I

La dépendance entre paquetages indique qu'un paquetage


utilise ou dépend d'éléments (classes, interfaces, etc.) d'un
autre paquetage. Cette relation est importante pour
comprendre comment les diérents paquetages d'un système
interagissent et sont liés les uns aux autres.
Si une classe du paquetage A utilise une classe du paquetage
B, on dira que le paquetage A dépend du paquetage B.
La dépendance entre paquetages est représentée par une èche
pointillée dirigée du paquetage dépendant vers le paquetage
indépendant.
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Dépendance entre paquetage

Dépendance entre paquetage II

Example
Un paquetage  Gestion des commandes  peut dépendre d'un
paquetage  Gestion des stocks  pour accéder aux informations
sur les produits et les quantités en stock.

Les dépendances entre paquetages peuvent avoir un impact sur


la modularité et la maintenance d'un système. Une forte
dépendance entre paquetages peut rendre le système plus dicile à
modier et à faire évoluer. Il est donc important de bien gérer les
dépendances entre paquetages pour assurer la qualité et la
maintenabilité du système.
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Type de dépendance : import, access, merge

Type de dépendance : import, access, merge I

Il existe diérents types de dépendances entre paquetages,


notamment :
Dépendance d'utilisation "import" : un paquetage utilise
les éléments d'un autre paquetage.
Si le paquetage A import le paquetage B, le paquetage A
importera tous les éléments publiques du paquetage B :
Example
Un package  Gestion des commandes  utilise un package 
Gestion des stocks  pour accéder aux informations sur les produits
et les quantités en stock.
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Type de dépendance : import, access, merge

Type de dépendance : import, access, merge II

Dépendance d'abstraction "access" : un paquetage dépend


des interfaces ou des classes abstraites d'un autre paquetage.
Elle permet au paquetage A d'accéder à tous les éléments
publique du paquetage B :
Example
Un package  Gestion des paiements  dépend d'un package 
Fournisseurs de paiement  qui dénit des interfaces pour diérents
modes de paiement (carte de crédit, PayPal, etc.).
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Type de dépendance : import, access, merge

Type de dépendance : import, access, merge III

Dépendance de permission "merge" : un paquetage a la


permission d'accéder aux éléments d'un autre paquetage.
Cette dépendance correspond à la fusion de deux paquetage :
Example
Un package  Analyse de données  a la permission d'accéder aux
éléments d'un package  Base de données  pour extraire et
analyser des données.
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Type de dépendance : import, access, merge

Figure  Ex : Modèle MVC (Modele-Vue-Controleur)


Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Exemple

Exemple d'un Système de gestion de bibliothèque

Le diagramme de packages permet de visualiser rapidement


l'organisation du système et les relations entre les diérents
modules.
Packages :
Gestion des livres
Gestion des emprunts
Gestion des utilisateurs
Dépendances :
Gestion des emprunts → Gestion des livres
Gestion des emprunts → Gestion des utilisateurs
Partie I: Modélisation statique

II.3. Diagramme de paquetage (Package)

Exercice

Exercices

1 Quel est le rôle principal d'un diagramme de packages ?


2 Associez les notations clés aux éléments de diagramme
correspondants.
3 Créer un diagramme de package pour Organisez les éléments
d'une application de gestion de contacts en packages et
représentez les dépendances.
Partie I: Modélisation statique

II.4. Diagramme de composants

Diagramme de composants

Ce diagramme permet de visualiser l'architecture d'un système


logiciel.
Ils permettent de représenter les diérents composants qui
constituent le système, leurs interfaces et leurs interactions.
Partie I: Modélisation statique

II.4. Diagramme de composants

Qu'est-ce qu'un composant ?

Qu'est-ce qu'un composant ?

Denition
Un composant est un élément modulaire et autonome qui encapsule
un ensemble de fonctionnalités et fournit des services à travers des
interfaces. Il peut s'agir de bibliothèques, de modules, de services
web, etc.
Partie I: Modélisation statique

II.4. Diagramme de composants

Utilisation des diagrammes de composants

Utilisation des diagrammes de composants I


Représenter l'architecture globale :
Identier les principaux composants du système.
Visualiser les relations entre les composants (dépendances,
associations).
Mettre en évidence les interfaces fournies et requises par
chaque composant.
Décrire l'architecture détaillée :
Décomposer les composants en sous-composants pour plus de
précision..
Représenter les ports (points d'interaction) et les connecteurs
(liens) entre les composants.
Faciliter la communication :
Utiliser les diagrammes de composants comme support pour
les discussions architecturales.
Permettre aux développeurs de comprendre rapidement la
structure du système.
Partie I: Modélisation statique

II.4. Diagramme de composants

Concepts clés

Concepts clés
Composant : Représenté par un rectangle avec le stéréotype
component.
Interface fournie : Représentée par un cercle (ou lollipop)
attaché au composant.
Interface requise : Représentée par un demi-cercle (ou
socket) attaché au composant.
Dépendance : Représentée par une èche en pointillé entre
deux composants.
Port : Représenté par un petit rectangle sur le bord du
composant.
Connecteur : Représenté par une ligne entre deux ports.
Partie I: Modélisation statique

II.4. Diagramme de composants

Exemple de diagramme de composant

Prenons l'exemple d'un système de commerce


électronique
Composants : Panier, Paiement, Stocks, Catalogue.
Interfaces :
Paiement : fournit une interface pour eectuer le paiement.
Panier : requiert une interface pour accéder au catalogue.
Dépendances : Le composant "Panier" dépend du
composant "Catalogue" (Panier → Catalogue).
Le diagramme de composants de ce système permet de visualiser
rapidement son architecture et les relations entre les diérents

éléments.
Partie I: Modélisation statique

II.4. Diagramme de composants

Exercice

Exercice

1 Qu'est-ce qu'un composant en UML ?


2 Associez les notations clés aux éléments de diagramme
correspondants.
3 Création : Modélisez l'architecture d'une application de gestion
de tâches à l'aide d'un diagramme de composants.
Partie I: Modélisation statique

II.5. Diagramme de Déploiement

Diagramme de Déploiement I

Denition
Le diagramme de déploiement montre l'architecture physique d'un
système, incluant les n÷uds matériels (ordinateurs, appareils
mobiles, etc.), les logiciels qui s'exécutent sur ces n÷uds, et les
connexions entre eux. Il est utilisé pour visualiser la disposition
physique des composants logiciels et matériels, et pour comprendre
comment les diérents éléments du système interagissent à un
niveau physique.
Denition
Un n÷ud est un élément matériel (serveur, ordinateur, mobile) ou
un environnement d'exécution (serveur d'applications, conteneur)
sur lequel sont déployés des éléments logiciels.
Partie I: Modélisation statique

II.5. Diagramme de Déploiement

Concepts clés

Concepts clés
N÷ud : représente un élément physique, tel qu'un ordinateur,
un serveur, un appareil mobile ou un capteur. Les n÷uds sont
représentés par des cubes en 3D avec le nom du n÷ud.
Composant : Représenté par un rectangle avec le stéréotype
component.
Artefact : représente un élément physique qui est le résultat
d'un processus de développement logiciel, tel qu'un chier
exécutable, une bibliothèque ou une base de données. Les
artefacts sont représentés par des rectangles avec le stéréotype
artifact.
Dépendance : Représentée par une èche en pointillé entre
deux éléments.
Connexion : représente une communication entre deux n÷uds.
Peuvent être de diérents types, tels que des connexions
réseau, des connexions USB ou des connexions sans l. Les
connexions sont représentées par des lignes entre deux n÷uds.
Partie I: Modélisation statique

II.5. Diagramme de Déploiement

Utilisations des diagrammes de déploiement

Utilisations des diagrammes de déploiement

Les diagrammes de déploiement sont utilisés pour :


Visualiser l'architecture physique d'un système.
Comprendre comment les diérents éléments du système
interagissent à un niveau physique.
Planier le déploiement d'un système.
Documenter l'architecture physique d'un système.
Partie I: Modélisation statique

II.5. Diagramme de Déploiement

Exemple

Exemple de diagramme de déploiement I

Un diagramme de déploiement pour une application Web pourrait


montrer les serveurs Web, les serveurs d'applications, les serveurs
de base de données et les clients Web, ainsi que les connexions
entre eux.
N÷uds :
Serveur web
Serveur d'applications
Serveur de base de données
Composants :
Application web
API
Base de données
Artefacts :
Fichiers WAR
Fichiers JAR
Partie I: Modélisation statique

II.5. Diagramme de Déploiement

Exemple

Exemple de diagramme de déploiement II

Scripts SQL

Figure  Exemple de diagramme de déploiement pour une application


Web
Partie I: Modélisation statique

II.5. Diagramme de Déploiement

Exercice

Exercices

1 Quel est le rôle principal d'un diagramme de déploiement ?


2 Associez les Concepts clés aux éléments de diagramme
correspondants.
3 Créer un diagramme de composant pour Représentez
l'architecture physique d'une application mobile avec un
serveur backend.
Partie I: Modélisation statique

II.6. Diagramme de structure composite

Diagramme de structure composite

Un outil pour visualiser l'architecture interne des éléments


structurels tels que les classes, les composants et les n÷uds.
il permet de représenter les parties qui composent un élément,
leurs relations et leurs interactions
Partie I: Modélisation statique

II.6. Diagramme de structure composite

Concepts clés

Concepts clés

Parties : Les éléments constitutifs d'une structure composite.


Ce sont des instances de classes ou de composants qui sont
contenus dans l'élément composite.
Ports : Les points d'interaction entre les parties et l'extérieur
de la structure composite. Ils dénissent les interfaces et les
points de communication.
Connecteurs : Les liens qui relient les parties entre elles ou
avec des ports. Ils représentent les relations et les échanges de
messages.
Collaboration : Un ensemble de rôles et de connecteurs qui
dénissent un comportement spécique au sein de la structure
composite.
Partie I: Modélisation statique

II.6. Diagramme de structure composite

Utilisation des diagrammes de structure composite

Utilisation des diagrammes de structure composite I

1 Structure interne des classes :


Visualiser les attributs et les méthodes d'une classe en tant
que parties.
Représenter les relations entre les parties (agrégation,
composition, etc.).
Identier les points d'interaction avec d'autres classes via des
ports.
2 Architecture des composants :
Décomposer un composant en sous-composants et en
interfaces.
Décrire les interactions entre les composants via des
connecteurs.
Spécier les points d'entrée et de sortie du composant à l'aide
de ports.
Partie I: Modélisation statique

II.6. Diagramme de structure composite

Utilisation des diagrammes de structure composite

Utilisation des diagrammes de structure composite II

3 Concevoir des systèmes complexes :


Représenter l'architecture globale d'un système en reliant les
diagrammes de structure composite des diérents éléments.
Identier les dépendances et les interactions entre les
sous-systèmes.
Partie I: Modélisation statique

II.6. Diagramme de structure composite

Exemple du diagramme de structure composite

Prenons l'exemple d'une classe "Voiture"

Le diagramme de structure composite de la classe "Voiture" permet


de visualiser en détail sa composition et son fonctionnement interne.
Parties : Moteur, Roues, Carrosserie, Habitacle.
Ports : Port d'entrée pour l'essence, port de sortie pour les
gaz d'échappement.
Connecteurs : Relations entre les parties par exemple, le
moteur est connecté aux roues(moteur → roues).
Partie I: Modélisation statique

II.6. Diagramme de structure composite

Exercice

Exercice

1 Quelles sont les diérences entre une partie et un port dans un


diagramme de structure composite ?
2 Associez les concepts clés aux éléments de diagramme
correspondants.
3 Modélisez la structure interne d'une cafetière à l'aide d'un
diagramme de structure composite.

Vous aimerez peut-être aussi