A la découverte des cas d’utilisation

Le site A List Apart nous propose cette semaine un article de vulgarisation sur les cas d’utilisation : What’s the Problem?. Surprenant pour un site à la ligne éditoriale plutôt tournée vers les aspects techniques. En tout cas, les explications sont simples et les diagrammes très sympa :

Les cas d'utilisation selon A List Appart

Puisqu’on est dans le sujet, laissez moi vous donner mon point de vue :

  • Les cas d’utilisations (ou scénarios d’utilisations) servent à modéliser les interactions possibles entre un utilisateur et une application ;
  • Ils sont particulièrement utiles pour mettre à plat un processus et anticiper toutes les configurations possibles ;
  • Les cas d’utilisations sont regroupés au sein de packages qui couvrent l’ensemble des fonctionnalités d’un site ou d’une application en ligne ;
  • Les acteurs doivent être clairement définis (rôle, responsabilités…) en amont de la rédaction de cas d’utilisation ;
  • La notion de cas d’utilisation a été introduite dans le cadre d’UML et de la méthodologie RUP. Il servent à documenter les spécifications fonctionnelles d’un projet.

Dans mon travail, j’utilise mon propre système de représentation graphique des cas d’utilisation qui va un peu plus loin que celui de l’article d’A List Appart :

Les cas d'utilisation selon Canardo

Ce système de représentation a été baptisé Canardo (en hommage à son concepteur) et vous pouvez le trouver sur le fichier suivant : Gabarit de cas d’utilisation (format PPT). Pour info, vous pourrez trouver d’autres ressources de ce type dans la page ‘Publications‘ de ce site.

MAJ (25/01/05) : C’est au tour de Macromedia de nous pondre un article sur la modélisation des processus : Modeling User Workflows for RIAs. L’article est très didactique et les exemples de très bonne qualité :

Modélisation de processus selon Macromedia

Ils en profitent pour faire un peu de promotion pour leurs outils mais bon, il faut bien vivre, non ?

Un commentaire sur “A la découverte des cas d’utilisation

  1. Comme le soulignent les auteurs de « A list Apart » l’ouvrage de Cockburn est la référence dans le domaine des use cases. De plus, pour ceux que cela intéresse, il a été traduit en Français : « Rédiger des cas d’utilisation efficaces ». Le mode de construction proposé est clair, les explications simples, les exemples nombreux. Le modèle de référence peut être utilisé tant pour modéliser des processus métier que des processus d’applications web ou graphiques. Il pousse le concepteur à réflechir en termes de buts comme dans une démarche ergonomique classique.
    Le modèle est avant tout textuel (l’auteur insiste sur les côtés « rédaction », « précision » et « lisibilité ») d’où la nécessité de le complèter par des diagrammes de flux (en plus du diagramme des cas d’utilisation) puis de grilles fonctionnelles. En somme, tout cela consiste à passer progressivement du fonctionnel (global puis détaillé) à l’ergonomie de l’interface. JC

  2. Je ne suis pas expert dans le domaine, mais je crois que ce que tu représentes n’est pas un cas d’utilisation, mais une autre représentation UML, soit le diagramme de séquence (m’enfin, c’est ce que je crois). Le diagramme de cas d’utilisation en UML est particulier car il s’adresse au client pour lui présenter ce qu’on a compris du système, ce qu’il doit faire. Une méthodologie utilisant UML a divers types de diagrammes et celui que tu présentes est utilisé dans notre processus de travail dans une étape suivant les cas d’utilisation.

  3. Je corrige, c’est un diagramme d’activité qui sert à documenter tous les scénarios possibles pour un cas d’utilisation, c’est l’étape suivante (c’est bien d’avoir un architecte fonctionnel/organique sous la main!) On peut aussi, semble-t-il, se servir des diagrammes d’activité pour faire du «Page flow», les fameux schémas de navigation, en UML. Bref, tu es une étape plus loin que ce que ALA présente.

  4. En fait Gou ce n’est ni l’un ni l’autre ! UML est un langage de modélisation très puissant mais qui trouve ça place dans le monde du génie logiciel. Mettre en place une démarche UML pour un projet web me semble un peu trop sur dimensionné.
    La représentation graphique que j’utilise à l’avantage d’être très ludique et de ne pas effrayer les non-initiés (contrairement à un diagramme UML). Son intérêt réside dans le fait que l’on peut facilement faire valider ce document par un client ou une maîtrise d’ouvrage. Ce qui n’est pas toujours le cas avec des représentations graphiques pus formalistes ou pire des dossiers de spécifications.
    /Fred

  5. «Mettre en place une démarche UML pour un projet web me semble un peu trop sur dimensionné.» Peut-être pour des petits projets, mais je dois dire que ça fait ses preuves dans notre organisation. Et je crois bien que ce que tu utilises est un dérivé d’UML, non? UML a l’avantage d’être flexible, d’où son intérêt. Je ne suis pas expert en la matière, à peine un initié… m’enfin, l’important, c’est qu’on réussisse à faire notre travail au mieux et qu’on puisse faire valider le tout auprès du client. Il est vrai que des dossiers de spécifications, c’est vachement complexe pour le client!

  6. Je m’étais fait la même réflexion que gou, ton diagramme ressembe plus, par la graphique mais aussi par le contenu des séquences, à un diagramme d’activités. UML ne propose pas vraiment de démarche précise, il s’agit bien d’un formalisme que l’on peut utiliser sans problèmes dans des grands ou des petits projets même si on le considère plutôt orienté à la démarche objet à cause du fameux diagramme de classes. Il est d’ailleurs quasi impossible d’appliquer tous les diagrammes proposés par UML dans un seul et même projet.
    Il est en tout cas intéressant de noter que l’on envisage enfin l’utilisation d’une démarche plus structurée (éventuellement appuyée par des diagrammes UML) dans la construction de sites web, il m’a été donné de travailler sur les sites de grosses structures qui ne se préoccupées pas tellement de ces détails, la conception du site étant souvent laissée au hasard.

  7. Salut, je reposte au bon endroit : « Très intéressant. Ton « système de représentation graphique », sur quel logiciel le réalises-tu ? D’avance merci. »

  8. En fait, j’utilise tout simplement Powerpoint pour réaliser ces représentation graphique. C’est volontaire de ma part, je voulais utiliser un outils « universel ». Mais pour ceux qui ne souhaitent pas payer de licence Office, ce système de représentation est entièrement compatible avec Open Office.
    /Fred

  9. Je souhaiterais avoir un exemple de modelisation implementant tous les diagrammes uml. Mon choix se porterais sur la gestion des billets à une salle de spectacle par exemple.

  10. Si tu veux voir un exemple de diagramme uml, telecharge Objectering 3.0 sur emule! Et ouvre le meta modele!!! En plus pour toutes tes modelisations sa se fera tout seul, sachant que ce logiciel te permet de générer automatiquement des manuels explicatifsn qu’il gere l’xmi et en plus il te fait maintenant sur la derniere version, la génération des squellettes de ton programme! Aussi bine C++ que JAVA et passant par php…

Laisser un commentaire