DIAGRAMAS DE ESTADOS - · PDF fileUn diagrama de clases le muestra los aspectos...

Post on 05-Feb-2018

239 views 3 download

Transcript of DIAGRAMAS DE ESTADOS - · PDF fileUn diagrama de clases le muestra los aspectos...

¿Qué es un Diagrama de Estados?Sucesos, acciones y condiciones de seguridadSubestados: secuenciales y concurrentesImportancia de los Diagramas de Estado

Ing. José Manuel Poveda

Es una manera para caracterizar un cambioen un sistema, es decir que los objetos que locomponen modificaron su estado comorespuesta a los sucesos y al tiempo.

Presenta los estados en los que puedeencontrarse un objeto junto con lastransiciones entre los estados, y muestra lospuntos inicial y final de una secuencia decambios de estado.

El UML le da la opción de agregar detalles a lasimbología. Así como es posible dividir unsímbolo de clase en tres áreas (nombre,atributos y operaciones), puede dividir elícono del estado de igual forma.

1. El área superior contendrá el nombre delestado (se debe establecer haya o no hayasubdivisión.

2. Las variables de estado como cronómetroso contadores son indicadores del estado.

3. Las actividades constan de sucesos yacciones, tres de las más usadas son:Entrada, Salida y Hacer.

También puede agregar ciertos detalles a laslíneas de transición. Puede indicar un sucesoque provoque una transición (desencadenarun suceso), y la actividad que se ejecute (laacción) y haga que suceda la modificación delestado.

Ejemplo: Cree el diagrama de estados de la GUI

(Interfaz gráfica de usuario) de Windows XP,asuma tres estados: INICIALIZACIÓN,OPERACIÓN Y APAGAR.

Los estados y transiciones de unainterfaz gráfica de usuarioincluyen el desencadenamientode eventos, acciones ytransiciones no desencadenadas.

La anterior secuencia de estados deja muchoque desear. Por ejemplo: si deja solo su equipoo si realizara alguna actividad en la que notocara el ratón o el teclado, podría aparecer unprotector de pantalla que evitaría el desgaste desu pantalla. Suponga que éste esta configuradoen Win XP en un intervalo de 15 minutos.

El intervalo de 15 minutos es una CONDICIÓNDE SEGURIDAD: Cuando se cumple unacondición, se realiza la transición.

El diagrama de estados para la GUI, con elestado “Protector de Pantalla” y la condición deseguridad sería:

En ocasiones, un estado consta de Subestados. LosSubestados pueden ser:

1. Secuenciales Ocurre uno después del otro.

2. Concurrentes Ocurre al mismo tiempo.

Un estado que consta de subestados se conoce como estado compuesto.

Cuando la GUI está en el estado de operación,hay muchas cosas que ocurren aunque nosean particularmente evidentes en la pantalla.La GUI aguarda de forma constante a queusted haga algo (oprima una techa, mueva elratón). Luego deberá registrar tales accionesy modificar lo que se despliega parareflejarlas en la pantalla (como mover elcursor cuando usted mueva el mouse, omostrar una “a” cuando usted oprima la tecla“a”.

Dentro del estado de operación de la GUItendrá la siguiente secuencia:

Dentro del estado de operación de la GUI nosólo aguarda a que usted haga algo. Tambiénverifica el cronómetro del sistema y(posiblemente) actualiza el despliegue de unaaplicación luego de un intervalo específico. PorejempLo, una aplicación podría incluir un relojde pantalla que tuviera que actualizar la GUI.

Un estado histórico indica que un estadocompuesto recordará su subestado cuando elobjeto trasciende fuera del estadocompuesto.

Ejemplo: Cuando se desactiva el protector depantalla por el movimiento del mouse, lapantalla no volvió a su estado inicial como sise reiniciara la PC, sino que lucirá tal y comose dejó antes de que se activara el protectorde pantalla.

El estado simbólico se representa con la letra H encerrada en un círculo.

Es necesario contar en el diseño del software condiagramas de estado dado que permiten a losanalistas, diseñadores y desarrolladores comprenderel comportamiento de los objetos de un sistema.

Un diagrama de clases le muestra los aspectosestáticos del sistema, un diagrama de Casos de Usole muestra su interacción con el usuario. Pero no lemuestran los detalles dinámicos de las operaciones.

Con una clara representación del comportamientodel objeto, aumenta la probabilidad de que elequipo de desarrollo produzca un sistema quecumpla con los requerimientos.