You are on page 1of 32

Anlisis y Diseo de Sistemas Orientado a Objeto

Captura y Anlisis de Requerimiento

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis :

Diagramas de Interaccin
Diagramas de Interaccin
Para qu sirven?
Para mostrar la relacin entre los distintos objetos que participan en un escenario La relacin se establece mediante el paso de mensajes Existen dos tipos
Diagramas de Secuencia Diagramas de Colaboracin

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis :

Diagramas de Interaccin
Diagramas de Interaccin
Usos comunes Modelar los aspectos dinmicos de un sistema. El uso de estos diagramas es en el contexto del sistema como un todo, un subsistema, una operacin, o una clase. Podemos unir diagramas de interaccin para casos de uso (para modelar un escenario) y para colaboraciones (para modelar los aspectos dinmicos de una sociedad de objetos).

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis :

Diagramas de Interaccin
Diagramas de Interaccin
Usos comunes
Cuando modelamos los aspectos dinmicos de un sistema, usamos diagramas de interaccin de dos maneras:

Para modelar flujos de control por orden de tiempo


Se usan diagramas de secuencia. Se hace nfasis en el paso de mensajes, en cmo se desenvuelven sobre el tiempo, lo cual es una manera til para visualizar el comportamiento dinmico en el contexto de un escenario de un caso de uso. Se usan diagramas de colaboracin. Se hace nfasis en las relaciones estructurales entre las instancias dentro de la interaccin y junto con los mensajes que pueden ser pasados.

Para modelar flujos de control por organizacin

Los diagramas de colaboracin hacen un mejor trabajo para visualizar iteraciones y bifurcaciones complejas y para visualizar flujos de concurrencia mltiple de control.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis :

Diagramas de Interaccin
Diagramas de Interaccin
Sugerencias

Un diagrama de interaccin bien estructurado si:

Cuando dibujamos un diagrama de interaccin, debemos:

Esta enfocado en comunicar el aspecto dinmico de un sistema. Contiene solamente a los elementos que son esenciales para entender ese aspecto. Provee un detalle coherente con sus niveles de abstraccin y debera revelar solamente los adornos que son esenciales para su entendimiento. No es tan minimalista Darle un nombre que comunique su propsito. Usar un diagrama de secuencia si queremos enfatizar el orden de tiempo de los mensajes. Usar un diagrama de colaboracin si queremos enfatizar la organizacin de los objetos involucrados en la interaccin. Usar notas y color como indicaciones visuales para prestar atencin a caractersticas importantes de nuestro diagrama. Usar bifurcaciones limitadas; podemos representar mucho mejor bifurcaciones complejas usando diagramas de actividad.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis :

Diagramas de Interaccin
Diagramas de Interaccin

Relacin con los Casos de Uso

Cada caso de uso es una telaraa de escenarios Para un caso de uso podemos definir diferentes instancias (escenarios) que nos ayudan a la identificacin de objetos, clases e interacciones entre objetos necesarios para llevar a cabo la parte de funcionalidad que especifica el caso de uso. El flujo de eventos de un caso de uso se puede representar por: Cada diagrama ser una visin grfica de un escenario. Los diagramas de interaccin se deben usar cuando se quiere
Primarios: Flujo normal del caso de uso y Secundarios: Flujos excepcionales y alternativos.

Especificacin texto ms, Distintos escenarios especificados mediante diagramas de interaccin,

En otro caso, si se quiere

Analizar el comportamiento de varios objetos dentro del mismo caso de uso, Mostrar colaboraciones entre objetos. Mostrar comportamiento de un nico objeto (en varios casos de uso), utilizar los diagramas de estados. Mostrar el comportamiento de una sociedad de objetos (en varios casos de uso) habr que considerar un diagrama de actividades.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Definicin segn OMG
"Un diagrama que representa una interaccin poniendo el foco en la secuencia de los mensajes que se intercambian, junto con sus correspondientes ocurrencias de eventos en las lneas de vida.
"A diferencia de un diagrama de comunicacin, un diagrama de secuencias incluye secuencias de tiempo pero no incluye relaciones de los objetos. Un diagrama de secuencias puede existir en una forma genrica (describe todos los escenarios posibles) y en una forma de instancia (describe un escenario actual). Los diagramas de secuencias y los diagramas de comunicacin expresan informacin similar, pero la muestran de diferentes formas."

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Un diagrama de secuencia muestra las interacciones entre objetos ordenadas en secuencia temporal. Muestra los objetos que se encuentran en el escenario y la secuencia de mensajes intercambiados entre ellos para ejecutar la funcionalidad descrita por el escenario. Los diagramas de secuencia, se utilizan con frecuencia para validar los casos de uso.
Documentan el diseo desde el punto de vista de los casos de uso. Observando qu mensajes se envan a los objetos, componentes o casos de uso y viendo a grosso modo cuanto tiempo consume el mtodo invocado, Ayudan a comprender los cuellos de botella potenciales, para as poder eliminarlos.

