Tâche: Structurer le modèle de cas d'utilisation
Cette tâche explique comment structurer le modèle de cas d'utilisation afin de faciliter la compréhension et la maintenance des exigences. Ceci implique d'exploiter la banalisation entre les cas d'utilisation et les acteurs et d'identifier les comportements facultatif et exceptionnel.
Objet

Objectifs de cette tâche :

  • Extraire le comportement des cas d'utilisation devant être considérés comme des cas d'utilisation abstraits. Il peut s'agir par exemple de comportements communs, facultatifs, exceptionnels ou de comportements développés au cours d'itérations ultérieurs.
  • Identifier de nouveaux acteurs abstraits qui définissent des rôles partagés par plusieurs acteurs.
Relations
RôlesPrincipal: Complémentaire: Auxiliaire:
EntréesObligatoire: Facultatif:
  • Aucun
Externe:
  • Aucun
Sorties
Etapes
Identification d'exigences communes

Pour structurer le modèle de cas d'utilisation, la première étape consiste à comprendre les exigences communes à plusieurs cas d'utilisation. Analysez chaque cas d'utilisation et notez toutes les similitudes.

Vous utiliserez ces notes lors des étapes ultérieures (inclusions, extensions et généralisations) pour limiter les redondances. L'objectif est de rendre les exigences plus compréhensibles et faciles à gérer, NON de définir une décomposition fonctionnelle à utiliser pour la conception.

La création de nouveaux cas d'utilisation ne constitue pas forcément la meilleure méthode pour gérer les exigences communes. Vous pouvez par exemple transférer le contenu commun vers d'autres produits d'exigences, tels que le glossaire et les  spécifications supplémentaires et créer les liens nécessaires dans les cas d'utilisation.

Mise en place de relations d'inclusion entre les cas d'utilisation

Si un cas d'utilisation contient un comportement dont seul le résultat compte, et non la méthode utilisée, ce comportement peut être transféré vers un nouveau cas d'utilisation d'inclusion. Le cas d'utilisation d'origine devient alors le cas d'utilisation de base dans le cadre d'une relation d'inclusion avec le cas d'utilisation d'inclusion. Voir aussi les Instructions : Modèle de cas d'utilisation et les Instructions : Relation d'inclusion.

Une relation d'inclusion entre deux cas d'utilisation signifie qu'une instance de cas d'utilisation suivant la description du cas d'utilisation de base doit également suivre la description du cas d'utilisation d'inclusion.

La relation d'inclusion peut aider à éclaircir un cas d'utilisation en :

  • Isolant et en encapsulant les détails complexes, afin qu'ils ne masquent pas la signification réelle du cas d'utilisation.
  • Améliorant la cohérence, grâce à des comportements inclus dans plusieurs cas d'utilisation de base.

Notez qu'un cas d'utilisation d'inclusion doit servir pour plusieurs cas d'utilisation : sinon, cela ne vaut pas la peine de gérer un cas d'utilisation supplémentaire et la relation d'inclusion associée.

Seul le cas d'utilisation de base connaît la relation entre les deux cas d'utilisation : aucun cas d'utilisation d'inclusion ne sait dans quels autres cas d'utilisation il est inclus.

Décrivez la relation d'inclusion en indiquant brièvement l'objet de l'inclusion, ainsi que l'emplacement où l'inclusion doit être insérée dans le cas d'utilisation de base.

Dans la description du flux d'événements du cas d'utilisation de base, vous devez faire référence à l'inclusion à l'endroit où elle devra être insérée.

Mise en place de relations d'extension entre les cas d'utilisation

Si un cas d'utilisation contient des comportements optionnels ou exceptionnels qui ne sont pas nécessaires à la compréhension de l'objet du cas d'utilisation, transférez ces comportements vers un nouveau cas d'utilisation d'extension. Le cas d'utilisation d'origine devient alors un cas d'utilisation de base, avec lequel le cas d'utilisation d'extension a une relation d'extension. Voir aussi les Instructions : Modèle de cas d'utilisation et les Instructions : Relation d'extension.

Dans le cas d'utilisation de base, vous pouvez définir des points d'extension qui indiquent où des extensions peuvent être effectuées dans le cas d'utilisation. Voir aussi les Instructions : Cas d'utilisation.

Les sous-flux complexes et les comportements optionnels se prêtent particulièrement bien à la relation d'extension. Ces comportements sont souvent complexes et difficiles à décrire : si vous les incluez dans le flux d'événements du cas d'utilisation, vous risquez de perdre de vue le comportement "normal". En décrivant ce comportement optionnel à part, vous favorisez la compréhension du modèle de cas d'utilisation.

