Especificaciones  de  software
Modelos  del  Análisis
Modelado del Análisis Análisis Estructurado Análisis Orientado a Objetos
Análisis Estructurado Elementos del modelo de análisis
Modelo de datos ¿Qué es un modelo? MODELO  REALIDAD Representación Abstracta de la realidad
Modelo de datos Diagramas de Entidad-Relación Modelo de Datos ¿Cuáles son los objetos de datos primarios que va a procesar el sistema? ¿Cuál es la composición de cada uno de estos objetos y qué atributos los describen? ¿Cuál son las relaciones entre dichos objetos?  Primitivas de los DER Entidades Relaciones Atributos
Entidades y atributos Entidad Abstracción de un objeto del mundo real.  Representa una colección de objetos que tienen propiedades comunes. Ejemplo: CLIENTE Atributo Propiedad de una entidad Ejemplo: Nombre y apellido, edad, dirección, etc. Instancia de una entidad Ejemplo.
Entidades y atributos
Relaciones Modelo conceptual
Relaciones uno a muchos Entidad hijo Entidad padre Cardinalidad: cero, una o más
Cardinalidades “P” indica uno o más. “Z” indica cero o una. “ n ” indica exactamente  n .  ausencia de símbolo indica cero o más.
Relaciones muchos a muchos No específicas No hay padre ni hay hijo Entidad asociativa
Entidades dependientes e independientes Entidad independiente Entidad dependiente Entidad independiente
Relaciones Recursivas
Conclusiones DER Notación semi-formal Descriptiva Expresividad limitada Altamente intuitivos
Modelo de Procesos Diagrama de Flujo de Datos (DFD) Características Fáciles de comunicar Notación operacional semi-formal Variedad de nombres y notación Aplicabilidad amplia Descomposición por niveles DD DFD DER DTE
Componentes de un DFD P rocesos F lujos  de datos A lmacenes T erminadores o  E ntidades  E xternas.
Procesos Una actividad, tarea, proceso, función, etc. Transforma entradas en salidas Representación Gráfica 1 SOLICITAR TARJETA proceso burbuja función transformación verbo-objeto (qué) en  modelos de procesadores   (quién)
Flujo de Datos R epresentan datos en movimiento  lógicamente relacionados. D escrib en  el movimiento de paquetes de datos de una parte del sistema a otra.  etiqueta del flujo
Flujo de Datos Entra a o sale de proceso entidad externa almacén 2 VALIDAR USUARIO contraseña  + nro_usuario respuesta de validación dirección Elegir nombres significativos
Flujos de Datos Diálogo pregunta sobre  estado de   pedido respuesta sobre  estado de pedido 1 D ETERM. ESTADO DEL PEDIDO 1 D ETERM. ESTADO DEL PEDIDO pregunta sobre  estado de   pedido respuesta sobre  estado de pedido
Flujos de Datos Divergentes OBTENER DETALLE DE ORDEN GENERAR  FACTURA detalle de pedidos orden de compra ACTUALIZAR INVENTARIO VALIDAR NUMERO TELEFO-NO VALIDAR CODIGO POSTAL domicilio VALIDAR CALLE código postal numero teléfono calle
Flujos de Datos Convergentes OBTENER NUMERO TELEFO-NO OBTENER CODIGO POSTAL domicilio OBTENER  CALLE código postal numero teléfono calle VALIDAR DOMICILIO
Aplicabilidad 1 MEZCLAR INGRE- DIENTES harina masa leche azúcar manteca huevos 2 HORNEAR torta
Almacén de Datos Colección de datos en reposo. archivo en disco microfichas datos en un fichero de papel etc. Representación gráfica: nombre del almacén
Almacén de Datos Lectura OBTENER DATOS PERSONALES CLIENTES datos_cliente no destructiva pasivo nombre en plural nro_cliente datos_cliente
Almacén de Datos Escritura ACTUALIZAR INFORMACION  DE CONTACTO DE CLIENTE info_contacto escritura sólo paquetes que el almacén pueda guardar nro_cliente info_contacto CLIENTES
Diccionario de Datos - Notación =  E stá compuesto  por + y () O pcional idad {} I teración. Cero o más ocurrencias .   [] Selección de  una de varias alternativas .   | S epara dor de  opciones alternativas . * P rincipio y fin de comentario.  @ I dentificador  de clave  para un almacén .  Se  coloca precediendo la clave.
Entidad Externa o Terminador Representan objetos con los cuales el sistema se comunica. personas agrupamientos  organizaciones otros sistemas de software o hardware Se encuentran por fuera del sistema. Representación gráfica: nombre del terminador
Entidad Externa o Terminador P roveen con datos al sistema  y/o esperan algún tipo de salida. “ Cuando recib i mos los formularios XYZ de Contaduría debemos producir los reportes financieros  para el  Comité de finanzas” . CONTADURIA COMITÉ DE  FINANZAS PRODUCIR REPORTES FINANCIEROS formularios_XYZ reportes_financieros
DFDs por niveles C uando el DFD es muy complejo . Organización por niveles DFD de nivel inferior proporciona más detalles sobre proceso en DFD de nivel superior.
DFDs por niveles Diagrama de Contexto  Nivel más alto. Visión más abstracta del sistema. Da la visión externa del sistema. Muestra todo el sistema proceso único  flujos de entrada y salida entidades externas Propósito: delinear el alcance del sistema.
DFDs por niveles Figura 0 Muestra procesos de más alto nivel y sus interfaces. Numerar burbujas. Cada burbuja  i  de un nivel particular se asocia con una figura del nivel siguiente  (si es que se explotó).
0 EL SISTEMA E1 E2 E3 a b c Diagrama de Contexto Figura 3: PC 3.1 PE 3.2 PF 3.3 PG z y x o t 1 PA 2 PB 4 PD 3 PC a z b y x c w v Figura 0: EL SISTEMA
Guía práctica Escoger nombres significativos . Numerar los procesos .   Redibujar . Evitar complej idad => niveles   Evitar los flujos y procesos no etiquetados.  Controlar consistencia entre niveles. Tener cuidado con los almacenes de solo lectura o solo escritura .
Observaciones sobre los DFDs Fáciles de comunicar. Carecen de un significado preciso: La semántica de los componentes usados solamente se encuentra especificada por los nombres elegidos por el analista.  Carecen de aspectos de control.
Modelo de Comportamiento Diagramas de Transición de Estados (DTE) Notación gráfica semi-formal operacional. P ermite construir modelos de comportamiento dependientes del tiempo .   Componentes: Estados Transiciones Condiciones Acciones
Estados E l sistema está esperando que : algo ocurra en el ambiente externo  (evento) o, alguna actividad que se está realizando en ese momento cambie a otra. Representación gráfica : nombre del estado
Transiciones Representan cambios de un estado a otro. estado inicial estado final transición ESTADO 1 ESTADO 2 ESTADO 3
Condiciones y Acciones Pueden aparecer asociadas a una transición. ESTADO 1 ESTADO 2 Condición Acción
ESPERANDO TARJETA ESPERANDO OPCION Mostrar menú de opciones Se ingresó contraseña ESPERANDO   CONTRASEÑA Se ingresó tarjeta Mostrar “Ingrese contraseña” Se pulsó Cancelar Devolver Trajeta EXTRACCION Se pulsó “Extraer efectivo” TRANSFERENCIA Se pulsó “Transferir Fondos” CONSULTAS Se pulsó “Realizar Consulta” Mostrar opciones de consulta Se pulsó Cancelar Devolver Tarjeta Se pulsó “Finalizar” Devolver Tarjeta Mostrar menú de opciones
ESPERANDO ELECCION IMPRIMIENDO SALDO IMPRIMIENDO MOVIMIENTOS Se pulsó “Consulta de Saldo” Se pulsó “Consulta de Ultimos Movimientos”

