Requerimientos funcionales y no funcionales
Diseño de bases de datos
© berzal@acm.org
Documento de especificación del sistema
1. 2. 3. 4. 5. 6. 7. 8.
Definición del problema Descripción funcional Restricciones Diagramas de flujo de datos Modelo de datos Diccionario de datos Casos de uso Documentos adicionales
1
© berzal@acm.org
Especificación de requerimientos
Requerimientos DefiniciónRequerimientos funcionales y no funcionales Especificación de requisitos en lenguaje natural Casos de uso Documento de especificación del sistema
2
© berzal@acm.org
Requerimientos
Los requerimientos/requisitos de un sistema describen los servicios que ha de ofrecer el sistema y las restricciones asociadas a su funcionamiento.
Requerimientos: Propiedades o restricciones determinadas deforma precisa que deben satisfacerse.
3
© berzal@acm.org
Requerimientos funcionales y no funcionales
Requerimientos funcionales: Expresan la naturaleza del funcionamiento del sistema (cómo interacciona el sistema con su entorno y cuáles van a ser su estado y funcionamiento).
NOTA: A veces, también es conveniente indicar lo que no hará el sistema.
4
© berzal@acm.orgRequerimientos funcionales y no funcionales
Requerimientos no funcionales: Restricciones sobre el espacio de posibles soluciones. Rendimiento del sistema: Fiabilidad, tiempo de respuesta, disponibilidad… Interfaces: Dispositivos de E/S, usabilidad, interoperabilidad… Proceso de desarrollo: Estándares, herramientas, plazo de entrega…
5
© berzal@acm.org
Requerimientos funcionales y no funcionalesLos requisitos funcionales definen qué debe hacer un sistema.
Los requisitos no funcionales definen cómo debe ser el sistema.
6
© berzal@acm.org
Requerimientos funcionales y no funcionales
A los requisitos no funcionales se les suele llamar coloquialmente “cualidades” del sistema [“-ilities” en [“-ilities” inglés”] y pueden dividirse en dos categorías: categorías: Cualidades deejecución, ejecución, como la seguridad o la usabilidad, usabilidad, observables en tiempo de ejecución. ejecución. Cualidades de evolución, evolución, como la “testabilidad”, mantenibilidad, extensibilidad o “testabilidad”, mantenibilidad, escalabilidad, escalabilidad, determinadas por la estructura estática del software.
7
© berzal@acm.org
Requerimientos funcionales y no funcionales
Ladistinción entre requerimientos funcionales y no funcionales no siempre resulta evidente.
Ejemplo: La seguridad puede interpretarse inicialmente como un requerimiento no funcional al principio. No obstante, su elaboración puede conducir a nuevos requerimientos funcionales, como la necesidad de autentificar a los usuarios del sistema.
Más allá de si decidimos incluir este tipo de requisitos en unasección u otra, lo importante es identificarlos correctamente.
8
© berzal@acm.org
Especificación de requerimientos en lenguaje natural
Los requerimientos… se suelen especificar en lenguaje natural, se expresan de forma individual (p.ej. esquemáticamente), se organizan de forma jerárquica (a distintos niveles de detalle), a menudo, se numeran (para facilitar su gestión),
9
© berzal@acm.orgEspecificación de requerimientos en lenguaje natural
Los requerimientos han de ser… claros y concretos (evitando imprecisiones y ambigüedades) p.ej. Uso de puntos suspensivos, etcétera… concisos (sin rodeos ni figuras retóricas), completos y consistentes, consistentes,
10
© berzal@acm.org
Especificación de requerimientos en lenguaje natural
Los requerimientos han de indicar… lo que seespera que haga el sistema (¿qué?), su justificación (¿por qué ha de ser así? ¿quién lo propuso?) y, en su caso, los criterios de aceptación que sean aplicables (¿cómo se verifica su cumplimiento?).
11
© berzal@acm.org
Especificación de requerimientos en lenguaje natural
Los requerimientos funcionales… funcionales… deben estar redactados de tal forma que sean comprensibles para...
Regístrate para leer el documento completo.