/pds-app

Primary LanguageTypeScript

TP de PDS 2023/1

Sistema šŸ’»

Iremos criar um sistema para avaliaĆ§Ć£o de professores e aulas no DCC, cujo objetivo Ć© ajudar os alunos do DCC a escolherem optativas a cursar. A ideia seria a existĆŖncia de duas funcionalidades principais:

  • uma em que o usuĆ”rio possa escolher uma disciplina que jĆ” cursou (especialmente optativas), avaliar o grau de dificuldade da matĆ©ria, quĆ£o trabalhosa ela Ć©, apontar com qual professor teve a disciplina, dar uma nota para a didĆ”tica dele e confirmar;
  • outra que mostraria um compilado com as mĆ©dias das notas inseridas por todas as avaliaƧƵes.

Integrantes šŸ‘§šŸ»

  • Ailton Vinaud Junior (Backend)
  • Ana Flavia de Matos Souza (Frontend)
  • Fabyo Silveira Amorim (Frontend)
  • TaĆ­s Christofani (Backend)

Tecnologias āš’ļø

  • Backend: .NET Core.
  • Docker
  • AWS (EC2)
  • Banco de dados: SQL Server.
  • Frontend: Next.js.

BackLog do produto

1 - Criar conta para Login

Eu como usuƔrio gostaria de realizar login no sistema para proteger meu perfil de ser editado e conseguir consultar e editar minhas avaliaƧƵes

2 - Criar perfil de usuƔrio

Eu como usuƔrio gostaria de criar um perfil para que as pessoas possam saber minhas caracterƭsticas e me conhecerem melhor como estudante.

3 - Avaliar uma disciplina cursada

Como usuĆ”rio eu quero avaliar as disciplinas e professores das matĆ©rias que jĆ” cursei para que eu possa divulgar para outros estudantes como foi minha experiĆŖncia.

4 - Editar uma avaliaĆ§Ć£o realizada

Eu, como usuĆ”rio, gostaria de poder alterar uma avaliaĆ§Ć£o realizada anteriormente, caso tenha preenchido algum campo errado ou mudado de opiniĆ£o.

5 - Visualizar avaliaĆ§Ć£o geral dos professores

Eu como usuƔrio gostaria de visualizar as notas dos professores avaliados

6 - Visualizar avaliaĆ§Ć£o geral das disciplinas

Eu como usuƔrio gostaria de visualizar as disciplinas avaliadas e suas notas mƩdias

7 - Visualizar as avaliaƧƵes individuais dos professores

Eu como usuĆ”rio gostaria de selecionar uma avaliaĆ§Ć£o de um professor e visualizar detalhes de cada avaliaĆ§Ć£o feita, incluindo dados do avaliador

8 - Visualizar as avaliaƧƵes individuais das disciplinas

Eu como usuĆ”rio gostaria de selecionar uma disciplina e visualizar detalhes de cada avaliaĆ§Ć£o feita, incluindo dados do avaliador

9 - Ordenar avaliaƧƵes pela mƩdia de algum ou mais critƩrios

Como usuĆ”rio, eu gostaria de poder ordenar as avaliaƧƵes em tela de forma a atender alguma porcentagem de algum critĆ©rio de avaliaĆ§Ć£o (por exemplo, mĆ©dia da dificuldade da matĆ©ria)

10 - Filtrar avaliaƧƵes pela mƩdia de algum ou mais critƩrios

Como usuĆ”rio, gostaria de poder visualizar apenas as disciplinas que cobram ou nĆ£o presenƧa

11 - Visualizar o perfil dos avaliadores das avaliaƧƵes

Como usuĆ”rio, gostaria de poder ver o perfil de quem realizou determinada avaliaĆ§Ć£o, para ver se possuĆ­mos coisas em comum ou divergentes que indicam se minha experiĆŖncia com a disciplina serĆ” como a do colega.

12 - Dar like ou dislike no comentĆ”rio de alguma avaliaĆ§Ć£o especĆ­fica

Como usuĆ”rio, gostaria de poder mostrar que concordo ou discordo dos comentĆ”rios deixados pelos donos de cada avaliaĆ§Ć£o, na seĆ§Ć£o que terĆ” para dar sua opiniĆ£o de forma aberta.

BackLog da Sprint 2:

1 - Criar cadastro de usuƔrio

Eu como usuƔrio gostaria de me cadastrar no sistema

