SlideShare une entreprise Scribd logo
1  sur  17
Télécharger pour lire hors ligne
1
UML
Diagramas de Estados
(UML Ilustrado)
Universidad de los Andes
Demián Gutierrez
Noviembre 2012
2
Diagramas de Estados
(Máquina de Estados)
Los Diagramas de Estados describen una
Máquina de Estados
(o en general, Autómatas de Estados Finitos)
hay toda una teoría matemática sobre esto:
http://en.wikipedia.org/wiki/Finite-state_machine
http://en.wikipedia.org/wiki/Mealy_machine
http://en.wikipedia.org/wiki/Moore_machine
no vamos a entrar en detalles
3
Diagramas de Estados
(¿Qué Muestran?)
Un diagrama de estados muestra el flujo de control
entre estados: en qué estados posibles puede estar
“cierto algo” y cómo se producen los cambios entre
dichos estados
Una máquina de estados es un comportamiento que
especifica las secuencias de estados por las que pasa
un objeto a lo largo de su vida en respuesta a eventos,
junto con sus respuestas a esos eventos
(Booch, Rumbaugh, Jacobson)
4
Diagramas de Estados
(¿Qué Muestran?)
Son útiles para modelar cualquier aspecto de un
sistema que se pueda modelar con una máquina de
estados:
El ciclo de vida de un objeto, usuario, etc
Un protocolo de comunicación
Un interprete de un lenguaje (compiladores)
Muchas otras aplicaciones...
5
Diagramas de Estados
(Máquina de Estados)
¿en qué estado (de ánimo) se
encuentra usted y como
cambia su estado de ánimo?
(cuidado, humor negro adelante)
6
Diagramas de Estados
(Máquina de Estados)
normal
(vivo)
contento
triste
deprimido
menos
deprimido
...
buena
noticia
mala
noticia
anti depresivos
mucho
menos
deprimido antidepresivos
muerto
(sobredosis)
tiempo
tiempo
buena
noticia
mala
noticia
noticia
devastadora
en
tratamiento
busca
ayuda
evaluación
favorable
evaluación
desfavorable
antidepresivos
buena noticia, buena noticia, tiempo, noticia devastadora, busca ayuda,
evaluación favorable, noticia devastadora, ad, ad, ad ...
7
Diagramas de Estados
(Conceptos)
Un estado es una condición o situación en la vida de un
objeto durante la cual éste satisface una condición,
realiza alguna actividad o espera algún evento
Un evento es la especificación de un acontecimiento
(estímulo) que ocupa un lugar en el tiempo y en el
espacio y que puede (o no) activar una transición de
estado
Una transición es una relación entre dos estados que
indica que un objeto que esté en el primer estado realizará
ciertas acciones y entrará en el segundo estado cuando
ocurra un evento especificado y se satisfagan unas
condiciones especificadas
8
Diagramas de Estados
(Máquina de Estados)
normal
(vivo)
contento
triste
deprimido
menos
deprimido
...
buena
noticia
mala
noticia
anti depresivos
mucho
menos
deprimido antidepresivos
muerto
(sobredosis)
tiempo
tiempo
buena
noticia
mala
noticia
noticia
devastadora
en
tratamiento
busca
ayuda
evaluación
favorable
evaluación
desfavorable
antidepresivos
buena noticia, buena noticia, tiempo, noticia devastadora, busca ayuda,
evaluación favorable, noticia devastadora, ad, ad, ad ...
estados
transiciones
eventos
9
Diagrama de Estado
(Ejemplo: El modelo de una puerta)
Estado
Transición
¿Como implementaría la
guarda?
¿en qué estado
se encuentra
la puerta
inicialmente?
10
Diagrama de Estado
(Ejemplo: Una llamada telefónica)
Estado
Inicial
Estado
Final
11
Diagrama de Estado
(Ejemplo: Procesando una Orden)
Estado/Procesamiento de una
Orden para una Tienda en
Línea
12
Diagrama de Estado
(Ejemplo: Procesando una Orden)
Do / seleccionar
producto es una
actividad que se
realiza mientras
estemos en el estado
Acción
(Se ejecuta cuando se
dispara la transición)
Adaptado de UML Gota a Gota / Martin Fowler
Volveremos más
adelante al concepto
de actividad
13
Diagrama de Estado
(Ejemplo: Procesando una Orden)
¿qué tal si queremos cancelar
la orden mientras que sea
posible?
14
Diagrama de Estado
(Ejemplo: Procesando una Orden)
¿las líneas rojas
hacen el
diagrama difícil
de leer?
¿cómo se puede
mejorar le
legibilidad?
Adaptado de UML Gota a Gota / Martin Fowler
15
Diagrama de Estado
(Ejemplo: Procesando una Orden)
Estado Compuesto
Adaptado de UML Gota a Gota / Martin Fowler
16
Diagramas de Estados
(Un Ejemplo de Implementación)
¡Animo!
(código)
17
Gracias
¡Gracias!

