Les méthodologies de développement logiciel ont évolué rapidement au cours des dernières décennies, passant d’une documentation lourde et précoce selon le modèle en cascade à des pratiques agiles légères et itératives. Pendant longtemps, le « cas d’utilisation » traditionnel — un pilier de l’ingénierie logicielle orientée objet — a été perçu comme incompatibles avec les frameworks modernesframeworks agilescomme Scrum et Kanban. Il était souvent critiqué pour être trop centré sur les documents et trop lent.
Entrez Use-Case 2.0. Introduit par Ivar Jacobson, Ian Spence et Brian Kerr, ce framework moderne réinvente le cas d’utilisation classique pour qu’il soit léger, évolutif et polyvalent. Il est conçu pour combler le fossé entre les avantages structurels des cas d’utilisation et la flexibilité du développement agile.
Use-Case 2.0 est l’évolution moderne de l’approche des cas d’utilisation, conçue spécifiquement pour surmonter les limites de la collecte traditionnelle des exigences. Contrairement à son prédécesseur, qui exigeait souvent des détails exhaustifs avant le début du codage, Use-Case 2.0 se concentre sur les éléments essentiels, la livraison itérative et le découpage vertical.
L’innovation centrale de ce framework est la capacité à diviser les cas d’utilisation en morceaux plus petits et gérables, appeléstranches de cas d’utilisation. Cela permet aux équipes de conserver la « vision d’ensemble » de l’architecture du système tout en livrant de la valeur en petits morceaux, adaptés aux sprints, compatibles avec Scrum, SAFe et Agile discipliné.
Use-Case 2.0 repose sur six principes directeurs qui garantissent que le processus reste sobre et centré sur la valeur :
Pour comprendre comment Use-Case 2.0 s’intègre dans l’Agile, il faut comprendre ses artefacts. Le cadre simplifie la documentation lourde du passé en trois composants principaux.
Un cas d’utilisation décrit toujours une interaction orientée vers un objectif entre un acteur (utilisateur) et le système. Toutefois, dans la version 2.0, il n’est pas entièrement détaillé dès le départ. Il commence par un nom, une brève description et le scénario principal de succès. Les détails concernant les flux alternatifs et les exceptions sont ajoutés « juste à temps » au fur et à mesure qu’ils sont prioritaires pour le développement.
La tranche de cas d’utilisation est l’innovation la plus critique de ce cadre. Une tranche est une coupe verticale à travers un cas d’utilisation qui constitue un flux complet de valeur. Elle inclut une partie du récit (histoires), les cas de test pertinentscas de test, et le code nécessaire à sa mise en œuvre.
La découpe permet de diviser un seul cas d’utilisation (par exemple, « Traiter une commande ») sur plusieurs sprints :
Chaque tranche agit comme un élément du backlog : elle est estimable, testable et livrable au cours d’une itération.
Alors que les tranches sont traitées dans le travail quotidien, le modèle de cas d’utilisation reste comme la carte. Il s’agit de l’agrégat de tous les cas d’utilisation, offrant le contexte et l’aperçu architectural que les histoires utilisateur manquent souvent. Cela résout le problème courant de l’Agile où une équipe termine des centaines d’histoires mais perd de vue le comportement global du système.
Beaucoup d’équipes ont du mal à choisir entre les histoires utilisateur et les cas d’utilisation. Use-Case 2.0 affirme qu’il n’est pas nécessaire de choisir ; il offre la structure des cas d’utilisation avec l’agilité des histoires.
| Aspect | Cas d’utilisation classiques (avant 2.0) | Scénarios utilisateur | Use-Case 2.0 |
|---|---|---|---|
| Effort initial | Élevé (spécifications détaillées) | Très faible | Faible → incrémental |
| Vision d’ensemble | Oui | Souvent perdu | Oui (via le modèle d’utilisation) |
| Capacité itérative | Mauvais | Excellent | Excellent (via les tranches) |
| Traçabilité | Fort | Faible | Fort (se traduit par des tests) |
| Focus sur les tests | Manuel / Phase avancée | Critères d’acceptation | Intégré par tranche (TDD) |
| Meilleur environnement | En cascade / structuré | Projets agiles simples | Complexes / Agile d’entreprise |
Adopter cette méthodologie implique un flux de travail cyclique qui s’intègre parfaitement aux sprints agiles standards :
Use-Case 2.0 est particulièrement efficace pour les systèmes d’entreprise, les secteurs réglementés ou les domaines complexes où les simples User Stories sont insuffisants.
Elle offre l’évolutivité en permettant aux équipes de commencer léger et d’ajouter de la formalité uniquement là où nécessaire. Elle garantit l’orientation valeur en obligeant les équipes à penser en termes de parcours utilisateur complets plutôt que de tâches techniques isolées. Enfin, elle résout le problème du dette de documentation ; car le modèle d’utilisation est mis à jour de manière itérative, la documentation évolue avec le code, agissant comme un ensemble de exigences « vivantes » plutôt qu’un archivage figé.