- Premièrement, une brève description est rédigée uniquement des étapes nécessaires au déroulement normal du cas d’utilisation (c’est-à-dire la fonctionnalité que le cas d’utilisation fournit).
- Au fur et à mesure que l’analyse progresse, ces étapes sont précisées davantage.
- Enfin, les flux alternatifs et les flux d’exception sont ajoutés au cas d’utilisation.
- Chaque projet peut adopter un modèle standard de cas d’utilisation pour créer des spécifications de cas d’utilisation.
Cas d’utilisation vs. Spécification de cas d’utilisation
Un cas d’utilisation décrit une tâche effectuée par un acteur qui apporte une valeur commerciale. Un cas d’utilisation peut être visualisé sous forme de diagramme de cas d’utilisation et/ou d’un format de spécification textuelle structurée :

- Interaction — Les cas d’utilisation système décrivent comment un acteur interagit avec le système pour atteindre un objectif commercial défini.
- Manuel — Une séquence d’actions effectuées par l’acteur.
- Automatisé — Une séquence d’étapes exécutées par un programme ou un script.
Caractéristiques d’un cas d’utilisation
Un cas d’utilisation a :
- Un seul objectif
- Un point de départ
- Un point d’arrivée
- Plusieurs chemins du départ à l’arrivée
- C’est-à-dire qu’il spécifie le comportement pour diverses conditions possibles
- Chaque condition peut nécessiter des actions spécifiques

Par exemple — Le client paie une facture :

Il existe plusieurs chemins pouratteindre l’objectif:
- Par téléphone
- Par courrier
- En personne
- Par chèque
- En espèces, etc.
Chemins qui ne mènent pas au but:
- Carte de crédit refusée
Approche agile des cas d’utilisation
Le modèle de cas d’utilisation et ses cas d’utilisation individuels évoluent progressivement au fil du temps. Tous les cas d’utilisation du modèle n’ont pas besoin d’être spécifiés au même niveau de détail.
Juste-à-temps et juste-assez
Les cas d’utilisation peuvent être rédigés à différents niveaux de détail et d’étendue, chacun servant une finalité :
- Résumé: Une description générale et un aperçu de haut niveau d’une fonction système ou d’un processus métier.
- Niveau objectif utilisateur: Descriptions liées aux tâches de l’utilisateurobjectifs et de la manière dont ils interagissent avec le système ; descriptions de processus métiers spécifiques. Les cas d’utilisation axés sur les objectifs utilisateur sont généralement considérés comme se situant au niveau des tâches principales de l’utilisateur.
Exemple: Retirer de l’argent à un distributeur automatique est une tâche utile et constituerait un cas d’utilisation de niveau principal, mais saisir votre code PIN n’en serait pas un, car il soutient la tâche principale.
- Sous-fonction: Descriptions des activités de niveau inférieur qui complètent des parties d’un cas d’utilisation principal.

Remarque : Certains cas d’utilisation peuvent être entièrement spécifiés au niveau II. Vous vous arrêtez lorsque vous avez juste assez de détails, obtenus de manière opportune et suffisante.
Spécification détaillée du cas d’utilisation
Un cas d’utilisation détaillé est une représentation textuelle qui décrit une séquence d’événements ainsi que d’autres informations pertinentes relatives au cas d’utilisation selon un format particulier. Les personnes adoptent généralement un modèle standard de cas d’utilisation pour documenter les informations détaillées relatives au cas d’utilisation.

Modèle de cas d’utilisation – Exemple de retrait de cash par distributeur automatique
Comme mentionné précédemment, les cas d’utilisation ont diverses styles de notation (par exemple, graphiques, UML, format texte). Quel que soit le style de notation utilisé, il doit être facile à comprendre. Vous pouvez utiliser un modèle tel que celui de Alistair Cockburn, ou choisir le modèle qui convient le mieux à votre équipe.
| Spécification du cas d’utilisation | ||
|---|---|---|
| Nom du cas d’utilisation : | Retirer de l’argent | |
| Acteurs : | Client (principal), Système bancaire (secondaire) | |
| Description sommaire : | Permet à tout client bancaire de retirer de l’argent de son compte bancaire. | |
| Priorité : | Doit avoir | |
| Statut : | Détail moyen | |
| Préconditions : | Le client bancaire possède une carte à insérer dans le guichet automatique Le guichet automatique est en ligne et fonctionne normalement |
|
| Postconditions : |
|
|
| Flux principal : |
|
|
| Flux alternatifs : | 2a. Carte invalide 2b. Carte insérée à l’envers 5a. Carte volée 5b. Code PIN invalide 10a. Argent insuffisant dans la machine 10b. Valeur monétaire incorrecte dans la machine 11a. Retrait dépasse la limite de retrait 12a. Fonds insuffisants sur le compte bancaire du client 14a. Carte bancaire coincée dans la machine 15a. Le client ne prend pas la carte bancaire 16a. Argent coincé dans la machine 17a. Le client ne parvient pas à prendre l’argent
|
|
| Règles métier : | B1 : Format du code PIN B2 : Nombre de tentatives de code PIN B3 : Options de service B4 : Options de montant B5 : Limites de retrait B6 : La carte doit être prise avant la distribution de l’argent |
|
| Exigences non fonctionnelles : | NF1 : Temps nécessaire pour finaliser la transaction NF2 : Sécurité de l’entrée du code PIN NF3 : Temps autorisé pour récupérer la carte et l’argent NF4 : Prise en charge des langues NF5 : Prise en charge des utilisateurs malvoyants et partiellement voyants |
|