miércoles, 20 de diciembre de 2006

Introducción a la Ingeniería de Requisitos

¿Qué es la ingeniería de requisitos?

La ingeniería de requisitos es el conjunto de procesos, técnicas y herramientas que rige toda petición de las unidades de negocio para conseguir:

  • Una comprensión de la necesidad o problemática completa.
  • Conocer la complejidad e impacto en el negocio.
  • Realizar el primer acercamiento al lenguaje utilizado en Sistemas de Información.
¿Quién participa en la ingeniería de requisitos?
Para la correcta consecución de los objetivos de la ingeniería de requisitos necesitamos la identificación y participación de los siguientes roles:
  • Cliente administrativo: Es aquella persona o personas que tienen la responsabilidad de alinear las peticiones realizadas al área de IT con sus objetivos estratégicos y de adecuar los recursos necesarios para su consecución.
  • Cliente técnico: Es aquella persona o personas que tienen la responsabilidad de proporcionar una visión global de las necesidades desde un punto de vista operativo (qué hay que hacer) y de realizar una validación del producto (DRC) obtenido.
  • Cliente usuario: Es aquella persona o personas que tienen la responsabilidad de proporcionar una visión específica de las necesidades desde el punto de vista técnico (cómo hay que hacerlo).
  • Ingeniero de Requisitos: Es aquella persona o personas que tienen la responsabilidad de captar la información de los diferentes clientes, analizarla y formalizarla en un documento de requisitos del cliente garantizando la adecuación del producto realizado (DRU) y la calidad del mismo. En algunos ámbitos se le denomina analista de negocio.
  • Consultor: Es aquella persona o personas, internas o externas a la organización, que sirven como apoyo al ingeniero de requisitos para:
    • Comprender mejor el negocio del cliente y obtener una visión más concreta de sus necesidades, tanto a corto plazo como futuras.
    • Colaborar en el desarrollo del DCU como experto en los procesos, técnicas y herramientas utilizadas en la ingeniería de requisitos.
Debemos tener en cuenta que una misma persona puede desempeñar uno o más roles.

¿Cuándo se realiza la ingeniería de requisitos?
La ingeniería de requisitos es uno de los primeros pasos en todo ciclo de vida de los proyectos de software en el ámbito de TI. Independientemente de si estamos hablando de un ciclo en cascada, iterativo o ágil, se debe seguir un proceso de ingeniería de requisitos que se adapte a cada una de las metodologías utilizadas.

Lo que sí está claro, es que es prácticamente imposible tener un DCU completo desde el inicio, lo cual nos obliga a diversas revisiones del documento, por lo que propondremos un proceso guía iterativo e incremental con el objetivo de tener diversos niveles de concreción y profundidad en cada una de ellas, y que se pueda adaptar al ciclo de vida global de desarrollo de proyectos en la organización.

¿Dónde se aplicaría la ingeniería de requisitos?
La ingeniería de requisitos en el ámbito de sistemas de información, tiene tres ámbitos de aplicación:
  1. Administración Pública: Como trabajo previo a la preparación de pliegos técnicos.
  2. Empresas de Servicios: Ayudará al desarrollo de la presentación de propuestas y podrá ser cumplimentado una vez que haya que desarrollar el DRC como entregable intermedio del producto comprometido.
  3. Áreas de Sistemas de Información: En el entorno de las empresas que dan servicio a las unidades de negocio dentro de su propia organización para definición del alcance de las peticiones, pudiendo formar parte del contrato.
¿Por qué se realiza la ingeniería de requisitos?
Para poder responder a esta pregunta nos tenemos que centrar en su ámbito de aplicación, los proyectos, es decir, ¿por qué es necesaria la ingeniería de requisitos en los proyectos? Como toda actividad debe realizar algún tipo de aporte significativo, sino no es justificable su realización, debemos avanzar un poco más y preguntarnos ¿qué inconvenientes proporciona la no realización la ingeniería de requisitos en los proyectos?

Según una referencia realizada por Juan Palacio Bañares en el Compendio de Ingeniería del Software I, la causa de fracaso de los proyectos responde a la siguiente distribución:


Teniendo en cuenta todos aquellos aspectos que están implicados en la ingeniería de requisitos, el porcentaje total asociado es un mínimo de un 52%. Si representáramos estas causas tipificadas en un diagrama de Pareto, sería la principal causa de fracaso de los proyectos, por lo que sería el primer elemento a afrontar para solucionar las causas de fracaso.

Bibliografía inicial
[1] Amador Durán Toro. Un Entorno Metodológico de Ingeniería de Requisitos para Sistemas de Información. http://www.lsi.us.es/~amador/.
[2] Roger S. Pressman. Ingeniería del Software, un enfoque práctico. 6ª edición.
[3] Juan Palacio Bañeres. Compendio de Ingeniería del Software I.

No hay comentarios: