Giter VIP home page Giter VIP logo

unb-web's Introduction

unb-web's People

Stargazers

 avatar

Watchers

 avatar

Forkers

maydmoon seunb seunb

unb-web's Issues

[USER-STORY] Excluir exames

Como professor desejo ser capaz de excluir exames que ainda não foram realizados por estudantes. Dessa forma, posso descartar qualquer exame mal implementado que não deva ser feito por estudantes.

Requisitos:

  • Durante a página de visualizar exame, o professor deve ver um botão de excluir o exame.
  • O exame só pode ser excluído se não houve qualquer resposta de estudantes.

Testes de Aceitação:

  1. O professor entra na página de visualizar o exame e então clica no botão de excluir o exame
  2. Se já houver ao menos uma resposta de um estudante nesse exame, uma mensagem de erro será mostrada
  3. Caso contrário, o exame será excluido com sucesso e então será redirecionado para a página da turma

[USER-STORY] Estudante deve ser capaz de realizar exame somente na data presente

Como estudante, desejo ser capaz de realizar exame se e somente se a data presente estiver entre o momento da abertura e o momento de encerramento do exame. Dessa forma, a avaliação do meu desempenho será justa.
Requisitos:

  • O sistema deve permitir que o estudante realize o exame somente se a data presente estive entre a data/hora de abertura do exame e data/hora de encerramento do exame.

Testes de Aceitação:

  • O estudante acessa a página da turma e clica em realizar exame
  • Se a data/hora presente estiver no prazo de realização, o estudante é redirecionado para a página de realização
  • Caso o horário presente não coincida com o horário de realização do exame, uma mensagem de aviso deve ser mostrado ao estudante, assim como o sistema deve impedir que o estudante prossiga para a página de realização de exame.

[USER-STORY] Banco de Questões

Como professor, preciso ter um banco de questões no sistema,
onde posso criar, editar e remover questões. Dessa forma, o professor
poderá usar essas questões em futuros exames.
Requisitos:
• O professor consegue criar uma nova questão no sistema e inserir no seu banco de
questões.
• O professor consegue editar uma questão do seu banco de questões.
• O professor consegue remover uma questão do seu banco de questões. Mas a questão não
pode estar vinculada a nenhum exame.
• O professor consegue vincular uma questão a vários exames.
Testes de aceitação:
1. O professor cria uma nova questão no sistema.
2. O professor verifica se a questão está disponível no seu banco de questões.
3. O professor editar a questão e verifica se as alterações ocorreram corretamente.
4. O professor remove uma questão e verifica se de fato, a questão foi removida do sistema.

[USER-STORY] Um exame em realização deve ser automaticamente concluído no momento de encerramento

Como professor, desejo que, após o término do período de realização, o exame deve ser encerrado automaticamente, não permitindo a edição da resposta pelos alunos. Além disso, o estudante só deve visualizar a nota do exame e suas respostas após o término do prazo. Dessa forma, é garantido que o estudante que as respostas de um estudante que não terminou a tempo fiquem salvas.
Requisitos:

  • Durante a realização do exame, o sistema deve verificar periodicamente a data/hora afim de averiguar se o tempo presente está dentro do tempo de realização do exame.
  • Ao terminar o exame, o estudante só deve ser capaz de visualizar sua nota assim como suas respostas após o término do prazo de realização do exame.

Testes de Aceitação:

  • O estudante não consegue finalizar a prova a tempo. Suas respostas são salvas automaticamente.
  • O estudante finaliza o exame antes do prazo e tenta acessar a prova para verificar sua nota. Uma mensagem de aviso é mostrado informado que o prazo de realização ainda não terminou.
  • O estudante acessa sua o exame após o prazo de realização e consegue ver sua nota e suas repostas.

Definir modelo de dados

Objetivo é definir qual é modelo de dados para o projeto.
Desenhar um MER contendo todas as entidades envolvidas no projetos.
As entidades até então são:

  • Professor
  • Estudante
  • Exame
  • Questão

[User-story] Vincular questão a exames

1.1.5(a) - Vincular questão a exames

Como professor, quero ser capaz de inserir uma questão
em mais de um exame na hora da criação do exame. Dessa forma,
poderei utilizar diversas questões e vários exames diferentes.
Requisitos:

  • O professor consegue vincular uma questão x a um exame y
  • O professor consegue vincular uma questão x a um exame z

Testes de aceitação:

  1. Durante a criação do exame y, o professor seleciona a questão x.
  2. Durante a criação do exame z, o professor seleciona a questão x.
  3. O professor verifica que a mesma questão x agora está presente tanto no exame y
  4. quanto no exame z.

[User-story] Atribuir notas as questões presentes em um exame

1.1.6 - Atribuir notas as questões presentes em um exame
Como professor, devo ser capaz de atribuir notas a cada questão
inserida em um dado exame. Dessa forma, a nota do exame será calculada
a partir de todas as questões e será possível avaliar estudantes com
base na nota conquistada em cada exame realizado.
Requisitos:

  • O professor consegue definir notas para cada questão presente em um exame
  • O professor consegue visualizar a nota de cada questão presente em um exame

Testes de aceitação:

  1. O professor entra na seção de criar exame
  2. Professor seleciona uma questão do seu banco de questões
  3. Altera o valor da questão no exame
  4. Salva o exame no sistema para uma determinada exame
  5. Verifica se o exame foi salvo corretamente

