Está en la página 1de 38

UML

Diagramas de Estados Diagrama de Actividades (UML Ilustrado)

Universidad de los Andes


Demin Gutierrez Mayo 20 1

Diagramas de Estados

Diagramas de Estados
2

Diagramas de Estados (Qu Muestran?) Los Diagramas de Estados muestran una Mquina de Estado

!on "tiles #ara modelar la vida de un o$%eto Un diagrama de estados muestra el flujo de control entre estados (en &u' estados #osi$les #uede estar (cierto algo) y como se #roducen los cam$ios entre dic*os estados)
3

Diagramas de Estados (Mquina de Estados) Una m&uina de estados es un com#ortamiento &ue es#eci+ica las secuencias de estados #or las &ue #asa un o$%eto a lo largo de su vida en res#uesta a eventos, %unto con sus res#uestas a esos eventos (Booch, Rumbaugh, Jacobson)

En qu estado (de nimo) se encuentra usted y como cambia su estado de nimo?


4

Diagramas de Estados (Mquina de Estados)


$usca ayuda contento en tratamiento evaluaci.n +avora$le evaluaci.n des+avora$le de#rimido $uena noticia tiem#o noticia devastadora anti de#resivos tiem#o triste muerto (so$redosis) muc*o menos de#rimido mala noticia $uena noticia

normal
(vivo)

mala noticia

antide#resivos

antide#resivos

menos de#rimido ---

$uena noticia, $uena noticia, tiem#o, noticia devastadora, $usca ayuda, evaluaci.n +avora$le, noticia devastadora, ad, ad, ad ---

Diagramas de Estados (Conceptos)


Un estado es una condici n o situaci n en la vida de un o$%eto durante la cual satisface una condici n, reali!a alguna actividad o es"era alg#n evento Un evento es la es#eci+icaci.n de un acontecimiento significativo &ue ocu#a un lugar en el tiem"o y en el es"acio- Es la a#arici.n de un est/mulo &ue #uede (o no) activar una transici.n de estado Una transici n es una relaci n entre dos estados &ue indica &ue un o$%eto &ue est' en el "rimer estado realizar ciertas acciones y entrar en el segundo estado cuando ocurra un evento es#eci+icado y se satis+agan unas condiciones es#eci+icadas
6

Diagramas de Estados (Mquina de Estados)


busca ayuda contento en tratamiento evaluacin favorable evaluacin desfavorable estados transiciones eventos muerto (sobredosis) triste mucho menos deprimido deprimido buena noticia tiempo noticia devastadora tiempo mala noticia anti depresivos buena noticia

normal
(vivo)

mala noticia

antidepresivos

antidepresivos

menos deprimido ...

buena noticia, buena noticia, tiempo, noticia devastadora, busca ayuda, evaluacin favorable, noticia devastadora, ad, ad, ad ...

Diagrama de Estado (Ejemplo)


0ransici.n 12omo im#lementar/a la guarda3

En qu estado se encuentra la puerta inicialmente?


Estado

Diagrama de Estado (Ejemplo)


Estado Inicial

Estado 4inal
9

Diagrama de Estado (Ejemplo)


Acci.n (!e e%ecuta cuando se dis#ara la transici.n) 12.mo im#lementar/a esto3 Do 5 seleccionar #roducto es una actividad 12.mo im#lementar/a esto3

10

Diagrama de Estado (Ejemplo)

11

Diagrama de Estado (Ejemplo)


Estado 2om#uesto 12.mo im#lementar/a esto3

12

Diagrama de Estado (Ejemplo)

ostrar E!emplo de "mplementacin ostrar #$ % de los &'(

13

Diagramas de Actividades

Diagramas de Actividades
14

Diagramas de Actividades (Qu Muestran?) Un Diagrama de Actividades no es ms &ue un caso es"ecial de un diagrama de estados, en el &ue todos los estados (o la gran mayor/a) son actividades

)u es una actividad y cual es la diferencia con un estado?

15

Diagramas de Actividades (Qu Muestran?)

'i estoy contento, eso es un estado o una actividad? *mo paso de contento a triste? *ul es la diferencia entre estar contento o preparar una torta? )u sucede despus de que termino de preparar la torta?
16

Diagramas de Actividades (Qu Muestran?)


contento mala noticia triste

Los estados generalmente son at.micos y se #asa al siguiente estado #or medio de un evento 6uscando ni7os al colegio !uena el 0im$re

Las actividades no son at micas y generalmente se "asa a la siguiente actividad cuando la actividad actual termina