Analisis Estructurado

  • 1.
  • 2.
    Modelos del Análisis
  • 3.
    Modelado del AnálisisAnálisis Estructurado Análisis Orientado a Objetos
  • 4.
    Análisis Estructurado Elementosdel modelo de análisis
  • 5.
    Modelo de datos¿Qué es un modelo? MODELO REALIDAD Representación Abstracta de la realidad
  • 6.
    Modelo de datosDiagramas de Entidad-Relación Modelo de Datos ¿Cuáles son los objetos de datos primarios que va a procesar el sistema? ¿Cuál es la composición de cada uno de estos objetos y qué atributos los describen? ¿Cuál son las relaciones entre dichos objetos? Primitivas de los DER Entidades Relaciones Atributos
  • 7.
    Entidades y atributosEntidad Abstracción de un objeto del mundo real. Representa una colección de objetos que tienen propiedades comunes. Ejemplo: CLIENTE Atributo Propiedad de una entidad Ejemplo: Nombre y apellido, edad, dirección, etc. Instancia de una entidad Ejemplo.
  • 8.
  • 9.
  • 10.
    Relaciones uno amuchos Entidad hijo Entidad padre Cardinalidad: cero, una o más
  • 11.
    Cardinalidades “P” indicauno o más. “Z” indica cero o una. “ n ” indica exactamente n . ausencia de símbolo indica cero o más.
  • 12.
    Relaciones muchos amuchos No específicas No hay padre ni hay hijo Entidad asociativa
  • 13.
    Entidades dependientes eindependientes Entidad independiente Entidad dependiente Entidad independiente
  • 14.
  • 15.
    Conclusiones DER Notaciónsemi-formal Descriptiva Expresividad limitada Altamente intuitivos
  • 16.
    Modelo de ProcesosDiagrama de Flujo de Datos (DFD) Características Fáciles de comunicar Notación operacional semi-formal Variedad de nombres y notación Aplicabilidad amplia Descomposición por niveles DD DFD DER DTE
  • 17.
    Componentes de unDFD P rocesos F lujos de datos A lmacenes T erminadores o E ntidades E xternas.
  • 18.
    Procesos Una actividad,tarea, proceso, función, etc. Transforma entradas en salidas Representación Gráfica 1 SOLICITAR TARJETA proceso burbuja función transformación verbo-objeto (qué) en modelos de procesadores (quién)
  • 19.
    Flujo de DatosR epresentan datos en movimiento lógicamente relacionados. D escrib en el movimiento de paquetes de datos de una parte del sistema a otra. etiqueta del flujo
  • 20.
    Flujo de DatosEntra a o sale de proceso entidad externa almacén 2 VALIDAR USUARIO contraseña + nro_usuario respuesta de validación dirección Elegir nombres significativos
  • 21.
    Flujos de DatosDiálogo pregunta sobre estado de pedido respuesta sobre estado de pedido 1 D ETERM. ESTADO DEL PEDIDO 1 D ETERM. ESTADO DEL PEDIDO pregunta sobre estado de pedido respuesta sobre estado de pedido
  • 22.
    Flujos de DatosDivergentes OBTENER DETALLE DE ORDEN GENERAR FACTURA detalle de pedidos orden de compra ACTUALIZAR INVENTARIO VALIDAR NUMERO TELEFO-NO VALIDAR CODIGO POSTAL domicilio VALIDAR CALLE código postal numero teléfono calle
  • 23.
    Flujos de DatosConvergentes OBTENER NUMERO TELEFO-NO OBTENER CODIGO POSTAL domicilio OBTENER CALLE código postal numero teléfono calle VALIDAR DOMICILIO
  • 24.
    Aplicabilidad 1 MEZCLARINGRE- DIENTES harina masa leche azúcar manteca huevos 2 HORNEAR torta
  • 25.
    Almacén de DatosColección de datos en reposo. archivo en disco microfichas datos en un fichero de papel etc. Representación gráfica: nombre del almacén
  • 26.
    Almacén de DatosLectura OBTENER DATOS PERSONALES CLIENTES datos_cliente no destructiva pasivo nombre en plural nro_cliente datos_cliente
  • 27.
    Almacén de DatosEscritura ACTUALIZAR INFORMACION DE CONTACTO DE CLIENTE info_contacto escritura sólo paquetes que el almacén pueda guardar nro_cliente info_contacto CLIENTES
  • 28.
    Diccionario de Datos- Notación = E stá compuesto por + y () O pcional idad {} I teración. Cero o más ocurrencias . [] Selección de una de varias alternativas . | S epara dor de opciones alternativas . * P rincipio y fin de comentario. @ I dentificador de clave para un almacén . Se coloca precediendo la clave.
  • 29.
    Entidad Externa oTerminador Representan objetos con los cuales el sistema se comunica. personas agrupamientos organizaciones otros sistemas de software o hardware Se encuentran por fuera del sistema. Representación gráfica: nombre del terminador
  • 30.
    Entidad Externa oTerminador P roveen con datos al sistema y/o esperan algún tipo de salida. “ Cuando recib i mos los formularios XYZ de Contaduría debemos producir los reportes financieros para el Comité de finanzas” . CONTADURIA COMITÉ DE FINANZAS PRODUCIR REPORTES FINANCIEROS formularios_XYZ reportes_financieros
  • 31.
    DFDs por nivelesC uando el DFD es muy complejo . Organización por niveles DFD de nivel inferior proporciona más detalles sobre proceso en DFD de nivel superior.
  • 32.
    DFDs por nivelesDiagrama de Contexto Nivel más alto. Visión más abstracta del sistema. Da la visión externa del sistema. Muestra todo el sistema proceso único flujos de entrada y salida entidades externas Propósito: delinear el alcance del sistema.
  • 33.
    DFDs por nivelesFigura 0 Muestra procesos de más alto nivel y sus interfaces. Numerar burbujas. Cada burbuja i de un nivel particular se asocia con una figura del nivel siguiente (si es que se explotó).
  • 34.
    0 EL SISTEMAE1 E2 E3 a b c Diagrama de Contexto Figura 3: PC 3.1 PE 3.2 PF 3.3 PG z y x o t 1 PA 2 PB 4 PD 3 PC a z b y x c w v Figura 0: EL SISTEMA
  • 35.
    Guía práctica Escogernombres significativos . Numerar los procesos . Redibujar . Evitar complej idad => niveles Evitar los flujos y procesos no etiquetados. Controlar consistencia entre niveles. Tener cuidado con los almacenes de solo lectura o solo escritura .
  • 36.
    Observaciones sobre losDFDs Fáciles de comunicar. Carecen de un significado preciso: La semántica de los componentes usados solamente se encuentra especificada por los nombres elegidos por el analista. Carecen de aspectos de control.
  • 37.
    Modelo de ComportamientoDiagramas de Transición de Estados (DTE) Notación gráfica semi-formal operacional. P ermite construir modelos de comportamiento dependientes del tiempo . Componentes: Estados Transiciones Condiciones Acciones
  • 38.
    Estados E lsistema está esperando que : algo ocurra en el ambiente externo (evento) o, alguna actividad que se está realizando en ese momento cambie a otra. Representación gráfica : nombre del estado
  • 39.
    Transiciones Representan cambiosde un estado a otro. estado inicial estado final transición ESTADO 1 ESTADO 2 ESTADO 3
  • 40.
    Condiciones y AccionesPueden aparecer asociadas a una transición. ESTADO 1 ESTADO 2 Condición Acción
  • 41.
    ESPERANDO TARJETA ESPERANDOOPCION Mostrar menú de opciones Se ingresó contraseña ESPERANDO CONTRASEÑA Se ingresó tarjeta Mostrar “Ingrese contraseña” Se pulsó Cancelar Devolver Trajeta EXTRACCION Se pulsó “Extraer efectivo” TRANSFERENCIA Se pulsó “Transferir Fondos” CONSULTAS Se pulsó “Realizar Consulta” Mostrar opciones de consulta Se pulsó Cancelar Devolver Tarjeta Se pulsó “Finalizar” Devolver Tarjeta Mostrar menú de opciones
  • 42.
    ESPERANDO ELECCION IMPRIMIENDOSALDO IMPRIMIENDO MOVIMIENTOS Se pulsó “Consulta de Saldo” Se pulsó “Consulta de Ultimos Movimientos”

