1 Modelo Dinámico (I) Prof. Leonid Tineo Departamento de ComputaciónUniversidad Simón Bolívar
2 Modelo Dinámico Describe: Captura: Representación:Aspectos concernientes con el tiempo y la secuenciación de operaciones Captura: Control - secuencia de operaciones (no su funcionalidad ni su implementación) Representación: Diagramas de Estados
3 Eventos Algo que ocurre en algún momento y no tiene duración para efectos de la escala de tiempo Ejemplos Tocar un botón de un teclado Salida de un vuelo Levantar auricular de un teléfono Atributos de un evento: valores que trasmite Clases de eventos: eventos similares
4 Estados El estado de un objeto es una abstracción de los valores de los atributos y loes enlaces del objeto El estado determina la respuesta del objeto a los eventos recibidos La respuesta a un evento puede ser: Una acción Un cambio de estado
5 Eventos vs Estados Evento EstadoPuntual en el tiempo (no tiene duración) Ocurre entre dos estados (transición) o dentro de un estado (evento interno) Estado Intervalo de tiempo (tiene duración) Ocurre entre dos eventos
6 Características de EstadosUn estado tiene duración en el tiempo Se asocia con Una actividad continua Una actividad que lleva tiempo completar Valor del objeto que satisface cierta condición Ejemplos Los estados del agua Las velocidades de una caja de transmisión
7 Caracterización de un EstadoNombre de estado Descripción Secuencias de eventos que producen el estado Condición que caracteriza al estado Eventos aceptados en el estado evento - acción - próximo estado
8 Diagramas de Estados Un Diagrama de estados es un grafo dirigido:Sus nodos representan estados (para una clase de objetos) Sus arcos representan eventos (transiciones) Describe una secuencia de estados causada por una secuencia de eventos Transición: Cambio de estado causado por un evento
9 Diagramas de Estados Posibles diagramas de estados Lazo continuoDiagramas de vida finita estado inicial estado final destrucción del objeto
10 Modelo Dinámico Es una colección de diagramas de estados que interactúan a través de eventos compartidos Representa la estructura de control del sistema Sus instancias son llamadas “escenarios” Describe un conjunto de objetos concurrentes
11 Diagrama de Clases vs Diagrama de EstadosEstructura de datos Estructura de diversos objetos Distintos objetos Relacionados Asociaciones entre objetos Clases modelan diferencias esenciales Diagrama de Estados Estructura de control Estados de un mismo objetos Mismo objeto transformado Transiciones entre estados Estados modelan diferencias temporales
12 Operaciones Describen el comportamiento de un objetoQué hace frente a un evento: respuesta Se asocian a los estados o a las transiciones Se distinguen dos tipos: Actividades Acciones
13 Actividad Se asocia con un estado y toma tiempo en completarseIncluye: Operaciones continuas Operaciones secuenciales Puede ser interrumpida prematuramente Notación: “do:A” dentro de la caja del estado
14 Acción Operación instantánea cuya duración es insignificante para efectos del diagrama Asociada a un evento Puede ser Operación real que no nos interesa modelar en detalle Operación interna de control Notación: “evento/acción” sobre el arco del evento
15 Acciones Especiales Dentro de un estado Envío de un eventoDe entrada a un estado: “entry/acción” De salida de un estado: “exit/acción” Internas: se ejecutan sin causar cambio de estado distinto de una transición sobre el mismo estado Envío de un evento “send evento(atributos)” con arco segmentado
16 Transiciones CustodiadasCondición de guardia: Condición que se asocia a la transición para restringirla La transición se dispara cuando: ocurre el evento y la condición es satisfecha para Notación: “evento[condición]” sobre el arco de la transición
17 Sub-Estados
18 Envío de Mensajes
19 Transición Interna
20 Transición Compleja
21 Diagrama de Actividades
22 Referencias