Ir para o conteúdo

Diagrama de Classes

Introdução

  O Diagrama de Classes é utilizado para representar e descrever a estrutura estática de classes do sistema, definindo os atributos, métodos e relacionamentos entre as classes. Além disso, fornece uma visão geral do comportamento estático do sistema, e pode ser utilizado como base para outros diagramas UML.
  Segundo Guedes decorre em seu livro, em alguns métodos de desenvolvimento de software, como o Processo Unificado, é recomendado utilizar o diagrama de classe ainda na fase de análise. Assim, "produzindo-se um modelo conceitual a respeito das informações necessárias ao software." (Gilleanes T. A. Guedes, 2018)[3].
  No modelo conceitual, nos preocupamos basicamente em apresentar as informações que a aplicação necessitará, no contexto de classes e seus atributos, assim como as associações entre as classes. Nessa etapa não modelamos características que essas classes poderão ter, como por exemplo os métodos, que serão descobertos na fase de modelagem dinâmica nos diagramas de interação, como o diagrama de sequência.

Metodologia

  O desenvolvimento do diagrama de classes levou em consideração as decisões de tecnologias e estruturas que serão utilizadas no projeto. Sendo assim, o diagrama de classes aborda a representação das classes que serão desenvolvidas na API do projeto, a qual contará com arquitetura MVC.
  Portanto, foi focada a representação das entidades que compõem as camadas de modelos e controllers.
  É importante mencionar que os nomes das classes, de seus atributos e métodos foram representados em Inglês e no estilo CamelCase para que, desde já, seja feita uma padronização no que se refere ao que será implementado em código.

Diagrama de classes

Versão 1.0

Diagrama de classes

Figura 1: Diagrama de classes v1

Versão 2.0

  A seguir temos a segunda versão do diagrama de classes, o qual foi aprimorado conforme o feedback da segunda entrega e os ajustes necessários após as escolhas dos padrões de projetos
  Nessa versão, foram corrigidas as representações das relações entre as classes Teacher, Adm, Class junto a classe EC. Além disso, foram adicionadas as classes BoardComposite e ProjectController conforme utilização nos padrões composite e state.

Diagrama de classes

Figura 2: Diagrama de classes v2

Observações:

  • Todos os atributos privados possuem métodos Getters e Setters, e não foram incluídos no diagrama para facilitar a visualização.
  • A maioria dos métodos das classes controllers tem relação de dependência com a classe AuthController, tais relações não foram incluídas no diagrama para facilitar a visualização.

Bibliografia

Versionamento

Versão Data Modificação Autor
0.1 13/08/2021 Criação do Diagrama de classes Daniel Porto, Eliseu Kadesh
1.0 20/08/2021 Abertura do Documento Eliseu Kadesh
1.1 20/08/2021 Adição da metodologia Daniel Porto
2.0 21/08/2021 Correções no Diagrama de Classes Eliseu Kadesh
2.1 21/08/2021 Revisão por pares Bruno Félix, Francisco Emanoel
2.2 19/09/2021 Atualização do diagrama Daniel Porto
2.3 19/09/2021 Revisão por pares Matheus O. Patrício, Edson Soares
3.0 21/09/2021 Reestruturando a introdução (revisão ent.2) Edson Soares, Nilo Mendonça