Escolar Documentos
Profissional Documentos
Cultura Documentos
e Projeto de Sistemas
com UML
2 edio
Eduardo Bezerra
Editora Campus/Elsevier
DIAGRAMA DE CLASSE
Classes
Uma classe descreve esses objetos atravs de atributos e operaes.
Atributos correspondem s informaes que um objeto armazena.
Operaes correspondem s aes que um objeto sabe realizar.
Associaes
Para representar o fato de que objetos podem se relacionar uns
com os outros, utilizamos associaes.
Uma associao representa relacionamentos (ligaes) que so
formados entre objetos durante a execuo do sistema.
Note que, embora as associaes sejam representadas entre
classes do diagrama, tais associaes representam ligaes
possveis entre os objetos das classes envolvidas.
Multiplicidades
Representam a informao dos limites inferior e superior da
quantidade de objetos aos quais outro objeto pode se associar.
Cada associao em um diagrama de classes possui duas
multiplicidades, uma em cada extremo da linha de associao.
Nome
Simbologia na UML
Apenas Um
1..1 (ou 1)
Zero ou Muitos
0..* (ou *)
Um ou Muitos
1..*
Zero ou Um
0..1
Intervalo Especfico
i..s
Exemplos (multiplicidade)
Exemplo
Pode haver um cliente que esteja associado a vrios pedidos.
Pode haver um cliente que no esteja associado a pedido algum.
Um pedido est associado a um, e somente um, cliente.
Exemplo
Uma corrida est associada a, no mnimo, dois velocistas
Uma corrida est associada a, no mximo, seis velocistas.
Um velocista pode estar associado a vrias corridas.
Princpios de Anlise e Projeto de Sistemas com UML - 2 edio
Conectividade
A conectividade corresponde ao tipo de associao entre duas
classes: muitos para muitos, um para muitos e um para
um.
A conectividade da associao entre duas classes depende dos
smbolos de multiplicidade que so utilizados na associao.
Conectividade
Em um extremo
No outro extremo
Um para um
0..1
1
0..1
1
Um para muitos
0..1
1
*
1..*
0..*
*
*
1..*
1..*
Princpios de Anlise e Projeto de Sistemas com UML - 2 edio
0..*
0..*
Exemplo (conectividade)
10
Participao
Uma caracterstica de uma associao que indica a necessidade
(ou no) da existncia desta associao entre objetos.
A participao pode ser obrigatria ou opcional.
Se o valor mnimo da multiplicidade de uma associao igual a 1
(um), significa que a participao obrigatria
Caso contrrio, a participao opcional.
11
12
Agregaes e Composies
A semntica de uma associao corresponde ao seu significado, ou
seja, natureza conceitual da relao que existe entre os objetos que
participam daquela associao.
De todos os significados diferentes que uma associao pode ter, h
uma categoria especial de significados, que representa relaes
todo-parte.
Uma relao todo-parte entre dois objetos indica que um dos objetos
est contido no outro. Podemos tambm dizer que um objeto contm
o outro.
A UML define dois tipos de relacionamentos todo-parte, a
agregao e a composio.
13
Agregaes e Composies
Algumas particularidades das agregaes/composies:
so assimtricas, no sentido de que, se um objeto A parte de um
objeto B, o objeto B no pode ser parte do objeto A.
propagam comportamento, no sentido de que um comportamento que
se aplica a um todo automaticamente se aplica s suas partes.
as partes so normalmente criadas e destrudas pelo todo. Na classe do
objeto todo, so definidas operaes para adicionar e remover as partes.
14
Exemplos
Agregao
Composio
15
Generalizaes e Especializaes
O modelador tambm pode representar relacionamentos entre
classes.
Esses denotam relaes de generalidade ou especificidade entre as
classes envolvidas.
Exemplo: o conceito mamfero mais genrico que o conceito ser
humano.
Exemplo: o conceito carro mais especfico que o conceito veculo.
16
Generalizaes e Especializaes
Terminologia
subclasse X superclasse.
supertipo X subtipo.
classe base X classe herdeira.
classe de especializao X classe de generalizao.
ancestral e descendente (herana em vrios nveis)
17