Buscar

Diagrama de Interação

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

1 
UML Comportamental - 
Diagramas de Interação 
Franklin Ramalho 
Universidade Federal de Campina Grande - 
UFCG 
 SI2- UFCG 
2 
Agenda 
• Contexto e motivação 
• Diagramas de Seqüência 
• Diagramas de comunicação 
• Diagramas de overview de Interação 
• Diagramas de Tempo 
 
 
• Meta-modelo 
• Sintaxe concreta 
• Exemplos 
• Exercícios 
 SI2- UFCG 
3 
Contexto e Motivação 
• Objetos precisam interagir 
 
• Sociedade de objetos 
– Objetivo comum 
 
• Mensagens têm um papel importante neste sentido 
– Chamadas às operações 
– Envio de sinais 
 
 
 SI2- UFCG 
4 
Diagramas de Interação 
• Um diagrama de interação especifica 
interações entre objetos, permitindo que se 
comuniquem uns com os outros 
 SI2- UFCG 
5 
Diagramas de Interação 
• Uma interação é um comportamento que envolve um 
conjunto de mensagens entre um conjunto de objetos 
dentro de um contexto 
 
 
• Uma mensagem é uma especificação de uma comunicação 
entre objetos que transportam informações 
 SI2- UFCG 
6 
Diagramas de Interação 
• Diagramas de interação podem ser usados para modelar o 
fluxo de controle dentro de: 
– Uma operação 
– Uma classe 
– Um componente 
– Um caso de uso 
– Um sistema como um todo 
 
• Diferentes ênfases podem ser dadas 
2 
 SI2- UFCG 
7 
Diagramas de Interação 
• Tipos de diagramas de interação 
 
– Diagrama de Seqüência 
 
 
– Diagrama de comunicação 
 
 
– Diagrama de overview de Interação 
 
 
– Diagrama de tempo 
 SI2- UFCG 
8 
Diagrama de Seqüência 
• Diagrama de interação mais comum 
 
• Focado na troca de mensagens entre vários objetos, dando 
ênfase à ordenação temporal destas 
– Seqüência de mensagens trocadas 
– Enfatiza a ordem (tempo) em que ocorre a troca de mensagens 
 
• Graficamente: 
– Eixo x: objetos organizados em linhas de vida 
– Eixo y: ordem em que mensagens são trocadas ao longo do tempo 
 
 SI2- UFCG 
9 
Sintaxe 
Diagrama de 
sequencia 
Linha de vida de 
um objeto 
Foco de controle ou ativação - 
execução de uma computação 
 SI2- UFCG 
10 
Diagrama de Seqüência 
• Útil também na validação de diagramas de classes 
 
• Atores (mesmos de casos de uso) podem aparecer nestes 
diagramas 
 
• Troca de mensagens pode ocorrer entre: 
– Dois objetos (mais comum) 
– Um ator e um objeto 
– Um objeto e um ator 
– Dois atores 
– Um único objeto (auto chamada) 
 SI2- UFCG 
11 
Diagrama de Seqüência 
• Diagrama de seqüência pode ser quebrado em pedaços 
chamados fragmentos (ou fragmentos combinados) 
 
• Novidade em UML 2.0! 
 
• Noções abstratas de unidades de interação 
– Diversas naturezas 
 
• É uma parte de uma interação, embora seja considerado 
como uma interação independente 
 SI2- UFCG 
12 
Diagrama de Seqüência 
• Fragmentos contêm um operador – rótulo no canto 
esquerdo de um retângulo contendo o fragmento, que 
indica o tipo de controle do fragmento 
 
• Fragmentos contêm operandos 
– Separados por linhas tracejadas 
 
• Fragmentos combinados podem conter outros fragmentos 
3 
 SI2- UFCG 
13 
Diagrama de Seqüência 
• Operadores de fragmentos combinados: 
 
