Instructions: Relation d'inclusion
La relation d'inclusion connecte un cas d'utilisation de base à un cas d'utilisation d'inclusion. Ces instructions expliquent comment utiliser cette relation.
Relations
Description principale

Explication

La relation d'inclusion connecte un cas d'utilisation de base à un cas d'utilisation d'inclusion. Le cas d'utilisation d'inclusion est toujours abstrait. Il décrit un segment de comportement inséré dans une instance de cas d'utilisation qui exécute le cas d'utilisation de base. Le cas d'utilisation de base contrôle la relation à l'inclusion et peut dépendre du résultat de l'action d'inclusion, mais ni le cas de base ni le cas d'inclusion ne peuvent accéder à leurs attributs respectifs. Dans ce sens, l'inclusion est encapsulée et représente un comportement qui peut être réutilisé dans différents cas d'utilisation de base.

La relation d'inclusion vous permet de :

  • Extraire le comportement du cas d'utilisation de base qui n'est pas nécessaire à la compréhension de la finalité première du cas d'utilisation, seul son résultat compte.
  • Extraire le comportement qui est commun à deux cas d'utilisation ou plus.

Exemple :

Dans un guichet automatique, les cas d'utilisation Retirer des espèces, Déposer des espèces et Virer des fonds ont tous besoins d'inclure la manière dont le client est identifié par le système. Ce comportement peut être extrait dans un nouveau cas d'utilisation d'inclusion appelé Identifier le client, que les trois cas d'utilisation de base incluent. Les cas d'utilisation de base sont indépendants de la méthode utilisée pour l'identification, qui est donc encapsulée dans le cas d'utilisation d'inclusion. Du point de vue des cas d'utilisation de base, que la méthode d'identification consiste en la lecture d'une carte bancaire ou en une analyse rétinienne n'a aucune importance. Ils dépendent uniquement du résultat de l'opération Identifier le client, qui correspond à l'identité de ce dernier. Inversement, du point de vue du cas d'utilisation Identifier le client, peu importe la manière dont les cas d'utilisation de base utilisent l'identité du client ou quelles ont été les opérations réalisées en leur sein avant l'inclusion : la méthode d'identification est exactement la même.

Diagramme décrit dans le texte d'accompagnement.

Dans un guichet automatique, les cas d'utilisation Retirer des espèces, Déposer des espèces et Virer des fonds incluent tous le cas d'utilisation Identifier le client.

Un cas d'utilisation de base peut comporter plusieurs inclusions. Un cas d'utilisation d'inclusion peut être inclus dans plusieurs cas d'utilisation de base. Cela n'indique aucune relation entre les cas d'utilisation de base. Il peut même exister plusieurs relations d'inclusion entre les mêmes cas d'utilisation d'inclusion et cas d'utilisation de base, à condition que l'inclusion soit insérée à des emplacements différents du cas d'utilisation de base. C'est la relation d'inclusion qui définit l'emplacement en question. Tous les ajouts peuvent être imbriqués, ce qui signifie qu'un cas d'utilisation d'inclusion peut servir de cas d'utilisation de base pour une autre inclusion.

Un cas d'utilisation d'inclusion étant abstrait, il ne requiert pas d'être associé à un acteur. Une association de communication à un acteur n'est requise que si le comportement dans l'inclusion implique de manière explicite une interaction avec un acteur.

Exécution de l'inclusion

Le comportement de l'inclusion est inséré dans un emplacement du cas d'utilisation de base. Lorsqu'une instance de cas d'utilisation suivant la description d'un cas d'utilisation de base atteint un emplacement du cas d'utilisation de base depuis lequel une relation d'inclusion est définie, cette instance suit alors la description du cas d'utilisation d'inclusion. Une fois l'inclusion réalisée, l'instance de cas d'utilisation reprend où elle s'était arrêtée dans le cas d'utilisation de base.

Diagramme décrit dans le texte d'accompagnement.

Une instance de cas d'utilisation suivant la description d'un cas d'utilisation de base, y compris son inclusion.

La relation d'inclusion n'est pas conditionnelle : l'instance de cas d'utilisation est toujours exécutée, à partir du moment où elle atteint l'emplacement du cas d'utilisation de base pour lequel elle est définie. Si vous souhaitez exprimer une condition, vous devez le faire dans le cadre du cas d'utilisation de base. L'instance de cas d'utilisation n'est pas exécutée si elle n'atteint jamais l'emplacement pour laquelle la relation d'inclusion est définie.

Diagramme décrit dans le texte d'accompagnement.

L'instance de cas d'utilisation n°1 atteint l'emplacement dans le cas d'utilisation de base pour lequel la relation d'inclusion est définie et l'inclusion est réalisée. L'instance de cas d'utilisation n°2 n'atteint pas cet emplacement et l'inclusion n'est donc pas réalisée dans le cadre de cette instance.

