Estructurado
Con el nombre de estructurado se hace referencia a los recursos disponibles para la perspectiva de programación estructurada y diferenciarla de este modo de los recursos disponibles para la perspectiva orientada a objetos. El análisis de requerimientos para la programación estructurada se divide en cinco áreas:
– Reconocimiento del problema
– Evaluación y síntesis
– Modelado
– Especificaciones
– Revisiones
Los métodos de análisis se encuentran basados en un conjunto de principios:
– La información de un problema debe de ser representado y entendido
– Las funciones del software deberán de ser definidas
– El comportamiento del software debe de ser representado
– Los modelos que representan información, funciones y comportamiento deberán de ser divididos de manera de que sean abarcados a detalle.
– El proceso de análisis deberá de mover la información esencial hacia una implementación detallada
Con la finalidad de realizar una mejor representación del sistema de software se presentan algunos modelos. ERD
(Entity Relationship Diagrams). Estos modelos permiten identificar los objetos de datos y sus relaciones a través de una notación gráfica. Se definen los datos que ingresan, se almacenan, transforman y genera la aplicación. En la representación los datos se organizan en grupos y se muestra la relación entre grupos.
Los atributos de cada entidad dentro del ERD son descritos en el diccionario de datos. Los atributos para un objeto de datos son determinados con el entendimiento del contexto del problema. Los atributos se asocian a identificadores y llaves de las bases de datos.
Un diagrama ERD se compone de cajas que representan a las entidades y líneas que indican las relaciones entre ellos. Una entidad es algo en el mundo del que necesitamos almacenar datos. Las entidades se identifican dentro de un sistema con nombres de sustantivos (archivos, repositorio de datos, elementos que son manufacturados, roles funcionales, etc.). Los eventos y actividades también pueden considerarse como entidades. Una entidad es sólo una representación de datos.
DCD (Data Context Diagram). Es un diagrama de alto nivel que captura al sistema y sus interfaces externas a diferentes entidades o sistemas. Se identifica el límite entre el sistema y su ambiente con sus entradas y salidas.
Con un solo proceso se muestra la transformación realizadas por el sistema. La notación de DCD incluye cajas que representan a las entidades externas al sistema, el flujo de datos se representa con flechas y círculos que representan los procesos del sistema que transforman los datos.
DFD (Data Flow Diagrams). Es una representación del sistema como una red de procesos funcionales conectados entre ellos por flujos de datos y repositorio de datos. Los procesos transforman los datos. Para abarcar todo el sistema se divide en componentes. Empleando la descomposición funcional es posible ir de una representación de alto nivel a uno de menor nivel o más detallado.
DFD utiliza círculos para representar a los procesos, flechas para los flujos de datos y dos líneas paralelas para los repositorios de datos. En este tipo de diagrama sólo representa los repositorios externos pero no las entidades.
PSPEC (Process Specifications). Es una descripción de un proceso o función a un nivel de descomposición detallado. Captura los pasos que son necesarios para realizar cada proceso, en los que se manejan las entradas y las salidas. Para ello se puede realizar seudocódigo, tablas de decisión, ecuaciones u otras gráficas.
CCD (Control Context Diagram). Cuenta con sólo un proceso, muestra las entradas y salidas que se realizan con las entidades externas, detallándose hasta finalizar en especificaciones. La diferencia con respecto a otros diagramas es el cambio de estado del sistema que activa y desactiva las transformaciones. Los símbolos que emplea el CCD son los mismos a un DCD, con la excepción del control de datos que se representa de flechas de línea no continua para distinguirla de otros datos.
CFD (Control Flow Diagrams). Es un diagrama semejante al DFD, con la variación de que se modela el flujo de control de datos y no flujo de datos. Comparte las mismas propiedades del DFD, así como también los procesos y repositorio de datos. La diferencia radica en la presentación del flujo de control a través de líneas no continuas y el símbolo de una barra que indica la especificación de control (CSPEC) que puede cambiar el estado del sistema. CFD no muestra las entidades externas.
CSPEC (Control Specifications). Contiene la información adicional relacionada a los aspectos de control. El propósito primario es modificar la respuesta del procesamiento de datos de acuerdo a las condiciones pasadas y presentes tanto dentro y fuera del sistema. Es importante identificar todos los posibles estados del sistema para representarlos por modelos finitos de estados que describen el comportamiento del sistema.
STD (State Transition Diagram) representa el comportamiento de un sistema para que sean observables los eventos y los estados que causan el cambio de estado de un sistema. STD representa a los CSPEC en donde las condiciones son representadas por entradas de control de flujo y las acciones son representadas por flujos de control de salida.
Fuente: Apuntes de Ingeniería del Software de la FCA de la UNAM