Ingeniería de Requisitos y Diseño de Sistemas: Fundamentos para el Desarrollo de Software

Clasificado en Informática

Escrito el en español con un tamaño de 5,72 KB

Análisis y Diseño Estructurado de Sistemas de Información

Objetivo: Obtener una especificación detallada del Sistema de Información (SI) y de sus interfaces con otros sistemas, que satisfaga las necesidades de información de los usuarios y sirva de base para el diseño.

Obtención de Requisitos: Técnicas y Prioridades

Técnicas de Recogida de Información

  • Sesiones de trabajo con los usuarios para extraer los requisitos (con prioridades).
  • Catálogo de requisitos.
  • Modelo de casos de uso.

Tipos de Requisitos

Requisitos Funcionales

  • Describen la funcionalidad o los servicios que se espera que el sistema proveerá: sus entradas y salidas, excepciones, etc., en resumen, su lógica.
  • Con casos de uso (obligatorio en AOO):
    • Actores.
    • Casos de uso.
    • Breve descripción de cada caso de uso.

Requisitos No Funcionales

  • Se refieren a las propiedades emergentes del sistema.
  • Restricciones del entorno.
  • Niveles de servicio del sistema:
    • Rendimiento.
    • Seguridad.
    • Implantación.
    • Disponibilidad.
    • Fiabilidad, tiempo de respuesta, capacidad de almacenamiento, capacidad de los dispositivos de entrada/salida, y la representación de datos utilizada en las interfaces del sistema.

Proceso General de Recolección de Requisitos

En general, el proceso de recolección de requisitos debería seguir los siguientes pasos:

  • Identificar las fuentes de información.
  • Realizar las preguntas apropiadas.
  • Analizar la información.
  • Confirmar con los usuarios lo que parece haberse comprendido de los requisitos.

Prototipado de Sistemas

Prototipado: Construcción de una maqueta o modelo de sistema para evaluar los requisitos.

Conceptos Clave en Ingeniería de Requisitos

Requisitos

Condiciones que debe cumplir un sistema para satisfacer un contrato, una norma o una especificación. También, una condición o capacidad que necesita el usuario para poder resolver un problema o conseguir un beneficio determinado.

Análisis de Requisitos

El proceso de estudio de las necesidades de los usuarios para llegar a una definición de los requisitos del sistema, ya sea de hardware o de software. También, el proceso de estudio y refinamiento de dichos requisitos. [IEEE Std. 610, Glosario estándar de términos en ingeniería del software]

Extracción de Requisitos

El proceso mediante el cual los clientes o futuros usuarios del software descubren, revelan, articulan y comprenden los requisitos que desean. Incluye el uso de técnicas de recogida de información.

Análisis de Requisitos (Proceso)

El proceso de razonamiento sobre los requisitos obtenidos, detectando y resolviendo posibles inconsistencias o conflictos.

Especificación de Requisitos

El proceso de redacción o registro de los requisitos. Para este proceso puede recurrirse al lenguaje natural o a lenguajes formales. El resultado es un catálogo de requisitos.

Validación de Requisitos

El proceso de confirmación, por parte de los usuarios o clientes, de que los requisitos especificados son válidos, consistentes y completos.

Cualidades de un Buen Proceso de Requisitos

Las características deseables para un buen proceso de requisitos son las siguientes [IEEE 1984b]:

  • No ambigua.
  • Completa.
  • Fácil de verificar.
  • Consistente.
  • Fácil de modificar.
  • Fácil para identificar el origen o las consecuencias de cada requisito.
  • Fácil de utilizar durante la fase de explotación y mantenimiento.

Componentes del Diseño Estructurado

Fases Principales:

  • Análisis: Diagramas de Flujo de Datos (DFD).
  • Diseño: Diagramas de Estructuras.

Visión General del Análisis y Diseño Estructurado (AyDE)

Beneficios Clave:

  • Facilita la comunicación en el proceso de desarrollo de un sistema de información entre usuarios y analistas.
  • Es sencillo, fácil de entender y fácil de aprender.

Características del AyDE

  • Amplia difusión.
  • Descomposición funcional:
    1. (Originariamente) Orientada a procesos.
    2. (Originariamente) Top-down.
  • Presente en numerosas metodologías (p.ej., Métrica, SSADM, Information Engineering, Merise).
  • Herramientas CASE disponibles.

Componentes Principales del AyDE

  • DFD (Diagrama de Flujo de Datos - Dataflow Diagram).
  • Diagrama E-R (Entidad-Relación), o alternativamente, DED (Diagrama de Estructura de Datos).
  • Diagramas HVE (Historia de Vida de las Entidades).
  • Diagramas de Transición de Estados (STD - State Transition Diagram).
  • Lógica de Procesos:
    1. Lenguaje estructurado.
    2. Pre y post-condiciones.
    3. Tablas de decisión.
    4. Árboles de decisión.
  • Diccionario de Datos (DD).

Diagramas de Flujo de Datos (DFD) en el Análisis Estructurado

Características del DFD:

  • Ofrece una visión general de las funciones y transformaciones de datos en una organización.
  • Es un modelo lógico y gráfico del sistema (también puede ser un modelo físico).
  • Identifica entradas, salidas, procesos y relaciones con el exterior.

Entradas relacionadas: