Articulo de referencia

Especificación funcional

Modelo de ingeniería de sistemas de especificación y niveles de desarrollo. Durante el desarrollo del sistema, se generan una serie de especificaciones para describirlo con dist...

Modelo de ingeniería de sistemas de especificación y niveles de desarrollo. Durante el desarrollo del sistema, se generan una serie de especificaciones para describirlo con distintos niveles de detalle. Estas especificaciones, únicas para cada programa, constituyen la base de las líneas base de configuración. Como se muestra aquí, además de referirse a diferentes niveles dentro de la jerarquía del sistema, estas líneas base se definen en distintas fases del proceso de diseño. Nota: Hay un pequeño (e irónico) error tipográfico en la imagen superior. SI&T significa "integración y prueba del sistema", no "integración y texto del sistema".

Una especificación funcional (también, especificación funcional , especificaciones , documento de especificaciones funcionales (FSD) , especificación de requisitos funcionales ) en ingeniería de sistemas y desarrollo de software es un documento que especifica las funciones que un sistema o componente debe realizar (a menudo forma parte de una especificación de requisitos) (ISO/IEC/IEEE 24765-2010). [ 1 ]

La documentación suele describir las necesidades del usuario del sistema, así como las propiedades requeridas para las entradas y salidas (por ejemplo, del sistema de software ). Una especificación funcional es la respuesta más técnica a un documento de requisitos correspondiente, como el documento de requisitos del producto (PRD) . De este modo, recoge los resultados de la fase de análisis de requisitos . En sistemas más complejos, las especificaciones funcionales suelen estar anidadas en varios niveles, por ejemplo, a nivel de sistema, de módulo y de detalles técnicos.

Descripción general

Una especificación funcional no define el funcionamiento interno del sistema propuesto; no incluye la especificación de cómo se implementará la función del sistema.

Un requisito funcional en una especificación funcional podría indicarse de la siguiente manera:

Cuando el usuario hace clic en el botón Aceptar, el cuadro de diálogo se cierra y el foco vuelve a la ventana principal en el estado en que se encontraba antes de que se mostrara este cuadro de diálogo.

Este requisito describe la interacción entre un agente externo (el usuario ) y el sistema de software. Cuando el usuario introduce información en el sistema haciendo clic en el botón Aceptar, el programa responde (o debería responder) cerrando la ventana de diálogo que contiene dicho botón.

Temas de especificación funcional

Objetivo

Las especificaciones funcionales tienen múltiples propósitos. Uno de los principales en los proyectos de equipo es lograr cierto consenso sobre los objetivos del programa antes de dedicar tiempo a escribir el código fuente y los casos de prueba , seguido de un período de depuración . Por lo general, este consenso se alcanza tras una o varias revisiones por parte de las partes interesadas del proyecto, después de haber negociado una solución rentable para cumplir con los requisitos del software.

  1. Para que los desarrolladores sepan qué construir.
  2. Para que los evaluadores sepan qué pruebas deben ejecutar.
  3. Para que las partes interesadas sepan qué van a obtener.

Proceso

En el ciclo de vida ordenado de la ingeniería de software industrial ( modelo en cascada ), la especificación funcional describe lo que debe implementarse. A continuación, el documento de arquitectura del sistema describe cómo se implementarán las funciones utilizando un entorno de software seleccionado. En el desarrollo de sistemas prototípicos no industriales, las especificaciones funcionales suelen redactarse después del análisis de requisitos o como parte del mismo.

Cuando el equipo acuerda que se ha alcanzado un consenso sobre la especificación funcional, esta se declara "completa" o "aprobada". Posteriormente, el equipo de desarrollo y pruebas de software suele escribir el código fuente y los casos de prueba utilizando la especificación funcional como referencia. Durante las pruebas, el comportamiento del programa se compara con el comportamiento esperado, tal como se define en la especificación funcional.

Métodos

Un método popular para redactar un documento de especificaciones funcionales consiste en dibujar o renderizar esquemas sencillos o capturas de pantalla de la interfaz de usuario con un diseño gráfico preciso. Una vez completado este proceso y aprobados los ejemplos de pantalla por todas las partes interesadas, se pueden numerar los elementos gráficos y añadir instrucciones escritas para cada número. Por ejemplo, en una pantalla de inicio de sesión, el campo de nombre de usuario puede etiquetarse con el número '1' y el de contraseña con el '2'. A continuación, se puede indicar cada número por escrito para que lo utilicen los ingenieros de software y, posteriormente, para las pruebas beta, garantizando así que la funcionalidad sea la prevista. La ventaja de este método es que permite añadir infinidad de detalles adicionales a los ejemplos de pantalla.

Ejemplos de especificaciones funcionales

Tipos de especificaciones de desarrollo de software

Véase también

Referencias

  1. ISO/IEC/IEEE 24765:2010 Ingeniería de sistemas y software — Vocabulario
  • Especificaciones funcionales sin dolor, serie de 4 partes de Joel Spolsky