Você está na página 1de 45

Diagrama de Classes

Diagrama de Classes

Descrevem as entidades essenciais ao


sistema, suas estruturas internas,
comportamentos e relacionamentos com
outras entidades. o principal diagrama do
processo de modelagem orientada a objetos.
Todos os outros diagramas descobrem
informaes sobre os diagramas de classes,
os quais vo sendo refinados e atualizados a
medida que os outros diagramas vo
exercitando (utilizando) suas entidades.
Diagrama de Classes
Principal diagrama para a gerao de cdigo-fonte
(ferramentas CASE) e a partir do cdigo-fonte
(engenharia reversa).

Um projeto pode conter vrios diagramas de classes,


de forma a organizar melhor as classes relacionadas
segundo uma determinada viso ou funcionalidade.

Independentemente do nmero de diagramas de


classes que um projeto possa ter, uma classe
definida uma nica vez. Ela pode, porm, ser
referenciada em vrios outros diagramas, conforme
a necessidade ou viso que o diagrama expresse.
O que uma Classe ???
O que so Atributos???
O que so Operaes
ou Mtodos???
Heurstica para
Identificao das Classes

Extrair os substantivos.
Elimminar as Classes estranhas,
supeitas.
Heurstica para
Identificao dos Compotamentos

Extrair os verbos
Elimminar os comportamentos
estranhos, supeitos.
Exerccio
Identificar as Classes e os Atributos:

Uma locadora de veculos deseja um sistema para facilitar o


atendimento a seus clientes. O processo de aluguel de
carros atual confuso e est gerando insatisfao entre os
clientes. A locadora formada basicamente pelos seus
clientes e carros para aluguel. Os carros esto divididos em
diversos tipos: popular, luxo e utilitrio. As informaes
importantes sobre os carros a serem armazenadas so:
cdigo (placa do carro), tipo, modelo, ano, cor, chassis,
quilometragem e valor do aluguel (diria).
Os funcionrios sero responsveis pelo cadastro dos
clientes e dos carros adquiridos pela locadora, por efetuar o
aluguel de um carro para o cliente e dar baixa no aluguel.
Existem clientes especiais e clientes comuns. Os especiais
possuem uma taxa de desconto e um valor de
quilometragem extra para seus aluguis. Qualquer cliente
identificado por RG, nome, CPF, telefone, endereo e
cidade.
Relacionamento
Representa um relacionamento que conecta duas ou mais
classes, demonstrando a colaborao entre as instncias de
classe.

Elementos de uma associao:

Nome e direo
Multiplicidade
Navegabilidade
Papis
Restries
Qualificador
Associao ( Nome)

Uma associao pode ter um NOME descrevendo a natureza do


relacionamento.

Deve ser colocado prximo linha do relacionamento, porm no


se deve coloc-lo prximo s extremidades, para no se
confundir com os nomes de papis.

possui
Associao (nome e direo)

O nome da associao pode ainda ter uma DIREO,


representado por um pequeno tringulo preenchido,
indicando a direo na qual o nome deve ser lido.
Associao (multiplicidade)
Uma associao pode definir o nmero de instncias
da classe (objetos) que se relacionar na associao.

A multiplicidade representada por uma expresso e


deve ser colocada nas extremidades da associao,
identificando o nmero de instncias de uma classe
que pode se relacionar com outra.
Associao (multiplicidade)
Associao (navegabilidade)
Uma associao pode definir quais os elementos que
conhecem os elementos participantes do
relacionamento, definindo o sentido do relacionamento.

A navegabilidade indicada por uma seta aberta,


colocada na extremidade de destino da linha de
associao, prximo classe de destino (para a qual
est sendo feita a navegao).

Prof. Alessandro Pereira


Associao (navegabilidade)

Quando no especificada, a NAVEGABILIDADE do


relacionamento indefinida.

Prof. Alessandro Pereira


Associaes (papis)
Cada extremidade de uma associao, pode receber um nome, o
qual representa um PAPEL que especifica a funo que uma
classe desempenha na associao.

Prof. Alessandro Pereira


Associao (restries)
Restrio uma informao semntica em forma de texto, que
expressa uma proposio ou condio que o sistema deve
satisfazer.

Uma restrio pode ser escrita atravs de uma notao


matemtica, pseudocdigo, linguagem de programao,
linguagem informal ou uma linguagem formal (por exemplo em
OCL Object Constraint Language)
Associao (qualificador)

um atributo ou uma lista de atributos, presentes em uma


associao, cujos valores servem para particionar o conjunto de
instncias associadas com a outra instncia do lado qualificado.

Prof. Alessandro Pereira


Tipos de associaes

Os tipos mais comuns de associaes so:

Associao Unria
Associao Binria
Agregao
Composio
Classes de associao ?????
Associao Unria ou Reflexiva
Associao binria

Prof. Alessandro Pereira


Agregao

Prof. Alessandro Pereira


Composio

Prof. Alessandro Pereira


Relao entre associao, agregao e
composio:

Você também pode gostar