Diretriz: Diagrama de Classes
Os diagramas de classe incluem classes e seus relacionamentos com outras classes para ilustrar a estrutura estática de um modelo de objeto. Esta diretriz identifica as situações em que a produção de um diagrama de classe é vantajosa.
Relacionamentos
Descrição Principal

Explicação

Os diagramas de classes mostram a estrutura estática do modelo, principalmente os elementos existentes, como classes, sua estrutura interna e seus relacionamentos com outras classes. Eles não mostram informações temporárias.

Um diagrama de classes é apresentado como um conjunto de elementos do modelo declarativos (estáticos) - como classes, pacotes e seus relacionamentos - que são conectados entre si e a seu conteúdo como um gráfico. Os diagramas de classe podem ser organizados em (e pertencentes a) pacotes, mostrando apenas o que é relevante em um determinado pacote.

Uso

As estruturas de classe a seguir são adequadas para ilustração em diagramas de classes, mas você não usará todas elas em todas as situações.

  • Os subsistemas de design, classes, interfaces e suas relações mais importantes. Diagramas desse tipo podem funcionar como um resumo do modelo de design e são de grande ajuda na revisão do modelo. Esses diagramas provavelmente serão incluídos na visão lógica da arquitetura.
  • Classes coerentes ou relacionadas funcionalmente.
  • Classes que pertencem ao mesmo pacote.
  • Hierarquias de generalização e agregação importantes.
  • Estruturas importantes de classes de entidade, incluindo estruturas de classe com relações de associação, agregação e generalização. Se for possível, crie um diagrama de classes que contenha todas as classes dos objetos de longa duração e seus relacionamentos. Esse tipo de diagrama é especialmente útil para revisar o que está armazenado no sistema e as estruturas de armazenamento.
  • Os pacotes e suas dependências, possivelmente ilustrando a divisão em camadas.
  • As classes que participam de uma determinada realização de casos de uso.
  • Uma única classe, seus atributos, operações e relacionamentos com outras classes.

Apresente cada classe em pelo menos um diagrama. Algumas vezes, é possível entender melhor o modelo se uma classe aparecer várias vezes na mesma visualização, por exemplo, caso você deseje fazer a diferenciação entre diferentes objetos da classe.