Contenu connexe

Tendances

Sesion 3 2 modelo de analisis
Sesion 3 2 modelo de analisisSesion 3 2 modelo de analisis
Sesion 3 2 modelo de analisisJulio Pari
 
11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()Clara Patricia Avella Ibañez
 
Diagramas De Estado
Diagramas De EstadoDiagramas De Estado
Diagramas De Estadoguest5ed375
 
INTERACCIÓN ENTRE CLASES, GENERALIZACIÓN
INTERACCIÓN ENTRE CLASES, GENERALIZACIÓNINTERACCIÓN ENTRE CLASES, GENERALIZACIÓN
INTERACCIÓN ENTRE CLASES, GENERALIZACIÓNmellcv
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoMarvin Zumbado
 
Programación Modular y Estructyrada
Programación Modular y EstructyradaProgramación Modular y Estructyrada
Programación Modular y Estructyradaguestefc95b
 
Componentes de eclipse
Componentes de eclipseComponentes de eclipse
Componentes de eclipsejaquiiMc
 
Análisis y diseño de sistemas sesion 01 - introduccion a los procesos de ne...
Análisis y diseño de sistemas   sesion 01 - introduccion a los procesos de ne...Análisis y diseño de sistemas   sesion 01 - introduccion a los procesos de ne...
Análisis y diseño de sistemas sesion 01 - introduccion a los procesos de ne...GianfrancoEduardoBra
 
Unidad 1 lenguajes regulares
Unidad 1 lenguajes regularesUnidad 1 lenguajes regulares
Unidad 1 lenguajes regularesluisita91
 
Comparación awt y java swing
Comparación awt y java swingComparación awt y java swing
Comparación awt y java swingsebastiangalindob
 
Elementos de una máquina de turing
Elementos de una máquina de turingElementos de una máquina de turing
Elementos de una máquina de turingvmtorrealba
 
Ejercicios de programacion if - switch-case
Ejercicios de programacion   if  -   switch-caseEjercicios de programacion   if  -   switch-case
Ejercicios de programacion if - switch-caseGuillermo Viaje
 

Tendances (20)

Patrones GRASP
Patrones GRASPPatrones GRASP
Patrones GRASP
 
Sesion 3 2 modelo de analisis
Sesion 3 2 modelo de analisisSesion 3 2 modelo de analisis
Sesion 3 2 modelo de analisis
 
Diagramas de Estado
Diagramas de EstadoDiagramas de Estado
Diagramas de Estado
 
11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()
 
Diagramas De Estado
Diagramas De EstadoDiagramas De Estado
Diagramas De Estado
 
7.2. funciones sql
7.2.  funciones sql7.2.  funciones sql
7.2. funciones sql
 
INTERACCIÓN ENTRE CLASES, GENERALIZACIÓN
INTERACCIÓN ENTRE CLASES, GENERALIZACIÓNINTERACCIÓN ENTRE CLASES, GENERALIZACIÓN
INTERACCIÓN ENTRE CLASES, GENERALIZACIÓN
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modelado
 
Programación Modular y Estructyrada
Programación Modular y EstructyradaProgramación Modular y Estructyrada
Programación Modular y Estructyrada
 
