Sei sulla pagina 1di 10

CENTRO INDUSTRIAL Y DESARROLLO

EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
1
CONCEPTOS BSICOS 01.
Un diagrama de estados muestra la secuencia de estados que un objeto una
interaccin pueden atravesar durante su existencia en respuesta a eventos
externos o internos que provocan los cambios de un estado a otro.
Un diagrama de estados es til slo para los objetos con un comportamiento
Significativo. El resto de objetos se puede considerar que tienen un nico
Estado.
Un diagrama de estados completa la definicin de los casos de uso y sirven de
base para el diseo de la interfaz de usuario. Los diagramas de estados y los
diagramas de interaccin son complementarios.
Un ejemplo de un diagrama de estados podra ser:
En un diagrama de estados el objeto analizado siempre posee un estado en un
momento determinado, caracterizado por los valores de los atributos y los
enlaces del objeto. El estado en el que se encuentra un objeto determina su
comportamiento valido.
Un diagrama de estados es un grafo dirigido y deterministico que permite
expresar concurrencia, sincronizacin (Si la comunicacin es sncrona el objeto
debe esperar la respuesta)y jerarquas de objetos. Los estados inicial y final
estn diferenciados de los dems.
Los elementos que conforman un diagrama de estados son:

Estados
Un estado se representa mediante de un rectngulo con las esquinas
redondeadas. Puede tener de forma opcional uno o ms secciones, tales
como el nombre y las transiciones internas.
En la seccin nombre se coloca el nombre del estado. Mientras que en la
seccin transiciones internas se coloca una lista de acciones realizadas
mientras el objeto estn en un estado segn el siguiente formato:
evento argumentos / accin
Cada nombre de evento puede aparecer ms de una vez en un nico
estado. Las acciones pueden utilizar los atributos y enlaces del objeto al
que pertenecen o los parmetros de transiciones de entrada. Las siguientes
acciones utilizan palabras reservadas:
entrar: ocurre a la entrada del estado

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
2

salir: ocurren a la salida del estado


hacer: ocurren mientras est en el estado

Existen dos (2) estados especiales y que se distinguen del resto:


El estado inicial y el estado final. El primero ocurren cuando se crea un
objeto y el segundo ocurre cuando este desaparece. Se ilustran mediante un
punto negro y un punto negro con un circulo externo respectivamente.

Subestados
Adems de los compartimentos de nombre y transiciones internas, cada
estado puede tener un compartimiento con un diagrama anidado.
Un estado se puede refinar ya sea mediante subestados concurrentes, a
travs de relaciones AND mediante subestados mutuamente excluyentes,
utilizando la relacin OR.
La expansin de un estado en subestados concurrentes se indica a travs
de un grfico dividido en subregiones horizontales con lneas discontinuas.
Cada una de estas subregiones horizontales puede tener un nombre
opcional y debe contener un diagrama de estados anidado, con estados
disjuntos.
La expansin de un estado en subestados sirve para determinar su
estructura en detalle.
En dichos ilustraciones, los estados iniciales y finales se consideran
Pseudoestados, es decir, son un artificio notacional, no un elemento
Significativo.

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
3

Eventos
Un evento es un suceso notable. Una situacin que puede disparar una
transicin.
Los eventos pueden ser de distintos tipos, no necesariamente excluyentes:
Seal recibida de forma explcita
Llamada a una operacin desde otro objeto.
Condicin que se verifica
Transcurso de un perodo de tiempo
Los eventos de seales ocurren cuando se recibe una seal explicita desde
otro objeto. Los eventos de llamada ocurren se recibe una llamada de
operacin por parte de otro objeto. Las seales y las llamadas se denotan
por el nombre del disparador de la transicin.
Las seales y las llamadas se definen a travs del siguiente formato:
evento ( [parametro: tipoDatos] )
Los eventos de condiciones ocurren si una condicin dada ha sido
verificada, normalmente descrita a travs de una expresin lgica. Estos
eventos se denotan como condiciones de guarda en las transiciones, y no
se les da nombre.
Un evento de condicin se representa a travs de una condicin sin evento,
utilizando por ejemplo:
when( pH>7.0 )
Los eventos de tiempo ocurren por el transcurrir de un cierto tiempo luego
de que un evento ocurre o por la ocurrencia de una determinada fecha u
hora.

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
4
Un evento por transcurso de tiempo es una expresin que evala dicho
intervalo. Por defecto indica el tiempo transcurrido en el estado en curso,
por ejemplo:
after( 5 segundos )
Otros eventos temporales podran ser especificados como condiciones,
como por ejemplo:
when( fecha=1/01/2000 )