Assurez-vous que le flux d'événements du cas d'utilisation de base est toujours complet et compréhensible, sans aucune référence au cas d'utilisation d'extension.

Seul le cas d'utilisation d'extension connaît la relation entre les deux cas d'utilisation. Le cas d'utilisation de base sait uniquement qu'il comporte des points d'extension, mais il ne connaît pas les cas d'utilisation d'extension auxquels il est rattaché.

Décrivez brièvement toutes les relations d'extension que vous définissez. Indiquez les conditions qui doivent être remplies pour que l'extension puisse être réalisée. N'oubliez pas de définir le point d'extension où l'insertion doit être effectuée dans le cas d'utilisation de base.

  • Si vous ne définissez aucune condition, l'extension est toujours effectuée. 
  • Si le cas d'utilisation d'extension comporte plusieurs comportements qui doivent être insérés à différents points d'extension dans le cas d'utilisation de base, vous devez définir ces comportements et le point d'extension associé à chaque comportement dans le cas d'utilisation de base.
Mise en place de généralisations entre les cas d'utilisation

Si plusieurs cas d'utilisation présentent des structures ou des comportements similaires, vous pouvez transférer ce comportement commun vers un nouveau cas d'utilisation parent. Les cas d'utilisation d'origine deviendront alors des cas d'utilisation enfant dans le cadre de relations de généralisation avec le parent. Le cas d'utilisation enfant hérite de tous les comportements décrits pour le cas d'utilisation parent. Voir aussi les Instructions : Modèle de cas d'utilisation et les Instructions : Généralisation de cas d'utilisation.

Une relation de généralisation entre deux cas d'utilisation signifie qu'une instance de cas d'utilisation suivant la description d'un cas d'utilisation enfant doit également suivre la description du cas d'utilisation parent.

Notez qu'au moins deux cas d'utilisation enfant doivent hériter du même parent : sinon, cela ne vaut pas la peine de gérer un cas d'utilisation parent et la relation de généralisation associée. Il existe toutefois une exception : deux cas d'utilisation, l'un étant une spécialisation de l'autre, mais chacun d'entre eux devant être instanciables séparément.

Seul le cas d'utilisation enfant connaît la relation entre les deux cas d'utilisation : aucun cas d'utilisation parent ne sait quels cas d'utilisation enfant l'utilisent.

Pour faciliter la compréhension du modèle, décrivez brièvement la relation de généralisation. Expliquez notamment pourquoi vous avez créé cette relation de généralisation.

Dans le flux d'événements du cas d'utilisation enfant, vous devez expliquer comment l'enfant va modifier les séquences de comportement héritées en insérant de nouveaux segments de comportement.

Mise en place de généralisations entre les acteurs

Les acteurs ont des caractéristiques communes que vous devez modéliser en définissant des généralisations entre ces acteurs. Il est préférable de définir ces relations après avoir terminé la première ébauche du modèle de cas d'utilisation.

Rédigez une brève description de ces généralisations entre les acteurs et incluez-les dans les diagrammes de cas d'utilisation, pour plus de clarté.

Pour plus d'informations, voir les Instructions : Généralisation entre acteurs.

Organiser le contenu du modèle de cas d'utilisation en packages

Si un grand nombre d'éléments est associé au modèle de cas d'utilisation, vous serez peut-être amené à organiser les cas d'utilisation en packages de cas d'utilisation. Pour plus d'informations sur cette option, voir les Instructions : Package de cas d'utilisation.

Evaluation des résultats

Vous devez sans cesse revoir les relations d'extension, d'inclusion et de généralisation avec le client et les utilisateurs, et vous assurer qu'ils comprennent bien les cas d'utilisation et les acteurs qui en résultent et sont d'accord avec vos descriptions.

Vous devez évaluer votre modèle de cas d'utilisation à ce stade afin de vous assurer que votre travail semble correct, mais il est inutile de faire un contrôle détaillé. Vous devez revoir les cas d'utilisation et les relations nouvellement définis avec le client et les utilisateurs, afin de vous assurer qu'ils comprennent bien les cas d'utilisation et approuvent les descriptions associées.

Pour obtenir des recommandations sur ce qu'il faut rechercher au cours d'une revue, reportez-vous à la Liste de contrôle : Modèle de cas d'utilisation.

Propriétés
Plusieurs occurrences
Commandé par les événements
En cours
Facultatif
Planifié
Réitérable
Plus d'informations