– Alternative (alt) – representa uma escolha entre dois ou mais 
comportamentos, onde, no máximo, um dos operandos irá executar 
• Dois ou mais comportamentos alternativos, onde apenas um será 
escolhido 
• [else] pode ocorrer para garantir que pelo menos um comportamento 
será executado 
 
– Option (opt) – representa uma escolha que indica se o 
comportamento será ou não executado 
• Apenas um comportamento opcional 
• Depende da condição ser satisfeita ou não 
 
– Parallel (par) – representa uma execução paralela de dois ou mais 
comportamentos 
 SI2- UFCG 
14 
Diagrama de Seqüência 
• Operadores de fragmentos combinados : 
 
– Critical region (critical) - operações contidas neste fragmento não 
podem ser interrompidas por outros eventos até que sejam 
completamente concluídas 
 
– Loop – representa um laço. O operando será repetido n vezes 
 
– Break – Indica uma quebra na execução normal do fluxo. É usado 
principalmente para modelar o tratamento de exceções. 
• Pode possuir uma condição que deve ser satisfeita para que o break 
seja executado 
 
 SI2- UFCG 
15 
Diagrama de Seqüência 
• Operadores de fragmentos combinados : 
 
– Negative (neg) – representa traces que não são válidos, ou seja, 
eventos que não devem ocorrer 
 
– Assertion (assert) – representa uma assertion das únicas seqüências 
válidas. É oposto ao operador neg 
 
– Ignore/consider – especifica quais mensagens devem ser ignoradas 
e consideradas, respectivamente, dentro de um fragmento 
 
 
 SI2- UFCG 
16 
Diagrama de Seqüência 
• Ocorrência de Interação 
 
– Diagrama de seqüência detalhado em um outro fragmento 
 
– Representa ocorrência de interação em um outro fragmento 
 
– Também chamado de referência (Reference) ou (ref) 
 
 SI2- UFCG 
17 
Sintaxe 
Ocorrência de uma interação 
detalhada em outro 
fragmento 
Representa uma escolha 
onde, no máximo, um dos 
operandos irá executar 
Linha de vida encerrada 
 SI2- UFCG 
18 
Sintaxe 
Mensagens que 
definem uma 
comunicação que 
ocorre entre linhas de 
vida de uma 
interação 
Valor de retorno 
(pouco usual) 
4 
 SI2- UFCG 
19 
Sintaxe 
Fragmento 
paralelo 
Fragmento crítico 
Diagrama de 
seqüência 
 SI2- UFCG 
20 
Diagrama de Seqüência 
Fragmento 
alternativo 
 SI2- UFCG 
21 
Diagrama de Seqüência 
Fragmento laço 
 SI2- UFCG 
22 
Diagrama de Seqüência 
 SI2- UFCG 
23 
Diagrama de Seqüência 
• Continuações – conexão entre fragmentos 
alternativos e ocorrências de interação 
 SI2- UFCG 
24 
Sintaxe - continuação 
5 
 SI2- UFCG 
25 
Sintaxe - continuação 
 SI2- UFCG 
26 
Diagrama de Seqüência 
 SI2- UFCG 
27 
Diagrama de Seqüência 
 SI2- UFCG 
28 
Diagrama de Comunicação 
• Enfatiza a organização estrutural dos objetos que enviam e 
recebem mensagens 
 
• Coleção de vértices e arcos 
– Objetos e links 
 
• Interação entre objetos é explicita 
 
• Mensagens têm um número de seqüência explícito 
– Numeração decimal pode indicar aninhamento 
 SI2- UFCG 
29 
Diagrama de Comunicação 
• Antigo diagrama de colaboração (UML 1.5) 
 
 SI2- UFCG 
30 
Diagrama de Comunicação 
6 
 SI2- UFCG 
31 
Diagrama de Comunicação 
• Ao contrário dos diagramas de seqüência, os 
diagramas de comunicação: 
– Não mostram a linha de vida do objeto 
• Mas, podem usar create() e destroy() 
 
