2.1 Tareas de la ingeniería de requisitos
Se define como un conjunto de actividades en los
cuales, utilizando técnicas y herramientas, se analiza un problema y se
concluye con la especificación de una solución. La ingeniería de requisitos es
el proceso de desarrollar una especificación de software.
Inicio:
Tiene por objetivo
identificar el ámbito del proyecto general. Comienza con una serie de
conversaciones informales entre los participantes del mismo. Esta fase suele
ser acompañada de los documentos de definición de la visión global y la visión
del dominio del sistema. Se inicia muchas veces por: se descubre un nuevo
mercado y se descubre un nuevo servicio.
Obtención:
Se sugiere a los
ingenieros recopilar requisitos de manera organizada, preguntando a los
usuarios y otros interesados cuales son os objetivos para el sistema o
producto, que es lo que se debe lograr, de que forma el producto satisface las
necesidades del negocio y como se utilizara el producto día d día. Se
identifican una serie de problemas que ayudan a entender porque es difícil la
obtención de requisitos:
- Problema de ámbito
- Problema de comprensión
- Problemas de volatilidad
Elaboración:
Se crea un modelo de
análisis con la información obtenida del cliente en las fases de inicio y obtención.
La información conseguida con el cliente durante el inicio y obtención se
expande y se refina durante la elaboración. Esta actividad se enfoca en el
desarrollo de un modelo técnico refinado de las funciones, características y
restricciones del software. La elaboración se conduce mediante la creación y
refinamiento de escenarios del usuario que describan la forma en que el usuario
final y otros actores interactúan con el sistema.
Negociación:
En esta etapa el
ingeniero de requisitos debe negociar con el cliente los alcances y límites del
sistema. De forma iterativa los requisitos se prioriza, modifican, combinan o
eliminan buscando acuerdos que beneficien a todas las partes. Se identifican y
analizan los riesgos asociados con cada requisito.
Especificación:
Es el producto final de
la ingeniería de requisitos, y se convierte en la materia prima para las
actividades posteriores en el proceso de desarrollo del sistema. Una
especificación puede ser un documento escrito, un conjunto de modelos gráficos,
un modelo matemático formal, una colección de escenarios de uso, un prototipo o
cualquier combinación de estos.
Validación:
Un equipo de validación
toma el producto de la fase de especialización, lo revisa para detectar
errores, conflictos u omisiones y los corrige con el fin de garantizar la
consistencia de requisitos. La validación de requisitos examina la
especificación para asegurar que todos los requisitos de software se han
establecidos de manera precisa; que se han detectado las inconsistencias
omisiones y errores y que estos han sido corregidos y que el producto de
trabajo cumple con los estándares establecidos para el proceso, proyecto y
producto.
Gestión de requisitos:
Ayuda a rastrear los
requisitos según las características de los mismos, el código fuente
relacionado, dependencia entre requisitos, subsistemas e interfaces internas y
externas de forma que pueda identificarse con rapidez para entender como
afectara una modificación diferentes aspectos del sistema a construir. Es un
conjunto de actividades que ayudan al equipo de proyecto a identificar,
controlar y rastrear los requisitos y los cambios a estos en cualquier momento
mientras se desarrolla el proyecto.