omt - analisis oo
DESCRIPTION
OMTTRANSCRIPT
-
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