Sei sulla pagina 1di 35

UML

Unidad 3 - Diagramas de
Paquetes y de Interaccin

UML - u3

MCE Beatriz A. Olivares Zepahua

Temario
3.1 Diagrama de Estados
3.2 Diagrama de Secuencia
3.3 Diagrama de Comunicacin
3.3 Interrelacin entre los diagramas de casos de
uso, clase e interaccin.
UML - u3

MCE Beatriz A. Olivares Zepahua

Diagrama de Estados
Un diagrama de estados muestra las diferentes
fases en que se encuentra una instancia as
como las transiciones entre dichas fases.
Puede tratarse de la instancia de una clase,
actor, subsistema o componente
Usos:
Modelar el comportamiento complejo de una
instancia
Modelar sistemas de tiempo real
U4

MCE Beatriz A. Olivares Zepahua

Diagrama de Estados (cont.)


Estado: situacin de un objeto en un momento
determinado
Estado inicial (creacin) y estado final (ya no acepta ms
cambios) tienen smbolos especiales, los otros estados no
Es posible que existan acciones internas en el estado

Transicin: relacin entre dos estados


Evento: estmulo (seal, invocar operacin, paso del tiempo,
cambio de condicin) que dispara la transicin, puede ser
interno o externo
En la mayora de las clases, los eventos equivalen a llamadas a
operaciones

Condicin: se evala despus del evento, de ella depende el


estado destino
Accin (externa): operacin que se dispara debido al evento, no
puede interrumpirse por otros eventos
U4

MCE Beatriz A. Olivares Zepahua

Diagrama de Estados (cont.)


Nombre de la transicin en pasado o participio
Nombre de la accin es un verbo (en clases, es una
operacin)
Cuando una misma transicin puede llevar a ms de un
estado debido a condiciones diferentes, asegurar que
stas no se traslapan
Tipos de acciones internas
De entrada
Accin que se produce al entrar al estado

De salida
Accin que se produce al salir del estado

Actividad
Accin que se produce mientras est en el estado
U4

MCE Beatriz A. Olivares Zepahua

Diagrama de estados (cont.)

Accin de entrada

Accin de salida

Actividad
U4

MCE Beatriz A. Olivares Zepahua

Subestados
El estado puede dividirse en situaciones
individuales (subestados)
Un sistema de calefaccin se activa o
desactiva dependiendo de la temperatura.
Al prenderse no llega a la temperatura
elegida inmediatamente, sino que debe tener
una fase de precalentamiento.

U4

MCE Beatriz A. Olivares Zepahua

Subestados (cont.)

U4

MCE Beatriz A. Olivares Zepahua

Subestados (cont.)

U4

MCE Beatriz A. Olivares Zepahua

Subestados (cont.)
Un cajero automtico puede estar activo,
inactivo o en mantenimiento.
Si est activo, al leer la tarjeta debe
validarla y en su caso permitir la seleccin
de operaciones.
Una vez elegida la operacin, se procesa,
se imprime y, si el usuario no desea
realizar otra operacin, se saca la tarjeta
U4

MCE Beatriz A. Olivares Zepahua

10

Subestados (cont.)

U4

MCE Beatriz A. Olivares Zepahua

11

Ejemplo
Diagrama de estados para el ciclo de vida
de un pedido de caf

U4

MCE Beatriz A. Olivares Zepahua

12

Ejercicio
Modelar un diagrama de estados para el
ciclo de vida de una mesa de regalos

U4

MCE Beatriz A. Olivares Zepahua

13

Diagrama de Secuencia
Un diagrama de secuencia es un diagrama de
interaccin que destaca la ordenacin temporal de los
mensajes
Usos:
Especificar la realizacin de los casos de uso a nivel de anlisis
Disear el comportamiento de los objetos para cubrir un servicio
del sistema

Intervienen:

UML - u3

Objetos a lo largo del eje X


