Buscar

05_APOO_MODELAGEM_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 18 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 18 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 18 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

Prévia do material em texto

Diagramas de 
interação
Diagramas de
interação
Interações
• Interações mostram os aspectos dinâmicos de 
um sistema, enfatizando a troca de mensagens
entre objetos
• Interações são usadas para modelar o fluxo de 
controle para uma operação, uma classe, um 
Diagramas de
interação
controle para uma operação, uma classe, um 
componente, um subsistema, ou para um 
sistema inteiro
• Dois diagramas podem ser usados para modelar 
as interações: diagramas de sequência e 
diagramas de colaboração
Utilidades
• Modelar as interações em um sistema é uma das 
técnicas mais poderosas para a descoberta das 
classes e das operações do sistema
• Diagramas de interação facilitam o entendimento 
de sistemas com comportamento complexo
Diagramas de
interação
de sistemas com comportamento complexo
• Diagramas de interação são especialmente úteis 
para sistemas orientados a objetos porque a 
funcionalidade nesses sistemas geralmente é 
distribuída em muitas classes diferentes
Objetos e papéis
• As interações acontecem entre objetos (ou 
outras instâncias) e não classes
• Os objetos em uma interação podem ser 
concretos ou prototípicos
Diagramas de
interação
– Um objeto concreto p da classe Pessoa pode 
representar uma pessoa real
– Um objeto prototípico p da classe Pessoa pode 
representar qualquer instância da classe 
Pessoa
• Nos diagramas de interação, objetos que 
desempenham papéis diferentes podem ser 
modelados como objetos diferentes
Links
• Um link é uma conexão entre dois objetos, pela 
qual mensagens podem ser trocadas
• Sempre que uma classe tiver uma associação 
com outra classe, pode haver um link entre os 
objetos dessas classes
Pessoa
Diagramas de
interação
darAumento(perc: float)
alocar(d: Departamento)
Pessoa
Empresa
empregado
empregador
1..*
0..5
p: Pessoa
e: Empresa
alocar(desenvolvimento)
Mensagens
• Definição formal: uma mensagem é a 
especificação de uma comunicação entre 
objetos, onde são passadas informações, com a 
intenção de que ocorra alguma atividade
• Na maioria das vezes, uma mensagem resulta na 
Diagramas de
interação
• Na maioria das vezes, uma mensagem resulta na 
execução de uma operação
• Tipos principais de mensagens
– Chamada (Call)
– Retorno (Return)
– Envio (Send)
– Criação (Create)
– Destruição (Destroy)
Sequenciamento
• Quando um objeto envia uma mensagem para 
outro objeto, o objeto que recebe a mensagem 
pode enviar outras mensagens e assim por 
diante, formando uma sequência de mensagens
• O sequenciamento pode ser
Diagramas de
interação
• O sequenciamento pode ser
– procedural, com aninhamento (mensagens 
síncronas)
– ou plano, sem aninhamento (mensagens 
assíncronas)
Diagramas de sequência
• Diagramas de sequência enfatizam a ordenação 
das mensagens trocadas entre os objetos
• Um cenário é uma sequência específica de 
ações que ilustra um comportamento
Diagramas de
interação
• Diagramas de sequência podem modelar 
apenas um cenário ou um conjunto de 
cenários
• Diagramas de sequência podem mostrar 
decisões simples e iterações
Exemplo
Browser Servidor Web
Processador de
pedidos
Interface com
o banco
Estudante
Submeter formulário
de pedido preenchido
Codificar dados
do formulário
Este é um programa
CGI
Diagramas de
interação
Enviar dados
codificados
Processar dados
Enviar dados
processados
Executar
Cadastrar pedido
Cadastro OK
Gerar página
de confirmação
Enviar página
Enviar página
Exibir página
Diagramas de colaboração
• Diagramas de colaboração enfatizam a 
organização dos objetos em uma interação
• Praticamente tudo que pode ser mostrado em 
um diagrama de sequência pode também ser 
mostrado em um diagrama de colaboração
Diagramas de
interação
mostrado em um diagrama de colaboração
• Diagramas de colaboração podem ser 
transformados em diagramas de sequência e 
vice-versa
Exemplo
Browser Servidor Web
submeter(dadosForm)
1: codificarDados(dadosForm)
2: enviarDadosCodificados(dados)
3: processarDados()
8: enviarPagina(pag)
9: enviarPagina(pagina)
Diagramas de
interação
Processador de
pedidos
Interface com
o banco
Estudante
4: executar()
5: enviarDadosProc(dados)
6: cadastrapedido(consSQL)
8: enviarPagina(pag)
7: gerarPagResposta()
Modelando o fluxo de controle 
através de Diagramas de Sequência
• Defina o contexto da interação, se sistema, 
subsistema, classe, ou um cenário de um Use 
Case
• Identifique quais objetos participam da 
interação. Coloque-os da esquerda (mais 
Diagramas de
interação
interação. Coloque-os da esquerda (mais 
importante) para direita.
• Defina a linha de vida do objeto. 
– A maioria dos objetos irão persistir durante toda a 
interação
– Indique o nascimento e morte daqueles objetos que 
são criados e destruídos durante a interação.
Modelando o fluxo de controle 
através de Diagramas de Sequência
• Começar com a mensagem inicial. A mensagens 
subsequentes são colocadas do topo para baixo 
da linha de vida. 
• Para explicar a semântica é possível incluir as 
propriedades da mensagens, por ex. Parâmetros.
Diagramas de
interação
propriedades da mensagens, por ex. Parâmetros.
• Se precisar especificar limitações de tempo e 
espaço, adorne a mensagem com uma marca 
apropriada.
• Se precisar especificar o fluxo de controle mais 
formalmente, coloque pré e pós condições nas 
mensagens.
Modelando o fluxo de controle 
através de Diagramas de Sequência
• Começar com a mensagem inicial. A mensagens 
subsequentes são colocadas do topo para baixo 
da linha de vida. 
• Para explicar a semântica é possível incluir as 
propriedades da mensagens, por ex. Parâmetros.
Diagramas de
interação
propriedades da mensagens, por ex. Parâmetros.
• Se precisar especificar limitações de tempo e 
espaço, adorne a mensagem com uma marca 
apropriada.
• Se precisar especificar o fluxo de controle mais 
formalmente, coloque pré e pós condições nas 
mensagens.
Adicionar a oferta de um 
curso
: Professor
form opções 
de curso 
form curso curso oferecimento 
curso
1: adic um curso
2: apresentar()
Diagramas de
interação
4: selecionar curso oferecido
5: adic professor (professor id)
6: assoc professor (professor id)
7: adic professor (professor)
3: listar()
Modelando o fluxo de controle através 
de Diagramas de Colaboração
• Defina o contexto da interação, se sistema, 
subsistema, classe, ou um cenário de um Use 
Case
• Identifique quais objetos participam da 
interação. Coloque os objetos mais importantes 
Diagramas de
interação
interação. Coloque os objetos mais importantes 
no centro do diagrama.
Modelando o fluxo de controle através 
de Diagramas de Colaboração
• Especifique os links entre objetos. Eles permitem 
a passagem das mensagens.
• Começando com a mensagem que inicia a 
interação, coloque uma numeração seqüencial 
nas mensagens. Se necessário use aninhamento 
Diagramas de
interação
nas mensagens. Se necessário use aninhamento 
(1.1, 1.2).
• Se precisar especificar limitações de tempo e 
espaço, adorne a mensagem com uma marca 
apropriada.
• Se precisar especificar o fluxo de controle mais 
formalmente, coloque pré e pós condições nas 
mensagens.
Adicionar a oferta de um 
curso
: Professor
form opções de curso
form curso
1: adic um curso
4: selecionar curso oferecido
2: apresentar()
3: listar()
Diagramas de
interação
oferecimento 
curso
curso
6: assoc professor (professor id)
5: adic professor (professor id)
7: adic professor (professor)

Outros materiais