Realizar un levantamiento y documentación de los requerimientos de alta calidad, permitirá que el producto de software tenga éxito; para esto es necesario que cumpla con las siguientes características:
Características de requisitos individuales
Las características deseables que todo requisito debe cumplir son:
- Completo: Un requerimiento está completo si no necesita ampliar detalles en su redacción, es decir, proporciona la información suficiente para su comprensión.
- Correcto: Cada requerimiento debe describir con exactitud la funcionalidad para ser construida (K., 2003).
- Claro: Pueden ser entendidos de la misma manera por todas las partes interesadas con un mínimo de explicación complementaria. (Gottesdiener E. , 2005).
- Factible: Debe ser posible poner en práctica cada requerimiento dentro de las capacidades conocidas y las limitaciones del sistema en su entorno de operaciones (K., 2003).
- Necesario: Un requerimiento es necesario, si cuando se prescinde del mismo provoca una deficiencia en el sistema a construir; además cuando sus características físicas o factor de calidad no pueden ser reemplazados por otras capacidades del producto.
- Priorización: Dentro del conjunto de requerimientos, alguno de ellos debe ser más importante que los otros; en este proceso deben intervenir los stakeholders.
- No ambiguo: Un requerimiento no tiene ambigüedades cuando se lo puede interpretar de una sola forma, y por lo tanto el lenguaje usado en su definición no causa confusiones al lector.
Características de especificaciones de requerimientos
No es suficiente realizar redactar correctamente cada requerimiento, es de vital importancia cumplir condiciones dentro del conjunto de requerimientos, las que se detallan a continuación:
-
Completo: Ningún requerimiento o información necesaria deberían estar ausentes, sin embargo los requisitos que faltan son difíciles de detectar porque no están descritos.
-
Consistente: Los requisitos de conformidad no entren en conflicto con otros requisitos del mismo tipo o con un mayor nivel de negocios, sistema o necesidades de los usuarios (Wiegers, 2003).
-
Modificable: Debe ser capaz de revisar en el SRS cuando sea necesario y para mantener un historial de los cambios realizados de acuerdo a cada necesidad surgida; cada requisito debe aparecer solo una vez en el SRS.
-
Trazable: El requisito de trazabilidad puede estar vinculado a su origen hacia atrás y hacia adelante a los elementos de diseño y código fuente que aplicarla a uno de los casos de prueba que verifique la aplicación como correcta.
(Gottesdiener E. , 2005), da las siguientes recomendaciones practicas para el desarrollo de requerimientos de calidad:
-
Desarrollar una visión clara para el producto final.
-
Desarrollar una comprensión bien definida, del alcance del proyecto.
-
Involucrar a los stakeholders durante el proceso de requisitos.
-
Representar y descubrir los requisitos usando múltiples modelos.
-
Documentar los requisitos con claridad y coherencia.
-
Validar continuamente que los requisitos sean correctos con el enfoque del proyecto.
-
Verificar la calidad de los requisitos frecuentemente.
-
Priorizar los requerimientos y eliminar los innecesarios.
-
Establecer una línea base para los requerimientos, ya que pueden servir para futuros proyectos.
-
Rastrear los orígenes de los requisitos y la forma de vinculación con otros requisitos y con los elementos del sistema.
-
Anticipar y gestionar todos los cambios de los requisitos.