A la hora de documentar un diagrama de secuencia resulta importante mantener los enlaces de los mensajes a los mtodos apropiados del diagrama de clases.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Elementos de un Diagrama de Secuencia
Actor: Es el equivalente al actor que identificamos en el caso de uso que se quiere representar con el diagrama de secuencia Grficamente Igual

Usuario

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Lnea de Vida
Una lnea de vida es un participante individual en una interaccin
No tienen multiplicidad!!!.

Las lneas de vida estn disponibles en los diagramas de Secuencias y de Tiempos, y aunque la representacin difiere entre los dos, el significado de la lnea de vida es el mismo.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Lnea de Vida
Definicin segn OMG
Una lnea de vida representa un participante individual en la Interaccin. Mientras las Partes y Caractersticas de Estructuras pueden tener multiplicidades mayores a 1, las Lneas de Vida representan solamente una entidad interactuante. La lnea de vida es una especializacin de un Elemento nombrado.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Lnea de Vida
Representacin Grfica No tiene Sentido Representarla sino est asociada a la representacin de un Objeto
Objeto1

Lnea de Vida

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Mensajes
Indican un flujo de informacin o transicin del control entre elementos. Se pueden utilizar por todos los diagramas de interaccin. Corresponden en el modelo de software a operaciones y comportamientos de clases. Son semnticamente similares a los mensajes pasados entre elementos en un diagrama de Comunicacin.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Mensajes
Propiedades: Condiciones
Indican qu debe ser verdadero para que el mensaje se enve

Valor de retorno Sincronizacin Frecuencia Creacin (Ciclo de Vida)


Se utiliza Nuevo o Crear Nuevo para la creacin de elementos Eliminar o Destruir para la destruccin de elementos

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Mensajes
Representacin Grfica Posee distintos tipos de representacin dependiendo del tipo de mensaje al que corresponda
Objeto1 Objeto2

Mensaje1 Mensaje2 <<llamada>> Mensaje <<Nuevo>> Mensaje <<Respuesta>> Mensaje3 <<llamada>> Objeto3

Mensaje <<Destruir>>

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Mensajes
Flujos Alternativos Los diagramas de secuencia permiten mostrar flujos alternativos en base a una condicin Lgica
Objeto1 Objeto2

Mensaje1

{X > 10 } Mensaje2

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Mensajes
Automensajes
Un auto mensaje refleja un nuevo proceso o mtodo que se invoca dentro de la operacin de la misma lnea de vida. Es una especificacin de un mensaje.
Auto Mensaje como Retorno Es posible describir un retorno desde la llamada de un auto mensaje.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Mensajes
Automensajes Graficamente
Mensaje4 Objeto

Mensaje5

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Mensajes
Mensajes Recurrentes Indican Recursividad. No es lo mismo que un automensaje
Objeto2

Mensaje4

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Lmites (boundary)
Un lmite es una clase estereotipada que modela algunos lmites del sistema
Normalmente una pantalla de interfaz de usuario.

Se usa en la fase conceptual para capturar usuarios interactuando con el sistema a un nivel de pantalla (o algn otro tipo de interfaz de lmite).

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Lmite
Grficamente
Interaccin Necesaria con Actor

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Entidad
Una entidad es un almacn o mecanismo de persistencia que captura la informacin o el conocimiento en un sistema. Grficamente

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Notas y Restricciones
Sirven para hacer una especificacin en caso de tener estructuras repetitivas o bien para aclarar ciertas interacciones Restricciones especiales a clases o mensajes tambin pueden ser incluidas
Objeto3 Objeto5