- Tarefas e responsƔveis

  • CriaĆ§Ć£o de ambiente EC2 AWS [Ailton]
  • CriaĆ§Ć£o de Projeto Base C# .Net utilizando arquitetura em camadas [Ailton]
  • CriaĆ§Ć£o de PipeLine automatizada para publicaĆ§Ć£o na AWS [Ailton]
  • CriaĆ§Ć£o de banco de dados RDS na AWS [Ailton]
  • CriaĆ§Ć£o do repositĆ³rio com nextjs configurado.[Fabyo] (Done)
  • ConfiguraĆ§Ć£o inicial do typescript/prettier e biblioteca de estilizaĆ§Ć£o - ambiente developer friendly.[Fabyo] (Done)
  • CriaĆ§Ć£o dos componentes da interface de cadastro.[Fabyo] (Done)
  • CriaĆ§Ć£o da tela de cadastro.[Fabyo] (Done)
  • IntegraĆ§Ć£o do front com o serviƧo de cadastro. [Fabyo] (Done)
  • CriaĆ§Ć£o das tabelas de usuĆ”rio [Tais] (Done)
  • CriaĆ§Ć£o da rota de insert para cadastro de usuĆ”rio. [Tais] (Done)
  • CriaĆ§Ć£o da tela de cadastro. [Ana]
  • CriaĆ§Ć£o da tela de ver perfil. [Ana]
  • CriaĆ§Ć£o da tela de minhas avaliaƧƵes. [Ana]
  • CriaĆ§Ć£o da tela de explorar avaliaƧƵes. [Ana]
  • CriaĆ§Ć£o das telas de cadastrar nova avaliaĆ§Ć£o. [Ana]
  • CriaĆ§Ć£o da tela de detalhes da matĆ©ria. [Ana]

2 - Criar conta para Login

Eu como usuƔrio gostaria de realizar login no sistema para proteger meu perfil de ser editado e conseguir consultar e editar minhas avaliaƧƵes

- Tarefas e responsƔveis

  • CriaĆ§Ć£o de rota para autenticaĆ§Ć£o [Ailton]

  • CriaĆ§Ć£o dos componentes da interface de login. Fabyo

  • CriaĆ§Ć£o da tela de login.[Fabyo] (Done)

  • RefatoraĆ§Ć£o da tela de login da interface Fabyo

  • IntegraĆ§Ć£o do front com serviƧo de login [Fabyo] (Done)

  • Criar lĆ³gica de permissĆ£o de acessibilidade das rotas (usuĆ”rio logado) [Fabyo] (Done)

3 - Avaliar uma disciplina cursada

Como usuĆ”rio eu quero avaliar as disciplinas e professores das matĆ©rias que jĆ” cursei para que eu possa divulgar para outros estudantes como foi minha experiĆŖncia.

- Tarefas e responsƔveis

-- Banco:

  • Criar tabela de disciplinas [Tais] (Done)

  • Criar tabela de professores [Tais] (Done)

  • Criar tabela com perguntas [Ailton]

  • Criar tabela de avaliaĆ§Ć£o [Ailton] (id_avaliaĆ§Ć£o id_disciplina id_professor id_questionario id_usuario resposta dataAvaliaĆ§Ć£o)

    --API:

  • Criar controller de disciplinas [Tais] (Done)

  • Criar controller de professores [Tais] (Done)

  • Criar controller para get de perguntas [Ailton]

--Front:

  • Criar componente de select disciplinas e professores [Ana]
  • Criar tela de nova avaliaĆ§Ć£o [Ana]
  • IntegraĆ§Ć£o do front com serviƧo [Fabyo] (Done)

--API:

  • Criar controler de Insert avaliaĆ§Ć£o [Ailton]
  • Criar controller de Update avaliaĆ§Ć£o [Tais] (Done)

--Front:

  • Criar tela de avaliaĆ§Ć£o [Ana]
  • Criar componente radio [Ana]

4 - Excluir uma avaliaĆ§Ć£o realizada

Eu, como usuĆ”rio, gostaria de poder alterar uma avaliaĆ§Ć£o realizada anteriormente, caso tenha preenchido algum campo errado ou mudado de opiniĆ£o.

- Tarefas e responsƔveis

  • Criar rota de delete avaliaĆ§Ć£o [Ailton]
  • Inserir componente de exclusĆ£o de lista.

5 - Visualizar avaliaĆ§Ć£o geral dos professores

Eu como usuƔrio gostaria de visualizar as notas dos professores avaliados

- Tarefas e responsƔveis

  • Criar rota que gere a mĆ©dia das avaliaƧƵes dos professores [Tais] (Cancelado)
  • Criar tela de visualizaĆ§Ć£o de avaliaĆ§Ć£o de professores [Fabyo]

6 - Visualizar avaliaĆ§Ć£o geral das disciplinas

Eu como usuƔrio gostaria de visualizar as disciplinas avaliadas e suas notas mƩdias

- Tarefas e responsƔveis

  • Criar rota que gere a mĆ©dia das avaliaƧƵes das disciplinas [Tais] (Done)
  • Criar tela de visualizaĆ§Ć£o de avaliaĆ§Ć£o das disciplinas: Criar componente de professores relacionados [Ana] Criar componente de avaliaĆ§Ć£o (barra crescente com percentual avaliativo para cada pergunta) [Ana]
  • IntegraĆ§Ć£o do front com serviƧo [Fabyo] (Done)

InstruƧƵes para rodar šŸ–±ļø

  • Ɖ necessĆ”rio ter Node.js >= 14.6.0 instalado na mĆ”quina
  • Instale as dependĆŖncias com o comando npm install
  • Inicialize o projeto com o comando npm run dev