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