elaine gama marques gabrielle freitas manhães cefet campos [email protected]...

17
Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos [email protected] [email protected]

Upload: internet

Post on 16-Apr-2015

107 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

Elaine Gama MarquesGabrielle Freitas Manhães

CEFET Campos

[email protected]@yahoo.com.br

Page 2: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

SUMÁRIO

INTRODUÇÃO .........................................3 OBJETIVO ................................................6 NOTAÇÕES .............................................9 DINÂMICA DE OBJETOS E LIGAÇÕES ........11 EXEMPLOS ..............................................12

2

Page 3: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

INTRODUÇÃO: Diagrama de Colaboração e Diagrama

de Seqüência são diagramas que podem ser usados para mostrar interações (mensagens) entre objetos;

Esses dois tipos são chamados diagramas de interação.

Os diagramas de interação ajudam muito a construir o sistema, sendo que uma boa parte do tempo deve ser dedicado à sua construção.

3

Page 4: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

Dá ênfase aos objetos que participam de uma interação (enviar e receber mensagens).

Mostra a interação sem a dimensão de tempo, mas inclui as ligações entre os objetos.

Diagramas de colaboração são usados para modelar cenários; cada cenário descreve uma possível seqüência de eventos e ações.

Para casos de uso complexos são feitos vários diagramas de colaboração; cada diagrama de colaboração é simples e fácil de entender.

4

Page 5: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

A interação começa a partir de um ator. Ligações entre os objetos são mostradas e a

direção da navegação pode ser indicada com as pontas de flecha.

Mensagens são exibidas junto das ligações com uma seta direcionada.

Mensagens são numerada para mostrar a seqüência.

5

Page 6: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

DIAGRAMA DE COLABORAÇÃO

DIAGRAMA DE SEQUÊNCIA

Tem o objetivo de dar ênfase à estrutura organizacional dos

objetos que enviam e recebem mensagens, ele também é mais

adequado quando se deseja expressar mais

detalhes da colaboração entre

objetos.

Dá ênfase à ordem temporal das

mensagens, porém, é mais simples de usar

quando se deseja mostrar apenas as

seqüências de interações.

6

Page 7: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

• No diagrama de colaboração existe um caminho que indica como o objeto está vinculado a outro. Nele também existe um número de seqüência para indicar a ordem temporal de uma mensagem:1:validar()2:criar()

.

.

.7

Page 8: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

8

O Diagrama de Colaboração mostra os objetos das classes que participam da interação, mostrando os vínculos entre os mesmos, descrevendo as mensagens que os objetos recebem e enviam.

O diagrama de colaboração são isomórficos.

Page 9: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

Objeto passivo - objeto que contém dados, mas não inicia atividade de controle; pode enviar mensagens enquanto processa um pedido recebido◦ Notação: rebordo normal

Objeto activo - objeto que possui um processo ou fio de controle (thread) e pode iniciar actividade de controle◦ Notação: rebordo espesso◦ Podem-se indicar estereótipos «process» e « thread»

Ator - objeto externo que normalmente inicia uma interação◦ Notação: ícone de pessoa

Objeto composto - objeto que agrega outros objetos (componentes) por relação de composição◦ Notação: objetos componentes e ligações entre

componentes dentro do objeto composto

9

Page 10: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

Retângulo ( ) – representa um objeto.◦ Instância de uma classe

Linhas ( ) – representam as ligações de um objeto para outro.◦ Instâncias de associações entre as classes

Setas ( ) – representam as mensagens enviadas de um objeto para outro.

Números de seqüência ( 1: ) – indicam a ordem de transmissão das mensagens, onde cada mensagem tem um número de seqüência.

10

Page 11: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

Como todas as mensagens têm de passar por ligações, para além das ligações que representam instâncias de associações, pode ser necessário indicar ligações mais dinâmicas

Assim, em qualquer extremo de uma ligação, pode-se indicar o tipo de ligação (do ponto de vista do objeto no outro extremo) através de um estereótipo:◦ «association» - instância de associação (tipo por omissão)◦ «parameter» - parâmetro de operação do objeto que faz a

Chamada◦ «local» - variável local de operação do objeto que faz a

chamada◦ «global» - variável global (usada pelo objeto no outro extremo

da ligação)◦ «self» - auto-ligação (para enviar mensagens para o próprio)

11

Page 12: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

Objetos e ligações podem ser criados e/ou destruídos durante a execução duma interação◦ Notação: junto de um objeto ou ligação indicar

{new} - criado durante a interação {destroyed} - destruído durante a interação {transient} - criado e destruído durante a interação

Um objeto pode mudar de estado (valores de atributos e ligações) durante a execução em uma interação◦ Notação: replicar o objeto, ligando as réplicas com mensagem

«become»◦ Exemplo:

12

p: Pedido

estado=“Pendente”

1:tratar() p: Pedido

estado=“Satisfeito”

1.1: «become»

Page 13: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

13

Page 14: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

A seguir é mostrado o diagrama de colaboração, para o caso de uso Processar Pedido da G@E LTDA, onde pode-se acompanhar o caminho de interação e as mensagens que são trocadas.

14

Page 15: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

15

Page 16: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

16

Page 17: Elaine Gama Marques Gabrielle Freitas Manhães CEFET Campos elainegmarques@superig.com.br gabifrm@yahoo.com.br

17