8re#arando 0orta !e van las visitas Atendiendo :isitas +,-

9aciendo 2ena

)u es una actividad y cual es la diferencia con un estado?

17

Diagramas de Actividades (Qu Muestran?)

El flujo de un objeto a lo largo de una serie de estados o actividades !e #ueden usar #ara modelar la dinmica de una sociedad de o$%etos o el +lu%o de control de una o#eraci.n (Diagramas de flujo?)

Tomado de Booch, Rumbaugh, Jacobson, el lenguaje unificado de modelado

18

Diagramas de Actividades (Qu Muestran?) Un Diagrama de Actividades muestra el flujo de control entre una serie de tareas o actividades Los Diagramas de Actividades son usados (entre otras cosas) #ara ela$orar modelos de flujos de trabajo$ (;or<+lo;) de un sistemaEn general, un Diagrama de Actividades muestra una serie de acciones o tareas &ue se e%ecutan en cierto orden (y otros elementos adicionales)
=Un flujo de trabajo se #uede ver como una serie de tareas (acciones) &ue son e%ecutadas o realizadas #or ciertos actores en 19 cierto orden #reesta$lecido

Diagramas de Actividades (Qu Muestran?)

Los Diagramas de Actividades e%"resan&


2on%unto de actividades 1En &ue orden se e%ecutan3 1D.nde ocurren3 1>u' insumos re&uieren3 1>u' *acen las actividades3 12undo ocurren3 1>ui'n las e%ecuta3 1>u' #roductos generan3
20

Diagramas de Actividades (Conceptos sicos?) 'ctividad& Es la es#eci+icaci.n de un com#ortamiento &ue #uede ser #arametrizado y &ue de+ine la secuenciaci.n coordinada de unidades su$ordinadas denominadas acciones 'cci n& Una acci.n es la unidad +undamental de es#eci+icaci.n de com#ortamiento- Una acci.n es generalmente at.mica, es decir, indivisi$le (ransiciones& ?e#resentan el #aso de una acci.n a otra
21

Diagramas de Actividades (Ejemplo)


!e#araci.n (4or< 5 !#lit) Acci.n Uni.n (@oin)

Inicio E%e de Actividad o 0ransici.n 4in Mezcla (Merge)

Aodo B$%eto o 8armetro de Entrada

Decisi.n (2*oose 5 6ranc*) Aodo B$%eto o 8armetro de !alida

22 .ecordar Etiquetas

Diagramas de Actividades (Ejemplo)

Acci.n Evento de 0iem#o

/or qu no hay nodo de inicio?


23

Diagramas de Actividades (Ejemplo)

4inal de 4lu%o

!;imlanes (2arrileras 5 2alles)

24

Diagramas de Actividades (Ejemplo)

El mismo diagrama anterior #ero sin carrileras 5 calle


25

Diagramas de Actividades (Ejemplo)

Acci.n ?ecurrente (Iterativa)

0clarar env1o y recepcin de se2ales

Env/o de !e7al (Evento)

?ece#ci.n de !e7al (Evento)

26

Diagramas de Actividades (Ejemplo)

Aota

2arrilera (2alle) Do$le

27

Diagramas de Actividades (Ejemplo)

Aoten el e&uili$rio entre las se#araciones y uniones


28

Ejemplo de !or"#lo$ (%) (Ejemplo tomado de C&EDA)


MDocB+erta

?eci$ir B+erta ()liente)