Diseño a Nivel de Componentes
Diseño a Nivel de ComponentesDiseño a Nivel de Componentes
Diseño a Nivel de Componentes
 
16 Curso de POO en java - arreglos unidimensionales
16 Curso de POO en java - arreglos unidimensionales16 Curso de POO en java - arreglos unidimensionales
16 Curso de POO en java - arreglos unidimensionales
 
Componentes de eclipse
Componentes de eclipseComponentes de eclipse
Componentes de eclipse
 
Análisis y diseño de sistemas sesion 01 - introduccion a los procesos de ne...
Análisis y diseño de sistemas   sesion 01 - introduccion a los procesos de ne...Análisis y diseño de sistemas   sesion 01 - introduccion a los procesos de ne...
Análisis y diseño de sistemas sesion 01 - introduccion a los procesos de ne...
 
Unidad 1 lenguajes regulares
Unidad 1 lenguajes regularesUnidad 1 lenguajes regulares
Unidad 1 lenguajes regulares
 
Eventos del ratón en Java
Eventos del ratón en JavaEventos del ratón en Java
Eventos del ratón en Java
 
Comparación awt y java swing
Comparación awt y java swingComparación awt y java swing
Comparación awt y java swing
 
Clase 12a uml_clases
Clase 12a uml_clasesClase 12a uml_clases
Clase 12a uml_clases
 
cc302modulo3
cc302modulo3cc302modulo3
cc302modulo3
 
Elementos de una máquina de turing
Elementos de una máquina de turingElementos de una máquina de turing
Elementos de una máquina de turing
 
Ejercicios de programacion if - switch-case
Ejercicios de programacion   if  -   switch-caseEjercicios de programacion   if  -   switch-case
Ejercicios de programacion if - switch-case
 

En vedette (20)

Clase 14b uml_actividades
Clase 14b uml_actividadesClase 14b uml_actividades
Clase 14b uml_actividades
 
Clase 13 uml_paquetes
Clase 13 uml_paquetesClase 13 uml_paquetes
Clase 13 uml_paquetes
 
Clase 09c seleccion
Clase 09c seleccionClase 09c seleccion
Clase 09c seleccion
 
Clase 04 diseno_ui
Clase 04 diseno_uiClase 04 diseno_ui
Clase 04 diseno_ui
 
Estructuras de Datos Espaciales (Topico Especial)
Estructuras de Datos Espaciales (Topico Especial)Estructuras de Datos Espaciales (Topico Especial)
Estructuras de Datos Espaciales (Topico Especial)
 
Clase 12b uml_clases_ejemplos
Clase 12b uml_clases_ejemplosClase 12b uml_clases_ejemplos
Clase 12b uml_clases_ejemplos
 
Clase 02 Scrum
Clase 02 ScrumClase 02 Scrum
Clase 02 Scrum
 
Sesion 9 2 uml transicion estados
Sesion 9 2 uml transicion estadosSesion 9 2 uml transicion estados
Sesion 9 2 uml transicion estados
 
Clase 05b pruebas introduccion
Clase 05b pruebas introduccionClase 05b pruebas introduccion
Clase 05b pruebas introduccion
 
Hg mini manual
Hg mini manualHg mini manual
Hg mini manual
 
Clase 01 agilidad
Clase 01 agilidadClase 01 agilidad
Clase 01 agilidad
 
Clase 05a calidad verificacion validacion
Clase 05a calidad verificacion validacionClase 05a calidad verificacion validacion
Clase 05a calidad verificacion validacion
 
Clase 09a frameworks_ejemplo
Clase 09a frameworks_ejemploClase 09a frameworks_ejemplo
Clase 09a frameworks_ejemplo
 
Clase 05d cobertura de codigo
Clase 05d cobertura de codigoClase 05d cobertura de codigo
Clase 05d cobertura de codigo
 
Clase 03 XP
Clase 03 XPClase 03 XP
Clase 03 XP
 
Clase 10 mvc
Clase 10 mvcClase 10 mvc
Clase 10 mvc
 
Clase 08c ejemplo_maquina_virtual
Clase 08c ejemplo_maquina_virtualClase 08c ejemplo_maquina_virtual
Clase 08c ejemplo_maquina_virtual
 
