Buscar

5 UML DiagramasObjectos

Prévia do material em texto

Unified Modeling Language
Diagramas de Objectos
José Correia, Maio 2006
(http://paginas.ispgaya.pt/~jcorreia/)
José Correia UML - Diagramas de Objectos 2
Objectos
? Um objecto é uma instância de uma classe,...
... possui todos os atributos e métodos definidos na própria classe 
... bem como, um estado e uma identificação única no contexto da sua 
execução
? Em UML, um objecto é representado como uma classe, através de um 
rectângulo com uma, duas, ou três secções
• cada rectângulo no diagrama de objectos corresponde a uma única 
instância (objecto)
• os nomes dos objectos são seguidos (sufixados) pelos nomes das classes 
respectivas, separados por : , sendo ambos sublinhados
• o nome da classe ou das instâncias podem ser omitidos dos diagramas de 
objectos, desde que o significado do diagrama permaneça claro
José Correia UML - Diagramas de Objectos 3
Ligações
? Sempre que existe uma associação entre duas classes deve também 
existir uma ligação entre instâncias das classes respectivas
• a instância de uma associação é uma ligação (link)
? Uma ligação (link) entre objectos traduz a existência de uma relação 
semântica ou estrutural entre as suas respectivas classes
? Uma ligação entre objectos (instância da relação entre as classes) é
representada em UML através de uma linha a cheio, não dirigida
José Correia UML - Diagramas de Objectos 4
Exemplo
José Correia UML - Diagramas de Objectos 5
Diagramas de Objectos
? Os diagramas de objectos são úteis para explicar pequenas partes 
dos modelos (da realidade!)
• particularmente quando existem relacionamentos complicados e, 
especialmente, casos de relacionamentos recursivos
? Exemplo
• admitamos que um Departamento de uma Faculdade pode conter vários 
outros (sub)Departamentos
José Correia UML - Diagramas de Objectos 6
Diagramas de Objectos (cont.)
? O diagrama de objectos seguinte “substitui” o diagrama de classes 
anterior por um exemplo (situação) concreto
José Correia UML - Diagramas de Objectos 7
Um diagrama de classes...
? com base neste diagrama de classes, elaborar um diagrama de objectos que 
corresponda à seguinte situação: “A Nestlé satisfez a encomenda 123, em 
2006/05/05, cuja data de encomenda foi 2006/04/11. A encomenda 123 tem 
dois itens: (i) produto A, chocolate, 1000 unidades, 300€; (ii) produto B, sumo 
de laranja, 500 unidades, 200€. Ambos os produtos são do tipo alimentar.”
Produto 
nome
preço_unitário
taxa_IVA
Encomenda 
EncID
Data_Aqs
Data_Enc
Linha-Encomenda 
quantidade
valor_total
valor_IVA
Fornecedor 
nome
NIF
morada
Tipo-Produto 
*1*1
*1
1
*
José Correia UML - Diagramas de Objectos 8
... e um diagrama de objectos
A : Produto
nome = chocolate
: Encomenda 
EncID = 123
Data_Aqs = 2006/05/05
Data_Enc = 2006/04/11
L1:Linha-Encomenda
quantidade = 1000
valor_total = 300
Nestlé : Fornecedor
Alimentar : Tipo-Produto
B : Produto
nome = sumo lar.
L2:Linha-Encomenda
quantidade = 500
valor_total = 200
José Correia UML - Diagramas de Objectos 9
Diagramas de Objectos (cont.)
? Um diagrama de objectos não pode (nem deve pretender) especificar 
completamente a estrutura de objectos de um dado sistema
• para cada classe ou conjunto de classes relacionadas, há uma infinidade 
de potenciais combinações entre as suas instâncias
? Um diagrama de objectos ilustra um conjunto de objectos e 
respectivas relações num determinado momento
• isto é, permite captar uma imagem, ou “fotografia”, momentânea sobre 
determinado sistema
? Por conseguinte, o objectivo dos diagramas de objectos é apenas 
expor conjuntos relevantes de objectos de modo a melhorar o 
entendimento das suas funcionalidades e inter-relações
José Correia UML - Diagramas de Objectos 10
Resumo
? Um diagrama de objectos é um grafo composto por objectos e 
ligações entre eles, que descreve um relacionamento particular entre 
objectos
? Exemplo:
• Classe - ‘Pessoa’; Objecto - ‘Zacarias:Pessoa’
? Os diagramas de objectos são úteis para efeitos de documentação,...
... para estudo de determinados cenários,...
... para fornecer exemplos,...
... de modo a clarificar o diagrama de classes
José Correia UML - Diagramas de Objectos 11
Referências
Estes apontamentos foram baseados em:
? UML, Capítulo 2, “Objectos e Classes”, ISPGaya
José Maria Bonnet
? “Practical UML: A Hands-On Introduction for Developers”,
TogetherSoft Corporation
? “UML Metodologias e Ferramentas CASE”, Centro Atlântico, 2001
Alberto Silva, Carlos Videira

Continue navegando