¿Qué es un requisito funcional en ingeniería de software?
¿Qué es un requisito funcional?
A Requerimiento funcional (FR) es una descripción del servicio que el software debe ofrecer. Describe un sistema de software o su componente. Una función no es más que entradas al sistema de software, su comportamiento y salidas. Puede ser un cálculo, manipulación de datos, proceso de negocio, interacción del usuario o cualquier otra funcionalidad específica que defina qué función es probable que realice un sistema. Los requisitos funcionales en ingeniería de software también se denominan Especificacion funcional.
En ingeniería de software e ingeniería de sistemas, un requisito funcional puede variar desde una declaración abstracta de alto nivel de la necesidad del remitente hasta especificaciones matemáticas detalladas de requisitos funcionales. software funcional Los requisitos le ayudan a capturar el comportamiento previsto del sistema.
¿Qué se debe incluir en el Documento de Requisitos Funcionales?
A continuación se explica cómo redactar un documento de requisitos funcionales:
Los requisitos funcionales de un sistema deben incluir lo siguiente:
- Detalle de las operaciones realizadas en cada pantalla
- La lógica de manejo de datos debe ingresarse en el sistema.
- Debe tener descripciones de informes del sistema u otros resultados.
- Información completa sobre los flujos de trabajo realizados por el sistema.
- Debe definir claramente quién podrá crear/modificar/eliminar los datos en el sistema.
- La forma en que el sistema cumplirá con las necesidades regulatorias y de cumplimiento aplicables debe reflejarse en el documento funcional.
Beneficios del requisito funcional
A continuación, se detallan las ventajas y ventajas de crear un documento de requisitos funcionales típico:
- Le ayuda a comprobar si la aplicación proporciona todas las funcionalidades mencionadas en los requisitos funcionales de esa aplicación.
- Un documento de requisitos funcionales le ayuda a definir la funcionalidad de un sistema o uno de sus subsistemas.
- Los requisitos funcionales junto con el análisis de requisitos ayudan a identificar los requisitos faltantes. Ayudan a definir claramente el servicio y el comportamiento esperado del sistema.
- Los errores detectados en la etapa de recopilación de requisitos funcionales son los más baratos de solucionar.
- Apoyar los objetivos, tareas o actividades del usuario
Tipos de requisitos funcionales
Estos son los tipos de requisitos funcionales más comunes:
- Manejo de transacciones
- Reglas de negocios
- Requisitos de Certificación
- Los requisitos de información
- Funciones administrativas
- Niveles de autorización
- Seguimiento de auditoría
- Interfaces externas
- Gestión de datos históricos
- Requisitos legales y reglamentarios
Ejemplo de requisitos funcionales
A continuación se muestran ejemplos de requisitos funcionales populares:
- El software valida automáticamente a los clientes con el sistema de gestión de contactos ABC.
- El sistema de ventas debe permitir a los usuarios registrar las ventas de los clientes.
- El color de fondo de todas las ventanas de la aplicación será azul y tendrá un valor de color RGB hexadecimal de 0x0000FF.
- Sólo los empleados de nivel gerencial tienen derecho a ver los datos de ingresos.
- El sistema de software debe estar integrado con la API bancaria.
- El sistema de software debe pasar Sección 508 Requisito de accesibilidad.
Requisitos no funcionales versus requisitos funcionales
Aquí se presentan las diferencias clave entre los requisitos funcionales y no funcionales en Ingeniería de Software:
parámetros | Requerimiento funcional | Requisito no funcional |
---|---|---|
Lo que es | Verb | Atributos |
Requisito | Es obligatorio | es no obligatorio |
Tipo de captura | Se captura en el caso de uso. | Se capta como un atributo de calidad. |
Resultado final | característica de producto | Propiedades del producto |
Capturando | Fácil de capturar | Difícil de capturar |
Objetivo | Le ayuda a verificar la funcionalidad del software. | Le ayuda a verificar el rendimiento del software. |
área de enfoque | Centrarse en los requisitos del usuario | Se concentra en las expectativas del usuario. |
Documentación | Describe lo que hace el producto. | Describe cómo funciona el producto. |
Tipo de prueba | Pruebas funcionales como sistema, integración, extremo a extremo, Pruebas de API, etc. | Pruebas no funcionales como rendimiento, estrés, usabilidad, Prueba de seguridad, etc. |
Ejecución de pruebas | La ejecución de la prueba se realiza antes de las pruebas no funcionales. | Después de las pruebas funcionales |
Información del producto | Características del producto | Propiedades del producto |
Mejores prácticas de Requerimientos Funcionales
Las mejores prácticas importantes para desarrollar un documento de requisitos funcionales son las siguientes:
- No combine dos requisitos en uno. Mantenga los requisitos granulares.
- Debe hacer que cada requisito sea lo más completo y preciso posible.
- El documento debe redactar todos los requisitos técnicos.
- Asigne todos los requisitos a los objetivos y principios que contribuyen a la entrega exitosa del software.
- Obtenga requisitos mediante entrevistas, talleres y comunicaciones informales.
- Si existe alguna restricción conocida y verificada que afecte materialmente un requisito, entonces se trata de un estado crítico que debe documentarse.
- Es necesario que documentes todos los supuestos en el documento.
Errores al crear un requisito funcional
A continuación se detallan algunos errores comunes que se cometen al crear un documento de requisitos de función:
- Introducir información adicional injustificada que pueda confundir a los desarrolladores.
- No incluir suficientes detalles en el documento de requisitos.
- Agrega reglas o ejemplos, declaraciones de alcance u objetivos, cualquier cosa excepto el requisito en sí.
- Omitió una información importante que es absolutamente imprescindible para establecer el requisito de forma completa, precisa y definitiva.
- Algunos profesionales empiezan a defender los requisitos que han documentado cuando se modifica el requisito, en lugar de encontrar la verdad correcta.
- Requisitos que no están asignados a un objetivo o principio.
APRENDIZAJES CLAVE
- Explicar los requisitos funcionales en Ingeniería de Software: Los requisitos funcionales definen un sistema o sus componentes.
- El documento de requisitos funcionales debe contener lógica de manejo de datos e información completa sobre los flujos de trabajo realizados por el sistema.
- Los requisitos funcionales junto con el análisis de requisitos ayudan a identificar los requisitos faltantes.
- Correcciones, ajustes y cancelaciones de transacciones, reglas comerciales, requisitos de certificación, requisitos de informes, funciones administrativas, niveles de autorización, seguimiento de auditoría, interfaces externas, gestión de datos históricos, requisitos legales o reglamentarios son varios tipos de requisitos funcionales.
- Como buena práctica, no combine dos requisitos en uno. Mantenga los requisitos granulares.
- Se debe evitar incluir información adicional injustificada que pueda confundir a los desarrolladores en el documento de requisitos funcionales. Para comprender cómo estos requisitos se traducen en procedimientos de prueba reales, es posible que desee explorar esta guía en prueba funcional.