La gestión de requisitos es el proceso de documentar, analizar , rastrear , priorizar y acordar los requisitos, para luego controlar los cambios y comunicarlos a las partes interesadas pertinentes. Es un proceso continuo a lo largo de todo el proyecto. Un requisito es una capacidad a la que debe ajustarse el resultado del proyecto (producto o servicio).
Descripción general
El propósito de la gestión de requisitos es asegurar que una organización documente, verifique y satisfaga las necesidades y expectativas de sus clientes y partes interesadas internas o externas. [ 1 ] La gestión de requisitos comienza con el análisis y la obtención de los objetivos y las restricciones de la organización. Además, incluye el apoyo a la planificación de requisitos, la integración de los requisitos y la organización para trabajar con ellos (atributos de los requisitos), así como las relaciones con otra información que contribuye a los requisitos y los cambios en estos.
La trazabilidad así establecida se utiliza en la gestión de requisitos para informar sobre el cumplimiento de los intereses de la empresa y las partes interesadas en términos de conformidad, exhaustividad, cobertura y coherencia. La trazabilidad también respalda la gestión del cambio como parte de la gestión de requisitos, al comprender el impacto de los cambios a través de los requisitos u otros elementos relacionados (por ejemplo, impactos funcionales a través de las relaciones con la arquitectura funcional) y facilitar la introducción de estos cambios. [ 2 ]
La gestión de requisitos implica la comunicación entre los miembros del equipo del proyecto y las partes interesadas, y el ajuste a los cambios en los requisitos a lo largo del proyecto. [ 3 ] Para evitar que una clase de requisitos prevalezca sobre otra, la comunicación constante entre los miembros del equipo de desarrollo es fundamental. Por ejemplo, en el desarrollo de software para aplicaciones internas, la empresa tiene necesidades tan fuertes que puede ignorar los requisitos del usuario, o creer que al crear casos de uso , los requisitos del usuario se están teniendo en cuenta.
Trazabilidad
La trazabilidad de requisitos se refiere a documentar el ciclo de vida de un requisito. [ 4 ] Debe ser posible rastrear el origen de cada requisito y, por lo tanto, cada cambio realizado en el requisito debe documentarse para lograr la trazabilidad. [ 5 ] Incluso el uso del requisito después de que las funcionalidades implementadas se hayan desplegado y utilizado debe ser rastreable. [ 5 ]
Los requisitos provienen de diversas fuentes, como el responsable comercial que solicita el producto, el gerente de marketing y el usuario final. Cada una de estas personas tiene requisitos distintos para el producto. Mediante la trazabilidad de requisitos, se puede rastrear una funcionalidad implementada hasta la persona o el grupo que la solicitó durante la recopilación de requisitos . Esto puede utilizarse, por ejemplo, durante el proceso de desarrollo para priorizar el requisito [ 6 ] y determinar su valor para un usuario específico. También puede utilizarse después del despliegue, cuando los estudios de usuario muestran que una funcionalidad no se utiliza, para comprender por qué se requirió inicialmente.
Actividades de requisitos
En cada etapa de un proceso de desarrollo , existen actividades y métodos clave para la gestión de requisitos. A modo de ejemplo, consideremos un proceso de desarrollo estándar de cinco fases: Investigación, Viabilidad, Diseño, Construcción y Pruebas, y Lanzamiento.
Investigación
En la fase de investigación, se recopilan los tres primeros tipos de requisitos de los usuarios, del área de negocio y del equipo de desarrollo. En cada área, se formulan preguntas similares: ¿cuáles son los objetivos?, ¿cuáles son las limitaciones?, ¿qué herramientas o procesos se utilizan actualmente?, etc. Solo cuando estos requisitos se comprenden bien se pueden desarrollar los requisitos funcionales .
Por lo general, los requisitos no pueden definirse completamente al inicio del proyecto. Algunos requisitos cambiarán, ya sea porque simplemente no se extrajeron o porque factores internos o externos influyen en el proyecto a mitad de su ciclo.
El resultado de la fase de investigación es un documento de requisitos aprobado por todos los miembros del equipo. Posteriormente, durante el desarrollo, este documento será fundamental para evitar desviaciones del alcance o cambios innecesarios. A medida que el sistema se desarrolla, cada nueva funcionalidad abre un mundo de posibilidades, por lo que la especificación de requisitos mantiene al equipo fiel a la visión original y permite un análisis controlado de los cambios de alcance.
Si bien muchas organizaciones aún utilizan únicamente documentos para gestionar los requisitos, otras gestionan sus bases de datos de requisitos mediante herramientas de software. Estas herramientas permiten gestionar los requisitos en una base de datos y, por lo general, incluyen funciones para automatizar la trazabilidad (por ejemplo, permitiendo la creación de enlaces electrónicos entre requisitos principales y secundarios, o entre casos de prueba y requisitos), la creación de bases de datos electrónicas, el control de versiones y la gestión de cambios. Normalmente, estas herramientas contienen una función de exportación que permite crear un documento de especificaciones exportando los datos de los requisitos a una aplicación de documentos estándar.
Factibilidad
En la fase de viabilidad, se determinan los costos de los requisitos. Para los requisitos de usuario, se compara el costo actual del trabajo con los costos futuros proyectados una vez que el nuevo sistema esté en funcionamiento. Se plantean preguntas como: "¿Cuánto nos cuestan actualmente los errores de entrada de datos?" o "¿Cuál es el costo de los desperdicios debido a errores del operador con la interfaz actual?". De hecho, la necesidad de la nueva herramienta suele reconocerse cuando estas preguntas llegan a conocimiento del personal financiero de la organización.
Los costos empresariales incluirían: "¿Qué departamento tiene el presupuesto para esto?" "¿Cuál es la tasa de retorno esperada del nuevo producto en el mercado?" "¿Cuál es la tasa interna de retorno en la reducción de los costos de capacitación y soporte si creamos un sistema nuevo y más fácil de usar?"
Los costos técnicos están relacionados con los costos de desarrollo de software y los costos de hardware. "¿Contamos con el personal adecuado para crear la herramienta?" "¿Necesitamos nuevos equipos para dar soporte a las funciones ampliadas del software?" Esta última pregunta es crucial. El equipo debe analizar si las nuevas herramientas automatizadas aportarán la potencia de procesamiento suficiente para transferir parte de la carga del usuario al sistema y así ahorrar tiempo.
La pregunta también pone de relieve un punto fundamental sobre la gestión de requisitos. Un ser humano y una herramienta forman un sistema, y esta comprensión es especialmente importante si la herramienta es un ordenador o una nueva aplicación. La mente humana destaca en el procesamiento paralelo y la interpretación de tendencias con datos insuficientes. La CPU destaca en el procesamiento en serie y el cálculo matemático preciso. Por lo tanto, el objetivo principal de la gestión de requisitos para un proyecto de software sería asegurar que el trabajo que se automatiza se asigne al procesador adecuado. Por ejemplo: «No obligue al usuario a recordar dónde se encuentra en la interfaz. Haga que la interfaz informe de la ubicación del usuario en el sistema en todo momento». O bien: «No obligue al usuario a introducir los mismos datos en dos pantallas. Haga que el sistema almacene los datos y complete la segunda pantalla según sea necesario».
El resultado de la fase de viabilidad es el presupuesto y el cronograma del proyecto.
Diseño
Si los costos se determinan con precisión y los beneficios a obtener son suficientemente grandes, el proyecto puede pasar a la etapa de diseño. En esta etapa, la principal actividad de gestión de requisitos consiste en comparar los resultados del diseño con el documento de requisitos para asegurar que el trabajo se mantenga dentro del alcance previsto.
Una vez más, la flexibilidad es fundamental para el éxito. He aquí un ejemplo clásico de un cambio de alcance a mitad de camino que, de hecho, funcionó bien. A principios de los 80, los diseñadores de Ford esperaban que el precio de la gasolina alcanzara los 3,18 dólares por galón para finales de la década. A mitad del diseño del Ford Taurus, los precios se habían estabilizado en torno a los 1,50 dólares por galón. El equipo de diseño decidió que podrían construir un coche más grande, más cómodo y más potente si los precios de la gasolina se mantenían bajos, así que rediseñaron el vehículo. El lanzamiento del Taurus batió récords de ventas a nivel nacional, principalmente por su amplitud y comodidad de conducción.
En la mayoría de los casos, sin embargo, desviarse tanto de los requisitos originales no funciona. Por lo tanto, el documento de requisitos se convierte en una herramienta fundamental que ayuda al equipo a tomar decisiones sobre los cambios de diseño. [ 7 ]
Construcción y prueba
En la fase de construcción y pruebas, la principal actividad de la gestión de requisitos consiste en asegurar que el trabajo y los costos se mantengan dentro del cronograma y el presupuesto, y que la herramienta resultante cumpla con los requisitos establecidos. Una herramienta fundamental en esta fase es la creación de prototipos y las pruebas iterativas. Para una aplicación de software, la interfaz de usuario se puede diseñar en papel y probar con usuarios potenciales mientras se desarrolla la estructura del software. Los resultados de estas pruebas se registran en una guía de diseño de interfaz de usuario y se entregan al equipo de diseño cuando estén listos para desarrollar la interfaz.
Un aspecto importante de esta etapa es la verificación. Este esfuerzo verifica que el requisito se haya implementado correctamente. Existen cuatro métodos de verificación: análisis, inspección, prueba y demostración. Los resultados numéricos de la ejecución del software o el rendimiento en una prueba de red, por ejemplo, proporcionan evidencia analítica de que se ha cumplido el requisito. La inspección de la documentación del proveedor o las hojas de especificaciones también verifica los requisitos. Probar o demostrar el software en un entorno de laboratorio también verifica los requisitos: se realizará una verificación de tipo prueba cuando se utilice equipo de prueba que normalmente no forma parte del laboratorio (o del sistema bajo prueba). Los procedimientos de prueba exhaustivos que describen los pasos y sus resultados esperados identifican claramente lo que se debe observar como resultado de realizar cada paso. Una vez completado el paso o conjunto de pasos, el resultado esperado del último paso indicará lo que se ha observado y luego identificará qué requisito o requisitos se han verificado (identificados por un número). El número, el título y la descripción del requisito se encuentran juntos en otra sección del documento de prueba.
Gestión de cambios de requisitos
Es prácticamente imposible que un proyecto de desarrollo de software se complete sin que se le soliciten algunos cambios. Estos cambios pueden deberse a modificaciones en el entorno en el que se prevé utilizar el producto final, cambios en el negocio, cambios en la normativa, errores en la definición original de los requisitos, limitaciones tecnológicas, cambios en el entorno de seguridad, etc. Las actividades de gestión de cambios de requisitos incluyen la recepción de las solicitudes de cambio de las partes interesadas, el registro de dichas solicitudes, el análisis y la determinación de la conveniencia y el proceso de implementación, la implementación de la solicitud de cambio , el aseguramiento de la calidad de la implementación y el cierre de la solicitud de cambio. Posteriormente, se recopilan y analizan los datos de las solicitudes de cambio, se derivan las métricas pertinentes y se integran en el repositorio de conocimiento de la organización. [ 8 ]
Liberar
La gestión de requisitos no finaliza con el lanzamiento del producto. A partir de ese momento, se recopilan los datos sobre la aceptabilidad de la aplicación y se incorporan a la fase de investigación de la siguiente generación o versión. De este modo, el proceso vuelve a empezar.
Estampación
Adquirir una herramienta para apoyar la gestión de requisitos no es un asunto trivial y debe abordarse como parte de una iniciativa de mejora de procesos más amplia. Durante mucho tiempo se ha creído que una herramienta, una vez adquirida e instalada en un proyecto, puede abordar todas sus necesidades relacionadas con la gestión de requisitos. Sin embargo, la compra o el desarrollo de una herramienta para apoyar la gestión de requisitos puede ser una decisión costosa. Las organizaciones pueden verse sobrecargadas con contratos de soporte costosos, se puede desviar un esfuerzo desproporcionado hacia el aprendizaje del uso de la herramienta y su configuración para abordar necesidades particulares, y un uso inapropiado puede llevar a decisiones erróneas. Las organizaciones deben seguir un proceso incremental para tomar decisiones sobre herramientas que apoyen sus necesidades particulares dentro del contexto más amplio de su proceso de desarrollo y herramientas. [ 9 ] Las herramientas se presentan en Trazabilidad de requisitos .
Véase también
Referencias
- ↑ Stellman, Andrew; Greene, Jennifer (2005). Gestión de proyectos de software aplicados . O'Reilly Media. ISBN 978-0-596-00948-9Archivado del original el 9 de febrero de 2015.
- ↑ "Gestión de requisitos" . Oficina de Comercio del Gobierno del Reino Unido. Archivado del original el 16 de diciembre de 2009. Consultado el 10 de noviembre de 2009 .
- ↑ Guía de los fundamentos de la gestión de proyectos (4.ª ed.). Project Management Institute. 2008. ISBN 978-1-933890-51-7.
- ↑ Gotel, O., Finkelstein, A. Un análisis del problema de la trazabilidad de los requisitos. Archivado el 8 de enero de 2023 en Wayback Machine . Actas de la Primera Conferencia Internacional sobre Ingeniería de Requisitos, 1994, páginas 94-101.
- 1 2 Gotel, Orlena; Cleland-Huang, Jane ; Hayes, Jane Huffman; Zisman, Andrea; Egyed, Alexander; Grünbacher, Paul; Dekhtyar, Alex; Antoniol, Giuliano; Maletic, Jonathan (2012-01-01). Cleland-Huang, Jane; Gotel, Orlena; Zisman, Andrea (eds.). Trazabilidad de software y sistemas . Springer London. pp. 3–22 . doi : 10.1007/978-1-4471-2239-5_1 . ISBN 9781447122388.
- ^ Rempel, Patricio; Mäder, Patrick (23 de marzo de 2015). Fricker, Samuel A.; Schneider, Kurt (eds.). Ingeniería de requisitos: base para la calidad del software . Apuntes de conferencias sobre informática. Publicaciones internacionales Springer. págs. 81– 97. doi : 10.1007/978-3-319-16101-3_6 . ISBN 9783319161006.
- ↑ Ralph, P., y Wand, Y. Una propuesta para una definición formal del concepto de diseño. En Lyytinen, K., Loucopoulos, P., Mylopoulos, J. y Robinson, W. (eds.), Ingeniería de requisitos de diseño: una perspectiva de diez años: Springer-Verlag, 2009, pp. 103-136.
- ↑ Chemuturi, M. (2013). Ingeniería y gestión de requisitos para proyectos de desarrollo de software . doi : 10.1007/978-1-4614-5377-2 . ISBN 978-1-4614-5376-5. S2CID 19818654 .
- ↑ Gotel, Orleña; Mäder, Patrick (1 de enero de 2012). Cleland-Huang, Jane ; Gotel, Orleña; Zisman, Andrea (eds.). Trazabilidad de Software y Sistemas . Springer Londres. págs. 43 –68. doi : 10.1007/978-1-4471-2239-5_3 . ISBN 9781447122388.
Lecturas adicionales
- Equipo de Producto CMMI (agosto de 2006). "CMMI para el desarrollo, versión 1.2" ( PDF ) . Informe técnico CMU/SEI-2006-TR-008. Software Engineering Institute . Consultado el 22 de enero de 2008 .
{{cite journal}}: Para citar una revista se requiere|journal=( ayuda ) - Colin Hood, Simon Wiedemann, Stefan Fichtinger, Urte Pautz. Gestión de requisitos: Interfaz entre el desarrollo de requisitos y todos los demás procesos de ingeniería. Springer, Berlín, 2007, ISBN. 3-540-47689-X
- Gestión de requisitos: una guía práctica , PMI
- Departamento de Defensa de los EE. UU. CJCSM 3265.01A (29 de noviembre de 2013) PROCESO Y PROCEDIMIENTOS DE GESTIÓN DE REQUISITOS DE MANDO Y CONTROL CONJUNTO (C2)
Enlaces externos
- Oficina de Comercio del Gobierno del Reino Unido (OGC) - Gestión de requisitos (archivo; el sitio web de la OGC dejó de estar activo el 1 de octubre de 2011)
- Guía de prácticas de procesos unificados de los CDC - Gestión de requisitos. Archivada el 9 de junio de 2024 en Wayback Machine.
- Junta Internacional de Ingeniería de Requisitos (IREB)
- ¿Qué es la gestión de requisitos?
- gestión del ciclo de vida del producto
- Ingeniería de sistemas
- Requisitos de software
- Lenguaje de modelado de sistemas