Transiciones
Hay dos (2) tipos de transiciones:
a.

Transiciones simples
Una transicin simple es una relacin entre dos estados, indicando
que un objeto del primer estado entrar en el segundo estado y
realizar ciertas operaciones cuando ocurra un evento dado si
determinadas condiciones
se cumplen.
El disparador de la transicin es la ocurrencia del evento que est
etiquetando la transicin.
El evento podra tener parmetros, que se utilizarn en:
- Las acciones especificadas en la transicin
- Las acciones iniciadas en el siguiente estado
Los eventos se procesan de forma exclusiva en cada momento, nunca
concurrentemente.
Si un evento no disparara ninguna transicin, simplemente se ignora.
Las transiciones se representan por una flecha slida que va de un
estado a otro, etiquetada por un string de transicin con el siguiente
formato:
Evento ( [parametros] ) [condicin guarda] / accin
La condicin de guarda es una expresin lgica en trminos de los
parmetros del evento disparado, atributos y enlaces del objeto al que
pertenece la mquina de estados.

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
5

La accin es una expresin que se ejecuta cuando la transicin se


dispara. La accin es un operador atmico pero una transicin puede
contener varias clusulas de accin. Por ejemplo:
right-mouse-down ( localizacin ) [ localizacin en la ventana ] /
objecto:=objecto_pulsado( localizacin ) ; objecto.seleccionado ( )
b.

Transiciones complejas
Una transicin es compleja cuando posee mltiples estados fuente y
mltiples estados destino. Sirve para representar una sincronizacin
de hilos concurrentes a travs de ramas AND/OR.

Acciones
Podemos especificar la ejecucin de una accin como consecuencia de la
transicin. Por ejemplo:

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
6
Tambin podemos especificar el envo de un evento a otro objeto como
consecuencia de la transicin:

Las acciones se escriben en trminos de operaciones, atributos, y


enlaces del objeto al que pertenecen, y parmetros del evento disparado.
Puede tener como receptor el mismo u otro objeto:
[ destino. ] evento_destino ( argumento... )
right-mouse-down ( localizacin ) [ localizacin en la ventana ] /
objecto:=objecto_pulsado( localizacin ) ; objecto.seleccionado ( )
Las acciones internas sirven para especificar el hacer una operacin como
consecuencia de entrar, salir o estar en un estado:

Se puede especificar una accin cuando ocurre en dicho estado un evento


que no obliga a salir del estado:

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
7

EJERCICIO PRACTICO 01.


Responda las siguientes preguntas marcando una X donde considere
correcto.
La transicin entre estados de un objeto se debe a la ocurrencia de:
Un cambio en un atributo del objeto
La activacin de comportamiento del objeto
Un evento
Un cambio en la relacin con otros objetos
El elemento ms importante en un diagrama de estados es el objeto.
Falso
Verdadero

EJERCICIO PRACTICO 02.


