Upload
felipecosta
View
172
Download
2
Embed Size (px)
Citation preview
DIAGRAMA DE CLASSES
O diagrama de classes é uma importante ferramenta para a documentação de um
sistema ou produto de software.
Segundo Fowler (2000) um diagrama de classes descreve os tipos de objetos no
sistema e os vários tipos de relacionamentos estáticos que existem entre eles. As classes
representam as propriedades e o comportamento de um conjunto de objetos em um
sistema e conseqüentemente, como essas classes não existem sozinhas, é importante
também representar os seus relacionamentos.
O diagrama de classes é similar ao diagrama de Entidades-Relacionamentos da área
de banco de dados, porém, ele se encontra em um nível de abstração de mais alto nível e
contém uma importante diferença que é a de representar o comportamento da classe, ou
seja, através de suas operações ou métodos. Portanto a persistência é uma importante
característica no conceito desse diagrama, uma vez que, algumas classes podem
representar, futuramente, em um projeto de sistema, entidades físicas implementadas no
banco de dados do sistema.
CLASSES
As classes, no diagrama de classes, são representadas por um retângulo com,
normalmente, três divisões:
Nome;
Atributos;
Operações.
Diagrama de Classe - Classe
Em uma classe os atributos representam as propriedades da classe e as operações,
representam os métodos desta classe.
ASSOCIAÇÃO
As associações representam as relações entre as ocorrências das classes. É um tipo
de relacionamento estrutural e estático entre as classes. As associações em um diagrama
de classe definem os tipos de ligações que os objetos participam.
Diagrama de Classe - Associação
AGREGAÇÃO
Descreve uma relação de dependência entre duas classes, é a descrição de um
relacionamento todo-parte ou “parte de”, também conhecido como um relacionamento
do tipo HAS-A. É um caso particular de associação. Esse tipo de relacionamento traz os
conceitos de responsabilidades entre classes. A agregação é um tipo de relacionamento
que não força a destruição do conjunto, ou seja, uma vez destruído o objeto todo, não há
obrigatoriedade da destruição do objeto parte, assim, no exemplo abaixo, mesmo se
uma equipe “X” acabar, o jogador poderá fazer parte de outra equipe.
Diagrama de Classe - Agregação
COMPOSIÇÃO
Também é a descrição de um relacionamento todo-parte ou “parte de”, é conhecido
como HAS-A, mas neste caso o objeto parte pertence somente a um objeto todo, ou
seja, esse é um tipo de relacionamento mais forte entre duas classes ou entidades. Esse
tipo de relacionamento traz, assim como a Agregação, os conceitos de responsabilidades
entre as classes, porém de forma mais acentuada.
Diagrama de Classe - Composição
MULTIPLICIDADE
É a indicação de quantos objetos podem participar de um relacionamento.
Diagrama de Classe - Multiplicidade
NOME DO PAPEL
É uma descrição (rótulo explicativo) inserida na ponta de uma associação.
Diagrama de Classe - Composição
GENERALIZAÇÃO
É um relacionamento onde temos uma classe ancestral (supertipo) e outras classes
herdadas (subtipos). O subtipo deve incluir todos os elementos (atributos e operações)
do supertipo. Na implementação física corresponde a um processo de herança. Este é o
relacionamento IS-A (é um).
CLASSES DE ASSOCIAÇÃO (OU CLASSE ASSOCIATIVA)
Permite acrescentar atributos, operações e outras características às associações. Na
figura abaixo, observe que, se um fornecedor pode fornecer mais de um produto e um
produto pode ser fornecido por mais de um fornecedor, temos um relacionamento N
para N. Caso o cliente deseje verificar a data e o valor total de um fornecimento, isso
poderá ser resolvido facilmente por uma classe associativa de nome Fornecimento.