7
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;

Diagrama de Classes

Embed Size (px)

Citation preview

Page 1: Diagrama de Classes

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

Page 2: Diagrama de Classes

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.

Page 3: Diagrama de Classes

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

Page 4: Diagrama de Classes

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).

Page 5: Diagrama de Classes

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.