Está en la página 1de 10

Diagramas De Estado

Objetivo El objetivo de esta exposicin es dar a conocer en que consiste un diagrama de estado, las partes que lo conforman y los sub estados Introduccin Los diagramas de estado describen grficamente los eventos y los estados de los objetos. Los diagramas de estado son tiles, entre otras cosas, para indicar los eventos del sistema en los casos de uso.

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

Desarrollo Qu Es Un Diagrama De Estado? Una manera para caracterizar un cambio en un sistema es decir que los objetos que lo componen modificaron su estado como respuesta a los sucesos y al tiempo. En cualquier momento, un objeto se encuentra en un estado en particular. El diagrama de estados UML captura este tipo de cambios. Presenta los estados en los que puede encontrarse un objeto junto con las transiciones entre los estados, y muestra los puntos inicial y final de una secuencia de cambios de estado Una mquina 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). Como Ejemplo tenemos esta imagen que representa un diagrama de estado. El cual indica el estado de nimo que puede tener una persona

Modelado y anlisis de Requerimientos de software

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

Un diagrama de Estados tambin se conoce como un motor de estado y trabaja las condiciones de un solo objeto. Los smbolos UML en un diagrama de estados principales son el icono para el estado es un rectngulo de vrtices redondeados, y el smbolo de una transicin es una lnea continua y una punta de flecha. Un crculo relleno se interpreta como el punto inicial de una secuencia de estados, y una diana representa al punto final.

Eventos Un evento es una ocurrencia que puede causar la transicin de un estado a otro de un objeto. Esta ocurrencia puede ser una: Condicin que toma el valor de verdadero (normalmente descrita como una expresin booleana). Es un EventoCambio. Recepcin de una seal explcita de un objeto a otro. Es un EventoSeal. Recepcin de una llamada a una operacin. Es un EventoLlamada. Paso de cierto perodo de tiempo, despus de entrar al estado actual, o de cierta hora y de fechas concretas. Es un EventoTiempo

El nombre de un evento tiene alcance dentro del paquete en el cual est definido y puede ser usado en los diagramas de estado por las clases que tienen visibilidad dentro del paquete. Un evento no es local a la clase donde est declarado. Acciones Una accin es una operacin atmica, que no se puede interrumpir por un evento y que se ejecuta hasta su finalizacin. Una accin puede ser: Una llama da a una operacin (al objeto al cual pertenece el diagrama de estado o tambin a otro objeto visible), La creacin o la destruccin de otro objeto, El envo de una seal a un objeto. Actividades Cuando un objeto est en un estado, generalmente est esperando a que suceda algn evento. Sin embargo, a veces, queremos modelar una actividad que se est ejecutando. Es decir, mientras un objeto est en un estado, dicho objeto realiza un trabajo que continuar hasta que sea interrumpido por un evento. Por lo tanto, una accin contrasta con una actividad, ya que sta ltima puede ser interrumpida por otros eventos.

Modelado y anlisis de Requerimientos de software

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

Estados Un estado identifica una condicin o una situacin en la vida de un objeto durante la cual satisface alguna condicin, ejecuta alguna actividad o espera que suceda algn evento. Un objeto permanece en un estado durante un tiempo finito (no instantneo). Un estado se representa grficamente por medio de un rectngulo con los bordes redondeados y con tres divisiones internas. Los tres compartimentos alojan el nombre del estado, el valor caracterstico de los atributos del objeto en ese estado y las acciones que se realizan en ese estado, respectivamente. En muchos diagramas se omiten los dos compartimentos inferiores.

Modelado y anlisis de Requerimientos de software

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

Representacin UML
El UML da la opcin de agregar detalles a la simbologa. As cmo es posible dividir un smbolo de clase en tres reas.

Sucesos y acciones
A los sucesos y acciones se escribir cerca de la lnea de transicin mediante una diagonal para separar un suceso desencadenado de una accin. En ocasiones un evento causara una transicin sin una accin asociada, y algunas veces una transicin suceder dado que un estado finalizara una actividad (en lugar de hacerlo por un suceso). A este tipo de transicin se le conoce como transicin no desencadenada.

Partes que conforman el Diagrama de Estados Estado Un estado se representa como una caja redondeada con el nombre del estado en su interior. Una transicin se representa como una flecha desde el estado origen al estado destino. La caja de un estado puede tener 1 o 2 compartimentos. En el primer compartimento aparece el nombre del estado. El segundo compartimento es opcional, y en l pueden aparecer acciones de entrada, de salida y acciones internas.

Modelado y anlisis de Requerimientos de software

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

Eventos Es una ocurrencia que puede causar la transicin de un estado a otro de un objeto. Esta ocurrencia puede ser una de varias cosas:

Condicin que toma el valor de verdadero o falso Recepcin de una seal de otro objeto en el modelo

