Priorització de requisits

La priorització de requisits és la forma utilitzada en el procés de producció de programari per a determinar quins requisits candidats per a formar part d'un producte de software haurien de ser inclosos en una certa versió. Els requisits són també prioritzats per a minimitzar el risc durant el desenvolupament, de manera que els requisits més importants o de més alt risc són implementats primer. Hi ha diversos mètodes per a avaluar una priorització de requisits de programari.

Aproximació cost-valorModifica

Un mètode bo i relativament fàcil de fer servir per a prioritzar requisits de producte de software és l'aproximació cost-valor. Aquesta aproximació va ser creada per Joachim Karlsson i Kevin Ryan. L'aproximació va ser després desenvolupada i comercialitzada per l'empresa Focal Point (que va ser adquirida per Telelogic en 2005). La seva idea bàsica va ser determinar per a cada requisit candidat individual, quin seria el cost d'implementar el requisit i quant de valor té el requisit. L'avaluació de valors i costos per als requisits va ser executada fent servir el Procés Jeràrquic Analític (PJA). Aquest mètode va ser creat per Thomas Saaty. La seva idea bàsica és que per a totes les parelles de requisits (candidats) una persona avalua un valor o un cost comparant un dels requisits de la parella amb l'altre. Per exemple, un valor de 3 per a (Req1, Req2) indica que el requisit 1 és valorat 3 cops més alt que el requisit 2. Trivialment, això indica que (Req2, Req1) té valor 1/3. En l'aproximació de Karlsson i Ryan, s'identifiquen 5 passos per a revisar requisits candidat i determinar una prioritat entre ells. Aquests són resumits a continuació.[1]

  1. Els enginyers de requisits revisen amb cura la completesa dels requisits i s'asseguren que han estat enunciats de forma inambigua.
  2. Els clients i els usuaris (o substituts adequats) apliquen les comparacions PJA per a avaluar el valor relatiu dels requisits candidat.
  3. Enginyers de software amb experiència fan servir la comparació PJA per a estimar el cost relatiu d'implementar cada requisit candidat.
  4. Un enginyer de software fa servir PJA per a calcular el valor relatiu i el cost d'implementació de cada requisit candidat, i dibuixa aquests en un diagrama cost-valor. El valor és representat a l'eix Y d'aquest diagrama i el cost estimat a l'eix X.
  5. Els interessats en el projecte (stakeholders) fan servir el diagrama cost-valor com a mapa conceptual per a analitzar i discutir els requisits candidats. Ara els gestors de software prioritzen els requisits i decideixen quin serà implementat.

Ara, l'aproximació cost-valor i la priorització de requisits en general poden ser ubicades en el seu context de gestió de producte de software. Com s'ha mencionat abans, la planificació de versions és part d'aquest procés. La priorització de requisits de software és un subprocés del procés de planificació de versions.

El procés de planificació de versions consisteix en els següents subprocessos:

  1. Prioritzar requisits.
  2. Seleccionar requisits.
  3. Definir requisits de versió.
  4. Validar requisits de versió.
  5. Preparar la versió.

Altres tècniques de prioritzacióModifica

  • Quality Function Deployment (QFD)
  • Binary Search Tree (BST)
  • Planning game (PG)
  • Mètode dels 100 punts (100P)
  • Planning Game combinat amb AHP (PGcAHP)

BibliografiaModifica

  • I. van de Weerd, Sjaak Brinkkemper, R. Nieuwenhuis, J. Versendaal and L. Bijlsma (2006). A Reference Framework for Software Product Management. Scientific Report. Department of Information and Computing Sciences, Utrecht University, The Netherlands, 2006.

ReferènciesModifica

  1. Karlsson, J. & Ryan, K. (1997). A Cost-Value Approach for Prioritizing Requirements, IEEE Software September/October 1997, 67-74.

Enllaços externsModifica