~~ODT~~
Tarefas
Este caso de uso é responsável por gerenciar todos os casos de uso realizados sobre as atividades nas turmas virtuais. Tanto os docentes quanto os discentes participantes da turma virtual podem acessá-lo. As tarefas da turma virtual são atividades que os professores podem disponibilizar para que os alunos pratiquem fora da sala de aula.
Descrição do Caso de Uso
O caso de uso inicia quando o usuário acessa o link Sigaa → Turma Virtual → Atividades → Tarefas.
Inicialmente é exibido uma lista com todas as tarefas cadastradas divididas en tarefas individuais e tarefas em grupo, e para cada tarefa os seguintes dados:
- Título: Tipo - TEXTO.
- Período de Entrega: Tipo - DATA.
- Possui Nota: Tipo - TEXTO.
- Envios: Tipo - NUMÉRICO.
Para os discentes aparecerão as seguintes opções:
- Enviar Tarefa
- Visualizar Tarefa Enviada/Corrigida
Para os discentes também é exibida uma informação sobre se a tarefa já foi corrigida.
Para os docentes aparecerão as seguintes opções:
- Alterar Tarefa: Nessa opção irão aparecer os campos especificados no caso de uso de Cadastrar Tarefa, mas com os dados previamente preenchidos.
- Excluir Tarefa
Para o aluno - Fluxo Alternativo 1 : Enviar Tarefa
O sistema exibe:
- Nome da Tarefa: Tipo - TEXTO.
- Descrição: Tipo - TEXTO.
- Período: Tipo - DATA.
e solicita:
- Resposta* : se a tarefa for do tipo
TEXTO ONLINE
- Arquivo* : se a tarefa for do tipo
ENVIO DE ARQUIVO
- Comentários que podem ser visualizados pelo professor: Tipo - TEXTO.
A tarefa pode ser então enviada.
Para o aluno - Fluxo Alternativo 2 : Visualizar Tarefa Enviada/Corrigida
Permite que o discente visualize a tarefa enviada e os comentários enviados ao professor e caso o professor tenha corrigido a tarefa permite o discente visualizar os comentários da correção.
Principais Regras de Negócio
- RN01: Somente discentes e docentes participantes da turma atual podem visualizar as tarefas / respostas enviadas.
- RN02: Os discentes só podem responder às tarefas durante o período indicado pelo docente.
- RN03: Uma tarefa ao ser removida, não deve ser excluída do banco de dados, mas desativada.
Resoluções/Legislações Associadas
Não se Aplica.
Classes Persistentes e Tabelas Envolvidas
Classe | Tabela |
---|---|
br.ufrn.sigaa.ava.dominio.TarefaTurma | sigaa.academico.ava.tarefa_turma |
br.ufrn.sigaa.ava.dominio.RespostaTarefaTurma | sigaa.academico.ava.resposta_tarefa_turma |
Plano de Teste
Sistema: Sigaa
Módulo: Turma Virtual
Link: Sigaa → Turma Virtual → Atividades → Tarefas
Usuário: selan (docente), victorpereira(discente)
Papel: Docente, Discente
Cenários de Teste
- Deve-se testar cadastrar tarefas em subturmas. Os alunos das subturmas devem poder visualizar e responder as tarefas normalmente. Os docentes também visualizam todas as respostas enviadas.
- Verificar se realmente está sendo cadastrada uma avaliação para a turma caso o docente escolha que ela valerá pontos na média.
- Verificar se o formulário para resposta está aparecendo de acordo com o tipo da tarefa (envio de arquivo deve aparecer um <input type=“file/>”
- Verificar se o aluno pode baixar a tarefa que ele próprio enviou em Visualizar Tarefa Enviada/Corrigida.
- Testar se a tarefa não está sendo removida do banco de dados, mas sim desativada.
- Testar se as tarefas estão sendo divididas em tarefas individuais e tarefas em grupo.
- Testar se quando o discente envia uma tarefa em grupo, todos os membros do grupo recebem um e-mail de notificação.
- Testar se tarefas em grupo não podem ser alteradas para tarefas individuais.
- Testar se tarefas individuais não podem ser alteradas para tarefas em grupo.
- Testar se o sistema impede um discente sem grupo responder tarefas em grupo.
- Testar se caso um discente responder uma tarefa em grupo, e depois for trocado para outro grupo, ele continua como um aluno que respondeu a tarefa no grupo original.
Dados para o teste
Verifica o campo ativo de uma tarefa especifica.
select t.id_tarefa_turma , t.ativo from ava.tarefa as t where t.id_tarefa_turma = 17185704;''
Verifica as tarefas que o campo ativo é nulo
select * from ava.atividade_avaliavel a join ava.tarefa t on t.id_tarefa_turma = a.id_atividade_avaliavel where a.ativo is null;
Verifica as tarefas que o campo ativo não é nulo
select * from ava.atividade_avaliavel a join ava.tarefa t on t.id_tarefa_turma = a.id_atividade_avaliavel where a.ativo is not null;
Verifica as tarefas que o campo ativo é true
select * from ava.atividade_avaliavel a join ava.tarefa t on t.id_tarefa_turma = a.id_atividade_avaliavel where a.ativo = true;
Verifica as tarefas que o campo ativo é false
select * from ava.atividade_avaliavel a join ava.tarefa t on t.id_tarefa_turma = a.id_atividade_avaliavel where a.ativo = false;
Verifica todas as tarefa de uma turma. O código da turma deve ser colocado entre aspas simples. Ex: 'DIM0435'
select t.id_tarefa_turma , t.ativo from ava.tarefa as t inner join ava.topico_aula as ta using (id_topico_aula) inner join ensino.turma as tr using (id_turma) inner join ensino.componente_curricular as cc using (id_disciplina) where cc.codigo = 'DIM0435';