El alcohol tiene efectos lamentables en una persona. Inicialmente, una persona
est sobria. Pero si bebe una copa, su nimo cambia; dice que est ``alegre''.
Si a una persona en esta situacin se le da una mala noticia, vuelve a estar
repentinamente sobria.
Sin embargo, si una persona ``alegre'' bebe otra copa, pasa a estar borracha.
En este caso, le da lo mismo que se le d una mala noticia; por su falta de
juicio, no hace caso y permanece borracha. Hay una forma de hacerla retornar
a la sobriedad, y es arrojarle un cubo de agua a la cara. Tambin funciona lo
que se conoce como ``dormir la mona''.
Si una persona borracha bebe otra copa ms, inmediatamente vomita y pasa a
un estado ``lamentable''. De ah slo puede volver a la sobriedad durmiendo la

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
8
mona. Eso s, si en ese momento se inocula una droga de diseo, el efecto
ser tan violento que la conducir a la muerte.
Modelar este comportamiento de las personas mediante un diagrama de
estados.
EJERCICIO PRACTICO 03.
Se desea representar el comportamiento del proceso de validacin de un
cajero automtico.
Inicialmente el cursor se encuentra situado sobre el cuadro de texto del campo
nombre de usuario.
El usuario introduce su nombre de usuario indicando cualquier carcter
(excepto el tabulador). Si el usuario pulsa el tabulador o sita el cursor en el
cuadro de texto de la contrasea, el sistema pasa a recoger la informacin
sobre la contrasea de forma que ante cualquier carcter que introduce el
usuario (excepto tabulador, en cuyo caso el foco de control pasa al cuadro de
texto del nombre del usuario) se muestra por pantalla un asterisco.
Cuando el usuario pulsa el botn enviar se realiza la validacin en el cajero
considerando la informacin introducida en los cuadros de texto login y
password de forma que si la validacin es positiva se enva un evento para que
comience la aplicacin principal y el sistema de validacin
Finaliza su trabajo. S la validacin es negativa se muestra por pantalla un
mensaje de validacin incorrecta y el nmero de intentos que quedan. Cuando
se llega a los tres intentos el cajero muestra un mensaje y alcanza su estado
final. Cuando la validacin es incorrecta el usuario puede o bien reintentar, en
Cuyo caso se limpian los cuadros de texto y se vuelve a iniciar el proceso, o
cancelar en cuyo caso se llega al estado final.
EJERCICIO PRACTICO 04.
Disear el diagrama de estados correspondiente a un sistema de reservas de
un restaurante.
Los clientes pueden llamar por telfono para hacer una reserva. Si el cliente
llega al restaurante veinte minutos despus de la hora de la reserva de la
mesa, el sistema se encarga automticamente de dejar libre dicha mesa. En el
caso de llegar a tiempo, bastar con indicar el nmero de la reserva y se les
sentar en el lugar que les corresponde.
Por tanto, cada una de las mesas del restaurante podr estar en uno de los
siguientes estados:
- Libre: Si no existe ninguna reserva sobre la mesa
- Reservada: Si hay una reserva hecha
- Ocupada: Si los comensales se encuentran en la mesa

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
9
- Pidiendo: Si el camarero se encuentra anotando el pedido de la mesa
- En espera de comida: Cuando los clientes esperan a que se les sirva
- Servidos: Los clientes tienen la comida en la mesa
- Esperando cuenta: Los clientes han pedido la cuenta
- Pagando: Los clientes tienen la cuenta en la mesa
EJERCICIO PRACTICO 05.
Construya un diagrama de estados que represente el estado de una multa de
trfico (impuesta, comunicada, recurrida, anulada, confirmada, cobrada, en
embargo), teniendo en cuenta lo siguiente:

Cuando se crea una multa, automticamente se enva una notificacin


al conductor.
Si correos devuelve firmado el acuse de recibo o certifica que el
conductor ha rechazado la notificacin la multa pasa a notificada.
A los 30 das sin recurrir pasa automticamente a confirmada. Si llega
antes un recurso pasa a recurrida hasta que la autoridad competente
decide confirmar o anular la sancin salvo que transcurran 6 meses sin
decisin y en ese caso pasa tambin a anulada.
Si la multa est confirmada y transcurren 6 meses se inicia
automticamente el procedimiento de embargo con comunicacin
simultnea al interesado.
En cualquier momento apropiado la multa se puede pagar y pasa al
estado cobrado.

EJERCICIO PRACTICO 06.


Construya un diagrama de estados que represente el estado de una factura
que emite un sistema para su cobro. La factura se crea e inicialmente tiene un
estado emitida. Cuando llega un aviso del banco con el ingreso
correspondiente se pasa a cobrada y se enva un mensaje al sistema
contable con el importe cobrado.
Si pasan 45 das naturales sin ser cobrada la factura es reclamada
automticamente (se emite un duplicado y se enva al deudor). En caso de
transcurrir otros 90 das, si el importe es mayor o igual
a 3000 euros es reclamada en el juzgado y si el importe es menor se enva a
una agencia especializada de reclamaciones que cobra una comisin del 10 %.
Como resultado de los trmites en el juzgado o en la agencia y segn el
resultado, la factura se cobra (y se enva el mensaje correspondiente) o se
declara incobrable.

CENTRO INDUSTRIAL Y DESARROLLO


EMPRESARIAL SOACHA
2015
Tecnologo Analisis y Desarrollo de Sistemas
Instructora:
de Informacion
Claudia Patricia
Material de Apoyo
Ramrez Triana
10
Si se produce una reclamacin del cliente, la factura queda suspendida hasta
que se resuelva el caso: si el cliente tiene razn la factura se anula pero en
caso contrario pasa directamente al estado reclamado automticamente (se
emite un duplicado y se enva al deudor).
A los 5 aos de pagada, anulada o ser declarada incobrable, la factura es
destruida.

Potrebbero piacerti anche