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