UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o...
Transcript of UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o...
![Page 2: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/2.jpg)
PUC-Rio
C C
E Mensagens Vimos que um objeto interage com outro
objeto trocando mensagens:
Que delegam a ele a execução de alguma operação de seu rol de operações públicas;
Que informam que a operação terminou de ser executada e que, portanto, o controle está sendo passado de volta;
De criação e destruição de objetos.
2
![Page 3: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/3.jpg)
PUC-Rio
C C
E
3
Mensagens
sd Exibir os campos para autenticação do cliente
controleEntradaPedidoformulário de
especificação do
pedido
exibirTelaAutenticacao()
sd Autenticar Cliente
colecaoClientes umCliente
:Cliente
formulário de
especificação do
pedido
controleEntradaPedido
loop
[para todos os clientes, até ser validado]
login/senha()
verificarLoginSenha(login:string, senha:string)
verificarLoginSenha(login:string, senha:string)
verificarLoginSenha(login:string, senha:string)
sd Informar que login/senha não constam do cadastro
formulário de
especificação do
pedido
controleEntradaPedido
"login/senha inexistente"()
sd Obter nome do cliente e endereço e os exibir no topo do formulário
controleEntradaPedido umClienteformulário de
especificação do
pedido
oNovoPedido:Pedido
getNome(nomeCliente:string)
getEndereco(enderecoClienre:string)
exibeDados(nomeCliente:string, enderecoCliente:string)
«create»
sd Adicionar Produtos
Cliente
formulário de
especificação do
pedido
controleEntradaPedido
oNovoItem:ItemDePedido
oCatalogoDeProdutos oProduto:Produto
loop
[para todos os itens de pedido do pedido]
exibirCamposEntradaItensPedido()
codigo e quantidade()
criarItemPedido(codigo:int, quantidade:int, descr:string, prUnitario:value)
«create»
getPuDescricao(codigo:item, descricao:string)
localizarProduto(codigo:int)
getPuDescricao(pU:value, descricao:string)
calcularPrTotal(pU:value, qtd:int) :value
:descricao, preco item, valor pedido
[cliente autenticado] [cliente não autenticado]
Mensagens
![Page 4: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/4.jpg)
PUC-Rio
C C
E
4
Mensagens Mensagens são representadas por setas
Que partem da linha de vida do objeto que envia para a linha de vida do objeto que recebe e trata a mensagem;
As setas podem ser rotuladas com o nome do estímulo e com os valores ou expressões de seus argumentos ou retornos;
O objeto que recebe pode ser o mesmo que envia auto-chamada ou auto-delegação, resultando numa invocação local de uma operação.
![Page 5: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/5.jpg)
PUC-Rio
C C
E
5
Mensagens
O envio da mensagem só é possível se o objeto possuir a referência do objeto para o qual deseja enviá-la.
Por isso é importante que os endereços sejam bem guardados.
![Page 6: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/6.jpg)
PUC-Rio
C C
E
6
Mensagens
Mensagens na UML 2.X podem corresponder a quatro tipos de ações:
Chamada;
Retorno;
Criação;
Destruição.
![Page 7: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/7.jpg)
PUC-Rio
C C
E
7
Mensagens
Chamada:
Invoca uma operação de um objeto (alvo).
Notação:
Retorno:
Retorna um valor e o controle para o chamador. Notação:
![Page 8: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/8.jpg)
PUC-Rio
C C
E Mensagens
Retornos são opcionalmente representados, segundo a UML. Em determinadas situações não há perda de expressividade.
8
A B C
m1
m2
m3
m4
A B C
m1
m2
m3
m4
A B C
m1
m2
m3
m4
vs
vs
![Page 9: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/9.jpg)
PUC-Rio
C C
E
9
Mensagens
Chamada de Criação
Cria um objeto.
Notações:
A caixa do identificador do objeto fica alinhada com a mensagem de criação.
Chamada de Destruição
Destrói um objeto. Um objeto pode cometer suicídio, se auto-destruindo.
Notações:
A “morte” de um objeto é denotada por um “X”
new() <<create>>
kill()/delete() <<destroy>>
![Page 10: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/10.jpg)
PUC-Rio
C C
E
10
Mensagens
Mensagens podem ser ainda:
Síncronas: objeto que chama “espera” pelo término do processamento da mensagem pelo objeto chamado. Notação: vide exemplos anteriores.
Assíncronas: quando não síncronas.
Notação:
![Page 11: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/11.jpg)
PUC-Rio
C C
E
11
Mensagens
O rótulo de uma mensagem também pode conter*:
A expressão de condição de envio: representada entre “[” e “]”, que indica a condição para a mensagem ser enviada.
O símbolo de iteração: “*” no início da mensagem indica que a mesma é enviada repetidas vezes.
(*) Notação anterior à UML 2.0, porém ainda usada.
![Page 12: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/12.jpg)
PUC-Rio
C C
E Mensagens
Chamada, retorno, criação e destruição de objetos
Exemplos:
12
A B
op1(p1, p2)
op2(p3, p4)
A
B
C
«create»
«create»
A B
«destroy»
A B
op1(p1, p2)
![Page 13: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/13.jpg)
PUC-Rio
C C
E Mensagens
Iterações e condições
Exemplos:
13
:Pedido
:ItemPedido * <<create>>
:ItemPedido :ItemEstoque
[tem em estoque] retirarItem (qtd)
![Page 14: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/14.jpg)
PUC-Rio
C C
E Mensagens
14
Restrições temporais podem ser representadas. Exemplo:
![Page 15: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/15.jpg)
PUC-Rio
C C
E Mensagens
Parâmetros da chamadas e tipos de retorno:
Precisam ser representados, ou seja, a assinatura completa da operação precisa constar do DS;
Tornam o DS visualmente ainda mais complexo;
Uma longa lista de parâmetros pode significar que o objeto do qual estamos solicitando a colaboração não seja o mais adequado.
15
![Page 16: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/16.jpg)
PUC-Rio
C C
E
16
Exercício
5.3 - Secos e Molhados do Seu Manoel
![Page 17: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/17.jpg)
PUC-Rio
C C
E Interfaces
As interfaces usualmente proveem meios de comunicação entre ambientes distintos
entre dois (sub)sistemas,
entre duas tecnologias diferentes,
entre os usuários e os sistemas.
17
![Page 18: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/18.jpg)
PUC-Rio
C C
E Interfaces
Atores não interagem diretamente com objetos do sistema. Os formulários cumprem essa missão. Eles são:
Telas das aplicações web (os navegadores ou browsers), ou
Telas das aplicações desktop (formulários Visual Basic, Delphi etc.).
18
![Page 19: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/19.jpg)
PUC-Rio
C C
E Interfaces
Objetos instanciados dessas classes armazenam os dados fornecidos pelos usuários e os repassam aos objetos do sistema.
Esses objetos também recebem os eventos gerados pelos usuários e os repassam aos objetos do sistema em um DS.
19
![Page 20: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/20.jpg)
PUC-Rio
C C
E
20
Interfaces
sd Exibir os campos para autenticação do cliente
controleEntradaPedidoformulário de
especificação do
pedido
exibirTelaAutenticacao()
sd Autenticar Cliente
colecaoClientes umCliente
:Cliente
formulário de
especificação do
pedido
controleEntradaPedido
loop
[para todos os clientes, até ser validado]
login/senha()
verificarLoginSenha(login:string, senha:string)
verificarLoginSenha(login:string, senha:string)
verificarLoginSenha(login:string, senha:string)
sd Informar que login/senha não constam do cadastro
formulário de
especificação do
pedido
controleEntradaPedido
"login/senha inexistente"()
sd Obter nome do cliente e endereço e os exibir no topo do formulário
controleEntradaPedido umClienteformulário de
especificação do
pedido
oNovoPedido:Pedido
getNome(nomeCliente:string)
getEndereco(enderecoClienre:string)
exibeDados(nomeCliente:string, enderecoCliente:string)
«create»
sd Adicionar Produtos
Cliente
formulário de
especificação do
pedido
controleEntradaPedido
oNovoItem:ItemDePedido
oCatalogoDeProdutos oProduto:Produto
loop
[para todos os itens de pedido do pedido]
exibirCamposEntradaItensPedido()
codigo e quantidade()
criarItemPedido(codigo:int, quantidade:int, descr:string, prUnitario:value)
«create»
getPuDescricao(codigo:item, descricao:string)
localizarProduto(codigo:int)
getPuDescricao(pU:value, descricao:string)
calcularPrTotal(pU:value, qtd:int) :value
:descricao, preco item, valor pedido
[cliente autenticado] [cliente não autenticado]
Interface
![Page 21: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/21.jpg)
PUC-Rio
C C
E Interfaces
Também podem ser representadas na forma:
21
Formulário de
Especificação do
Pedido
![Page 22: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/22.jpg)
PUC-Rio
C C
E Interfaces
A boa prática recomenda: formulários não devem ter muita “inteligência”
Não devem implementar regras de negócio;
Não devem coordenar interações com os objetos do sistema;
Não devem verificar consistências de dados;
Podem implementar críticas simples (verificação de dígitos verificadores e de preenchimento de campos obrigatórios, etc.)
22
![Page 23: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/23.jpg)
PUC-Rio
C C
E Controladores
São objetos que têm a responsabilidade de controlar o fluxo de mensagens e/ou de zelar pela obediência às regras de negócio e pelas demais questões de consistência;
Alguns projetistas retiram quase todas as responsabilidades das classes conceituais, que passam a ser atribuídas às classes controladoras.
23
![Page 24: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/24.jpg)
PUC-Rio
C C
E Controladores
Usualmente é concebida uma classe controladora por caso de uso;
Podem ser concebidas mais classes no caso de UCs complexos.
24
![Page 25: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/25.jpg)
PUC-Rio
C C
E
25
Controladores
sd Exibir os campos para autenticação do cliente
controleEntradaPedidoformulário de
especificação do
pedido
exibirTelaAutenticacao()
sd Autenticar Cliente
colecaoClientes umCliente
:Cliente
formulário de
especificação do
pedido
controleEntradaPedido
loop
[para todos os clientes, até ser validado]
login/senha()
verificarLoginSenha(login:string, senha:string)
verificarLoginSenha(login:string, senha:string)
verificarLoginSenha(login:string, senha:string)
sd Informar que login/senha não constam do cadastro
formulário de
especificação do
pedido
controleEntradaPedido
"login/senha inexistente"()
sd Obter nome do cliente e endereço e os exibir no topo do formulário
controleEntradaPedido umClienteformulário de
especificação do
pedido
oNovoPedido:Pedido
getNome(nomeCliente:string)
getEndereco(enderecoClienre:string)
exibeDados(nomeCliente:string, enderecoCliente:string)
«create»
sd Adicionar Produtos
Cliente
formulário de
especificação do
pedido
controleEntradaPedido
oNovoItem:ItemDePedido
oCatalogoDeProdutos oProduto:Produto
loop
[para todos os itens de pedido do pedido]
exibirCamposEntradaItensPedido()
codigo e quantidade()
criarItemPedido(codigo:int, quantidade:int, descr:string, prUnitario:value)
«create»
getPuDescricao(codigo:item, descricao:string)
localizarProduto(codigo:int)
getPuDescricao(pU:value, descricao:string)
calcularPrTotal(pU:value, qtd:int) :value
:descricao, preco item, valor pedido
[cliente autenticado] [cliente não autenticado]
Controlador
![Page 26: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/26.jpg)
PUC-Rio
C C
E Controladores
Também podem ser representados na forma:
26
Controle UCSXXX
![Page 27: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/27.jpg)
PUC-Rio
C C
E Interfaces e Controladores
Suas classes devem ser integradas ao modelo de classes;
A partir desse momento, os diagramas de classes deixam de ser diagramas de nível conceitual.
27
![Page 28: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/28.jpg)
PUC-Rio
C C
E
28
Exercício
5.4 – Caixa Eletrônico do Banco Baú
5.5 – Cadastrando Pedidos
![Page 29: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/29.jpg)
PUC-Rio
C C
E Quadros de Interação
DSs são complexos visualmente, especialmente quando modelamos colaborações contendo iterações, condicionalidades (múltiplos cenários) e processamento paralelo, utilizando os elementos de notação das versões anteriores à 2.0.
29
![Page 30: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/30.jpg)
PUC-Rio
C C
E Quadros de Interação
A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam a especificação de colaborações com essas características.
30
![Page 31: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/31.jpg)
PUC-Rio
C C
E Quadros de Interação
Quadros de interação definem uma ou mais regiões onde representamos
Iterações,
Trechos concorrentes,
Trechos opcionais,
Trechos alternativos de colaborações,
Trechos de interação comuns, fatorados de duas ou mais colaborações,
Etc.
31
![Page 32: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/32.jpg)
PUC-Rio
C C
E Quadros de Interação
Quadros de interação tornaram os DS mais expressivos, mais completos (mais de um cenário representado no mesmo diagrama), ao mesmo tempo que mais simples visualmente.
32
![Page 33: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/33.jpg)
PUC-Rio
C C
E Quadros de Interação
Os quadros são rotulados com nomes de operadores;
Rótulos dos operadores são colocados no canto superior esquerdo;
As regiões que compõem os quadros, quando existe mais de uma, chamam-se fragmentos;
Fragmentos são separados por linhas tracejadas.
33
![Page 34: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/34.jpg)
PUC-Rio
C C
E Quadros de Interação
Operadores mais comuns:
sd: (“sequence diagram”), opcionalmente rotula um quadro que contém totalmente um diagrama de sequência.
34
sd LucroLiquido - aula8
João:Presidente Paulo:DiretorFinanceiroMaria:GerenteFaturamento Pedro:GerenteOperacoes
lucroLiquido()
receitas()
despesas()
lucroLiquido()
![Page 35: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/35.jpg)
PUC-Rio
C C
E Quadros de Interação
Operadores mais comuns:
alt: especifica múltiplos fragmentos alternativos em um quadro. A condição em que um fragmento é executado é colocada no topo do fragmento entre colchetes.
35
A B
alt
[c1]
[else]
m1()
m2()
![Page 36: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/36.jpg)
PUC-Rio
C C
E Quadros de Interação
Operadores mais comuns:
opt: especifica um quadro executado opcionalmente. A condição em que o fragmento é executado é colocada no topo do quadro, entre colchetes.
36
A B
opt
[c1]m1()
![Page 37: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/37.jpg)
PUC-Rio
C C
E Quadros de Interação
Operadores mais comuns:
par: especifica múltiplos fragmentos executados concorrentemente.
37
A B
par
m1()
m2()
![Page 38: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/38.jpg)
PUC-Rio
C C
E Quadros de Interação
Operadores mais comuns:
loop: especifica um quadro (um único fragmento) executado repetidas vezes.
38
A B
loop
[tantas vezes/para todos/etc]
m1()
m2()
![Page 39: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/39.jpg)
PUC-Rio
C C
E Quadros de Interação
Operadores mais comuns:
ref: especifica a chamada a uma colaboração definida em outro lugar ou em outro diagrama.
39
sd Frame Ref Def
A B
m1()
A B
ref
Frame Ref Def
m2()
Define Chama
![Page 40: UML - Diagramas 6 - UML... · Mensagens são representadas por setas ... A UML 2.0 incorporou o conceito de quadros de interação (frames), adicionando recursos importantes que facilitam](https://reader034.fdocumentos.com/reader034/viewer/2022052422/5c54faff93f3c3211629edac/html5/thumbnails/40.jpg)
PUC-Rio
C C
E Exercícios
5.6 – Cadastrando Pedidos Revisitado
Aglomeratto Classe A
40