Mensajes entre los objetos
Lnea de vida del objeto
Foco de control
MCE Beatriz A. Olivares Zepahua

14

Diagrama de Secuencia (cont.)


Objetos
: Cli ente

: PaginaSaldo

1: confirmar consulta

: EstadoCuenta

: Cuenta

2: consultar sal do
3: vali dar cuenta

Mensajes

4: consultar

Lnea de vida

Foco de control
UML - u3

MCE Beatriz A. Olivares Zepahua

15

Diagrama de Secuencia (cont.)


Objetos:
Aparecen como un recuadro donde se muestra el
nombre del objeto y su clase; excepto cuando se
trata de una clase estereotipada con un icono
particular
oPedidoNuevo: PedidoEnLinea

Mensajes
Llamada
Asncronos
Retorno
UML - u3

MCE Beatriz A. Olivares Zepahua

16

Diagrama de Secuencia (cont.)


Es posible modelar los mensajes de creacin y
destruccin de objetos

El tiempo corre de arriba hacia abajo sobre el


diagrama, por lo que se asume el orden de los
mensajes, aunque existen algunas herramientas
que les colocan numeracin (Visual Paradigm)
UML - u3

MCE Beatriz A. Olivares Zepahua

17

Diagrama de Secuencia (cont.)


Autollamada (mtodo1 que llama a
mtodo2 del mismo objeto)

UML - u3

MCE Beatriz A. Olivares Zepahua

Llamada recursiva

18

Diagrama de Secuencia (cont.)


Diagrama de secuencia = curso del caso de uso
En teora, deberan generarse tantos diagramas
de secuencia como cursos existieran en el
sistema (al menos uno por caso)
En la prctica se modelan los cursos principales
distintos y los cursos alternos complejos. El resto del
comportamiento puede quedar como nota
No es comn que se modele lgica de
procedimientos complejos, aunque UML 2.0 tiene
elementos para hacerlo
UML - u3

MCE Beatriz A. Olivares Zepahua

19

Diagrama de Secuencia (cont.)


Fragmentos combinados
Soporte para modelar lgica a partir de UML 2.0
Estos elementos estn formados por un marco
(frame) con un nombre que identifica el tipo de lgica
que representa y que encuadra una secuencia de
mensajes/llamadas:

UML - u3

ciclos (loop),
alternativas (alt, representa if..else),
opciones (opt, representa if),
break (representa salida controlada bajo condicin),
paralelo (par, representa procesamiento paralelo),
entre otras
MCE Beatriz A. Olivares Zepahua

20

Alternativas
Equivalente a IF_THEN ELSE (hay
herramientas que soportan switch)
Encierra los mensajes que intervienen en
una u otra alternativa, indicando en la
parte superior izquierda la condicin

UML - u3

MCE Beatriz A. Olivares Zepahua

21

Diagrama de Secuencia (cont.)

Fuente:
IBM. UML basics: The sequence diagram.
http://www.ibm.com/developerworks/rational/library/3101.html

UML - u3

MCE Beatriz A. Olivares Zepahua

22

Opciones
Equivalente a IF_THEN
Semejante a Alternativa, con la diferencia
de que slo se considera la primera
posibilidad

UML - u3

MCE Beatriz A. Olivares Zepahua

23

Ciclos
Encierra el grupo de mensajes que se
repiten
Es posible indicar el nmero mnimo y el
nmero mximo de repeticiones

UML - u3

MCE Beatriz A. Olivares Zepahua

24

Cortes (break)
Se utilizan para el manejo
de excepciones
Encierran los mensajes
asociados al procesado
de la excepcin e
implican que NO se
realizarn los mensajes
posteriores en caso de
presentarse la excepcin

UML - u3

MCE Beatriz A. Olivares Zepahua

25

Referencia
Encierra en un cuadro la llamada a OTRO
diagrama de secuencia cuando el original
resulta muy complejo

