====== Especificação Funcional: Cadastro de turmas regulares ====== ===== Resumo ===== Esta especificação descreve os requisitos utilizados como base para o desenvolvimento do módulo de Cadastro de Turmas do software Tecsystem School e suas principais operações. ===== Descrição ===== O Cadastro de turmas regulares reúne todas as informações das turmas (dados gerais, alunos, professores, aulas dadas, informações adicionais e dados relativos ao Censo Escolar) e constitui um módulo centralizado para a realização de todas as operações relativas aos mesmos. Através deste módulo é possível incluir novas turmas, excluir uma turma cadastrada, editar e visualizar os dados das turmas cadastradas, visualizar os dados dos alunos matriculados na turma, bem como remanejá-los para outras turmas, configurar os professores que lecionam as disciplinas da turma, restaurar a configuração mínima de aulas da turma, reconfigurar as disciplinas pertencentes à turma e lançar as notas e faltas dos alunos matriculados na turma. Ao acessar este módulo, o sistema deve exibir uma lista com as turmas já cadastradas para facilitar as operações de exclusão, edição e visualização dos dados, já que para isso é necessário indicar qual é a turma que será utilizada. Esta lista, que deve exibir os dados mais importantes de cada turma, também deve permitir a organização e o filtro dos dados por qualquer campo que esteja visível, além de permitir que o usuário oculte/exiba campos, imprima e exporte o conteúdo da lista. ==== Dados da Turma ==== Uma turma deve possuir os seguintes campos: |< 100% 19% 60% 7% 7% 7%>| ^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^ |**__Dados gerais__** ||||| |Escola |Nome da escola da qual a turma pertence | Texto | - | Sim | |Curso |Nome do curso do qual a turma pertence | Texto | - | Sim | |Série |Nome da série da qual a turma pertence | Texto | - | Sim | |Turma |Nome da turma | Texto | 80 | Sim | |Turno |Turno no qual a turma funciona | Texto | - | Não | |Capacidade |Capacidade de alunos para a turma | Número | - | Não | |**__Alunos__** ||||| |N° |Número de ordenação do aluno na turma | Número | - | - | |Código |Código de identificação do aluno no sistema | Número | - | - | |Nome |Nome do aluno | Texto | - | - | |Data nasc. |Data de nascimento do aluno | Data | - | - | |Data matrícula na turma |Data de matrícula do aluno na turma | Data | - | - | |Movimento na turma |Movimento atual do aluno na turma | Texto | - | - | |**__Profissionais__** ||||| |**Docentes** ||||| |Disciplinas |Nome das disciplinas da turma | Texto | - | - | |Classificação da disciplina|Tipo de classificação da disciplina em relação ao diário de classe (Principal, Conjunta ou Individual) | Texto | - | - | |Professores |Nome dos professores que lecionam na turma, para as respectivas disciplinas | Texto | - | - | |**Outros profissionais** ||||| |Função |Função do professor na turma | Texto | - | - | |Professor |Nome do professor | Texto | - | - | |**Pedagogos** ||||| |Pedagogo |Nome do pedagogo | Texto | - | - | |**__Aulas dadas__** ||||| |Disciplinas |Nome das disciplinas da turma | Texto | - | - | |Períodos letivos |Quantidade de aulas lecionadas na turma, para disciplina e período letivo respectivos | Número | - | - | |Total |Quantidade total de aulas lecionadas na turma, para respectiva disciplina | Número | - | - | |**__Informações adicionais__** ||||| |Observações |Informações adicionais sobre a turma | Texto | 1000 | Não | |**__Censo escolar__** ||||| |**Identificação** ||||| |Tipo de mediação |Tipo de mediação didático-pedagógico da turma | Texto | - | Sim | |Função exercida pelo docente |Função que será exercida pelos docentes na turma | Texto | - | Sim | |Hora inicial |Hora e minuto de início das aulas na turma | Número | - | Não | |Hora final |Hora e minuto de término das aulas na turma | Número | - | Não | |Dias da semana que a turma tem aula |Indica os dias da semana que a turma tem aula | - | - | Não | |Local diferenciado |Local de funcionamento diferenciado da turma | Texto | - | Não | |Classe com ensino desenvolvido com Libras como primeira língua (bilíngue para surdos) |Indica se a turma tem ensino desenvolvido com a Língua Brasileira de Sinais – Libras como primeira língua e a língua portuguesa de forma escrita como segunda língua (bilíngue para surdos) | - | - | Sim | |**Turma multi** ||||| |Turma multi |Identifica se a turma é multi ou não | Sim/Não | - | Não | |Tipo de multi |Caso a turma seja multi, identifica se a turma é multi principal ou dependente | Principal/Dependente | - | Não | |Etapa multi |Etapa multi da turma | Texto | - | Não | |Turmas multi dependentes |Turmas existentes na escola e curso da turma, que podem ser suas dependentes | Sim/Não | - | Não | |Turma multi principal |Nome da turma principal da qual a turma é dependente | Texto | - | Não | |**Formas de organização** ||||| |Forma de organização da turma |Utilizado para identificar se a turma possui ou não as formas de organização | - | - | Não | |**Estrutura curricular** ||||| |Estrutura curricular da turma |Utilizado para identificar se a turma possui ou não as estruturas curriculares | - | - | Sim | |**Unidade curricular** ||||| |Unidade curricular da turma |Utilizado para identificar se a turma possui ou não as unidades curriculares | - | - | Não | |Professor |Nome do professor que leciona na turma, para a respectiva unidade curricular | Texto | - | - | |Outra(s) obrigatória(s) |Outra(s) unidade(s) curricular(es) obrigatória(s) | Texto | 500 | Não | === Dados do Professor / Docente vinculado à disciplina === O vínculo de um professor/docente em uma disciplina da turma deve possuir os seguintes campos: |< 100% 19% 60% 7% 7% 7%>| ^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^ |**Disciplina** ||||| |Nome da disciplina |Nome da disciplina a qual o professor será vinculado | Texto | - | Sim | |Importar aulas e faltas da disciplina do diário |Usado para identificar se as aulas e faltas da disciplina na turma serão importadas do diário | Marcar/Desmarcar | - | Não | |**Classificação da disciplina** ||||| |Classificação da disciplina |Tipo de classificação da disciplina com relação ao diário: Principal, Conjunta ou Individual | Texto | - | Sim | |**Professor** ||||| |Nome do professor |Nome do professor o qual será vinculado à disciplina | Texto | - | Sim | |**Aulas da disciplina por dias da semana** ||||| |Segunda-feira |Quantidade de aulas que o professor leciona na disciplina na segunda-feira | Número | 01 | Não | |Terça-feira |Quantidade de aulas que o professor leciona na disciplina na terça-feira | Número | 01 | Não | |Quarta-feira |Quantidade de aulas que o professor leciona na disciplina na quarta-feira | Número | 01 | Não | |Quinta-feira |Quantidade de aulas que o professor leciona na disciplina na quinta-feira | Número | 01 | Não | |Sexta-feira |Quantidade de aulas que o professor leciona na disciplina na sexta-feira | Número | 01 | Não | |Sábado |Quantidade de aulas que o professor leciona na disciplina na sábado | Número | 01 | Não | |Domingo |Quantidade de aulas que o professor leciona na disciplina na domingo | Número | 01 | Não | ==== Inclusão, alteração e exclusão de turmas ==== Todas as turmas das escolas cadastradas no sistema, podem ser cadastradas como uma turma, desde que possuam o conjunto mínimo de dados (campos obrigatórios) necessários. O sistema também deve permitir que os dados de uma turma previamente cadastrada sejam modificados. A exclusão de uma turma também deverá ser permitida, desde que esta não possua nenhum aluno matriculado. Caso possua, o sistema deverá avisar ao usuário que a turma possui vínculos com dados e não deve permitir sua exclusão. ===== Configurações e preferências do usuário ===== Não aplicável. ===== Pontos de verificação ===== ==== Na inclusão/alteração de turmas:==== * Após a inclusão de uma turma esta deverá ser exibida imediatamente na lista de turmas cadastradas. * Após a alteração de uma turma esta deverá ser exibida imediatamente nos dados da turma na lista de turmas cadastradas. * O sistema não deve permitir que o usuário salve uma turma sem que todos os campos obrigatórios estejam preenchidos; === Dados gerais === * O sistema não deve permitir que o usuário salve uma turma com o nome que já está sendo usado por outra turma da mesma série da escola. === Alunos === * O sistema deve exibir na lista de alunos matriculados, todos os alunos matriculados na turma; A cor exibida para cada aluno deve ser a mesma que é exibida na visão Padrão, ou seja, referente ao resultado final do aluno na turma regular; * O sistema deve permitir que o usuário visualize o cadastro do aluno, ao selecioná-lo na lista de alunos matriculados da turma, a partir do clique no botão Visualizar ou do duplo clique na linha que contém os dados do aluno; * O sistema deve permitir que o usuário remaneje um aluno que está matriculado na turma, para outra turma da mesma série da escola, a partir do clique no botão Remanejar. === Profissionais | Docentes === * Os docentes informados nos vínculos com as disciplinas da turma, são utilizados para a geração dos diários de classe (gerados no sistema web); * O sistema deve exibir o campo "Importar aulas e faltas da disciplina do diário": * Habilitado: apenas quando a classificação da disciplina for Individual; * Desabilitado: quando a classificação for Principal ou Conjunta; * O sistema deve exibir o campo "Importar aulas e faltas da disciplina do diário": * Sempre marcado: quando a classificação da disciplina for Principal; * Sempre desmarcado: quando a classificação da disciplina for Conjunta; * Deverão ser filtrados apenas os professores vinculados à escola da turma e que possuam a mesma função exercida no vínculo da escola, assim como na turma; * Quando já existirem professores vinculados às disciplinas da turma, não deve ser mais permitido alterar a função exercida do docente e o tipo de mediação da turma; * Quando a disciplina for Principal, o campo Professor deverá estar habilitado para edição, e assim que este for selecionado para a disciplina principal, o sistema deverá vinculá-lo automaticamente para todas as disciplinas conjuntas da série da turma; da mesma forma que também deverá excluí-lo de todas as disciplinas conjuntas, quando for excluído da disciplina principal; * Quando a disciplina for Conjunta, o campo Professor deverá estar desabilitado para edição, uma vez que o professor das disciplinas conjuntas será o mesmo informado na disciplina principal; * Quando a disciplina for Individual, o campo Professor deverá estar habilitado e será salvo apenas para a disciplina; * O sistema deve impedir que o usuário selecione um professor que já esteja vinculado na turma como Outro profissional. === Profissionais | Outros profissionais === * Deverão ser filtrados apenas os professores vinculados à escola da turma e que possuam a mesma função exercida no vínculo da escola, assim como na turma; * Os profissionais informados nessa listagem não são utilizados para geração de diários * O sistema deve impedir que o usuário selecione um professor que já esteja vinculado na turma como Outro profissional ou vinculado em alguma disciplina. === Profissionais | Pedagogos === * Deverão ser filtrados apenas os pedagogos vinculados à escola da turma; * O sistema deve impedir que o usuário vincule um pedagogo que já esteja vinculado na turma; === Aulas dadas === * O sistema deve permitir que o usuário restaure o valor de aulas dadas, informado no cadastro da disciplina, para cada disciplina da turma; * Quando a turma pertencer à série de módulo I (aulas por Dias letivos), o sistema deve permitir restaurar aulas apenas para a disciplina Principal existente na turma, ou seja, na tela de Restaurar aulas apenas essa disciplina deve ser exibida na listagem de disciplinas; * O sistema deve permitir que o usuário altere os valores de todas as aulas existentes, através do botão de editar as aulas ou do duplo clique na linha que contém a disciplina; * Ao alterar o total de aulas da turma, o sistema deve atualizar o total de aulas de todos os alunos matriculados na turma (que estejam presentes). === Censo escolar - Identificação === * Quando o campo Tipo de mediação for igual, o sistema deve: * "Presencial": Habilitar e obrigar o preenchimento dos seguintes campos: Hora inicial, Hora final, Dias da semana que a turma tem aula e Local diferenciado; * "Educação a distância": Desabilitar e limpar os seguintes campos: Hora inicial, Hora final, Dias da semana que a turma tem aula e Local diferenciado. === Censo escolar - Formas de organização === * Quando o ensino da turma for, o sistema deve: * Igual a "Educação Infantil": desabilitar e desmarcar a listagem de "Formas de organização da turma", impedindo que o usuário salve algum item; * Diferente de "Educação Infantil": obrigar o preenchimento de um item de forma de organização ao salvar o cadastro; * O sistema deve permitir que o usuário informe apenas um item da listagem "Formas de organização da turma", caso dois ou mais itens sejam marcados, deve ser exibida uma mensagem informando ao usuário; * Para cada item da listagem (quando marcado), o sistema verifica se o campo série etapa da turma (campo CodigoSerieEtapa na tabela TabSerieEtapa) pertence ao conjunto de séries etapas: * "SÉRIE/ANO (SÉRIES ANUAIS)": (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 41, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 64, 56, 67, 69, 70, 71, 72, 73 ou 74); * "PERÍODOS SEMESTRAIS": (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 64, 67, 68, 69, 70, 71, 72, 73 ou 74); * "CICLO(S)": (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 41 ou 56); * "GRUPOS NÃO SERIADOS COM BASE NA IDADE OU COMPETÊNCIA": (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 41, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 64, 56, 67, 68, 69, 70, 71, 72, 73 ou 74); * "MÓDULOS": (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 41, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 64, 56, 67, 68, 69, 70, 71, 72, 73 ou 74); * "ALTERNÂNCIA REGULAR DE PERÍODOS DE ESTUDOS": (19, 20, 21, 22, 23, 41, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 64, 67, 68, 69, 70, 71, 72, 73 ou 74); * E NÃO pertencendo, o sistema deve exibir uma mensagem ao usuário, informando que a forma de organização não é correspondente à etapa da série e não permitir salvar o item; === Censo escolar - Estrutura curricular === * O sistema deve obrigar o preenchimento de pelo menos um item de estrutura curricular ao salvar o cadastro; * Quando o usuário marcar os itens "FORMAÇÃO GERAL BÁSICA" ou "ITINERÁRIO FORMATIVO", o sistema deve desmarcar o item "NÃO SE APLICA"; * Quando o usuário marcar o item "NÃO SE APLICA", o sistema deve desmarcar os itens "FORMAÇÃO GERAL BÁSICA" e "ITINERÁRIO FORMATIVO"; * Para cada item da listagem (quando marcado), o sistema verifica se o campo série etapa da turma (campo CodigoSerieEtapa na tabela TabSerieEtapa) pertence ao conjunto de séries etapas: * "FORMAÇÃO GERAL BÁSICA": (1, 2, 3, 39, 40, 64 ou 68); * "ITINERÁRIO FORMATIVO": (1, 2, 3, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 39, 40, 41, 56, 64, 68, 69, 70, 72 ou 73); * "NÃO SE APLICA": (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 41, 56, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 67, 69, 70, 72, 71, 73 ou 74); * E pertencendo, o sistema deve exibir uma mensagem ao usuário, informando que a estrutura curricular não é correspondente à etapa da série e não permitir salvar o item; /* O sistema não deve permitir que o usuário informe mais de um item na listagem.*/ === Censo escolar - Unidade curricular === * Quando a estrutura curricular "ITINERÁRIO FORMATIVO" for marcada na listagem "Estrutura curricular da turma", o sistema deve: * Habilitar a listagem "Unidade curricular da turma" e os botões da guia; * Obrigar o preenchimento de pelo menos um item de unidade curricular ao salvar o cadastro; * Quando a estrutura curricular "ITINERÁRIO FORMATIVO" estiver desmarcada na listagem "Estrutura curricular da turma", o sistema deve: * Desabitar a listagem "Unidade curricular da turma" e os botões da guia, e desmarcar todos os seus itens; * Ao clicar no botão "Editar o vínculo do professor com a unidade curricular selecionada", o sistema deve abrir a tela "Localizar professor", para que o usuário possa selecionar o professor (que esteja vinculado na escola e possua as funções de "DOCENTE" e "DOCENTE TITULAR - EAD"); * O sistema permite ao usuário, editar a unidade curricular que esteja marcada na listagem, caso contrário, o sistema deve exibir uma mensagem informando que o item deve ser marcado; * Quando o usuário desmarcar um item na listagem, que possuir professor vinculado, o sistema deve perguntar se deseja realmente desmarcar o item, pois removerá o vínculo do professor; * Ao clicar no botão "Excluir o vínculo do professor com a unidade curricular selecionada", o sistema deve realizar a mesma ação citada acima; * Para o item "OUTRA(S) UNIDADE(S) CURRICULAR(ES) OBRIGATÓRIA(S)" da listagem "Unidade curricular da turma": * Quando for marcado: o sistema deve habilitar o campo "Outra(s) obrigatória(s)" e obrigar seu preenchimento ao salvar o cadastro da turma; * Quando for desmarcado: o sistema deve desabilitar e limpar o campo "Outra(s) obrigatória(s)"; * O sistema não deve permitir que o usuário salve para o campo um valor com menos de 4 caracteres; === Configurar disciplinas === * O sistema não deve permitir que a disciplina principal da turma seja desmarcada ao configurar as disciplinas; * O sistema deve permitir que o usuário desmarque disciplinas, que possuam notas e/ou médias cadastradas, para isso deve: * Verificar se existem notas ou médias de alunos, para então perguntar ao usuário se deseja realmente remover a(s) disciplina(s); * Remover as aulas da disciplina na turma e atualizar o total de aulas dadas; * Remover notas e médias da disciplina para todos os alunos da turma; * Calcular o resultado final dos alunos na turma (total de faltas, total de aulas e resultado final); * Atualizar a listagem de alunos (a cor exibida deve ser atualizada de acordo com o campo Resultado Final dos alunos, lembrando que nem sempre o movimento é o resultado final); * O sistema deve permitir que o usuário marque disciplinas, mesmo quando a turma já possuir alunos finalizados, para isso deve: * Verificar se existe algum aluno finalizado, para então perguntar ao usuário se deseja realmente incluir a(s) disciplina(s); * Calcular o resultado final dos alunos na turma (total de faltas, total de aulas e resultado final); Caso algum aluno estivesse como Aprovado, Reprovado, Promovido ou Retido, retornará ao resultado final Cursando; * Ajustar a situação dos alunos: os alunos que estavam finalizados na turma, retornarão à situação "Em aberto"; * Atualizar a listagem de alunos (a cor exibida deve ser atualizada de acordo com o campo Resultado Final dos alunos, lembrando que nem sempre o movimento é o resultado final); * Sempre que a configuração de disciplinas de uma turma regular for alterada (incluída ou excluída uma disciplina), o sistema deve atualizar a série do histórico que os alunos da turma estão cursando no histórico; ==== Na exclusão de turmas:==== * O sistema deve solicitar que o usuário confirme a exclusão de uma turma; * O sistema não deve permitir que uma turma seja excluída, caso ela possua alunos matriculados; * O sistema não deve permitir que uma turma multi principal seja excluída, caso ela possua turmas multi dependentes vinculadas; * Após a exclusão de uma turma esta deverá ser eliminada imediatamente na lista de turmas cadastradas. ===== Observações ===== Nenhuma informação adicional. ~~DISCUSSION|Sugira mudanças, aponte falhas ou contribua de alguma forma aqui:~~