Vous êtes sur la page 1sur 4

Dans un diagramme de cas d'utilisation, les relations « extend » et « include » sont utilisées

pour modéliser les interactions entre différents cas d'utilisation. Voici les différences entre les
deux :

1. Include (Inclusion) :
 Utilisé pour spécifier qu'un cas d'utilisation (appelé cas d'utilisation inclus)
inclut le comportement d'un autre cas d'utilisation (appelé cas d'utilisation
inclus).
 Le cas d'utilisation inclus est nécessaire pour le cas d'utilisation principal.
 Le cas d'utilisation inclus est toujours exécuté lorsque le cas d'utilisation
principal est déclenché.
 Représenté par une flèche avec une ligne solide partant du cas d'utilisation
principal vers le cas d'utilisation inclus.
2. Extend (Extension) :
 Utilisé pour spécifier qu'un cas d'utilisation (appelé cas d'utilisation étendu)
peut étendre le comportement d'un autre cas d'utilisation (appelé cas
d'utilisation de base).
 Le cas d'utilisation étendu est facultatif et ne se produit que dans certaines
conditions.
 Le cas d'utilisation étendu ajoute des fonctionnalités optionnelles au cas
d'utilisation de base.
 Représenté par une flèche pointant depuis le cas d'utilisation étendu vers le
cas d'utilisation de base, avec une étiquette indiquant la condition sous
laquelle l'extension se produit.

En résumé, l'inclusion (include) est utilisée pour modéliser les fonctionnalités obligatoires
partagées entre différents cas d'utilisation, tandis que l'extension (extend) est utilisée pour
modéliser les fonctionnalités optionnelles ou étendues qui peuvent être activées dans
certaines conditions.

L'extension dans un diagramme de cas d'utilisation est généralement soumise à une


condition, mais ce n'est pas une obligation absolue. Dans de nombreux cas, elle est
conditionnelle, ce qui signifie qu'elle est déclenchée uniquement dans certaines circonstances
ou sous certaines conditions spécifiques. Cependant, il est possible d'utiliser l'extension sans
condition, mais cela dépendra du contexte et des exigences du système que vous modélisez.
En règle générale, l'extension est utilisée pour représenter des fonctionnalités facultatives qui
peuvent être activées dans des scénarios particuliers mais pas dans d'autres.

Extend dans l’exemple : Gestion des produits


L'utilisation de l'extension dans un diagramme de cas d'utilisation permet de modéliser des
fonctionnalités facultatives qui peuvent être déclenchées dans certains scénarios spécifiques,
mais pas dans d'autres. Dans le cas Gérer les produits, si la modification d'un produit n'est
pas une action toujours nécessaire lors de la gestion des produits et qu'elle est déclenchée
dans des situations particulières, vous pourriez utiliser l'extension pour représenter cette
relation.
Par exemple, le cas d'utilisation principal "Gérer les produits" couvrirait les actions générales
liées à la gestion des produits. Ensuite, vous pourriez avoir un cas d'utilisation "Modifier un
produit" qui étend le cas d'utilisation principal. Cela signifierait que la fonctionnalité de
modification est disponible dans certains cas spécifiques, mais pas dans tous les scénarios de
gestion de produits.

Dans le cas de la gestion des produits, si la modification d'un produit est une action
optionnelle mais qui peut être déclenchée dans des scénarios spécifiques, vous pouvez en
effet utiliser la relation d'extension pour modéliser cette fonctionnalité.

Par exemple, supposons que la modification d'un produit ne soit nécessaire que dans des cas
particuliers, tels que lorsque le produit est en rupture de stock ou lorsqu'il y a une erreur
dans les informations du produit. Dans ce cas, vous pourriez avoir un cas d'utilisation
principal "Gérer les produits", qui couvre les actions générales liées à la gestion des produits.
Ensuite, vous pouvez avoir un cas d'utilisation "Modifier un produit" qui étend le cas
d'utilisation principal. Cela signifierait que la fonctionnalité de modification est disponible
dans certains cas spécifiques, mais pas dans tous les scénarios de gestion de produits.

En résumé, l'utilisation de l'extension dans ce contexte permet de modéliser des


fonctionnalités optionnelles qui peuvent être déclenchées dans certains scénarios spécifiques,
mais pas dans d'autres.

Pour modéliser les actions principales telles que "ajouter un produit", "supprimer un produit"
et "modifier un produit" comme des cas d'utilisation de base, vous les représenteriez
simplement comme des cas d'utilisation individuels dans votre diagramme de cas
d'utilisation. Chaque cas d'utilisation représente une action distincte que l'utilisateur peut
effectuer dans le système. Par exemple :

1. Cas d'utilisation : Ajouter un produit


 Description : Permet à l'utilisateur d'ajouter un nouveau produit au système.
 Acteurs : Utilisateur
 Scénario principal :
1. L'utilisateur sélectionne l'option pour ajouter un nouveau produit.
2. Le système affiche le formulaire de saisie des informations du produit.
3. L'utilisateur saisit les détails du produit.
4. L'utilisateur valide les informations du produit.
5. Le système enregistre le nouveau produit dans la base de données.
2. Cas d'utilisation : Supprimer un produit
 Description : Permet à l'utilisateur de supprimer un produit existant du
système.
 Acteurs : Utilisateur
 Scénario principal :
1. L'utilisateur sélectionne l'option pour supprimer un produit.
2. Le système affiche la liste des produits disponibles.
3. L'utilisateur sélectionne le produit à supprimer.
4. L'utilisateur confirme la suppression du produit.
5. Le système supprime le produit de la base de données.
3. Cas d'utilisation : Modifier un produit
 Description : Permet à l'utilisateur de modifier les détails d'un produit existant
dans le système.
 Acteurs : Utilisateur
 Scénario principal :
1. L'utilisateur sélectionne l'option pour modifier un produit.
2. Le système affiche la liste des produits disponibles.
3. L'utilisateur sélectionne le produit à modifier.
4. Le système affiche le formulaire pré-rempli avec les informations
actuelles du produit.
5. L'utilisateur met à jour les détails du produit.
6. L'utilisateur valide les modifications.
7. Le système enregistre les modifications dans la base de données.

Ces cas d'utilisation sont considérés comme des cas d'utilisation de base car ils représentent
des actions principales et essentielles que l'utilisateur peut effectuer dans le système de
gestion des produits.

La relation d'extension (extend) est utilisée dans un diagramme de cas d'utilisation pour
modéliser des fonctionnalités optionnelles qui peuvent être ajoutées à un cas d'utilisation de
base. Elle permet de décrire un scénario alternatif qui peut être déclenché par un acteur mais
qui n'est pas obligatoire pour l'exécution du cas d'utilisation principal.

D'autre part, la généralisation entre les cas d'utilisation est utilisée pour modéliser une
relation de type "est-un" entre les cas d'utilisation. Elle indique qu'un cas d'utilisation enfant
possède toutes les fonctionnalités du cas d'utilisation parent et peut également avoir des
fonctionnalités supplémentaires propres à lui-même.

Dans le cas de la gestion des produits, si vous avez des cas d'utilisation de base tels que
"ajouter un produit", "supprimer un produit", et "modifier un produit", vous pouvez les
modéliser comme des cas d'utilisation de base sans utiliser la relation d'extension. Si vous
avez des fonctionnalités optionnelles qui peuvent être ajoutées à ces cas d'utilisation de base,
alors vous pourriez utiliser la relation d'extension pour les modéliser.

la généralisation peut être utilisée à la fois entre les acteurs et entre les cas d'utilisation
dans un diagramme de cas d'utilisation.

 Généralisation entre acteurs : cela se produit lorsque plusieurs acteurs partagent des
caractéristiques ou des comportements communs. Par exemple, vous pourriez avoir
une généralisation entre un "utilisateur" et un "administrateur" si l'administrateur est
un type spécial d'utilisateur avec des fonctionnalités supplémentaires.
 Généralisation entre cas d'utilisation : cela se produit lorsque plusieurs cas
d'utilisation partagent des fonctionnalités ou des interactions communes. Par
exemple, vous pourriez avoir une généralisation entre "ajouter un produit" et
"supprimer un produit" si ces deux cas d'utilisation partagent des fonctionnalités
communes liées à la gestion des produits.

Le MCD (Modèle Conceptuel de Données) est une étape importante dans la conception
d'une application, car il permet de comprendre les entités métier et les relations entre elles.
Cependant, le MCD seul n'est pas suffisant pour concevoir entièrement une application. Voici
pourquoi :

1. Focus sur les données uniquement : Le MCD se concentre principalement sur la


structure des données et les relations entre les entités. Il ne prend pas en compte les
aspects comportementaux de l'application, tels que les interactions utilisateur, les flux
de travail, ou les règles métier.
2. Niveau d'abstraction : Le MCD reste à un niveau d'abstraction élevé, décrivant les
entités métier de manière abstraite. Pour concevoir une application, il est nécessaire
de descendre à un niveau plus détaillé et de prendre en compte des aspects tels que
l'interface utilisateur, la logique métier et les interactions système.
3. Intégration avec d'autres aspects de la conception : La conception d'une
application implique également la définition des classes, des méthodes, des
interfaces, etc. Ces éléments sont généralement représentés dans un diagramme de
classes UML. Le MCD peut servir de base pour la conception de la base de données,
mais il doit être complété par d'autres modèles pour concevoir l'ensemble de
l'application.

En résumé, le MCD est une étape importante mais initiale dans la conception d'une
application. Il doit être complété par d'autres modèles et documents, tels que les
diagrammes de classes UML, les diagrammes de séquence, les diagrammes d'activité, etc.,
pour concevoir l'ensemble de l'application de manière complète et précise.

Vous aimerez peut-être aussi