Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Permitir que professores lancem notas de suas turmas #254

Closed
braganholo opened this issue Apr 7, 2018 · 9 comments
Closed

Permitir que professores lancem notas de suas turmas #254

braganholo opened this issue Apr 7, 2018 · 9 comments
Assignees
Labels
Milestone

Comments

@braganholo
Copy link
Contributor

Essa questão envolve várias coisas delicadas:

  1. O professor só deve ter permissão de escrita nas turmas das quais é professor. Isso exigiria adicionar uma ligação entre a entidade usuário e a entidade professor
  2. Alguns programas não querem ter essa funcionalidade, então isso deveria ser configurável.
@braganholo braganholo added this to the 4.x milestone Apr 7, 2018
@leomurta
Copy link
Member

leomurta commented Jul 7, 2019

Complementando, imagino que o que precisa ser feito é o seguinte:

  1. ter uma associação de professor para o seu usuário. Se o professor não tiver um usuário associado, a associação seria Nil.
  2. ter uma regra no controle de acesso que permita o professor lançar nota em inscrições se: (1) o usuário logado for o usuário atribuído ao professor vinculado à turma em que a inscrição foi feita (item 1), (2) a nota da inscrição ainda não tenha sido lançada e (3) o ano/período da turma coincida com o ano/período atual.
  3. ter essa funcionalidade habilitada ou não em função da configuração de alguma variável do SAPOS.
  4. ter um mecanismo de notificação que, para cada nota lançada, envia um e-mail para o professor da disciplina, o aluno e o orientador do aluno informando a nota. Se não me engano os dois últimos já estão implementados. Quanto ao primeiro, para não ter uma avalanche de e-mails, o ideal seria enviar um único e-mail com as notas de todos os alunos da sua turma assim que elas forem lançadas no Sapos.

@leomurta
Copy link
Member

leomurta commented Jul 7, 2019

Algo que pode valer a pena investirmos também é usabilidade. Ou seja, vermos se ao apertar tab ele move corretamente entre os campos e se ao escrever um determinado valor ele já ajusta os outros campos, se for o caso. Por exemplo, não me parece necessário falar se o aluno está ou não aprovado. Isso é algo que pode ser inferido pelos outros campos (nota e presença).

@Carlos-Eduardo-Cabral-da-Cunha
Copy link
Contributor

Sobre a criação de um usuário associado a um professor, imaginei inicialmente um
comportamento como abaixo. O que acham?

Na tela criar usuario

  • se o papel professor for escolhido, deve-se selecionar um professor cadastrado que não possua usuario
  • não precisaria preencher o campo "Nome do usuário" (viria da tabela professor)
  • não precisaria preencher o campo email (mas precisaria estar presente para o professor)

Na tela criar/alterar professor

  • ter sessao usuario (que pode estar habilitado ou não por um checkbox)
  • se habilitado, requer senha e confirmação, e que o email esteja preenchido.
    (nesse caso, o papel seria automaticamente professor)

Na tela alterar usuario:

  • os usuários associados a professor não poderiam ter papel, nome ou email alterados. (seriam somente leitura)
  • apenas senha poderia ser alterada

Na tela de usuário, excluir usuario:

  • talvez seja conveniente não permitir exclusão de um usuário
    associado a um professor a menos que não tenham registros
    associados a ele (por exemplo, lançamento feito atravez do usuario)
    nesse caso, um usuario poderia ser desativado por um campo booleano

@leomurta
Copy link
Member

leomurta commented Jul 8, 2019

Eu achei todas as suas propostas coerentes, Carlos. Se elas forem tranquilas de implementar, acho que podemos seguir nessa direção.

Contudo, se elas forem mais complicadas, uma alternativa seria simplesmente permitir que professor fosse associado a um usuário num primeiro momento, assumindo que ambos existem e foram criados nas suas respectivas telas. Isso já viabilizaria investir na parte de controle de acesso para lançamento de notas e colocar uma versão em produção. Com o lançamento de notas funcionando, poderíamos aprimorar a relação entre professor e usuário com os ajustes que você comentou.

@Carlos-Eduardo-Cabral-da-Cunha
Copy link
Contributor

Prefiro começar fazendo de uma forma mais simples. Depois de sugerir os comportamentos achei que ficaram complicados mais do que o necessário.

@braganholo
Copy link
Contributor Author

braganholo commented Jul 8, 2019 via email

@braganholo
Copy link
Contributor Author

Lembrando que para usar essa funcionalidade é necessário colocar "yes" como valor da variável "professor_login_can_post_grades".

@braganholo
Copy link
Contributor Author

Carlos, nossos dois beta testers reclamaram do tamanho do campo de matrícula na tela de lançamento de notas. Disseram que aparece apenas o primeiro nome do aluno e que isso pode causar confusão quando tivermos alunos com o mesmo primeiro nome. Vc poderia por favor aumentar um pouco aquele campo? E o ícone verde que aparece nesse campo, é possível retirar? (acho que já investigamos isso no passado mas não me lembro qual foi a conclusão).

@braganholo braganholo reopened this Jan 22, 2020
@leomurta leomurta added 4.5.0 and removed OK labels Jan 27, 2020
@braganholo
Copy link
Contributor Author

Estou fechando essa issue e lançando as pendências dela em outra issue específica (bugfix #311 ).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants