Prof. Dr. rer. nat. Daniel D. Abdala
[email protected]
 Usados
para demonstrar como objetos
interagem para executar um caso de uso;
 Junto com diagramas de seqüência, são
usados para clarificar os papéis dos objetos
que executam um determinado fluxo de
eventos;
 Principal fonte de informação para
determinar:
• Interfaces
• Responsabilidades de uma classe
Colaboração
Mais estático

Seqüência
Dinâmico
Relacionamentos entre objetos:
• Colaboração: Definido explicitamente;
• Seqüência:
Pode ser inferido indiretamente;

Legibilidade:
• Colaboração: Tende a degradar a medida que o número
de objetos e mensagens aumenta;
• Seqüência:
Se mantém sempre legível;

Difícil de demonstrar informações descritivas
adicionais tais como:
• Andamento;
• pontos de decisão;
• outras informações não estruturadas.

Elementos
• Atores (atorName);
• Objetos (objectName : className);
• Links / Mensagens.

Os objetos podem ser usados nos diagramas de
colaboração das seguintes maneiras:
• Uma classe de objeto pode não estar especificada.
Normalmente, você primeiro cria um diagrama de colaboração
com objetos e depois especifica a classe.
• Os objetos podem não ter nome, mas é recomendável nomeálos se você quiser diferenciar os diversos objetos da mesma
classe.
• Uma classe de objeto pode se representar no diagrama de
colaboração, caso participe ativamente da colaboração.
 Atores
• Dispara a interação.
 Links -Os vínculos
seguinte maneira:
são definidos da
• Um link é um relacionamento existente entre
objetos, entre os quais pode haver troca de
mensagens. Nos diagramas de colaboração, o link
aparece como uma linha sólida entre dois objetos.
• Um objeto interage com outros objetos ou navega
até eles através dos links existentes entre eles.
• Um link pode ser uma instância de uma associação
ou pode ser anônimo, o que significa que sua
associação não foi especificada.

Mensagem é uma comunicação entre objetos que contém as
informações para o início da atividade em questão. Nos
diagramas de colaboração, as mensagens aparecem como
uma seta rotulada perto de um link. Isso significa que o link
é usado para transportar ou entregar a mensagem ao objeto
de destino. A seta ao longo do link aponta na direção do
objeto de destino (aquele que receberá a mensagem). A
seta é rotulada com o nome da mensagem e seus
parâmetros. Ela também pode ser rotulada com um número
que indique a seqüência da mensagem no processo geral
de interação. Geralmente, os números seqüenciais são
usados nos diagramas de colaboração porque são a única
forma de descrever o seqüenciamento relativo das
mensagens.
Os diagramas de componentes capturam a
estrutura física da implementação
 Têm como objetivo:

• organizar o código fonte (ambiente de desenvolvimento)
• Construir uma release executável (ambiente de
produção)
• Especificar componentes como base de dados, etc.
Contém componentes, interfaces e relações
entre componentes
 Os pacotes de componentes podem ser
utilizados para modelar a arquitetura física
 Identificar as principais peças do sistema





Um pedaço de software reutilizável, bem encapsulado e “facilmente”
substituível.
• São blocos (peças) que combinados constroem o sistema pretendido.
• A dimensão dos componentes não é homogênea, existindo num mesmo
sistema, componentes de diferentes dimensões.
Quais são os bons candidatos a serem componentes do sistema?
• Itens que desempenham uma funcionalidade que é utilizada
recorrentemente no sistema
• Exemplos: componentes de logging, parsers de XML, componentes de
gestão de carrinhos de compra (shopping carts), etc.
Em UML um componente pode efetuar as mesmas funcionalidades que uma
classe faz
• Generalização
• Associação com outros componentes ou classes
• Implementação de interfaces
Um componente representa um empacotamento físico de elementos
relacionados logicamente (normalmente classes)
Download

Diagrama de Colabora..