Clase 01 presentacion
Clase 01 presentacionClase 01 presentacion
Clase 01 presentacion
 
Clase 09a frameworks
Clase 09a frameworksClase 09a frameworks
Clase 09a frameworks
 
Clase 08b ejemplo_capas_cleda
Clase 08b ejemplo_capas_cledaClase 08b ejemplo_capas_cleda
Clase 08b ejemplo_capas_cleda
 

Similaire à Clase 14a uml_estados

Uml clase 03_uml_actividades_estados
Uml clase 03_uml_actividades_estadosUml clase 03_uml_actividades_estados
Uml clase 03_uml_actividades_estadosCarlos Florezz
 
Elementos de comportamiento
Elementos de comportamientoElementos de comportamiento
Elementos de comportamientoAlumic S.A
 
DIAGRAMAS DE ESTADO
DIAGRAMAS DE ESTADODIAGRAMAS DE ESTADO
DIAGRAMAS DE ESTADOBiingeSof
 
Busqueda de epacio de estado 1
Busqueda de epacio de estado 1Busqueda de epacio de estado 1
Busqueda de epacio de estado 1EdwinVega49
 
Máquinas de estado finito
Máquinas de estado finitoMáquinas de estado finito
Máquinas de estado finitoFabiola Dubraska
 
Simulacion de sistemas discretos
Simulacion de sistemas discretosSimulacion de sistemas discretos
Simulacion de sistemas discretosMP4R
 
Diagrama de comportamiento
Diagrama de comportamientoDiagrama de comportamiento
Diagrama de comportamientoANDREAROJOORTIZ
 
diagramas de estado
diagramas de estadodiagramas de estado
diagramas de estadoarteaga22
 
Diagrama de comportamiento trabajo practico 1
Diagrama de comportamiento trabajo practico 1Diagrama de comportamiento trabajo practico 1
Diagrama de comportamiento trabajo practico 1CARLOSALBERTOMARTINE95
 
Diagrama de comportamiento practico 1
Diagrama de comportamiento practico 1Diagrama de comportamiento practico 1
Diagrama de comportamiento practico 1CarlosRamos742
 
Diagramas de estado
Diagramas de estadoDiagramas de estado
Diagramas de estadogmjuan
 
Tiempos blog
Tiempos blogTiempos blog
Tiempos blognfjs001
 
Diagramas estados
Diagramas estadosDiagramas estados
Diagramas estadosloco8888
 
Modelado en espacio de estados
Modelado en espacio de estadosModelado en espacio de estados
Modelado en espacio de estadosAlejandro Flores
 

Similaire à Clase 14a uml_estados (20)

Uml clase 03_uml_actividades_estados
Uml clase 03_uml_actividades_estadosUml clase 03_uml_actividades_estados
Uml clase 03_uml_actividades_estados
 
Diagramas de estado
Diagramas de estadoDiagramas de estado
Diagramas de estado
 
Densy
DensyDensy
Densy
 
Clase 27
Clase 27Clase 27
Clase 27
 
Elementos de comportamiento
Elementos de comportamientoElementos de comportamiento
Elementos de comportamiento
 
DIAGRAMAS DE ESTADO
DIAGRAMAS DE ESTADODIAGRAMAS DE ESTADO
DIAGRAMAS DE ESTADO
 
Busqueda de epacio de estado 1
Busqueda de epacio de estado 1Busqueda de epacio de estado 1
Busqueda de epacio de estado 1
 
Máquinas de estado finito
Máquinas de estado finitoMáquinas de estado finito
Máquinas de estado finito
 
Tipos de diagramas
Tipos de diagramasTipos de diagramas
Tipos de diagramas
 
Sistemas dinámicos
Sistemas dinámicosSistemas dinámicos
Sistemas dinámicos
 
Simulacion de sistemas discretos
Simulacion de sistemas discretosSimulacion de sistemas discretos
Simulacion de sistemas discretos
 
Sistemas estables
Sistemas establesSistemas estables
Sistemas estables
 