Mensaje3
{ Repetir Hasta Nro Msg = 10}

requisito Una vez que han terminado de enviarse los mensajes anteriores

Mensaje6

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Modelando flujos de control por orden de tiempo (Secuencia)
Establecer el contexto para la interaccin (sistema, subsistema, operacin, clase o escenario de un caso de uso o colaboracin). Establecer el escenario para la interaccin identificando cules objetos juegan un rol en la interaccin.
Ponindolos en el diagrama de secuencia de izquierda a derecha, colocando los objetos ms importantes y a sus objetos vecinos a la derecha.

Establecer la lnea de vida para cada objeto.


Empezar con los mensajes que inician esta interaccin

En muchos casos los objetos persistirn a travs de toda la interaccin. Para objetos que son creados y destruidos durante la interaccin, indicar su nacimiento y su muerte con mensajes estereotipados adecuados. Poner cada mensaje subsecuente de arriba hacia abajo entre las lneas de vida, mostrando cada propiedad del mensaje.

Indicar, si se necesita, en cada mensaje con una marca de tiempo y unir restricciones de tiempo o espacio adecuadas.

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Ejemplo: Solicitud de Prstamo
Mto Mximo del Prstamo c/s Aval Primero Trata sin aval Slo para clientes del banco El Aval puede no ser cliente

Sistema
Entregar Informacion Financiera

include

Solicita Prestamo Cliente

extends Entregar Inf Financiera AVAL Entregar o Rechazar Crdito

Obtener Datos del Aval

extends Evala Crdito include

Ejecutivo

Obtener Datos del Cliente

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Ejercicio
Se requiere realizar el analisis y diseo (considerando Casos de Uso, Diagrama Conceptual (Clases) y Diagramas de Secuencia) para un punto de venta en un supermercado. Este punto de venta es un sistema automatizado con el que se registran las ventas y se realizan los pagos (efectivo o tarjeta de crdito)

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia

Ejercicio
Por lo general este tipo de sistemas comprenden hardware (un computador y un lector de cdigo barras) y software (el sistema que se ejecuta en el POS). A modo de ayuda se establecen:
Panorama General Metas Funciones del Sistema (slo su definicin)

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Panorama general
Este proyecto tiene por objeto crear un sistema de terminal para un punto de venta que se utilizar en las ventas de un supermercado.

Metas
En trminos generales, la meta es una mayor automatizacin del pago en las cajas registradoras, y dar soporte a servicios ms rpidos, ms baratos y mejores. Concretamente, la meta incluye:
Pago rpido de los clientes. Anlisis rpido y exacto de las ventas. Control automtico del inventario

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Funciones del sistema Las funciones del sistema sern lo que ste deber hacer. Las funciones pueden clasificarse en tres categoras:
Evidentes.
Las evidentes deben realizarse, y el usuario debe saber que se han realizado. Las ocultas tambin deben realizarse, y puede que no sean visibles para el usuario. Las superfluas son opcionales, y su inclusin no repercute significativamente en el costo ni en otras funciones.

Ocultas

Superfluas

Anlisis y Diseo Orientado a Objeto

Diagramas UML para Anlisis: Interaccin: Secuencia


Ref. R1.1 R1.2 R1.3 Funcin Registra la venta en proceso (actual): los productos comprados. Calcula el total de la venta actual; se incluye el impuesto. Captura la informacin sobre el objeto comprado usando su cdigo de barras, o usando una captura manual del cdigo de producto. evidente Categora evidente evidente

R1.4
R1.5 R1.6 R1.7 R1.8 R1.9

Reduce las cantidades del inventario cuando se realiza una venta.


Se registran las ventas efectuadas. El cajero debe introducir una identificacin y una contrasea para poder utilizar el sistema. Ofrece un mecanismo de almacenamiento persistente. Ofrece mecanismos de comunicacin entre los procesos y entre los sistemas. Muestra la descripcin y el precio del producto registrado.

oculta
oculta evidente oculta oculta evidente

Anlisis y Diseo de Sistemas Orientado a Objeto


Captura y Anlisis de Requerimiento

You might also like