uml - diagramas de classe1 uml diagramas de classe
TRANSCRIPT
UML - Diagramas de Classe 1
UMLDiagramas de Classe
UML - Diagramas de Classe 2
Estruturas de classes:
Herança: Simples Múltipla
Associação (relacionamento): ‘Normal’ Todo/parte:
ComposiçãoAgregação
UML - Diagramas de Classe 3
Herança simples:
VeículoAMotor
Carro Caminhão
Sentido da seta!
Superclasse
Subclasse
UML - Diagramas de Classe 4
Herança (alvo compartilhado):
VeículoAMotor
Carro Caminhão
UML - Diagramas de Classe 5
Herança (estilo reduzido):
VeículoAMotor
Carro Caminhão
UML - Diagramas de Classe 6
Herança múltipla:
VeículoAMotor
Carro Caminhão
Aeronave
Aeroplano
UML - Diagramas de Classe 7
Particionamento em subclasses:
VeículoAMotor
Carro CaminhãoAeroplano
{disjunção, incompleto}
UML - Diagramas de Classe 8
Disjuntos
Sobrepostos
UML - Diagramas de Classe 9
Subgrupos completos
… incompletos
UML - Diagramas de Classe 10
Particionamento dinâmico / estático:
Funcionário
GerenteNãoGerente
{disjunção, completo, dinâmico}
UML - Diagramas de Classe 11
Classes mutuamente sobrepostas:
Animal
AnimalCarnívoroAnimalHerbívoro
{sobreposição, completo}
Pode haver uma superclasse comum: AnimalOnívoro
UML - Diagramas de Classe 12
Discriminadores de particionamento:
Veículo
VeículoInterna/Propulsionado
VeículoExterna/Propulsionado
{disjunção, completo}
LocalFontePropulsora
UML - Diagramas de Classe 13
Veículo
VeículoInterna/Propulsionado
VeículoExterna/Propulsionado
{disjunção, completo}
LocalFontePropulsora
{disjunção, incompleto}
TipoDeVeículo
Pula-Pula Velocípede
{sobreposição, incompleto}
meioDoVeículo
VeículoTerrestre VeículoAnfíbio
…
UML - Diagramas de Classe 14
Associação
Classes:1. UsuáriosDaBiblioteca2. LivrosDaBiblioteca
Associação - entre instâncias das classes
Empréstimo Reserva …
UML - Diagramas de Classe 15
Notação para associações
Pessoa Companhia
Município
Emprego
LocalizaçãoResidência
empregado empregador
0..* 0..10..* 0..*
1..1 1..*
residente
UML - Diagramas de Classe 16
Associação entre duas classes …
Pessoa Cachorrodono
possuido por
0..*
1..1
PosseDeCachorro
UML - Diagramas de Classe 17
… promovida à condição de Classe
PosseDeCachorro
Pessoa Cachorro
…
…
dono
possuido por
0..*
1..1
UML - Diagramas de Classe 18
Associações de ordem mais alta:
Companhia TipoDeItem
QuantidadeComprada
CatálogoParaCompraDeItens
preçoUnitário: Dinheiro
…
0..*
0..*
0..*
vendedor
nívelDeRetençãoDePreços
produto
UML - Diagramas de Classe 19
Navegabilidade de associações (1)
Pessoa Cachorrodono
possuido por
0..*
1..1
PosseDeCachorro
cachorrosPossuídosPor: Conjunto <Cachorro>;
Na classe Pessoa:
UML - Diagramas de Classe 20
… (2)
Pessoa Cachorrodono
possuido por
0..*
1..1
PosseDeCachorro
Na classe Cachorro (multiplicidade de 1):
dono: Pessoa;
UML - Diagramas de Classe 21
… (3)
Pessoa Cachorrodono
possuido por
0..*
1..1
PosseDeCachorro
Definições em ambas as classes!
UML - Diagramas de Classe 22
Associação todo/parte:
Composição: [objeto] composto X [objeto] componente
Agregação:[objeto] agregado X [objeto] constituinte
UML - Diagramas de Classe 23
Composição:
1. O objeto composto não existe sem os seus componentes;
2. Num dado instante um objeto componente só pode fazer parte de um objeto composto
3. A composição é heterômera (as partes não são semalhantes!)
UML - Diagramas de Classe 24
Ex de composição:
Planador
Cauda AsaFuselagem
fuselagem cauda asaEsquerda asaDireita1 1
1 1
UML - Diagramas de Classe 25
Agregação
1. O objeto agregado pode existir sem os constituintes
2. Um objeto pode ser constituinte de mais de um agregado
3. A agregação é homeômera (as partes são semelhantes)
UML - Diagramas de Classe 26
Ex de agregação:
RelatórioDeGerência
Parágrafo
parteDoTexto 0..*
0..*
{ordenado}
UML - Diagramas de Classe 27
Outro exemplo:
Corporação
DivisãoDeCorporação
divisão 1..*
1