Los requerimientos funcionales como restricciones |
Los requerimientos no funcionales aseguran que el sistema cumple con cualidades como la usabilidad, seguridad y otras como las que siguen:
Accesibilidad | Confiabilidad | Disponibilidad | Interoperabilidad | Operabilidad | Fiabilidad | Seguridad |
Extensibilidad | Trazabilidad | Rendimiento | Recuperabilidad | Mantenibilidad | Certificación | Robustez |
Compatibilidad | Conformidad | Escalabilidad | Implementabilidad | Configurabilidad | Eficiencia | Usabilidad |
La implementación de nuevos NFRs suele requerir de nuevos elementos en la pila de producto en forma de historias técnicas, estas, una vez incluidas en un sprint, evolucionan el sistema a nuevas restricciones.
Como todo requerimiento los NFRs se han de describir y cuantificar para arrojar claridad sobre los mismos. Un patrón para describir NFRs es el siguiente:
Paso 1
Nombre (Name): [en forma de cualidad.subcualidad]
Escala (Scale): [Qué medir (unidad)]
Métrica (Meter): [Cómo medir (método)]
Paso 2
Objetivo (Target): [Nivel de éxito a alcanzar]
Restricción (Constraint): [Nivel de fallo a evitar]
Línea base (Baseline): [Nivel actual]
Veamos un ejemplo partiendo de la siguiente historia de usuario relacionada con una librería on-line:
Como cliente
Quiero poder explorar libros
Para poder escoger el que voy comprar
para la que hemos determinado el tiempo de respuesta como requerimiento no funcional, ya que si la página tarda en cargar más de 3 segundos el comprador buscará otras opciones a poco más de un click de distancia:
Paso 1
Nombre: usabilidad.rendimiento
Escala: milisegundos entre que el comprador clica "buscar" y se le presenta la página con el resultado
Métrica: promedio de los tiempos de búsqueda de libros
Paso 2
Objetivo: <200 milisegundos (lo que Google considera como tiempo de respuesta máximo)
Restricción: >3000 milisegundos (cuando el comprador empieza a sentir ansiedad)
Línea base: 1800 milisegundos
No hay comentarios:
Publicar un comentario