Diagrama de comportamiento
Diagrama de comportamientoDiagrama de comportamiento
Diagrama de comportamiento
 
diagramas de estado
diagramas de estadodiagramas de estado
diagramas de estado
 
Diagrama de comportamiento trabajo practico 1
Diagrama de comportamiento trabajo practico 1Diagrama de comportamiento trabajo practico 1
Diagrama de comportamiento trabajo practico 1
 
Diagrama de comportamiento practico 1
Diagrama de comportamiento practico 1Diagrama de comportamiento practico 1
Diagrama de comportamiento practico 1
 
Diagramas de estado
Diagramas de estadoDiagramas de estado
Diagramas de estado
 
Tiempos blog
Tiempos blogTiempos blog
Tiempos blog
 
Diagramas estados
Diagramas estadosDiagramas estados
Diagramas estados
 
Modelado en espacio de estados
Modelado en espacio de estadosModelado en espacio de estados
Modelado en espacio de estados
 

Plus de Demián Gutierrez

Clase 08a estilos_arquitectonicos
Clase 08a estilos_arquitectonicosClase 08a estilos_arquitectonicos
Clase 08a estilos_arquitectonicosDemián Gutierrez
 
Clase 07b patrones_diseno_ejemplo
Clase 07b patrones_diseno_ejemploClase 07b patrones_diseno_ejemplo
Clase 07b patrones_diseno_ejemploDemián Gutierrez
 
Clase 06 diseno_arquitectura
Clase 06 diseno_arquitecturaClase 06 diseno_arquitectura
Clase 06 diseno_arquitecturaDemián Gutierrez
 
Clase 05c niveles de pruebas
Clase 05c niveles de pruebasClase 05c niveles de pruebas
Clase 05c niveles de pruebasDemián Gutierrez
 
Clase 04b requerimientos documentacion
Clase 04b requerimientos documentacionClase 04b requerimientos documentacion
Clase 04b requerimientos documentacionDemián Gutierrez
 
Clase 04a requerimientos introduccion
Clase 04a requerimientos introduccionClase 04a requerimientos introduccion
Clase 04a requerimientos introduccionDemián Gutierrez
 

Plus de Demián Gutierrez (8)

Clase 11 uml_casos_de_uso
Clase 11 uml_casos_de_usoClase 11 uml_casos_de_uso
Clase 11 uml_casos_de_uso
 
Clase 08a estilos_arquitectonicos
Clase 08a estilos_arquitectonicosClase 08a estilos_arquitectonicos
Clase 08a estilos_arquitectonicos
 
Clase 07b patrones_diseno_ejemplo
Clase 07b patrones_diseno_ejemploClase 07b patrones_diseno_ejemplo
Clase 07b patrones_diseno_ejemplo
 
Clase 07a patrones_diseno
Clase 07a patrones_disenoClase 07a patrones_diseno
Clase 07a patrones_diseno
 
Clase 06 diseno_arquitectura
Clase 06 diseno_arquitecturaClase 06 diseno_arquitectura
Clase 06 diseno_arquitectura
 
Clase 05c niveles de pruebas
Clase 05c niveles de pruebasClase 05c niveles de pruebas
Clase 05c niveles de pruebas
 
Clase 04b requerimientos documentacion
Clase 04b requerimientos documentacionClase 04b requerimientos documentacion
Clase 04b requerimientos documentacion
 
Clase 04a requerimientos introduccion
Clase 04a requerimientos introduccionClase 04a requerimientos introduccion
Clase 04a requerimientos introduccion
 

Dernier

FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 

Dernier (20)

FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 

