En ingeniería del software y el desarrollo de sistemas, un requerimiento es una necesidad documentada sobre el contenido, forma o funcionalidad de un producto o servicio. Los requerimientos son declaraciones que identifican atributos, capacidades, características y/o cualidades que necesita cumplir un sistema (o un sistema de software) para que tenga valor y utilidad para el usuario. En otras palabras, los requerimientos muestran qué elementos y funciones son necesarias para un proyecto. En el modelo clásico de desarrollo de sistemas o desarrollo software, la etapa de los requerimientos viene antecedida de la etapa de factibilidad del sistema/software y precedida por la etapa de diseño del sistema/software.
Etapas de la fase de requerimientos:
·
Obtención
de requerimientos: búsqueda y obtención de los requerimientos
desde los grupos de interés.
·
Análisis: comprobación
de la consistencia y completitud de los requerimientos.
·
Verificación:
constatación de que los requerimientos especificados son correctos.
Clasificación de los requerimientos:
·
Requerimientos
funcionales: qué debe hacer el sistema o software.
·
Requerimientos
no funcionales: cómo debe funcionar el sistema o software (no
su implementación), por ejemplo calidad, rendimiento, facilidad de uso, etc.
·
Requerimientos
externos: a qué se debe atener el sistema o software con respecto a
su entorno: compatibilidad con otros sistemas, adecuación a determinadas leyes,
entre otros.
Características que deberían cumplir los
requerimientos:
Actual: El
requerimiento no debe volverse obsoleto con el paso del tiempo. Cohesión: El requerimiento debe
dirigirse a solo una única cosa.
Completo: El
requerimiento debe estar completamente declarado en un único lugar, sin
información faltante.
Consistente: El
requerimiento no debe contradecir ningún otro requerimiento y debe ser
completamente consistente con toda la documentación.
Correcto/necesario: El
requerimiento debe cumplir con la necesidad declarada por los interesados en el
sistema/software.
Factible/viable: El
requerimiento debe poder ser implementado.
No ambiguo: El
requerimiento debe estar concisamente declarado. Debe expresar hechos
objetivos, no opiniones subjetivas. Debe poder ser interpretado de una única
manera.
Obligatorio: El
requerimiento debe representar una característica definida por el grupo
interesado en el desarrollo del sistema/software, su ausencia no puede ser
reemplazada.
Observable externamente: El
requerimiento debe especificar una característica observable externa o
experimentable por el usuario del producto.
Verificable/demostrable: La
implementación del requerimiento debe poder ser resuelta en alguno de estos
cuatro métodos: inspección, análisis, demostración o prueba.
No hay comentarios:
Publicar un comentario