La guía más completa para la gestión y trazabilidad de requisitos
Ingeniería de requerimientos
Índice del contenido
Para producir un producto de calidad, es importante tener requisitos precisos del cliente. Esto comienza con el proceso de ingeniería de requisitos, que se puede dividir en cinco pasos: recopilación de requisitos, documentación de requisitos, análisis y verificación de requisitos, gestión de cambios en los requisitos y cierre de la fase de requisitos. En esta publicación de blog, discutiremos cada uno de estos pasos en detalle y mostraremos cómo ayudan a producir un producto de alta calidad.
¿Qué son los requisitos y la ingeniería de requisitos?
Aquí hay dos términos, "Requisito" e "Ingeniería de requisitos". Un requisito se define precisamente como una condición o una capacidad que un usuario necesita para resolver un problema o lograr una meta. En otras palabras, los requisitos son condiciones o capacidades que debe cumplir o poseer un sistema para satisfacer un contrato, estándares, especificaciones y otra documentación formal.
La ingeniería de requisitos se define como el proceso de definición, documentación y mantenimiento de los requisitos. La disciplina incluye todas las técnicas, métodos y procedimientos relacionados con la definición y gestión de las necesidades de los usuarios relacionadas con el sistema en estudio.
En definitiva, la ingeniería de requisitos es un conjunto de actividades que se ocupan de identificar y comunicar el propósito de un sistema o software y el contexto en el que se utilizará.
Por lo tanto, la ingeniería de requisitos actúa como un puente entre las necesidades del mundo real de los usuarios, clientes y otros grupos que se ven afectados por el software o el sistema y las capacidades y oportunidades que brindan las tecnologías intensivas en software.
¿Cuáles son los principios de la Ingeniería de Requisitos?
Los dos principios básicos de la ingeniería de requisitos son el problema y la solución de la ingeniería de requisitos.
- Es útil separar el problema y la solución al recopilar los requisitos.
- Esta separación nunca puede lograrse completamente en la vida práctica.
La ingeniería de requisitos se trata de construir el sistema correcto. Básicamente, se trata de construir un sistema que se ajuste a los problemas del usuario. Esta es una parte orientada a problemas. Se trata básicamente de diseñar, verificar, implementar y mantener el sistema que se crea para asegurar que se ajuste a los problemas del usuario. Esta es la parte orientada a la solución.
Proceso de ingeniería de requisitos
Hay algunas actividades a las que nos enfrentamos cuando trabajamos con los requisitos. En el ciclo de Ingeniería de Requisitos, hay cinco actividades principales, a saber,
- Obtención de requisitos – este es el proceso de revisión, documentación y comprensión de las necesidades y limitaciones de las partes interesadas y los usuarios para la temporada. Los usuarios necesitan información de dominio, información del sistema existente, regulaciones, estándares, etc. Con base en esta información, obtenemos los requisitos. Después de esto, pasamos al análisis y negociación de requisitos.
- Análisis y Negociación de Requerimientos – el análisis es el proceso de refinar las necesidades y restricciones del usuario sobre la base de la información recopilada y obtenida. Luego, pasamos a la actividad de documentación.
- Requisitos Documentación/Especificación – después de obtener las especificaciones de requisitos, pasamos a la parte de documentación. Documentamos las necesidades y limitaciones del usuario de forma clara y precisa.
- Validación de requisitos – finalmente, en la actividad de validación, insertamos que los requisitos de la temporada sean completos, concisos y claros.
- Gestión de necesidades – La gestión de requisitos es una forma de recopilar, analizar, refinar y priorizar todos los productos o requisitos, en la fase de desarrollo.
Cuando finalizamos estas cinco actividades, las repetimos una y otra vez hasta obtener un conjunto de documentos de requisitos acordados que son especificaciones formales.
Obtención de requisitos
Como discutimos antes, la obtención de requisitos es el proceso de revisar, documentar y comprender las necesidades y limitaciones del usuario para la temporada. Los usuarios necesitan información de dominio, información del sistema existente, regulaciones, estándares, etc. Con base en esta información, obtenemos los requisitos. Usamos la palabra 'Obtención' en lugar de 'Recopilación' porque la recopilación se interpreta como simplemente recoger los requisitos y ponerlos en un documento. Por otro lado, la elicitación es un proceso más complejo. No obtienes los requisitos tan fácilmente como los obtienes durante la recolección. Requiere un esfuerzo adicional.
Durante la elicitación, le pregunta al usuario o cliente:
- ¿Cuáles son sus objetivos para el sistema/producto?
- ¿Qué se debe lograr?
- ¿Cómo encajan las necesidades estacionales en las necesidades del negocio?
- ¿Cómo se utilizará regularmente el producto/sistema de temporada?
Suena simple, ¡pero no lo es!
Según Ian Sommerville y Pete Sawyer, la obtención de requisitos es el proceso de descubrir los requisitos de un sistema mediante la comunicación con los clientes, los usuarios del sistema y otras personas que tienen interés en el desarrollo del sistema. Dado que 'reunir' o 'capturar' no suena muy preciso, usamos la palabra 'obtención'.
“Sé que usted cree que entendió lo que cree que dije, pero no estoy seguro de que se dé cuenta de que lo que escuchó no es lo que quise decir” — Robert McCloskey, Portavoz del Departamento de Estado.
Lo que quiso decir con su cita es que a veces las personas malinterpretan lo que otras personas les dicen. A veces lo que dicen no es lo que tienen en mente. Eventualmente, toda esta falta de comunicación condujo al error en la recopilación de requisitos.
¿Cuáles son los pasos durante la elicitación?
PASO 1
Fuente de Requisitos:
Hay varias fuentes de las que podemos recopilar nuestros requisitos. Algunos de ellos incluyen:
- Interesados
- Sistemas existentes
- Documentos existentes
- Competidores y otros sistemas similares
- Interfaces con los sistemas
- Leyes y normas
- Compañía de Policías
PASO 2
Establecer el alcance del proyecto:
Se pueden seguir los siguientes pasos para configurar el alcance del proyecto:
- Descubra por qué se inicia el proyecto
- La propiedad define los objetivos clave que se lograrán a través del proyecto.
- Elabore una declaración de trabajo para el proyecto que lo ayudará a dividir adecuadamente el trabajo entre los miembros del equipo.
- Enumere los elementos que se entregarán al final del proyecto.
- Seleccionar los hitos clave a alcanzar
- Identificar las principales restricciones y limitaciones que el equipo puede enfrentar durante el desarrollo del proyecto.
- Crear una lista de elementos que están excluidos de la lista de elementos de alcance
- Haga que las partes interesadas firmen el documento de alcance, ya que proporciona una confirmación de que están informados sobre el proyecto y sus contenidos.
PASO 3
Tareas de elicitación:
Elicitación de la planificación:
- ¿Por qué debería implementarse este requisito en particular y los beneficios que proporcionará? - Objetivos del proyecto
- ¿Quién será el responsable de crearlo? – Profesionales para los esfuerzos de elicitación
- ¿Cuándo será el mejor momento para implementarlo? – Agendar un presupuesto fuentes
- ¿Cómo se implementará? – Estrategias y Procedimientos
- y los riesgos
Durante la elicitación:
- Confirmar la viabilidad del proyecto. Averigüe si el proyecto realmente vale la pena o no
- Comprender los problemas y las cuestiones desde la perspectiva de una parte interesada
- Extraer la esencia de los requisitos establecidos por las partes interesadas
- Descubra mejores formas de hacer el trabajo para los usuarios
- La innovación es la clave de la victoria
Siguiente elicitación:
- Analizar los resultados para comprender correctamente la información recopilada.
- Negociar un conjunto coherente de requisitos aceptables para las partes interesadas. Establecer las prioridades también
- Registrar los resultados en las especificaciones de los requisitos.
La elicitación es un proceso incremental. Debe repetir este paso tantas veces como sea necesario.
Ahora, seleccione un conjunto apropiado de técnicas para cada fuente de requisitos. Determine esta técnica en función de la fuente, el sistema a desarrollar, etc. Recuerde que no todas las técnicas se pueden utilizar en todas las situaciones.
PASO 4
Documentación de los Requisitos –
El último paso en el proceso de elicitación es finalizar todos los requisitos en forma de documento. Este documento contiene principalmente las notas y los requisitos del usuario. Y estos requisitos serán incompletos, inconsistentes y desorganizados. Pero esto es sólo el punto de partida. El documento se puede editar de vez en cuando, y se pueden agregar o modificar cosas.
Análisis y Negociación de Requerimientos
El análisis de requisitos suele ser un procedimiento de análisis, validación y alineación de los requisitos documentados durante la fase de Obtención de requisitos. En otras palabras, el análisis de requisitos es un proceso de estudio y comprensión de los requisitos establecidos por las partes interesadas. El análisis de requisitos requiere una comunicación frecuente con las partes interesadas y los usuarios finales para definir las expectativas, resolver los conflictos y, finalmente, documentar los requisitos clave. Las soluciones pueden involucrar problemas como:
- Diferentes tipos de configuración para el flujo de trabajo en la empresa.
- Configurar un nuevo sistema que se utilizará a partir de ahora, etc.
Una cosa a tener en cuenta es que la elicitación de requisitos y el análisis de requisitos funcionan juntos. Ellos dos se alimentan mutuamente. Cuando comenzamos a recopilar los requisitos, también los obtenemos y los analizamos al mismo tiempo.
Objetivos del análisis de requisitos
- El primer y principal objetivo del análisis de requisitos es comprender los requisitos y necesidades de los usuarios.
- Cuando utilizamos diferentes fuentes para recopilar los requisitos, puede haber algunos conflictos entre ellos. El análisis de requisitos se trata de encontrar esos conflictos entre los requisitos establecidos por los usuarios y resolverlos.
- Negociar los requisitos con los usuarios y stakeholders. No hay forma de que nuestro sistema pueda cumplir con todos los requisitos de la manera exacta en que los explican las partes interesadas y los usuarios.
- Habrá que negociar y priorizar los requisitos. Algunos requisitos pueden no ser grandes para nosotros, pero pueden ser muy importantes para los usuarios finales. Para entenderlos, tenemos que analizar y priorizar los requisitos de las partes interesadas.
- Debemos profundizar en los requisitos declarados por los usuarios y el sistema. Esto ayuda al documentar los requisitos en las especificaciones de requisitos. Además, esto ayuda a los desarrolladores a desarrollar, diseñar y probar mejor, ya que comprenden los requisitos de una manera mejor y más elaborada.
- Debemos clasificar los requisitos en varias categorías y subcategorías diferentes y, además, asignar esos requisitos a diferentes subsistemas.
- También debemos evaluar los requisitos para la calidad deseada por la organización.
- Por último, debemos asegurarnos de no perdernos nada importante.
Requisitos Documentación/Especificación
La especificación de requisitos, también conocida como documentación, es un proceso de anotar todos los requisitos del sistema y del usuario en forma de documento. Estos requisitos deben ser claros, completos, completos y coherentes.
Durante la actividad de captura, recopilamos todos los requisitos de varias fuentes. Durante las actividades de análisis y negociación, analizamos y entendemos esos requisitos. Ahora, debemos preparar un documento formal que explique esos requisitos. Esa es la especificación de requisitos. Para ser precisos, es el proceso de documentar todas las necesidades y restricciones del usuario y del sistema de manera clara y precisa.
Método para documentar los requisitos
OREJAS sería una metodología efectiva aquí. Lo que representa Enfoque sencillo de la sintaxis de los requisitos. En este método, escribimos un lenguaje claro, conciso y comprensible. Esto mejora todo el flujo de trabajo de ingeniería de requisitos y simplifica el trabajo al hacer que las cosas sean bastante fáciles de entender.
Para lograr esto, aquí hay algunos principios que deben tenerse en cuenta al escribir los requisitos. Implican:
Cada requisito debe tener la forma de una oración completa. No se deben utilizar viñetas, acrónimos, abreviaturas o palabras de moda. Trate de hacer oraciones cortas, directas y completas.
Asegúrese de que cada requisito tenga un sujeto, un predicado y un verbo adecuados. El tema sería el tipo de usuario o el sistema del que estamos hablando. El predicado serían las condiciones o acciones o resultados deseados que esperamos. Debemos usar palabras como 'deberá', 'voluntad' y 'debe' para expresar algún tipo de necesidad, y palabras como 'puede' para expresar opcionalidad en el requisito.
Cada requisito debe explicar de manera eficiente el resultado final que deseamos del sistema.
Además, el requisito debe describir la calidad que esperamos del sistema. Ayuda cuando medimos el resultado final y vemos si el requisito se implementa correctamente o no.
Validación de requisitos
La validación es un proceso utilizado para verificar si el sistema está a la altura o no. La validación responde a la pregunta: "¿Estamos construyendo el sistema correcto?" Se trata de probar y validar el sistema y ver si el sistema que construimos es correcto o no y si cumple con las expectativas del cliente o no. Varios métodos que se utilizan para validar el sistema incluyen pruebas de caja negra, pruebas de caja blanca, pruebas de integración y pruebas unitarias. La validación siempre viene después de la verificación.
La verificación es un proceso utilizado para verificar si el sistema logra o no los objetivos esperados sin errores o problemas. La verificación responde a la pregunta: "¿Estamos construyendo el producto correctamente?" Se trata de probar y verificar si el sistema cumple con sus requisitos sin ningún problema. Varios métodos que se utilizan para verificar el sistema incluyen revisiones, recorridos, inspecciones y comprobaciones de escritorio. La verificación es un proceso manual realizado antes de la validación.
Técnicas de Validación
Hay varias técnicas que se pueden utilizar para validar los requisitos. Incluyen:
- Cheques – Mientras verificamos los requisitos, revisamos los documentos de requisitos para asegurarnos de que no se pierdan notas de elicitación. Durante estos controles, también comprobamos el nivel de trazabilidad entre todos los requisitos. Para ello, se requiere la creación de una matriz de trazabilidad. Esta matriz asegura que todos los requisitos se están considerando con seriedad y todo lo que se especifica está justificado. También verificamos el formato de los requisitos durante estos controles. Vemos si los requisitos son claros y están bien escritos o no.
- prototipado – Esta es una forma de construir un modelo o simulación del sistema que será construido por los desarrolladores. Esta es una técnica muy popular para la validación de requisitos entre las partes interesadas y los usuarios, ya que les ayuda a identificar fácilmente los problemas. Simplemente podemos comunicarnos con los usuarios y las partes interesadas y obtener sus comentarios.
- Diseño de prueba – Durante el diseño de la prueba, seguimos un pequeño procedimiento en el que primero finalizamos el equipo de prueba y luego construimos algunos escenarios de prueba. Las pruebas funcionales se pueden derivar de la propia especificación de requisitos, donde cada requisito tiene una prueba asociada. Por el contrario, los requisitos no funcionales son difíciles de probar, ya que cada prueba debe rastrearse hasta su requisito. El objetivo de esto es averiguar los errores en la especificación o los detalles que se han perdido.
- Revisión de requisitos – Durante la revisión de requisitos, un grupo de personas con conocimientos analiza los requisitos de manera estructurada y detallada e identifica los problemas potenciales. Después de eso, se reúnen para discutir los problemas y encontrar una manera de abordarlos. Se prepara una lista de verificación que consta de varios estándares y los revisores marcan las casillas para proporcionar una revisión formal. Después de eso, se realiza una aprobación final.
Gestión de necesidades
Según Ian Sommerville, "La gestión de requisitos es el proceso de gestión de requisitos cambiantes durante el proceso de ingeniería de requisitos y el desarrollo del sistema".
El objetivo principal de la gestión de requisitos es garantizar requisitos claros, concisos y sin errores para el equipo de ingeniería para que puedan asegurarse de detectar errores en el sistema y reducir potencialmente el costo del proyecto y el riesgo.
Principales preocupaciones de la Gestión de Requisitos
Hay algunas preocupaciones sobre la gestión de requisitos. Incluyen:
- Gestionar los cambios en los requisitos acordados
- Gestionar la relación entre todos los requisitos.
- Administrar las dependencias entre los documentos de requisitos que se producen durante el proceso de ingeniería del sistema.
Tipos de requisitos
En términos generales, hay dos tipos de requisitos:
- Requisitos del sistema – Los requisitos del sistema se pueden llamar la versión ampliada de los requisitos del usuario. Los requisitos del sistema actúan como punto de partida para cualquier nuevo diseño de sistema. Estos requisitos son una descripción detallada de los requisitos del usuario que el sistema debe satisfacer.
- Requisitos de usuario – El requisito del usuario es una combinación de requisitos funcionales y no funcionales. Estos requisitos de usuario deben diseñarse de tal manera que sean fácilmente comprensibles para los usuarios que no tienen ningún tipo de conocimiento técnico. Por lo tanto, deben estar escritos en lenguaje natural utilizando tablas, formularios y diagramas simples. Además, asegúrese de que el documento no tenga detalles sobre el diseño del sistema, el software o las anotaciones formales.
Requisitos de visualización Plataforma ALM
Requisitos de visualización Plataforma ALM es una de las plataformas ALM modernas más confiables que se especializa en la gestión de requisitos para organizaciones de todos los tamaños en todo el mundo.
Es una herramienta imprescindible para los equipos que crean productos, sistemas y software complejos, que requieren trazabilidad de extremo a extremo desde la concepción hasta las pruebas y la implementación, hasta el código fuente, junto con el cumplimiento de la certificación estándar.
Visure Requisitos es una herramienta de ingeniería de requisitos flexible y completa comprobada, capaz de simplificar el proceso de requisitos de software como parte del proceso de definición mecánica y de hardware. Los requisitos de Visure ayudan a la colaboración eficaz en proyectos y aumentan la calidad del software a través de la captura, el análisis, la especificación, la validación y verificación, la gestión y la reutilización de requisitos.
Visure Solutions puede ayudar a superar los desafíos del desarrollo integrado y de productos,
- Mejorar la calidad de la definición como primer paso esencial para impulsar la calidad del software.
- Recuperar el control de los procesos regulatorios y de desarrollo
- Estandarizar y hacer cumplir la definición de requisitos en toda la organización.
- Apoyar la reutilización eficaz de los requisitos en los equipos de proyectos y las líneas y variantes de productos.
- Formalice una estructura de especificación de requisitos común y maneje los cambios a lo largo del ciclo de vida
- Lograr trazabilidad completa a través de todos los elementos, desde los requisitos hasta la prueba y la ejecución
- Realice un seguimiento de todos los aspectos del desarrollo con facilidad, desde gráficos de cálculo de riesgos hasta informes de requisitos huérfanos.
- Evite las trampas y mitigue el riesgo en todos los niveles, desde redactar mejores requisitos y priorizar las necesidades hasta cambiar las capacidades de análisis de impacto.
Beneficios de utilizar Visure Requirements para el desarrollo integrado y de productos
- Soporte de certificación para estándares de la industria, como DO-178B/C, IEC 61508, ISO 26262, IEC 62304, FMEA y GAMP5
- Una plataforma completa para todas las actividades relacionadas con los requisitos
- Cumplimiento de procesos a través de una solución flexible que admite diferentes modelos de procesos, incluidos Automotive SPICE, CMMI, V-model, Agile y ad hoc
- Mejor comunicación y colaboración del equipo a través de capacidades basadas en roles.
- Soporte para productos de mejor calidad y defectos de software reducidos.
Las empresas que utilizan activamente Visure afirman un claro impacto con las entregas de proyectos a tiempo, el cumplimiento de los proyectos y una disminución en los costos de desarrollo y los tiempos de ciclo.
Conclusión
La ingeniería de requisitos es un proceso crítico para garantizar que los productos y sistemas que construimos sean lo que nuestros clientes necesitan. El proceso de cinco pasos descrito en este artículo puede ayudarlo a que su proyecto tenga un buen comienzo al recibir comentarios de las partes interesadas de manera temprana y frecuente, y utilizar esos comentarios para generar requisitos claros y concisos. Si está buscando una herramienta que lo ayude a administrar su proceso de ingeniería de requisitos, la plataforma ALM de requisitos de Visure puede ayudarlo. Solicita tu prueba gratuita de 30 hoy para ver cómo nuestra plataforma puede hacer que su próximo proyecto sea un éxito.
¡No olvides compartir esta publicación!
Comience a obtener trazabilidad de extremo a extremo en todos sus proyectos con Visure hoy
¡Comience la prueba gratuita de 30 días hoy!