– Não mostra o foco de controle explicitamente 
• Mas, podem usar o número de seqüência de cada 
mensagem que possa indicar aninhamento 
 
– Não provê suporte para fragmentos combinados 
• Mas, expressões podemser usadas para indicar alguns 
operadores 
 SI2- UFCG 
32 
Diagrama de overview de interação 
• Também chamado de Diagrama de Interação Geral 
 
• Tipo específico (variante) de diagrama de atividades 
– Nós são interações ou ocorrências de interação 
 
• Oferece uma visão geral do controle do fluxo 
 
• Um dos novos diagramas UML 2.0 
 SI2- UFCG 
33 
Diagrama de overview de interação 
 SI2- UFCG 
34 
Diagrama de overview de interação 
 SI2- UFCG 
35 
Diagrama de tempo 
• Ilustra mudanças de estado em linhas de vida ao longo 
de unidades de tempo (eixo x) 
 
• Útil para sistemas de tempo real ou para aplicações 
Mulímídia/hipermídia 
 
• Um dos novos diagramas UML 2.0 
 SI2- UFCG 
36 
Diagrama de tempo 
7 
 SI2- UFCG 
37 
Mais exemplos 
 SI2- UFCG 
38 
Mais exemplos 
 SI2- UFCG 
39 
Mais exemplos 
Poderia chamar um método 
para tratar uma exceção aqui 
em um objeto do tipo da 
exceção 
 SI2- UFCG 
40 
Mais exemplos 
 SI2- UFCG 
41 
Mais exemplos 
 SI2- UFCG 
42 
UML 2.0 Superstructure 
• Dividido em 3 pacotes de alto nível: 
– Structure 
 
 
– Behavior 
 
 
– Supplement 
 
 
 
• Sub-dividida em outros sub-pacotes 
Diagramas 
estruturais 
Diagramas 
comportamentais 
Conceitos 
adicionais 
8 
 SI2- UFCG 
43 
UML 2.0 Superstructure – Part II Behavior 
Conceitos comuns necessários 
aos aspectos dinâmicos 
Conceitos relativos aos diagramas 
de interação 
 SI2- UFCG 
44 
Interactions metamodel 
 SI2- UFCG 
45 
Interactions metamodel 
 SI2- UFCG 
46 
Interactions metamodel 
 SI2- UFCG 
47 
Interactions metamodel 
 SI2- UFCG 
48 
Interactions metamodel 
9 
 SI2- UFCG 
49 
Exercícios 
• Construa um diagrama de seqüência para especificar a 
operação de fechar uma conta corrente, onde tem-se os 
seguintes objetos: Cliente, banco e conta. Basicamente, o 
cliente solicita o encerramento da conta bancária, 
informando sua conta e senha. O banco verifica se tal conta 
e senha são válidos. Caso não sejam, o banco permite mais 
duas chances para o cliente especificá-las (no máximo três 
chances). Caso sejam, deve-se verificar o saldo. Em caso de 
saldo positivo, o banco saca o dinheiro para o cliente e 
fecha a conta. Em caso de saldo negativo, o banco solicita 
pagamento do débito ao cliente, que deve fazê-lo para que 
a conta seja fechada. Incremente esta especificação e faça 
uso de fragmentos combinados. 
 SI2- UFCG 
50 
Exercícios 
• Especifique um diagrama de seqüência e um diagrama de 
tempo que contemple toda a interação que ocorre durante a 
matrícula dos alunos do curso de CC na UFCG. 
 
• Transforme os diagramas de seqüência anteriores em 
diagramas de comunicação. 
 
• Substitua os diagramas de atividades feitos anteriormente 
(ver aula sobre diag. de ativ.) por diagramas de overview de 
ínteração 
 SI2- UFCG 
51 
Referências 
• Especificação de UML da OMG

Outros materiais