Dans l’activité de conception et de développement de logiciels, un Use Case joue un rôle crucial dans la phase d’analyse car il fournit la description de la façon dont il peut être utilisé, définissant son interaction avec l’utilisateur.
Pour simplifier, nous pourrions le définir comme une sorte de manuel d’instructions du logiciel lui-même.
C’est le point de départ de la définition des cas de test eux-mêmes.
Le concept de « cas d’utilisation » a été introduit pour la première fois en 1987 par Ivar Jakobs, mais sa diffusion a eu lieu à partir du début des années 90, à la suite de la publication du volume : « Object-Oriented Software Engineering. Une approche axée sur les cas d’utilisation ».
Les cas d’utilisation sont utilisés à diverses fins, notamment :
- la gestion et le suivi des besoins ;
- identification des classes et des objets ;
- conception et codage ;
- élaboration de la documentation de l’application ;
- formation ;
- développement de cas tests.
Comme prévu, les cas d’utilisation et les cas de test ne peuvent pas être confondus. Si les premiers, en effet, contiennent des actions séquentielles qui décrivent les interactions entre l’utilisateur et le système, les seconds contiennent des conditions, des entrées et des sorties pour valider le fonctionnement du logiciel lui-même.
Si, par ailleurs, le cas d’usage concerne les exigences du logiciel, le second, comme mentionné, en dépend précisément et vise à vérifier le comportement du logiciel lui-même.
Aujourd’hui, l’expression « Use Case » est entrée dans le langage commun à tel point qu’elle est également utilisée dans d’autres contextes que la conception logicielle, comme, par exemple, la modélisation des processus métier (et la réingénierie des processus métier).