omt - analisis oo

Upload: gabriel-osvaldo-gomez-abarca

Post on 15-Oct-2015

67 views

Category:

Documents


0 download

DESCRIPTION

OMT

TRANSCRIPT

  • Ingeniera de Software

    1

    Prof. Andrs Rice Mora

    SADT : Structured Analysis and Design Technique [Ross85]

    RDD : Requirement Driven Design [Alford85]

    SA/SD : Structured Analysis and Structured Design [Yourdon&Constantine79]

    OOSE : Object-Oriented Software Engineering [Jacobson94]

    OOA : Object-Oriented Analysis [Goldberg]

    OMT : Object Modeling Technique [Rumbaugh93]

    UP : Unified Process [Booch&Jacobson&Rumbaugh98]

    Catalysis : Catlisis [DSouza98]

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    2

    Diagramas de UML

    CapturaRequisitos

    Anlisis Diseo ProgramacinPruebasSistema Completo

    Ruta Esttica

    Ruta Funcional

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    3

    Modelo de Proceso de OMT++

    Pruebas

    Declaracinde

    Clases

    Implementacinde

    Clase

    Diseo de Objetos

    Diseo de Comportamiento

    Especificacin de

    Componentes

    Especificacin de colaboracin

    de Componentes

    Documento

    Captura de Requisitos Especificacin de Requisitos Diseo Arquitectural

    Diseo Detallado

    Especificacin de tareas

    de interfaz

    Especificacin Interfaz de

    Usuario

    Anlisis deObjetos

    Anlisis deComportamiento

    RepositorioDiscos

    Pruebas

    Documento

    Diseo Orientado a Objetos ProgramacinAnlisis Orientado a Objetos

    Captura deRequisitos

    Prof. Andrs Rice Mora

    Proceso de OMT++

    CapturaRequisitos

    Anlisis Diseo Programacin Pruebas

    Requisitos

    Caso de Uso A

    Otros Requisitos

    Caso de Uso B

    Caso de Uso C

    Casos de

    Pruebas

    Caso de Uso A

    Otros Requisitos

    Caso de Uso B

    Caso de Uso C

    Codificacin

    Y::function5() {x->function6();

    };

    Declaraciones

    class Y {function3();function5();X x;

    };

    Lista de operaciones

    Operacin 1Operacin 2Operacin 3Operacin 4

    Operacin 5

    Operacin 6

    Diagrama de secuencia

    Diagrama de Clases Diseo de Clases

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    4

    Prof. Andrs Rice Mora

    OMT ++ - Captura de Requisitos

    CapturaRequisitos

    Anlisis Diseo Programacin Pruebas

    Requisitos

    Caso de Uso A

    Otros

    Requisitos

    Caso de Uso B

    Caso de Uso C

    Casos de

    Pruebas

    Caso de Uso A

    Otros

    Requisitos

    Caso de Uso B

    Caso de Uso C

    Codificacin

    Y::function5() {

    x->function6();

    };

    Declaraciones

    class Y {

    function3();

    function5();

    X x;

    };

    Lista de

    operaciones

    Operacin 1

    Operacin 2

    Operacin 3

    Operacin 4

    Operacin 5

    Operacin 6

    Diagrama de

    secuencia

    Diagrama de

    Clases

    Diseo de Clases

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    5

    OMT ++ - Anlisis O.O.

    Propsito de la Fase Anlisis OO : Comprender el dominio del problema. Comprender el sistema a desarrollar.

    Fase Anlisis OO : Se apoya en los requisitos funcionales y no-funcionales. Considera dos herramientas para esta fase :

    Diagrama de Clase del anlisis. Diagrama de comportamiento.

    CapturaRequisitos

    Anlisis Diseo Programacin Pruebas

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Diagrama de Clase.Propsito:

    Identificar y especifica todos los conceptos claves del dominio del problema y del sistema a desarrollar.

    Esta tarea produce un modelo de objetos del anlisis que muestra los conceptos claves del dominio y la relacin entre ellos.

    Se produce diagramas de clases que son la base para el desarrollo de los dems modelos del sistema.

    Para OMT++ no trae beneficio determinar los mtodos de las clase, por lo tanto, las clases no los incluye.

    El diagrama siempre va acompaado de un diccionario de datos.

    El modelo de objetos del anlisis no incluye conceptos de implementacin

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    6

    Diagramade Clases

    Diccionario de Datos

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Anlisis del Comportamiento.

    Define las operaciones que el usuario ejecuta con el sistema. Las operaciones deben cubrir la totalidad de las funciones del

    sistema. Los casos de uso y los requisitos funcionales son la fuente

    ms importante para identificar las operaciones. Un caso de uso pueden contener una o ms operaciones. Los casos de uso cubren slo la parte ms importante de la

    funcionalidad del sistema.

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    7

    OMT ++ - Anlisis O.O.

    Anlisis de Comportamiento.Anlisis de operacionesEjemplo de Operaciones de una aplicacin :

    1. Escribir un mensaje corto

    2. Agregar una frase

    3. Seleccionar receptores y grupos

    4. Guardar un mensaje

    5. Enviar un mensaje corto

    6. Cargar un mensaje

    7. Ingresar informacin de receptores

    8. Crear un grupo

    9. Eliminar un grupo

    10. Agregar receptores a un grupo

    11. Sacar receptores de un grupo

    12. Modificar informe de receptores

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Anlisis de Comportamiento.Especificacin de operaciones :

    Especificacin de la operacin #5 : Ilustra cmo la aplicacin se comunica con

    agentes externos

    Operacin : Enviando un mensaje corto

    Precondicin: El mensaje est escrito, los receptores seleccionados.

    Excepciones: El envo falla: entonces se muestra un mensaje de error. El telfono del

    receptor no recibe el mensaje; nada se puede hacer, la red intenta enviar varias veces

    dependiendo de su configuracin.

    Pos condicin: El mensaje es enviado al los receptores seleccionados

    Aquellas operaciones que implican una comunicacin entre la aplicacin y otras entidades, se analizan como especificacin de operaciones.

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    8

    Anlisis de Comportamiento.Diagrama de Secuencia:

    OMT ++ - Anlisis O.O.

    Los diagramas de secuencia describen la interaccin entre diferentes

    objetos y componentes del sistema.

    Prof. Andrs Rice Mora

    Anlisis de Comportamiento.Diagrama de Secuencia:

    OMT ++ - Anlisis O.O.

    Los diagramas de secuencia describen la interaccin entre diferentes

    objetos y componentes del sistema.

    Especificacin de la operacin #5 : Ilustra

    cmo la aplicacin se comunica con agentes

    externos

    Operacin : Enviando un mensaje corto

    Precondicin: El mensaje est escrito, los

    receptores seleccionados.

    Excepciones: El envo falla: entonces se

    muestra un mensaje de error. El telfono del

    receptor no recibe el mensaje; nada se puede

    hacer, la red intenta enviar varias veces

    dependiendo de su configuracin.

    Pos condicin: El mensaje es enviado al los

    receptores seleccionados

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    9

    Anlisis de Comportamiento.Resumen

    OMT ++ - Anlisis O.O.

    1. Escribir un mensaje corto

    2. Agregar una frase

    3. Seleccionar receptores y grupos

    4. Guardar un mensaje

    5. Enviar un mensaje corto

    6. Cargar un mensaje

    7. Ingresar informacin de receptores

    8. Crear un grupo

    9. Eliminar un grupo

    10. Agregar receptores a un grupo

    11. Sacar receptores de un grupo

    12. Modificar informe de receptores

    Especificacin de la operacin #5 : Ilustra

    cmo la aplicacin se comunica con agentes

    externos

    Operacin : Enviando un mensaje corto

    Precondicin: El mensaje est escrito, los

    receptores seleccionados.

    Excepciones: El envo falla: entonces se

    muestra un mensaje de error. El telfono del

    receptor no recibe el mensaje; nada se puede

    hacer, la red intenta enviar varias veces

    dependiendo de su configuracin.

    Pos condicin: El mensaje es enviado al los

    receptores seleccionados

    Lista de Operaciones

    Especificacin de Operaciones

    Diagrama de Secuencia

    Prof. Andrs Rice Mora

    Especificacin de la Interfaz de Usuario

    OMT ++ - Anlisis O.O.

    Una vez analizadas las operaciones, se identifican las ms importantes desde el punto de vista del usuario. Las operaciones ms importantes se llaman primarias.

    Operaciones Primarias. Son las operaciones ms comunes y consumidoras de tiempo,

    tpicamente las operaciones por las cuales se implementa la aplicacin.

    La ventana principal debera proveer soporte para estas operaciones.

    Las dems, las secundarias, son provistas en dilogos adicionales.

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    10

    Especificacin de la Interfaz de UsuarioDiagrama de Dilogo: Notacin de diagramas de estado de UML

    OMT ++ - Anlisis O.O.

    Un estado se entiende por un dilogo, ventana, o pgina web.

    Estado: Representa una situacin en la cual ocurre una condicin (esperando un evento, realizando una

    tarea, etc.).

    Un evento causa el movimiento desde un dilogo a otro.

    Transicin: Define el movimiento de un estado a

    otro. La transicin es

    rotulada.

    Entrada: entrada a una mquina de estado, debe definirse una entrada para cada regin.

    Trmino: trmino de una mquina de estado.Prof. Andrs Rice Mora

    Especificacin de la Interfaz de UsuarioDiagrama de Estado

    OMT ++ - Anlisis O.O.

    1. Escribir un mensaje corto

    2. Agregar una frase

    3. Seleccionar receptores y grupos

    4. Guardar un mensaje

    5. Enviar un mensaje corto

    6. Cargar un mensaje

    7. Ingresar informacin de receptores

    8. Crear un grupo

    9. Eliminar un grupo

    10. Agregar receptores a un grupo

    11. Sacar receptores de un grupo

    12. Modificar informe de receptores

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    11

    Especificacin de la Interfaz de Usuario

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Especificacin de la Interfaz de Usuario

    OMT ++ - Anlisis O.O.

    Cuando el usuario final interacta con la

    interfaz l utiliza modelos mentales para describir, explicar y predecir el

    comportamiento del sistema.

    Un modelo mental es una representacin de una abstraccin de la realidad.

    Los modelos mentales deben poder explicar los objetos que aparecen en una interfaz y las relaciones entre ellos.

    Los modelos mentales influyen de dos

    maneras en las personas:

    Determinan el cmo interpretamos el

    mundo y, determinan nuestro modo

    de interactuar con ese mundo (son

    activos).

    Los modelos mentales influyen de dos

    maneras en las personas:

    Determinan el cmo interpretamos el

    mundo y, determinan nuestro modo

    de interactuar con ese mundo (son

    activos).

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    12

    Especificacin de la Interfaz de Usuario

    OMT ++ - Anlisis O.O.

    La interfaz de usuario debe proveer los medios necesarios para que el usuario alcance sus objetivos.

    Se supone que el usuario tiene objetivos en su mente cuando est utilizando una aplicacin.

    Cuando especifique la especifique la interfaz de usuario considere que el

    desarrollador debe conocer:

    a) los objetivos del usuario,b) tipos de medios y equipamiento para alcanzar los objetivos,c) cmo se alcanzarn los objetivos con los medios dados.

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Especificacin de la Interfaz de UsuarioElementos de la interfaz de usuario

    Un interfaz de usuario es una construccin jerrquica. La figura representa los elementos de una interfaz de usuario

    usando la notacin del modelo de objeto de OMT++.

    Interfaz de

    usuario

    Interfaz de

    usuarioDilogosDilogos ComponentesComponentes HerramientasHerramientas

    HerramientasHerramientas HerramientasHerramientas

    HerramientasHerramientas

    Multiplicidad

    de

    asociaciones

    Agregacin

    Herencia

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    13

    Los dilogos son cajas de dilogo o ventanas;

    Un componente es una coleccin de elementos de un sistema de ventanas;

    Cada componente debiera formar una unidad cognitiva;

    Una unidad cognitiva es un objeto a travs del cual el usuario y la aplicacin se comunican entre si;

    Los componentes son acentuados mediante separadores

    visuales tales como bordes, colores y agrupacin;

    Tpicamente, un componente debiera ser implementado como

    una clase.

    OMT ++ - Anlisis O.O.

    Especificacin de la Interfaz de UsuarioElementos de la interfaz de usuario

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Especificacin de la Interfaz de UsuarioModelo de actividad del usuario

    La actividad es mirada como una construccin jerrquica de tres tipos:

    Usuario FinalUsuario Final

    OperacinOperacin TareaTarea AccinAccin

    Ejecuta Ejecuta Ejecuta

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    14

    OMT ++ - Anlisis O.O.

    Especificacin de la Interfaz de UsuarioElementos del modelo de actividad

    Operacin : Una actividad para la cual se implementa la aplicacin.

    Ejemplo :

    Ver el saldo de una cuenta corriente

    Transferir dinero de una cuenta bancaria a otra.

    Responder un mensaje.

    Tarea : Unidad significativa de trabajo tal que no es necesario otro contexto de trabajo para establecer el significado de su accin.

    Ejemplo :

    Borrar una palabra.

    Grabar archivo seleccionado.

    Dibujar una elipse

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Especificacin de la Interfaz de UsuarioElementos del modelo de actividad

    Accin : La actividad ms simple que un usuario puede ejecutar sobre la interfaz.

    Ejemplo :

    Cancelar.

    Entrar.

    Enviar.

    Salir

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    15

    OMT ++ - Anlisis O.O.

    Especificacin de componentes de una interfaz de usuarioDilogo

    Componentes

    Herramientas de manipulacin.

    Herramientas de retroalimentacin.

    Herramientas combinadas.

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Ejemplo de especificacin de la herramienta para gestionar fecha y hora de Windows 98.

    Prof. Andrs Rice Mora

  • Ingeniera de Software

    16

    OMT ++ - Anlisis O.O.

    Ejemplo de especificacin de la herramienta para gestionar fecha y hora de Windows 98.

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Estructura de la interfazDescripcin de la notacin del diagrama de dilogos

    Prof. Andrs Rice Mora

    Dilogo inicial.

  • Ingeniera de Software

    17

    OMT ++ - Anlisis O.O.

    Estructura de la interfazDescripcin de la notacin del diagrama de dilogos

    Prof. Andrs Rice Mora

    Dilogo no-modal : La modalidad de una ventana es como mantiene el foco respecto a las dems ventanas del sistema; el dilogo no-modal permite alternar el foco a cualquier otro dilogo presente del entorno grfico

    OMT ++ - Anlisis O.O.

    Estructura de la interfazDescripcin de la notacin del diagrama de dilogos

    Prof. Andrs Rice Mora

    Seleccin condicionada.

  • Ingeniera de Software

    18

    OMT ++ - Anlisis O.O.

    Estructura de la interfazDescripcin de la notacin del diagrama de dilogos

    Prof. Andrs Rice Mora

    Seleccin con accin.

    OMT ++ - Anlisis O.O.

    Estructura de la interfazEjemplo

    Prof. Andrs Rice Mora

    Aplicacin de ejemplo : ATM

    La aplicacin permite al usuario pagar sus deudas en un terminal de computador . La aplicacin le da al usuario el acceso a sus cuentas de banco. Le permite transferir dinero desde una de sus cuentas a las cuentas de otras personas o compaas.

    Actividad previa : Anlisis de objetos y comportamientos.

  • Ingeniera de Software

    19

    OMT ++ - Anlisis O.O.

    Estructura de la interfazModelo de objeto del ATM

    Prof. Andrs Rice Mora

    OMT ++ - Anlisis O.O.

    Estructura de la interfazOperaciones del ATM

    Prof. Andrs Rice Mora

    1. El usuario comprueba el saldo de su cuenta.2. El usuario paga deudas, esto es, el usuario pone cuentas de

    deudas en una lista de espera para que sean pagadas por el banco en la fecha de vencimiento.

    3. El usuario modifica la lista de deudas que estn esperando por ser pagadas.

    4. El usuario saca una deuda por pagar de la lista de espera.

    5. El usuario comprueba las transacciones recientes.

    Las siguientes operaciones fueron descubiertas durante la fase de anlisis de comportamiento.

  • Ingeniera de Software

    20

    OMT ++ - Anlisis O.O.

    Estructura de la interfazEspecificando una interfaz

    Prof. Andrs Rice Mora

    a) La primera fase de la especificacin de una interfaz de usuario es el anlisis de operaciones.

    b) Se analiza cada operacin del usuario y se crean tareas que concuerden con ellas.

    c) Luego de dividir las operaciones en tareas, se detecta que algunas tareas son comunes.

    d) Se recolectan y se listan todas las tareas.

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Tareas necesarias para que un usuario compruebe el saldo de sus cuentas (op.1)1) Seleccionar una cuenta de usuario2) Leer el saldo de la cuenta seleccionada

    Tareas necesarias para que un usuario pague sus deudas (op.2)1) Seleccionar una cuenta de usuario2) Modificar info. Relacionada con la deuda a ser

    pagada3) Poner la deuda en la lista de espera

  • Ingeniera de Software

    21

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Tareas necesarias para que un usuario modifique una deuda que est esperando a ser pagada en una fecha de vencimiento (op.3)1) Seleccionar una deuda de la lista de espera2) Sacar la deuda de la lista de espera

    Tareas necesarias para que un usuario saque una deuda de la lista de espera (op.4)1) Seleccionar una deuda de la lista de espera2) Modificar info. De la deuda a ser pagada

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Tareas necesarias para que un usuario compruebe las transacciones ms recientes (op.5)1) Seleccionar una cuenta de usuario2) Leer transacciones relacionadas con la cuenta

    seleccionada

  • Ingeniera de Software

    22

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Tareas de la aplicacin

    1) Seleccionar una cuenta de usuario2) Leer el saldo de la cuenta seleccionada3) Leer transacciones relacionadas con la cuenta

    seleccionada4) Modificar info. De la deuda a ser pagada5) Poner la deuda en la lista de espera6) Sacar la cuenta de deuda de la lista de espera7) Seleccionar una deuda de la lista de espera

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Estructura de la interfaz

  • Ingeniera de Software

    23

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Especificacin de los componentes grficos.Dilogo del terminal bancario.

    Entrada/salida

    Salida

    Accin

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Especificacin de los componentes grficos.Otros dilogos de la aplicacin

  • Ingeniera de Software

    24

    OMT ++ - Anlisis O.O.

    Prof. Andrs Rice Mora

    Visualizacin de los dilogos.

    Prof. Andrs Rice Mora