Escolar Documentos
Profissional Documentos
Cultura Documentos
Diagrama de Estados
Definio
uma representao que visa fornecer uma definio formal do comportamento de um objeto. Ele permite descrever os eventos e transies de estados aos quais ele est sujeito. Como se comporta? Quais os estados do objeto? Quais transies existem? Que eventos acontecem?
Definio
Os diagramas de estado capturam o ciclo de vida de um objeto em funo: Dos estados que esse objeto pode assumir Dos eventos que provocam essas mudanas Das aes que so tomadas a partir desses eventos.
Definio
Os diagramas de estado capturam o ciclo de vida de um objeto em funo: Dos estados que esse objeto pode assumir Dos eventos que provocam essas mudanas Das aes que so tomadas a partir desses eventos.
Os diagramas de Estado no so escritos para todas as classes de um sistema: Apenas para aquelas que possuem um nmero definido de estados conhecidos; Onde o comportamento das classes afetado e modificado por eventos.
5
Definio
Podem ser utilizados tanto durante a fase de anlise quanto durante a fase de projeto.
Modelagem Dinmica
Prottipo da Interface
Modelo Conceitual
Modelo de Classes
Modelagem Esttica 6
Elementos
Descrio
Smbolo
Estado: representado por um retngulo com os cantos arredondados com o nome do estado no seu interior. Transio: representa uma mudana de estado. Deve estar sempre associada a um evento. Evento: sempre aparece associado a uma transio indicando o evento que provoca a mudana de estado. Pode vir acompanhado de uma expresso de guarda e/ou uma ao.
Elementos
Descrio
Smbolo
Escolha: permite definir vrios estados alvo a partir de um mesmo evento. O evento deve estar associado ao segmento de entrada, enquanto as condies devem estar associadas aos segmentos de sada. Pode ser representador por um crculo (UML 1.4) ou por um losango (UML 2.0).
Juno: o ponto comum de juno de vrios estados para um mesmo estado alvo. Estado inicial: denota o estado em que um objeto criado. Deve existir apenas um estado inicial. Estado final: indica o estado final de um objeto. Pode existir mais de um estado final.
8
Representao
Onde: nome-do-evento: obrigatrio. lista-de-parametros: opcional. condio-de-guarda: expresso que define se o evento ser ou no aceito. expresso-ao: uma ou mais aes separadas por vrgula que so disparadas quando o evento aceito.
9
Representao
10
Representao
11
Estado 1
Estado 2
Exemplo:
Aguardando confirmao
after(3 dias)
Cancelado
12
Exemplo:
when(prazo pagamento > 10 dias) Pendente Em Anlise
13
14
15
16
Exerccio 1
Criar um diagrama de estado para representar o ciclo de vida de um vdeo em uma Vdeo Locadora.
17
Exerccio 1
Criar um diagrama de estado para representar o ciclo de vida de um vdeo em uma Vdeo Locadora.
1. 2. 3. 4. Qual a classe a ser modelada? Quais so os estados relevantes para a classe? Quais so os eventos relevantes? Para cada estado: quais so as transies possveis quando um evento ocorre?
18
Exerccio 1
Exemplo Diagrama de Estado da Fita de uma Locadora [Falbo, 2003]
Cancelar Reserva ( automaticamente ou no )[ existeReserva [ no existeReservaPendente Pendente do ttulo ] [ existeReservaPendente do ttulo ] do ttulo ] Cancelar Reserva( automaticamente ou no ) [ no existeReservaPendente do ttulo ] Disponvel Reservada Efetuar Devoluo [ noEfetuar Devolucao existeReservaPendente [ existeReservaPendente do ttulo ] do ttulo ] Efetuar Locao Locada Efetuar Locao
19
Exerccio 2
Criar um diagrama de estado para representar a requisio no seguinte processo:
Em uma empresa, quando um gerente deseja conceder um aumento salarial ou uma promoo de cargo a um empregado, ele abre uma requisio no RH. Inicialmente o setor de anlise de pessoal verifica se a requisio somente para aumento salarial, somente para promoo ou ambos. Caso a requisio seja somente de aumento salarial (sem mudana de cargo), a requisio enviada para o setor de anlise financeira que verificar se o departamento ao qual pertence o empregado suporta o aumento requerido. (Continua...)
20
Exerccio 2
Criar um diagrama de estado para representar a requisio no seguinte processo:
Caso a requisio seja de promoo de cargo (com ou sem aumento salarial), ela analisada pelo prprio setor de anlise de pessoal para verificar se a mesma se encontra dentro das regras de promoo. Caso esteja, ela enviada para o setor de anlise financeira para anlise da viabilidade financeira. Caso contrrio, ela enviada para o Gerente de RH que poder aprov-la mesmo fora das regras de promoo. Nesse caso ela tambm enviada para o setor de anlise financeira. Caso a requisio seja aprovada ou reprovada, o gerente solicitante toma cincia por email.
21
Bibliografia
Booch, G. et al. UML, guia do usurio Campus, 2000. Falbo, R. Modelagem de Objetos usando UML. MiniCurso XVII SBES, Manaus, 2003. Bezerra, E. Princpios de Anlise e Projeto de Sistemas com UML Editora Campus, 2002. Pender, T., A Bblia UML, Editora Elsevier, 2005.
22
Obrigado! Perguntas?
23