UML - u3

MCE Beatriz A. Olivares Zepahua

26

Diagrama de Secuencia (cont.)


Observaciones
NO existen mensajes del sistema al actor,
slo retornos
Las herramientas permiten mostrar la firma
de los mensajes
Es comn que al ir desarrollando los
diagramas de secuencia, se complementen
los diagramas de clase

UML - u3

MCE Beatriz A. Olivares Zepahua

27

Ejemplo
Diagrama de secuencia correspondiente
al caso de uso relacionado con el registro
de un pedido de caf
Realizar diagrama de clases de interfaz
grfica (al menos pantalla de captura y de
respuesta, mtodo enviar)
Completar diagrama de clases de informacin
o datos (mtodos para almacenar datos)
UML - u3

MCE Beatriz A. Olivares Zepahua

28

Ejercicio
Realizar el diagrama de secuencia
correspondiente al caso de uso
relacionado con el registro de una mesa
de regalos

UML - u3

MCE Beatriz A. Olivares Zepahua

29

Diagramas de Comunicacin
Destaca la organizacin estructural de los
objetos que envan y reciben los
mensajes
Es equivalente al diagrama de secuencia,
casi todas las herramientas permiten la
conversin de uno a otro sin prdida de
informacin
Muestra objetos, la estructura entre los
objetos y los mensajes con que se
comunican. NO se ven retornos
UML - u3

MCE Beatriz A. Olivares Zepahua

30

Diagramas de Comunicacin
(cont.)
Objetos: rectngulos con nombre del
objeto:clase
Enlaces entre objetos: lneas rectas
Mensajes entre objetos: flechas
Secuencia: numeracin
Estereotipo de camino (path): para indicar cmo
se enlaza un objeto con otro, se indica sobre
uno de los extremos, puede ser <<local>>,
<<global>> y <<parameter>>
UML - u3

MCE Beatriz A. Olivares Zepahua

31

Diagrama de Comunicacin (cont)


mensaje

Enlace

Objeto

secuencia
UML - u3

MCE Beatriz A. Olivares Zepahua

32

Interrelacin entre los diagramas


de CdU, clase e interaccin
Los casos de uso describen el comportamiento
esperado del sistema sin considerar su
implementacin.
La implementacin del caso de uso se hace
mediante una sociedad de clases (representada
en uno o ms diagramas de clases) y elementos
que colaboran para conseguir el
comportamiento (modelado mediante uno o ms
diagramas de secuencia)
UML - u3

MCE Beatriz A. Olivares Zepahua

33

Interrelacin entre los diagramas


de CdU, clase e interaccin (cont.)
Una vez que se concluye con la fase de
anlisis de requisitos, por lo general no
hay modificaciones en el diagrama de
CdU ni en sus especificaciones.
A partir de la fase de anlisis del sistema
y, sobre todo, en el diseo, se trabaja ms
en los diagramas de clases e interaccin,
que son interdependientes
UML - u3

MCE Beatriz A. Olivares Zepahua

34

Referencias

Ambler, S., UML 2 Communication Diagrams [en lnea]


http://www.agilemodeling.com/artifacts/communicationDiagram.htm
Jacobson Ivar, Booch Grady, James Rumbaugh, El Proceso
Unificado de Desarrollo de Software, Addison Wesley, Madrid,
2000
Larman Graig, UML y Patrones, Prentice Hall, Madrid, 1998
OMG, Unified Modeling Language (UML) Specification:
Infraestructure version 2.0, 2004. [en lnea] www.omg.org
Pilone Dan, Neil Pitman, UML 2.0 in a Nutshell, OReilly Media,
USA, 2005
Sparx Systems, UML 2.0 Tutorial [en lnea]
http://www.sparxsystems.com/resources/uml2_tutorial/

UML - u3

MCE Beatriz A. Olivares Zepahua

35

Potrebbero piacerti anche