Clase 14a uml_estados

  • 1. 1 UML Diagramas de Estados (UML Ilustrado) Universidad de los Andes Demián Gutierrez Noviembre 2012
  • 2. 2 Diagramas de Estados (Máquina de Estados) Los Diagramas de Estados describen una Máquina de Estados (o en general, Autómatas de Estados Finitos) hay toda una teoría matemática sobre esto: http://en.wikipedia.org/wiki/Finite-state_machine http://en.wikipedia.org/wiki/Mealy_machine http://en.wikipedia.org/wiki/Moore_machine no vamos a entrar en detalles
  • 3. 3 Diagramas de Estados (¿Qué Muestran?) Un diagrama de estados muestra el flujo de control entre estados: en qué estados posibles puede estar “cierto algo” y cómo se producen los cambios entre dichos estados Una máquina de estados es un comportamiento que especifica las secuencias de estados por las que pasa un objeto a lo largo de su vida en respuesta a eventos, junto con sus respuestas a esos eventos (Booch, Rumbaugh, Jacobson)
  • 4. 4 Diagramas de Estados (¿Qué Muestran?) Son útiles para modelar cualquier aspecto de un sistema que se pueda modelar con una máquina de estados: El ciclo de vida de un objeto, usuario, etc Un protocolo de comunicación Un interprete de un lenguaje (compiladores) Muchas otras aplicaciones...
  • 5. 5 Diagramas de Estados (Máquina de Estados) ¿en qué estado (de ánimo) se encuentra usted y como cambia su estado de ánimo? (cuidado, humor negro adelante)
  • 6. 6 Diagramas de Estados (Máquina de Estados) normal (vivo) contento triste deprimido menos deprimido ... buena noticia mala noticia anti depresivos mucho menos deprimido antidepresivos muerto (sobredosis) tiempo tiempo buena noticia mala noticia noticia devastadora en tratamiento busca ayuda evaluación favorable evaluación desfavorable antidepresivos buena noticia, buena noticia, tiempo, noticia devastadora, busca ayuda, evaluación favorable, noticia devastadora, ad, ad, ad ...
  • 7. 7 Diagramas de Estados (Conceptos) Un estado es una condición o situación en la vida de un objeto durante la cual éste satisface una condición, realiza alguna actividad o espera algún evento Un evento es la especificación de un acontecimiento (estímulo) que ocupa un lugar en el tiempo y en el espacio y que puede (o no) activar una transición de estado Una transición es una relación entre dos estados que indica que un objeto que esté en el primer estado realizará ciertas acciones y entrará en el segundo estado cuando ocurra un evento especificado y se satisfagan unas condiciones especificadas
  • 8. 8 Diagramas de Estados (Máquina de Estados) normal (vivo) contento triste deprimido menos deprimido ... buena noticia mala noticia anti depresivos mucho menos deprimido antidepresivos muerto (sobredosis) tiempo tiempo buena noticia mala noticia noticia devastadora en tratamiento busca ayuda evaluación favorable evaluación desfavorable antidepresivos buena noticia, buena noticia, tiempo, noticia devastadora, busca ayuda, evaluación favorable, noticia devastadora, ad, ad, ad ... estados transiciones eventos
  • 9. 9 Diagrama de Estado (Ejemplo: El modelo de una puerta) Estado Transición ¿Como implementaría la guarda? ¿en qué estado se encuentra la puerta inicialmente?
  • 10. 10 Diagrama de Estado (Ejemplo: Una llamada telefónica) Estado Inicial Estado Final
  • 11. 11 Diagrama de Estado (Ejemplo: Procesando una Orden) Estado/Procesamiento de una Orden para una Tienda en Línea
  • 12. 12 Diagrama de Estado (Ejemplo: Procesando una Orden) Do / seleccionar producto es una actividad que se realiza mientras estemos en el estado Acción (Se ejecuta cuando se dispara la transición) Adaptado de UML Gota a Gota / Martin Fowler Volveremos más adelante al concepto de actividad
  • 13. 13 Diagrama de Estado (Ejemplo: Procesando una Orden) ¿qué tal si queremos cancelar la orden mientras que sea posible?
  • 14. 14 Diagrama de Estado (Ejemplo: Procesando una Orden) ¿las líneas rojas hacen el diagrama difícil de leer? ¿cómo se puede mejorar le legibilidad? Adaptado de UML Gota a Gota / Martin Fowler
  • 15. 15 Diagrama de Estado (Ejemplo: Procesando una Orden) Estado Compuesto Adaptado de UML Gota a Gota / Martin Fowler
  • 16. 16 Diagramas de Estados (Un Ejemplo de Implementación) ¡Animo! (código)