Notas del editor

  • #4 En un nivel técnico, la ingeniería del software empieza con una serie de tareas de modelado que llevan a una especificación completa de los requisitos y a una representación del diseño general del software a construir. El modelo de análisis, realmente un conjunto de modelos, es la primera representación técnica de un sistema. El modelo de análisis debe lograr tres objetivos primarios: (1) describir lo que requiere el cliente, (2) establecer una base para la creación de un diseño de software, y (3) definir un conjunto de requisitos que se pueda validar una vez que se construye el software. Con los años se han propuesto muchos métodos para el modelado del análisis. Sin embargo, ahora dos tendencias dominan el panorama del modelado del análisis. El primero, análisis estructurado, es un método de modelado clásico del que hablaremos en esta clase. El otro enfoque, análisis orientado a objetos, se estudia con detalle en Ingeniería de Software II. El análisis estructurado es una actividad de construcción de modelos. Mediante una notación creamos modelos que representan el contenido y flujo de la información (datos y control);
  • #5 Para lograr sus objetivos, el modelo de análisis extraído durante el análisis estructurado toma la forma ilustrada en la figura. En el centro del modelo se encuentra el diccionario de datos -un almacén que contiene definiciones de todos los objetos de datos consumidos y producidos por el software-. Tres diagramas diferentes rodean el núcleo. El diagrama de entidad-relación (DER) representa las relaciones entre los objetos de datos. El DER es la notación que se usa para realizar la actividad de modelado de datos. Los atributos de cada objeto de datos señalados en el DER se puede describir mediante una descripción de objetos de datos. El diagrama de flujo de datos (DFD) sirve para dos propósitos: (1) proporcionar una indicación de cómo se transforman los datos a medida que se avanza en el sistema, y (2) representar las funciones (y subfunciones) que transforman el flujo de datos. El DFD proporciona información adicional que se usa durante el análisis del dominio de información y sirve como base para el modelado de función. En una especificación de proceso (EP) se encuentra una descripción de cada función presentada en el DFD. El diagrama de transición de estados (DTE) indica cómo se comporta el sistema como consecuencia de sucesos externos. Para lograr esto, el DTE representa los diferentes modos de comportamiento (llamados estados ) del sistema y la manera en que se hacen las transiciones de estado a estado. El DTE sirve como la base del modelado de comportamiento. Dentro de la especificación de control (EC) se encuentra más información sobre los aspectos de control del software. El modelo de análisis acompaña a cada diagrama, especificación y descripción, y al diccionario señalado en la figura.