[USER STORY] Professor edita e anula questão de um exame

Como professor desejo ser capaz de anular uma questão de uma exame que já foi finalizado. Além disso, quero ser capaz de editar a nota que um estudante obteve em uma questão. Com isso, é possível corrigir questão do tipo dissertativa onde somente eu, o professor, pode avaliar se a resposta do estudante está correta. Além disso, caso uma questão tenha problemas de qualquer cunho, é possível anular para que evite problemas na avaliação.

Requisitos:

  • Professor deve ser capaz de editar a nota de um estudante que realizou o exame.
  • O exame deve está finalizado e com o tempo de realização expirado
  • O professor conseguir anular uma questão, fazendo com que todos que realizou o exame recebem a nota da questão

Testes de Aceitação:

  • O professor clica para visualizar a nota de um estudante e então é redirecionado para o exame contendo todas as respostas do aluno
  • Ele então seleciona a questão que deseja corrigir e altera sua nota
  • Para que anule uma questão, o professor vai em editar um exame e caso o exame esteja com status encerrado/finalizado, ele será capaz de anular qualquer questão
  • O sistema deve garantir que todos que realizaram o exame ganham nota da questão anulada.

[User-story] Criar exames

1.1.5(b) - Criar exames
Como professor, desejo criar exames contendo um ou
várias questões presentes no meu banco de questões.
Dessa forma, poderei avaliar meus estudantes com base
no desempenho em relação aos exames criados.
Requisitos:

  • O professor consegue inserir um ou mais questões no exame
  • O professor consegue definir o valor de cada questão
  • O sistema deve calcular o valor total das questões como nota final do exame
  • O professor define um horário de início e término do exame
  • O professor consegue salvar o exame no sistema para determinada turma

Testes de aceitação:

  1. O professor vai para seção de criar exame
  2. Insere uma ou mais questões presentes no seu banco de questões
  3. Define o valor que cada questão terá no exame
  4. O professor define um horário de início e término do exame
  5. Salva o exame no sistema para uma determinada turma
  6. Verifica se o exame está correto

Modificar modelo de Dados

Deve-se modificar o modelo de dados atual para incluir novas entidades.
Entre as quais serão:

  • Questão
  • Exame
  • QuestaoExame (Entidade Associativa)
  • NotaExames
  • RespostaQuestaoExame (Entidade Fraca - dependente de Questao, Estudante e Exame)

Deve-se ainda renomear a entidade Aluno para Estudante afim de padronizar o modelo de acordo com os requisitos da especificação do trabalho.

Adicionar relacionamentos nas tabelas já existentes:

  • Professor e Questao
  • Professor e Exame
  • Estudante e NotaExame
  • Estudante e RespostaQuestaoExame

[USER-STORY] Cadastrar questões de múltipla escolha

Como professor, devo ser capaz de cadastrar questões de múltipla
escolha no sistema para que seja possível utilizá-las em exames,
sendo possível assim, avaliar os estudantes.
Requisitos:
• O professor consegue inserir um enunciado a questão de múltipla escolha
• O professor consegue inserir opões das questões
• O professor consegue selecionar quais das opções são válidas/corretas
• O professor consegue salvar a questão criada no banco de questões
Testes de aceitação:

  1. O professor escolhe criar a questão de múltipla escolha
  2. Insere um enunciado na questão
  3. Cria e insere opções das questões
  4. Marque quais alternativas estão corretas
  5. Salva a questão no seu banco de questão
  6. Verifica se a questão foi salva corretamente em seu banco de questão

[User-Story] - Realizar exame

2.1.0 - Realizar exame
Como estudante, quero realizar um exame para a turma que estou matriculado, para que seja
possível avaliar meu desempenho acadêmico. Após o envio do exame, não devo ser possível editálo, para que os dados dos exames permaneçam íntegros.
Requisitos:

  • O sistema deve permitir que o estudante acesse a página de realização do exame e deve
    exibir as perguntas e opções de resposta do exame.

  • Deve permitir que o estudante selecione suas respostas para cada pergunta e fornece um
    botão de envio para o estudante finalizar o exame.

  • Após o envio do exame, o sistema não deve permitir que o estudante edite suas respostas.

  • O sistema deve armazenar as respostas do estudante para posterior avaliação.

Testes de Aceitação:

  1. O estudante acessa a página de realização do exame.
  2. O sistema exibe as perguntas e opções de resposta do exame.
  3. O estudante seleciona suas respostas para cada pergunta.
  4. O estudante clica no botão de envio.
  5. O sistema registra as respostas do estudante e finaliza o exame.

[User-story] Agendar horário de abertura/encerramento de exames

1.1.7 - Agendar horário de abertura/encerramento de exames
Como professor, quero agendar um horário limite de início e fim
para cada exame. Dessa forma, isso irá garantir que os estudantes só poderão realizar
um dado exame num prazo estipulado.
Requisitos:

  • O professor consegue definir um horário de início para o exame
  • O professor consegue definir um horário de término para o exame

Testes de aceitação:

  1. Durante a criação do exame
  2. O professor insere o horário de início
  3. Insere o horário de término
  4. Salva as alterações
  5. Verifica se as alterações foram armazenadas corretamente no sistema

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.