Anlisis Legal ('nalista)

id nom$re a#ellido cedula --;or<+lo;Eid

M?ecaudo id nom$re ti#o ---

Aoti+icar A#ro$aci.n (*ecretaria)

Ca#ro$arD

CelseD

Aoti+icar ?ec*azo (*ecretaria)

0--n

6D
?ece#ci.n de Documentos (*ecretaria)

8re#arar 2ontrato (D"to+ ,egal)

[else] Anlisis #or @unta (Junta) Aoti+icar A#ro$aci.n (*ecretaria) 4irma de 2ontrato ()liente)

Ca#ro$arD

Proceso de Negocio: Proceso de Contratacin Modelado con un Diagra a de !cti"idades

29

Ejemplo de !or"#lo$ (') (Ejemplo tomado de C&EDA)


?eci$ir !olicitud de Inscri#ci.n (2liente) Guardar 0em#oralmente (Analista) Aoti+icar ?ec*azo (!ecretaria) Ace#tar (Analista) ?ec*azar (Analista) MDocB+erta id nom$re a#ellido cedula --;or<+lo;Eid 0--n

M?ecaudo id nom$re ti#o ---

4irmar 2ontrato (2liente) Aoti+icar A#ro$aci.n (!ecretaria) 8re#arar 2ontrato (D#to- Legal) ?ec*azar (@unta)

6D

?eci$ir ?ecaudo (!ecretaria)

Ace#tar (@unta) (Auto)

Aoti+icar A#ro$aci.n (!ecretaria)

?ecaudos 4altantes (!istema)

?ecaudos 2om#letos (!istema)

Proceso de Negocio: Proceso de Contratacin Modelado con #edes de Petri

30

(M& ()ersi*n %+,) (') (Ejemplo tomado de C&EDA)

<net-petri-def name="..." doc-type="..."> <!-- *********************************** --> <!-- The list of places in the net-petri --> <!-- *********************************** --> <!-- *********************************** --> <!-- The list of trans-set and trans --> <!-- *********************************** --> <!-- *********************************** --> <!-- The list of states in the net-petri --> <!-- *********************************** --> </net-petri-def>

31

(M& ()ersi*n %+,) (-) (Ejemplo tomado de C&EDA)

<net-petri-def name="..." doc-type="..."> <!-- *********************************** --> <!-- The list of places in the net-petri --> <!-- *********************************** --> <place-list> <place name="..." /> <place name="..." /> ... </place-list> ... </net-petri-def>

32

(M& ()ersi*n %+,) (.) (Ejemplo tomado de C&EDA)


<net-petri-def name="..." doc-type="..."> ... <trans-list> <trans-set name="..."> <agent-def time="..." class="..." method="..." /> <privilege name="..." /> <work-list name="..." /> <meta-data key="..." val="..." /> <meta-data key="..." val="..." /> ... <doc-section-state name="..." state="..." /> <doc-section-state name="..." state="..." /> ... <trans name="..." type="..."> <meta-data key="..." val="..." /> <meta-data key="..." val="..." /> ... <pre-place name="..." /> <pre-place name="..." /> ... <pos-place name="..." /> <pos-place name="..." /> ... </trans> ... </trans-set> ... </trans-list> ... </net-petri-def>

33

(M& ()ersi*n %+,) (,) (Ejemplo tomado de C&EDA)

<net-petri-def name="..." doc-type="..."> ... <state-list> <state-grp name="..." terminal="..."> <meta-data key="..." val="..." /> <meta-data key="..." val="..." /> ... <doc-section-state name="..." state="..." /> <doc-section-state name="..." state="..." /> ... <state-set name="..."> <place name="..." tokens="..." /> <place name="..." tokens="..." /> ... </state-set> ... </state-grp> ... </state-list> ... </net-petri-def>

34

Arquitectura (/eneral) (Ejemplo tomado de C&EDA)


!ervlets A#licaci.n Modelo de Dominio

2leda0ags

Aavegador FE6

6* 2ledaM:2 (!truts ) o Ec*o2

9i$ernate

Documentos

@D62

6D

2leda2ore

otor de 3or4flo5 (2leda4lo;, 2leda!c*eduler y 2leda6ase)

!r$uitectura a 3 ca%as &ien de'inida( )alidada con la e*%eriencia de los %ro+ectos desarrollados( ,n constante e"olucin + re'inacin(
35

Discusi*n

7"'*&'"89 /or qu los dia:ramas de estados - actividades son importantes?


36

/racias

-.racias/

37

(C=)$;7;+ ;!o con estos conceptos que entran en contradiccin con los conceptos presentados en los dia:ramas de estado (E no deber1a ser) (CD) $;7;+ .evisar en el estndar el final de flu!o y ver si est bien utili>ado $;7;+ "nvesti:ar si e<isten buenas prcticas en cuanto a los nombres de los eventos, acciones, transiciones, etc $;7;+ )ui>s faltan al:unas cosas, como acciones de entrada, de salida, la evaluacin de e<presiones, maquinas de estado concurrentes y anidadas, etctera... $;7;+ Este e!emplo (==) es bueno, pero puede ser un poco confuso, sobre todo porque aqu1 hay un poco de me>cla entre dia:rama de estados (Esperando-Enviando) y dia:rama de actividades $;7;+ (==) 9o si:ue la convencin de ?:uarda@ evento - accin de las lminas anteriores %a informacin en+ http+--en.5i4ipedia.or:-5i4i-& %AstateAmachine est bastante interesante... (=B)$;7;+ #ay que revisar y consolidar, me parece que se habla mucho aqu1 repitiendo conceptos. Esto deber1a ser al:o mucho ms concreto y que confunda menos a los estudiantes
38

También podría gustarte