Fitxa de cas d'ús

En l'enginyeria del programari, una fitxa de cas d'ús és un model d'especificació de Casos d'ús, adreçat sempre a un cas d'ús concret (una fitxa pertany a un cas d'ús, però d'un cas d'ús poden elaborar-se diverses fitxes). Consisteix bàsicament a redactar un cas d'ús mitjançant text, "escriure'l", podríem dir.

Construcció

El tipus més comú i recomanable de cas d'ús són els anomenats casos d'ús de caixa negra. Deuen el seu nom a que no descriuen el funcionament intern del sistema (com ho fa: components, disseny...) sinó com ho fa.

El seu format queda a decisió personal: cap és sempre millor que un altre. Des d'un punt de vista de diferenciació d'interaccions tenim dos grans formats:

  • Una columna (compacte): tota la interacció es detalla en una columna. Més compacte i fàcil de formatar.
  • Dues columnes (conversacional): una columna pels actors i una altra pel sistema. Proporciona una clara separació visual, una imatge de "conversació".

Una vegada decidit el format que volguem emprar és simplement qüestió de definir els apartats i emplenar-los.

Contingut

No hi ha cap model estàndard que defineixi com redactar una fitxa de cas d'ús: diferents formats poden funcionar per casos d'ús diferents.

Tot i això, s'ha de procurar que la fitxa de cas d'ús sigui sempre simple, clara i breu independentment de l'esquema que s'utilitzi.

Exemple de fitxa simple pel cas d'ús d'anul·lació de reserva, dins un programa de gestió de reserves d'una biblioteca.

Esquema general (Fowler)

Un esquema grosso modo d'una fitxa de cas d'ús, per una perspectiva general i simplificada d'aquest, és la que segueix:

  • Nom/Títol: objectiu que s'intenta assolir amb el cas d'ús.
  • Escenari principal: llista numerada de passos en una execució ideal (entenem per pas una interacció simple entre actor i sistema).
  • Extensions: conjunt de llistes, independents l'una de l'altra (cada una és una "extensió": desenvolupa l'execució per una interacció diferent a les de l'escenari principal.

Esquema concret (Cockburn)

El llibre d'Alistair Cockburn, Writing Effective Use Cases (que podria traduir-se com "Escriure casos d'ús efectius"), és un referent en la definció de fitxes de casos d'ús.

L'esquema que proposa és un dels més estesos:

  • El nom del cas d'ús (és a dir, quin cas d'ús documenta la fitxa): com a títol.
  • Descripció: resum del que es pretén dur a terme.
  • Abast: quin sistema considerarem la "caixa negra" del disseny.
  • Nivell: visió d'usuari (explica què fa com des de la perspectiva sobre el sistema d'una caixa negra: 'explica què fa i no com, de manera que un individu sense coneixements sobre el sistema o d'informàtica ho pugui entendre) o bé visió d'anàlisi (explica què fa amb l'ús de paraules reservades, nivell "d'informàtic").
  • Actor principal: nom o descripció de l'actor que interactua primordialment amb el sistema.
  • Precondició: Què s'espera (requereix) quant a l'estat inicial del "món".
  • Postcondició: Què podem garantir quant a l'estat del "món" en acabar l'execució.
  • Flux principal: Passos que segueix el programa des del seu inici fins que acaba, suposant una execució idònia (sense problemes, errors, eventualitats...) detallant cada un dels canvis duts a terme.
  • Flux alternatiu ("extensions"): Passos que segueix el programa en la seva execució incloent qualsevol error o eventualitat resoluble (per exemple, fer "login" i que s'introdueixen incorrectament les dades...).

En ser només una guia, d'alguns apartats d'aquest esquema pot prescindir-se, altres poden ser afegits... depèn del nivell de detall que es busqui assolir.

Referències

Bibliografia

  • Cockburn, A. (2001). Writing Effective Use Cases (1a ed.). Addison-Wesley.
  • Fowler, Martin. (2004). UML Distilled (3a ed.). Addison-Wesley.
  • Larman, Craig. (2003). UML y Patrones (2a ed). Prentice Hall.