Le cas d'utilisation d'inclusion constitue un segment de comportement continu, inclus en totalité dans un emplacement du cas d'utilisation de base. Si vous disposez de segments de comportement distincts devant être insérés à différents emplacements, il est conseillé de recourir plutôt à une relation d'extension (voir Instructions relatives au produit : Relation d'extension) ou la généralisation de cas d'utilisation (voir Instructions relatives au produit : Généralisation de cas d'utilisation).

Description de la relation d'inclusion

Pour la relation d'inclusion, il est conseillé de définir l'emplacement dans la séquence de comportement du cas d'utilisation de base où doit être insérée l'inclusion. Cet emplacement peut être défini en faisant référence à une étape ou à un flux secondaire donnés du flux d'événements du cas d'utilisation de base.

Exemple :

Dans le guichet automatique, le cas d'utilisation Retirer des espèces inclut le cas d'utilisation Identifier le client. La relation d'inclusion entre Retirer des espèces et Identifier le client peut être décrite comme suit :

Identifier le client est inséré entre les sections 1.1 Début du cas d'utilisation et 1.2 Demander le montant dans le flux d'événements de Retirer des espèces.

A des fins de clarté, vous devez également mentionner l'inclusion dans le texte décrivant le flux d'événements du cas d'utilisation de base.

Exemple d'utilisation

S'il existe un segment de comportement de cas d'utilisation dans lequel vous pouvez voir que le cas d'utilisation ne dépend pas de la manière dont sont réalisées les opérations, mais qui dépend du résultat de la fonction, vous pouvez simplifier le cas d'utilisation par extraction de ce comportement dans un cas d'utilisation d'inclusion. Le cas d'utilisation d'inclusion peut être inclus dans plusieurs cas d'utilisation de base, ce qui signifie qu'il vous permet de réutiliser le comportement dans les cas d'utilisation du modèle. Examinez la description étape par étape ci-dessous de cas d'utilisation d'un système téléphonique simple :

Appel

  1. L'appelant décroche le combiné.
  2. Le système émet une tonalité.
  3. L'appelant compose un chiffre.
  4. Le système désactive la tonalité.
  5. L'appelant compose le reste du numéro.
  6. Le système analyse le numéro et localise l'adresse réseau de l'appelé.
  7. Le système détermine si un circuit virtuel peut être établi entre l'appelant et l'appelé.
  8. Le système alloue toutes les ressources au circuit virtuel et établit la connexion.
  9. Le système déclenche la sonnerie du téléphone de l'appelé.
  10. Etc.

Démarrer le système

  1. L'opérateur active le système.
  2. Le système réalise des tests de diagnostic sur tous les composants.
  3. Le système teste les connexions de tous les systèmes adjacents. Pour chaque système adjacent, le système détermine si un circuit virtuel peut être établi entre un système adjacent et lui. Le système alloue toutes les ressources au circuit virtuel et établit la connexion.
  4. Le système répond qu'il est prêt à fonctionner.
  5. Etc.

Le texte affiché en bleu présente de fortes similitudes ; dans les deux cas, nous réalisons le même comportement, bien que ce soit pour des raisons très différentes. Cette similarité peut être exploitée et l'on peut extraire le comportement commun dans un nouveau cas d'utilisation : Gérer le circuit virtuel.

Une fois le comportement commun extrait, le cas d'utilisation devient :

Appel

  1. L'appelant décroche le combiné.
  2. Le système présente une tonalité.
  3. L'appelant compose un chiffre.
  4. Le système désactive la tonalité.
  5. L'appelant compose le reste du numéro.
  6. Le système analyse le numéro et détermine l'adresse réseau de l'appelé.
  7. Incluez le cas d'utilisation Gérer le circuit virtuel pour établir une connectivité au sein du réseau.
  8. Le système déclenche la sonnerie du téléphone de l'appelé.
  9. Etc.

Démarrer le système

  1. L'opérateur active le système.
  2. Le système réalise des tests de diagnostic sur tous les composants.
  3. Le système teste les connexions de tous les systèmes adjacents. Pour chaque système adjacent (itération), incluez Gérer le circuit virtuel afin d'établir une connectivité au sein du réseau.
  4. Le système répond qu'il est prêt à fonctionner.
  5. Etc.

Dans un diagramme de cas d'utilisation, la relation d'inclusion créée sera illustrée comme suit :

Diagramme décrit dans le texte d'accompagnement.

Les cas d'utilisation Appel et Démarrer le système incluent tous les deux le comportement du cas d'utilisation abstrait Gérer le circuit virtuel.