Está en la página 1de 20

DIAGRAMAS DE INTERACCION

1. DIAGRAMA DE SECUENCIA
Es un diagrama dinmico que representa la comunicacin entre o!etos a tra"#s
del tiempo$
Se elaoran por cada caso de uso$
NOTACION:
ESTRUCTURA:
Ca!a de te%to
Atac&ar nota
Nota
O!eto
Mensa!e de
Mensa!e recursi"o
Mensa!e de retorno
Marca de
destruccin
Objeto1 Objeto2 Objeto3 Objeto4
1: msj1()
2: msj2()
3: msj3(p1, p2)
4: msj4()
5: "Mensaje1"
6: msj5()
Objeto
Mensaje
Mensaje
recursivo
Foco o
control
ar!metros
NOTA: 'n diagrama de secuencia autogenera automticamente un diagrama de
colaoracin$
(uego reordenar el diagrama de colaoracin generado
()nea de "ida
Ejemplo 1: Elaorar un diagrama de secuencia gen#rico para el caso de uso
retirar dinero de un ca!ero automtico
PASOS:
1 Identi*icar los o!etos + darles nomre
Cliente
Ca!ero automtico
Sucursal anco
Central anco
2 Estalecer la comunicacin entre o!etos en un sentido lgico a tra"s del tiempo
en el diagrama de secuencia
Los nombres de los mensajes de los diagramas de secuencia empiezan con verbos
activos, es decir con terminaciones ar, er, ir.
Los mensajes de texto van con lneas punteadas.
Los mensajes pueden tener o no parmetros.
Pueden haber mensajes recursivos ( as mismos)
n diagrama de secuencia autogenera automticamente un diagrama de colaboraci!n "
viceversa (#eleccionar en el men$ %ro&se'(enerar diagrama de )olaboraci!n(*+)).
n mensaje con parntesis (,ue puede tener o no parmetros) representa la ejecuci!n de
una -unci!n o un procedimiento.
"liente
"ajero
autom!tico
#ucursal
banco
rincipal
banco
1: #olicitar in$resar tarjeta
2: %n$resar tarjeta
3: #olicitar in$resar clave
4: %n$resar clave
5: &ali'ar"lave(clave)
6: &ali'ar"lave(clave)
(: &ali'ar()
): *esple$ar mensaje ""lave "orrecta"
+: *esple$ar mensaje ""lave "orrecta"
1,: #olicitar in$resar tipo 'e operacion
11: -etirar 'inero
12: #olicitar in$resar tipo 'e cuenta
13: %n$resar cuenta en soles
14: #olicitar in$resar monto
15: %n$resar monto
16: veri.icarFon'o(clave, monto)
1(: veri.icarFon'o(clave, monto)
1): &eri.icar()
1+: *esple$ar mensaje "Fon'o correcto"
2,: *esple$ar mensaje "Fon'o correcto"
21: #olicitar in$resar */%
22: %n$rsar */%
23: actuali0ar#al'o(clave, */%, monto)
24: actuali0ar#al'o(clave, */%, monto)
25: 1ctuali0ar()
26: *esple$ar mensaje "1ctuali0aci2n "orrecta"
2(: *esple$ar mensaje "1ctuali0aci2n "orrecta"
2): *ispensar 'inero
2+: -ecabar 'inero
3,: 3mitir el recibo
31: -ecabar recibo
32: #olicitar in$resar tipo 'e operacion
33: %n$resar nin$una operaci2n
34: 34pulsar tarjeta
35: -ecabar tajeta
36: #olicitar in$resar tarjeta
.utogeneraci!n del diagrama de )olaboraci!n/
"liente "ajero
autom!tico
#ucursal
banco
rincipal
banco
(: &ali'ar()
1): &eri .icar()
25: 1ctuali0ar()
1: #olicitar in$resar tarjeta
3: #olicitar in$resar clave
1,: #olicitar in$resar tipo 'e operacion
12: #olicitar in$resar tipo 'e cuenta
14: #olicitar in$resar monto
21: #olicitar in$resar */%
2): *ispensar 'inero
3,: 3mitir el recibo
32: #olicitar in$resar tipo 'e operacion
34: 34pulsar tarjeta
36: #olicitar in$resar tarjeta
2: %n$resar tarjeta
4: %n$resar clave
11: -etirar 'inero
13: %n$resar cuenta en soles
15: %n$resar monto
22: %n$rsar */%
2+: -ecabar 'inero
31: -ecabar recibo
33: %n$resar nin$una operaci2n
35: -ecabar tajeta
5: &ali'ar"lave(clave)
16: veri.icarFon'o(clave, monto)
23: actuali0ar#al'o(clave, */%, monto)
+: *esple$ar mensaje ""lave "orrecta"
2,: *esple$ar mensaje "Fon'o correcto"
2(: *esple$ar mensaje "1ctuali0aci2n "orrecta"
6: &ali'ar"lave(clave)
1(: veri.icarFon'o(clave, monto)
24: actuali0ar#al'o(clave, */%, monto)
): *esple$ar mensaje ""lave "orrecta"
1+: *esple$ar mensaje "Fon'o correcto"
26: *esple$ar mensaje "1ctuali0aci2n "orrecta"
Ejemplo 2: Elaorar un diagrama de secuencia detallado para un mantenedor de
,roducto
Nota: Se parte de un dise-o de pantalla$
Elaoramos el diagrama de secuencia identi*icando los o!etos inter"inientes.
actor /quien usa el sistema01 el undar+ /pantalla01 el con!unto de controles
/otones01 la entidad o entidades que inter"ienen + o!etos complementarios
/impresora0$
(uego estalecemos las comunicaciones entre o!etos en un orden lgico a tra"#s
del tiempo$
"trl-etornar
: 1lmacenero
.rmro'ucto "rl/uevo "trl5uscar "trlMo'i.icar "trl6rabar "trl3liminar "trl7istar "trl"ancelar -O*8"9O %M-3#O-1
1: #eleccionar mantene'or 'e pro'ucto
2: #olicitar seleccionar opci2n
3: ulsar boton nuevo
5: -einiciali0ar controles
4: -einiciali0ar()
6: #olicitar in$resar 'atos
(: %n$resar 'atos
): ulsar botn $rabar
+: $rabarro'ucto(co'i$o, 'escripcion, precio, stoc:, st:min, unime')
1,: insertar()
11: *esple$ar mensaje "6rabaci2n correcta"
12: *esple$ar mensaje "6rabaci2n correcta"
13: #olicitar in$resar co'i$o
14: %n$rsar co'i$o
15: ulsar boton buscar
16: buscarpro'ucto(co'i$o)
1(: leer()
1): *esple$ar 'atos 'e pro'ucto
1+: *esple$ar 'atos 'e pro'ucto
2,: ulsar boton mo'i.icar
21: e'itar*atos()
22: *esple$ar 'atos e'ia'os
23: #olicitar in$resar nuevos 'atos
24: %n$resar nuevos 'atos
25: ulsar boton $rabar
26: $rabarro'ucto(co'i$o, 'escripcion, precio, stoc:, st:min, unime')
2(: actuali0ar()
2): *esple$ar mensaje "1ctuali0aci2n correcta"
2+: *esple$ar mensaje "1ctuali0aci2n correcta"
3,: ulsar boton eliminar
31: eliminarpro'ucto(co'i$o)
32: eliminar()
33: *esple$ar mensaje "3liminaci2n correcta"
34: *esple$ar mensaje "3liminaci2n correcta"
35: ulsar el boton listar
36: listarro'ucto(co'i$o)
3(: imprimir()
3): *es$losar lista'o 'e pro'ucto
3+: ulsar boton cancelar
4,: cacelarro'ucto(co'i$o)
41: roll5ac:()
42: *esple$ar mensaje "1cci2n cancela'a"
43: *esple$ar mensaje "1cci2ncancela'a"
44: ulsar boton retornar
45: retornar()
-etornar al men;
anterior
Autogenea!"#n $el $"agama $e Cola%oa!"#n:
: 1lmacenero
.rmro'uc
to
"rl/uev
o
"trl5usc
ar
"trlMo'i.i
car
"trl6rab
ar
"trl3limi
nar
"trl7ista
r
"trl"anc
elar
"trl-etor
nar
-O*8
"9O
%M-3#O
-1
1: #eleccionar mantene'or 'e pro'ucto
2: #olicitar seleccionar opci2n
4: -einiciali0ar()
6: #olicitar in$resar 'atos
(: %n$resar 'atos
1,: insertar()
13: #olicitar in$resar co'i$o
14: %n$rsar co'i$o
1(: leer()
21: e'itar*atos()
23: #olicitar in$resar nuevos 'atos
24: %n$resar nuevos 'atos
2(: actuali0ar()
32: eliminar()
36: listarr o'ucto(co'i$o)
3(: imprimir()
41: roll5ac:()
45: retornar()
16: buscarpro'ucto(co'i$o)
1): *esple$ar 'atos 'e pro'ucto
+: $rabarro'ucto(co'i$o, 'escripcion, precio, stoc:, st:min, unime')
26: $rabarro'ucto(co'i$o, 'escripcion, precio, stoc:, st:min, unime')
11: *esple$ar mensaje "6rabaci2n correcta"
2): *esple$ar mensaje "1ctuali0aci2n correcta"
3): *es$losar lista'o 'e pro'ucto
31: eliminarpro'ucto(co'i$o)
33: *esple$ar mensaje "3liminaci2n correcta"
3: ulsar boton nuevo
5: -einiciali0ar controles
): ulsar botn $rabar
25: ulsar boton $rabar
12: *esple$ar mensaje "6rabaci2n correcta"
2+: *esple$ar mensaje "1ctuali0aci2n correcta"
15: ulsar boton buscar
1+: *esple$ar 'atos 'e pro'ucto
2,: ulsar boton mo'i.icar
22: *esple$ar 'atos e'ia'os
3,: ulsar boton eliminar
34: *esple$ar mensaje "3liminaci2n correcta"
35: ulsar el boton listar
3+: ulsar boton cancelar
43: *esple$ar mensaje "1cci2n cancela'a"
44: ulsar boton retornar
4,: cacelarro'ucto(co'i$o)
42: *esple$ar mensaje "1cci2n cancela'a"
2. DIAGRAMAS DE CO&A'ORACION
Es un diagrama dinmico que representa la relacin entre o!etos + luego la
comunicacin entre ellos a tra"#s de mensa!es los cuales se "an autoenumerando
automticamente de acuerdo al orden lgico de comunicacin$
Se elaora por cada caso de uso$
NOTACION:
NOTA: (os nomres en los diagramas de colaoracin empie2an con "eros
acti"os con terminaciones ar1 er 1 ir$
ESTRUCTURA:
: 1ctor : .rmantalla
: "trl51
: "trl52
: "9-753
3/9%*1*
1: msj1
2: msj2
3: msj3
4: msj4()
5: "9e4to1"
6: msj6
(: msj(
): msj)
1,: msj1,()
12: msj11
13: msj12 14: msj13(p1,p2)
15: msj14()
16: "9e4to2" 1(: "9e4to2"
Mensaje
'e i'a
1ctor
5oun'ar<
o .ic=a
"ontrol
-elacion o
asociacion
-elaci2n
recursiva
+: msj(p1)
11: msj11
3nti'a'
/;mero 'e secuencia
Mensaje
'e retorno
PASOS:
Identi*icar los o!etos + darles nomre
Asociar los o!etos
Estalecer la comunicacin entre o!etos
1. Ejemplo: Elaorar un diagrama de colaoracin detallado para un mantenedor
de ,roductos de un Sistema de Almac#n /Caso de uso registrar producto0
Nota: Se parte de un dise-o de pantalla$
34 Se dise-a el *ormulario + se atac&a al caso de uso en 5ile
64 En la pesta-a Diagramas pulsar otn derec&o + seleccionar.
74 Dar nomre + elaorar el diagrama de colaoracin.
84 Construccin del Diagrama de Colaoracin
9 Identi*icar actor1 oundar+1 controles + entidad/es0
9 Estalecer la asociacin entre o!etos
9 Estalecer la comunicacin entre o!etos
: 1l macenero : .rmro'ucto
: "9-7/uevo
: "9-7Mo'i.i car
: "9-76rabar
: "9-73li minar
: "9-75uscar
: "9-7"ancelar
: "9-77istar
: "9-7-etornar
: -O*8"9O
%M-3#O-1
3: reiniciali 0ar()
+: $rabar()
14: e'itar()
21: el imi nar()
26: l eer()
31: roll5ac:()
36: i mpri mir()
1: #eleccionar re$i strar pro'ucto
5: #olicitar in$resar 'atos
6: %n$resar 'atos
1(: #olicitar in$resar nuevos 'atos
1): %n$resar nuevos 'atos
2: ulsar bot2n nuevo
4: -einiciali0ar controles
12: ulsar bot2n mo'i.icar
16: 3'i tar 'atos
(: ulsar bot2n $rabar
11: *espl e$ar "6rabaci 2n correcta"
1+: ul sar bot2n el imi nar
23: *espl e$ar "3li minaci2n correcta"
24: ul sar bot2n buscar
2): *espl e$ar 'atos
2+: ul sar bot2n cancel ar
33: cancel ar acci2n
34: ulsar bot2n l istar()
13: mo'i .icarro'ucto(co'i$o)
15: 3'i tar 'atos
): $rabarro'ucto(co'i$o, 'escr, precio, stoc:, st:min, unime')
1,: *espl e$ar "6rabaci 2n correcta"
2,: el imi narro'ucto(co'i $o)
22: *espl e$ar "3li minaci2n correcta"
25: buscaro'ucto(co'i$o)
2(: *espl e$ar 'atos
3,: cancel arro'ucto(co'i$o)
32: cancel ar aci2n
35: l istarro'ucto(c2'i$o)
3(: 7i sta'o 'e pro'ucto
3): ulsar bot2n retornar
-etornar al
men; anteri or
( Autogenea el $"agama $e )e!uen!"a a pat" $el $"agama $e
!ola%oa!"#n
: 1lmacenero : .rmro'ucto : "9-7/uevo: "9-7Mo'i.icar: "9-76rabar : "9-73liminar : "9-75uscar: "9-7"ancelar : "9-77istar : "9-7-etornar : -O*8"9O
%M-3#O-1
1: #eleccionar re$istrar pro'ucto
2: ulsar bot2n nuevo
3: reiniciali0ar()
4: -einiciali0ar controles
5: #olicitar in$resar 'atos
6: %n$resar 'atos
(: ulsar bot2n $rabar
): $rabarro'ucto(co'i$o, 'escr, precio, stoc:, st:min, unime')
+: $rabar()
1,: *esple$ar "6rabaci2n correcta"
11: *esple$ar "6rabaci2n correcta"
12: ulsar bot2n mo'i.icar
13: mo'i.icarro'ucto(co'i$o)
14: e'itar()
15: 3'itar 'atos
16: 3'itar 'atos
1(: #olicitar i n$resar nuevos 'atos
1): %n$resar nuevos 'atos
1+: ulsar bot2n eliminar
2,: eliminarro'ucto(co'i$o)
21: eliminar()
22: *esple$ar "3liminaci2n correcta"
23: *esple$ar "3liminaci2n correcta"
24: ulsar bot2n buscar
25: buscaro'ucto(co'i$o)
26: leer()
2(: *esple$ar 'atos
2): *esple$ar 'atos
2+: ulsar bot2n cancelar
3,: cancelarro'ucto(co'i$o)
31: roll5ac:()
32: cancelar aci2n
33: cancelar acci2n
34: ulsar bot2n listar()
35: listarro'ucto(c2'i$o)
36: imprimir()
3(: 7ista'o 'e pro'ucto
3): ulsar bot2n retornar
1.1 AP&ICACI*N
Elaorar el diagrama de colaoracin para el caso de uso Registrar matricula
DIAGRAMA DE ACTI+IDADES
1.2 Es un diagrama dinmico que muestra las acti"idades detalladas de un
proceso mostrando *lu!o de o!etos + carriles$
1., NOTACION
NOTA:
9 (os nomres de las acti"idades empie2an con "eros acti"os con
terminaciones ar1 er1 ir$
9 (os s:imlines1 calles o carriles son opcionales$
9 (os *lu!os de o!etos muestran los camios de estado del o!eto en el
tiempo$
9 Solo &a+ un inicio + pueden &aer uno o ms terminaciones /*ines0 lgicas$
9 'na acti"idad gen#rica puede e%plosionarse en otro diagrama de acti"idad
detallado$
1.- ESTRUCTURA
1cti vi'a'1
1cti vi 'a'3
Objeto2
>3sta'o4?
1ctivi'a'4
1cti vi'a'2
Objeto1
>3sta'o1?
@*eci si2nA
> /o ?
1cti vi'a'5
> #i ?
1ctivi 'a'6
Objeto1
>3sta'o2?
1ctivi'a'(
1cti vi 'a')
1cti vi 'a'+
Obj eto2
>3sta'o3?
5arra 'e
sincroni0aci 2n
=ori 0ontal
NewSwimlane3 NewSwiml ane2 NewSwi mlane1
1.( E.EMP&O
Elaorar un diagrama de acti"idades para un Sistema de "entas
34 Seleccionamos en el Caso de 'so la pesta-a Diagrams + pulsamos otn
derec&o
64 Dar nomre al diagrama de acti"idad + dando dole clic; elaorar el
diagrama de acti"idades en el editor.
74 Construccin del diagrama de acti"idades.
9 Agregar los :imlines1 calles o carriles + dar nomre si son necesarios$
,ueden ser personas1 reas1 sistemas
9 Agregar el inicio
9 Agregar acti"idades + dar nomre + estalecer relacin lgica mediante
transiciones
9 Agregar decisiones mostrando las condiciones de guarda sin son
necesarias
9 Agregar arras de sincroni2acin por pares1 estas tienen una sola
entrada + una sola salida$ Dentro de ellas se muestran acti"idades que
pueden reali2arse en paralelo$
9 Agregar los o!etos mostrando sus estados + estalecer los *lu!os de
o!etos$
9 Agregar el *in o *ines lgicos$
#olicitar pe'i'o
&eri.icar
e4istencia
Existe?
> /o ?
3mitir nota 'e
sali'a
> #i ?
3mitir nota 'e
sali'a
-e$istrar pa$o
3mitir 'ocumento
'e venta
Cliente?
3mitir boleta 'e
venta
3mitir .actura
#ellar <
entre$ar
&er 'ia$rama 'e
activi'a'es
&eri.icar pe'i'o
3mpacar
pe'i'o
3sperar
entre$a
3ntre$ar
pe'i'o
1ctuali0ar stoc:
reparar
pe'i'o
3nviar pe'i'o
3*%*O
>#olicita'o?
/O91*3
&3/91
>"re'a?
-O*8"9O
>7eer?
16O
>-e$istra'o?
5O7391*3
&3/91
>"re'a?
F1"98-1
>"re'a?
/O91#17%*1
>"re'a?
3*%*O
>&eri.ica'o?
3*%*O
>3mpaca'o?
3*%*O
>3ntre$a'o?
3*%*O
>repara'o?
3*%*O
>3nvia'o?
-O*8"9O
>1ctuali0ar?
> /atural ? > Buri'ico ?
ALMACEN DESPACHADOR CAJERO VENEDDOR CLIENTE
,ara e%plosionar una acti"idad en un diagrama de acti"idad detallado1 seleccionar la
acti"idad + pulsar otn derec&o
En el editor1 elaorar el diagrama detallado.
1./ AP&ICACI*N. Ejemplo Detalle $e a!t"0"$a$ Em"t" 1a!tua
7lenar .ec=a, ra0on
social <'ireccion
Otro detalle?
7lenar 'etalle
> #i ?
total5ruto C ,
subtotal C
precioDcanti'a'
total5ruto C total5ruto E
subtotal
total/eto C total5ruto E
%6&F 'escuento
%6&C
,G1+Dtotal5ruto
totalBruto <
200.00
> /o ?
'escuento C
total5rutoD,G,3
> #i ?
totalBruto <
400.00
> /o ?
'escuento C
total5rutoD,G,4
> #i ?
'escuento C
total5rutoD,G,5
> /O ?
7lenar total5ruto,
'escuento, %6&, total/eto
F1"98-
1
>llena'a?
-O*8"9O
>7eer?
3*%*O
>7eer?
F1"98-1*391773
>llena'a?
F1"98-1
>llena'a?

También podría gustarte