xUseCases

Présentation

xUseCases est un format XML que j'ai conçu dans l'intention de formaliser des cas d'utilisation dans le cadre d'une application.

Si d'autre(s) utilisations(s) sont possibles, je suis preneur...

Ainsi, une fois les cas d'utilisation identifiés et saisis dans un fichier XML, ils peuvent être intégrés dans les spécifications fonctionnelles, mais aussi dans les tests de recette.

Les formats des documents générés sont ceux que permettent la transformation de fichiers XML (via XSL par exemple), notamment HTML ou PDF.

Intérêt

Pourquoi passer par un fichier XML que l'on transforme après, plutôt qu'un document classique, pour ne pas dire Word ?

Afin d'intégrer :

  • Le fichier XML des cas d'utilisation au gestionnaire de version, avec les intérêts que cela induit,
  • La génération du rapport final, en fonction du besoin : le contenu est ainsi centralisé, et dissocié de l'apparence.

En intégrant cette génération à un outil comme Maven, les documents de référence peuvent ainsi être automatiquement publiés. Ils deviennent ainsi accéssibles de manière centralisée, et dans leur plus récente version.

Contenu

Concrètement, xUseCases consiste en :

  • Un schéma XML principal, qui permet de définir la structure du document XML : il est donc identique quelque soit le projet.
  • Un schéma XML dit de 'paramétrage', qui lui contient les valeurs propres au projet, comme les différents acteurs du projet, le libellé des actions possibles sur l'application... Ce fichier est donc propre à chaque projet qui le modifiera en conséquence.

Pour assurer une compatibilité maximale, j'ai transformé ce schéma en une DTD.

Outils

Dans le but de fournir un outil relativement complet, du moins autonome, j'explore plusieurs pistes...

Déjà en réalisation :

Idées à creuser :

  • Un éditeur de diagrammes UML : réalisés dans ArgoUML puis intégrés à Eclipse via le plugin associé Argo2Ecore ?
  • Un générateur d'images et/ou de SVG à partir des diagrammes UML (au format XMI) ?

Le plugin Maven

Un plugin Maven de mon cru pour la génération des documents finaux.