Recepcin de un mensaje Paso de cierto perodo de tiempo, despus de entrar al estado o de cierta hora y fecha particular. El nombre de un evento tiene alcance dentro del paquete en el cual est definido, no es local a la clase que lo nombre. Envo de mensajes Adems de mostrar y transicin de estados por medio de eventos, puede representarse el momento en el cual se envan mensajes a otros objetos. Esto se realiza mediante una lnea punteada dirigida al diagrama de estados del objeto receptor del mensaje. Transicin simple Una transicin simple es una relacin entre dos estados que indica que un objeto en el primer estado puede entrar al segundo estado y ejecutar ciertas operaciones, cuando un evento ocurre y si ciertas condiciones son satisfechas. Se representa como una lnea slida entre dos estados, que puede venir acompaada de un texto con el siguiente formato: Transicin interna Es una transicin que permanece en el mismo estado, en vez de involucrar dos estados distintos. Representa un evento que no causa cambio de estado. Se denota como una cadena adicional en el compartimiento de acciones del estado. Acciones Se puede especificar la solicitud de un servicio a otro objeto como consecuencia de la transicin. Se puede especificar el ejecutar una accin como consecuencia de entrar, salir, estar en un estado, o por la ocurrencia de un evento. Generalizacin de Estados Se puede reducir la complejidad de estos diagramas usando la generalizacin de estados. Se distingue as entre superestado y subestados. Un estado puede contener varios subestados disjuntos. Los subestados heredan las variables de estado y las transiciones externas. La agregacin de estados es la composicin de un estado a partir de varios estados independientes. La composicin es concurrente por lo que el objeto estar en alguno de los estados de cada uno de los subestados concurrentes. La destruccin de un objeto es efectiva cuando el flujo de control del autmata alcanza un estado final no anidado. La llegada a un estado final anidado implica la subida al superestado asociado, no el fin del objeto. Modelado y anlisis de Requerimientos de software 6

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

Subestados Son estados que se encuentran dentro de otros y existen dos tipos de sub estados: secuencial y concurrente. Un estado puede descomponerse en subestados, con transiciones entre ellos y conexiones al nivel superior. Las conexiones se ven al nivel inferior como estados de inicio o fin, los cuales se suponen conectados a las entradas y salidas del nivel inmediatamente superior. Subestados secuenciales Como su nombre lo indica, los subestados secuenciales suceden uno detrs de otro Subestados concurrentes Aunque cada secuencia es, claro, un conjunto de subestados secuenciales, las dos secuencias son concurrentes entre s. Puede representar la concurrencia con una Lnea discontinua entre los estados concurrentes o simultneos Transaccin Compleja Una transicin compleja relaciona tres o ms estados en una transicin de mltiples fuentes y/o mltiples destinos. Representa la subdivisin en threads del control del objeto o una sincronizacin. Se representa como una lnea vertical de la cual salen o entran varias lneas de transicin de estado. Transicin a estados anidados Una transicin de hacia un estado complejo (descrito mediante estados anidados) significa la entrada al estado inicial del subdiagrama. Las transiciones que salen del estado complejo se entienden como transiciones desde cada uno de los subestados hacia afuera (a cualquier nivel de profundidad). Transiciones temporizadas Las esperas son actividades que tienen asociada cierta duracin. La actividad de espera se interrumpe cuando el evento esperado tiene lugar. Este evento desencadena una transicin que permite salir del estado que alberga la actividad de espera. El flujo de control se transmite entonces a otro estado. Ventajas y Desventajas Ventajas El Diagrama de Estados tiene xito en sistemas interactivos, ya que expresa la intencin que tiene el actor (su usuario) al hacer uso del sistema. Como tcnica de extraccin de requerimiento permite que el analista se centre en las necesidades del usuario, qu espera ste lograr al utilizar el sistema, evitando que la gente especializada en informtica dirija la funcionalidad del nuevo sistema basndose solamente en criterios tecnolgicos.

Modelado y anlisis de Requerimientos de software

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

A su vez, durante la extraccin (elicitation en ingls), el analista se concentra en las tareas centrales del usuario describiendo por lo tanto los casos de uso que mayor valor aportan al negocio. Esto facilita luego la priorizacin del requerimiento. Desventajas La inclusin de estas relaciones hace que los diagramas sean ms difciles de leer, sobre todo para los clientes.

Estados Histricos
Un estado compuesto recuerda su subestado activo cuando el objeto trasciende fuera del estado compuesto. El smbolo es la letra "H" encerrada en un crculo que se conecta por una lnea continua al subestado por recordar, con una punta de flecha que apunta a tal subestado

Modelado y anlisis de Requerimientos de software

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

Conclusin
Los diagramas de estado son herramientas que permiten a los diseadores y desarrolladores comprender el comportamiento de los objetos de un sistema, sus jerarquas y asociaciones. A la vez aseguran que no se tenga que adivinar lo que se supone que harn los objetos, ya que nos dan una clara representacin del comportamiento de cada uno de ellos y los cambios que presentan.

Recomendaciones
Casi la gran mayora de los sistemas hoy en da generan eventos en su funcionamiento, por lo cual para su documentacin y especificacin debe ser usado un diagrama de estados para tener una definicin complete del mismo, es por esto que se recomienda adquirir conocimiento sobre el concepto y tipos de diagramas para su manejo en el ambiente profesional.

Modelado y anlisis de Requerimientos de software

MODELADO Y ANALISIS DE REQUERIMIENTOS DE SOFTWARE

12 de febrero de 2014

Referencias Bibliografa
EcuRed.(Junio de 2011). EcuRed. Recuperado el 11 de Febrero de 2014, Obtenido de http://www.ecured.cu/index.php/Diagrama_de_estado Gutierrez, D. (Mayo de 2011). Univercidad De Los Andes. Recuperado el 11 de Febrero de 2014, de http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r33019.PDF recorridouml. (6 de Mayo de 2012). Aprende UML. Recuperado el 11 de 2014 de 2, de http://recorridouml.blogspot.mx/2012/05/diagramas-de-estado.html S.S, M. (8 de Diciembre de 2010). UML. Recuperado el 11 de Febrero de 2014, de http://markblogs-markmendoza.blogspot.mx/2010/12/diagramas-de-estado.html

Modelado y anlisis de Requerimientos de software

10