Escolar Documentos
Profissional Documentos
Cultura Documentos
Bibliografia
Rumbaugh, J.; Jacobson, I.; Booch, G., The Unified Modeling Language Reference Manual, Addison Wesley, 2nd edition, 2004.
Booch, G.; Rumbaugh, J.; Jacobson, I., "Unified Modeling Language User Guide", 2nd Edition, Addison Wesley, 2005.
Eriksson, H-E, Penker, M. Lyons, B., Fado, D. UML 2 Toolkit, Wiley, 2004
Atividade
Atividade um grafo de nodos e fluxos que mostra o fluxo de controle (e, opcionalmente, dados) atravs dos passos de uma computao. Atividades so mostradas em diagramas de atividade.
Diagrama de atividade
Indica fluxo de controle de atividade em atividade. Diagramas de interao mostram fluxo de controle de objeto a objeto diagramas de atividade enfatizam o fluxo de controle de atividade para atividade.
Transio
Quando uma atividade termina, o fluxo de controle passa imediatamente para a atividade seguinte. A execuo comea no estado de partida e termina quando o controle atinge o estado final.
Faz pedido Avalia estoque
Pode ser considerado um caso especial de diagramas de estado onde os estados so estados de atividade e as transies so disparadas pelo trmino de uma atividade.
Desvio
Indica execuo concorrente de atividades. Barras de sincronizao so utilizadas para indicar a separao e a juno de fluxos de controle.
Faz pedido
10
UML: modelagem dinmica > Atividade > Diagrama de atividades > Separao/juno de fluxo de controle
Recebe pedidos
Raias
Raias podem ser usadas para indicar entidades responsveis pela execuo de atividades.
Analisa p edido s
Providencia transao
11
12
UML: modelagem dinmica > Atividade > Diagrama de atividades > Raias
Fluxo de objetos
Pesquisa Desenv olv imento de produtos Marketing Vendas Manufatura
<<Process>> Concepo
um tipo de fluxo de controle que representa o relacionamento entre o objeto e a atividade ou transio que o criou.
Furao
13
14
UML: modelagem dinmica > Atividade > Diagrama de atividades > Diretrizes
Diretrizes
d-lhe um nome que comunique seu propsito; comece modelando o fluxo primrio. Enderece concorrncia, desvios e fluxo de objetos como considerao secundria, talvez at em diagramas separados;
foca na comunicao de aspectos dinmicos do sistema; contm somente os elementos essenciais para o entendimento desses aspectos;
prov detalhes consistentes com o nvel de abstrao (usa somente os adornos necessrios);
busque minimizar cruzamento de linhas; use notas e cores para chamar ateno para caractersticas importantes do diagrama.
15
16
Eventos
Em um sistema esttico nada acontece. Em um sistema dinmico as coisas acontecem e influenciam o comportamento de outras coisas.
Por exemplo, quando o usurio aciona um comando ou quando um sensor sinaliza um situao importante (coliso de um carro).
Coisas acontecem disparadas por eventos internos ou externos. ou seja, eventos so usados para modelar essas coisas que acontecem.
Eventos internos so aqueles passados entre objetos que vivem dentro de um sistema.
Um evento a especificao de uma ocorrncia significante que tem uma localizao no tempo e no espao.
17
18
Disparadores
Disparador (trigger) a especificao de um evento cuja ocorrncia causa a execuo de um comportamento, como por exemplo, tornar uma transio habilidade a disparar (fire).
A palavra pode ser usada como um nome (como o evento) ou um verbo (para a ocorrncia do evento).
19
20
Sinal
Um sinal um classificador explicitamente nomeado como Sinal, usado para comunicao explcita entre objetos.
Um sinal um tipo de evento que representa a especificao de um estmulo assncrono comunicado entre objetos.
Um sinal tem uma lista de parmetros, expressos como atributos. Um sinal explicitamente enviado por um objeto a outro objeto ou a um conjunto de objetos.
Uma ao assncrona uma requisio na qual o objeto remetente no pra para esperar pelos resultados (ao contrrio da ao sncrona)
O envio de um sinal a um conjunto de objetos pode ser considerado como broadcasting (radio ou tele-difuso).
21
22
Enviar um sinal significa instanciar um objeto sinal e transmit-lo ao conjunto de objetos alvo.
Um sinal filho herda os parmetros do sinal pai e pode criar parmetros adicionais.
Um sinal filho satisfaz um disparador que requeira um de seus ancestrais (polimorfismo de eventos).
Um sinal enviado a um conjunto de objetos pode disparar uma ou nenhuma transio em cada objeto receptor independentemente.
23
24
Um sinal pode ser representado num diagrama de classes como uma classe estereotipada e pode-se indicar a classe ou operao que o gera.
25
26
Exemplo:
Para usar um sinal como um disparador de uma transio, usa-se a sintax: nome-do-sinal (lista de parmetros),
cd diagrama-classe Agente de mov imento + posio: int velocidade: int move Para() : void
Exemplo: diagrama de estado mostrando um evento disparando uma transio e executando uma ao
27
28
Evento de Chamada
o evento de recebimento de uma chamada de uma operao por um objeto alvo. Pode ser implementada por um mtodo da classe que define o objeto alvo or por aes indicadas em transies de mquinas de estado finitos.
Em geral, se um objeto invoca uma operao de outro objeto que no tem um disparador associado operao, seu efeito a imediata execuo da
operao requisitada.
Se houver um disparador associado chamada, a chamada tratada como a ocorrncia de um evento pela mquina de estados associada ao objeto.
29 30
Exemplo: diagrama de estados mostrando transio disparada por evento de tempo e de mudana.
Mquina de estados
A UML define dois tipos de mquinas de estados:
Mquina de estados comportamental.
Capturam o ciclo de vida de objetos, sistemas e subsistemas.
sm diagrama-estado Evento de mudana When (11:30PM) /auto Teste evento de tempo Disponv el after (2 seconds) /cai Conexo Ativ o
31
32
Estados e transio
Um objeto passa por uma srie de estados em seu tempo de vida. Um estado pode ser considerado uma condio durante a vida de um objeto durante a qual ele satisfaz alguma condio, executa uma do activityou espera por algum evento.
Um objeto muda de um estado para outro quando alguma coisa, um evento, acontece.
Exemplos de evento: uma conta paga, uma ao aumenta de valor, um raio cai em um tranformador, etc.
33
34
Um estado uma condio ou situao relevante durante a vida de um objeto durante a qual ele satisfaz algumas condies, executa algumas atividades ou espera por eventos.
Como mostrado no exemplo, so dois estados especiais que indicam, respectivamente: o ponto de partida de uma mquina de estado ou subestado. que a execuo da mquina de estado ou estado envolvente terminou.
sm Estados iniciais e finais Estado A Initial Estado B
Avalia
Final
35
36
UML: modelagem dinmica > Mquinas de estados > Estados e transies > Transies
Transies
Uma transio um relacionamento entre dois estados indicando que o objeto no primeiro estado vai executar certas aes e entrar no segundo estado quando um evento especificado ocorrer e uma condio de guarda for satisfeita.
Ocorrendo a mudana de estados diz-se que a transio disparou.
Sintaxe de uma transio de estados: Assinatura de evento [condio de guarda ] / expresso de ao ^ clusula de envio Onde a assinatura de evento indica o nome do evento e eventuais parmetros e a clusula de envio indica o destinatrio de possveis eventos gerados com ao.
Um evento disparador pode ser um dos quatro tipos de eventos mostrados anteriormente.
No caso de sinais ou chamadas, podem conter parmetros.
37
38
UML: modelagem dinmica > Mquinas de estados > Estados e transies > Transies
UML: modelagem dinmica > Mquinas de estados > Estados e transies > Transies
39
40
10
Uma mquina de estados mostra como um objeto reage a eventos e como ele muda seu estado interno. Exemplo: controle de um elevador.
sm Statecharts Primeiro andar Initial Chegou Chegou Descendo Sobe Chegou Desce Aguardando Sobe Subindo
Uma mquina de estados a especificao da seqencia de estados que um objeto atravessa em resposta a eventos durante sua vida, junto com suas aes como respostas. Uma mquina de estados associada a classes, colaboraes ou mtodos fontes e especifica o comportamento das instncias do elemento fonte.
T empo esgotado
41
42
Diagramas de estados mostram mquina de estados. Objetos tm um tempo de vida nascem quando so criados e deixam de existir quando so destrudos. Durante seu tempo de vida, objetos que somente recebem ou enviam mensagem de maneira sncrona e cujo comportamento no depende de seu passado, no necessitam de uma mquina de estados para descrever seu comportamento.
43
44
11
Exemplo
Pedido recebido do cliente Pedido criado Pedido sucedido Colocado no mercado Pedido casado/ marcar como concludo Fim de dia til Pedido colocado no mercado / Criar propriedade de t tulo
Pedido cancelado / colocar como cancelado Colocado de volta no mercado para prximo dia Aceito como fracasso / marcar com o cancelado Pedido fracassado
Pedido cancelado
45
46
UML: modelagem dinmica > Mquinas de estados > Estados e transies avanados
UML: modelagem dinmica > Mquinas de estados > Estados e transies avanados
Aes de entrada e de sada: so usadas para se disparar as mesmas aes independente de onde se veio ou para onde se vai.
Notao (dentro do estado): entry / ao ou exit / ao
Transies internas: so usadas para se responder a eventos sem sair do estado. Diferente de uma auto transio, a transio interna no causa a execuo das aes de entrada ou de sada do estado.
Notao: evento / ao
47
48
12
UML: modelagem dinmica > Mquinas de estados > Estados e transies avanados
Diagrama de Interao
Atividades: usado para indicar uma atividade a ser realizada quando o objeto est naquele estado.
Notao: do / mquina de estados ou do / ao 1; ao 2; ao 3
Estados adiados: usado quando um estado no prev transio para um evento e deseja-se manter este evento (adiado) at que se atinja um estado onde aquele evento no seja adiado.
Notao: evento / defer
49
50
13