====== Especificação Funcional: Séries do Histórico ======
===== Resumo =====
Esta especificação descreve os requisitos utilizados como base para o desenvolvimento do módulo de Séries do histórico do software Tecsystem School e suas principais operações.
===== Descrição =====
O Cadastro de Série do histórico reúne todas as informações das séries dos históricos escolares de um aluno (dados do ano letivo, dados da série, dados da escola, resultados finais, dados das disciplinas cursadas e outras informações). Através deste módulo é possível editar os dados da série do histórico, além de incluir, alterar ou excluir as disciplinas cursadas na série.
O acesso a este módulo é realizado através do Cadastro de históricos, o sistema deve exibir uma lista com as séries já cadastradas para o histórico, para facilitar as operações de exclusão, edição e visualização dos dados, já que para isso é necessário indicar qual é a série do histórico que será utilizada. Esta lista, deve exibir os dados mais importantes de cada série do histórico.
Ao matricular um aluno no sistema, a série na qual o aluno é matriculado é criada automaticamente pelo sistema, no histórico do aluno referente à escola e curso que o mesmo foi matriculado. O usuário poderá incluir, alterar, visualizar e excluir as outras séries cursadas pelo aluno, anteriores à matrícula. A série criada pelo sistema, também será concluída assim que o período letivo do aluno, da turma ou do curso sejam finalizados.
==== Dados da Série do histórico ====
Uma série do histórico deve possuir os seguintes campos:
|< 100% 19% 60% 7% 7% 7%>|
^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^
|Série inserida automaticamente pelo sistema / Série inserida por usuário |Identifica se a série foi inserida pelo sistema ou pelo usuário | - | - | Sim |
|**Calendário escolar** |||||
|Calendário escolar |Calendário do ano letivo cursado pelo aluno | - | - | Não |
|Ano letivo |Ano base do ano letivo cursado pelo aluno | Número | 04 | Sim |
|Data de término |Data de término do ano letivo | Data | 08 | Não |
|**Série** |||||
|Ordem |Ordem da série no histórico | Texto | - | Sim |
|Nome |Nome da série cursada | Texto | 45 | Sim |
|Tipo de carga horária |Divisão em relação ao curso de Ensino Fundamental (determina o modo de distribuição das aulas) | Texto | - | Não |
|Turno |Turno da série | Texto | 25 | Não |
|Série concluída com aprovação/promoção|Utilizado para identificar se o aluno foi aprovado ou promovido na série| Marcar/Desmarcar | - | Não |
|Imprimir a série no histórico|Utilizado para identificar se a série será impressa ou não no histórico | Marcar/Desmarcar | - | - |
|**Escola** |||||
|Escola |Nome da escola na qual o aluno cursou a série | Texto | 60 | Sim |
|UF |Unidade federativa da escola na qual o aluno cursou a série | Texto | - | Não |
|Município |Cidade da escola na qual o aluno cursou a série | Texto | - | Não |
|Turma |Nome da turma na qual o aluno cursou na série | Texto | 80 | Não |
|Escola estrangeira |Indica se o aluno cursou a série em escola estrangeira ou não | Marcar/Desmarcar | - | Não |
|País/Estado |Nome do país e estado no qual o aluno cursou a série (quando for escola estrangeira) | Texto | 40 | Não |
|Responsável |Nome do responsável pela escola na qual o aluno cursou a série | Texto | 60 | Não |
|Aut. |Número de autorização do responsável pela escola na qual o aluno cursou a série | Texto | 20 | Não |
|**Resultados finais** |||||
|Dias letivos |Quantidade de dias letivos cursados na série | Texto | - | Não |
|Aulas dadas |Quantidade de aulas cursadas pelo aluno na série | Número | - | Não |
|Resultado final |Resultado final obtido pelo aluno na série cursada | Texto | - | Não |
|Total de faltas |Quantidade de faltas obtida pelo aluno na série cursada | Número/Hora | - | Não |
|% faltas |Percentual de faltas obtido pelo aluno na série cursada | Decimal | - | Não |
|Mínimo aprovação |Valor mínimo de aprovação na série | Decimal | - | Não |
|**Informações adicionais** |||||
|Série amparada por lei |Indica se a série é amparada por lei ou não | Marcar/Desmarcar | - | Não |
|Observações |Texto do amparo legal da série (quando for amparada por lei) | Texto | 120 | Não |
==== Inclusão, alteração e exclusão de séries do histórico ====
Toda série de um histórico escolar de um aluno pode ser cadastrada como uma série do histórico no sistema, desde que possua o conjunto mínimo de dados (campos obrigatórios) necessários. O sistema também deve permitir que os dados de uma série do histórico previamente cadastrada sejam modificados, exceto as séries do histórico criadas e finalizadas pelo sistema.
A exclusão de uma série do histórico também deverá ser permitida, desde que esta não seja a série que o aluno está cursando no período letivo. Caso seja, o sistema deverá avisar ao usuário que a série do histórico possui vínculos e não deve permitir sua exclusão.
===== Disciplinas da Série do histórico =====
Ao cadastrar uma série do histórico, o sistema deve permitir que o usuário informe também os dados das disciplinas cursadas pelo aluno na série.
==== Dados da Disciplina da Série do histórico ====
Uma disciplina da série do histórico deve possuir os seguintes campos:
|< 100% 19% 60% 7% 7% 7%>|
^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^
|Nome |Nome da disciplina | Texto | 60 | Sim |
|Nota |Valor da nota ou conceito obtido pelo aluno na disciplina | Texto | 20 | Não |
|Aulas dadas |Quantidade de aulas cursadas pelo aluno na disciplina | Texto | 06 | Não |
|Faltas |Quantidade de faltas obtidas pelo aluno na disciplina | Texto | 06 | Não |
|Resultado final |Resultado obtido pelo aluno na disciplina | Texto | 20 | Não |
|Área de conhecimento |Nome da área de conhecimento da qual a disciplina pertence | Texto | 30 | Não |
|Divisão da área de conhecimento|Nome da divisão da área de conhecimento da qual a disciplina pertence | Texto | 80 | Não |
|Professor |Nome do professor que lecionou a disciplina | Texto | 100 | Não |
==== Inclusão, alteração e exclusão de disciplinas da série do histórico ====
Toda disciplina de uma série de um histórico escolar de um aluno pode ser cadastrada como uma disciplina da série do histórico no sistema, desde que possua o conjunto mínimo de dados (campos obrigatórios) necessários. O sistema também deve permitir que os dados de uma disciplina da série do histórico previamente cadastrada sejam modificados, exceto as disciplinas de séries do histórico criadas e finalizadas pelo sistema.
A exclusão de uma disciplina da série do histórico também deverá ser permitida, desde que esta não pertença à uma série que o aluno está cursando no período letivo ou tenha sido finalizada pelo sistema. Caso seja, o sistema deverá bloquear a edição dos seus dados, não permitindo que o usuário realize alterações.
===== Configurações e preferências do usuário =====
==== Opções do Histórico ====
* **Ordem de preenchimento das disciplinas no histórico**: Esta opção de configuração é específica do módulo de Séries do Histórico, e deve atender a ordem de preenchimento das disciplinas da série do histórico, de acordo com o tipo que estiver configurado: Por Linhas ou Por Colunas. Por padrão esta opção deve ser: Por Colunas;
===== Pontos de verificação =====
==== Na inclusão/alteração de séries do histórico:====
* Após a inclusão de uma série do histórico esta deverá ser exibida imediatamente na lista de séries do histórico;
* Após a alteração de uma série do histórico esta deverá ser exibida imediatamente nos dados da série do histórico na lista de séries do histórico;
* O sistema não deve permitir que o usuário salve uma série do histórico sem que todos os campos obrigatórios estejam preenchidos;
=== Série inserida automaticamente pelo sistema / Série inserida por usuário ===
* O sistema deve exibir a imagem e o texto de acordo como a série foi inserida no histórico;
=== Calendário ===
* O sistema deve exibir desabilitado o campo Calendário (deve ser exibido apenas o nome do calendário), que será selecionado através da tela “Localizar calendário escolar”;
* O sistema deve listar na tela de localização de calendários, todos os calendários cadastrados no sistema, para que o usuário possa selecionar o calendário da série do histórico;
=== Série ===
* O sistema não deve permitir que o usuário salve uma série do histórico da mesma ordem e ano letivo;
=== Escola ===
* O sistema deve habilitar os campos da guia Escola, quando a série do histórico possuir o resultado final igual a: Avançado, Classificado ou Reclassificado e ano letivo for o mesmo que o aluno estiver cursando. Isso permite ao usuário alterar os dados da guia escola, quando o aluno tiver os movimentos citados em outra escola e ser matriculado na escola atual depois disso;
* O sistema deve manter desabilitados os campos "Escola estrangeira" e "País/Estado", quando a série estiver sido ou estiver sendo gerada pelo sistema;
* O sistema deve manter habilitados os campos "Escola estrangeira" e "País/Estado", quando a série for transcrita pelo usuário, nesse caso deve realizar as seguintes validações:
* Quando o campo "Escola estrangeira" estiver marcado, o sistema deve habilitar o campo "País/Estado" e desabilitar e limpar os campos: "UF" e "Município";
* Quando o campo "Escola estrangeira" estiver desmarcado, o sistema deve habilitar os campos: "UF" e "Município" e desabilitar e limpar o campo "País/Estado";
=== % faltas ===
* Quando a série do histórico for inserida, o sistema deve:
* Pelo usuário:
* Habilitar o campo, para que o usuário possa editá-lo;
* Verificar se o valor informado pelo usuário está correto, caso não esteja deve informar e perguntar se deseja salvar mesmo assim;
* Salvar o valor do campo no banco de dados;
* Pelo sistema:
* Desabilitar o campo;
* Calcular o valor, sempre que for alterado um dos campos: "Dias letivos", "Aulas dadas" ou "Total de faltas";
* Não salvar o valor do campo no banco de dados, pois sempre que o valor for exibido ou impresso, o sistema deve calculá-lo com base nos dados necessários que estão salvos;
=== Resultado final ===
* O sistema deve permitir que o usuário salve uma série do histórico, sem preencher o campo "Resultado final" quando o campo "Série amparada por lei" estiver marcado.
==== Na inclusão/alteração de disciplinas da série do histórico:====
* O sistema não deve permitir que o usuário salve uma série do histórico sem que todos os campos obrigatórios estejam preenchidos;
* O sistema não deve permitir que o usuário salve uma disciplina da série do histórico sem que o nome esteja preenchido;
* O sistema não deve permitir que o usuário salve mais de uma disciplina com o mesmo nome para a série do histórico;
* O sistema deve excluir uma disciplina da série do histórico, quando o nome da disciplina for apagado.
==== Na exclusão de séries do histórico:====
* O sistema deve solicitar que o usuário confirme a exclusão de uma série do histórico;
* O sistema não deve permitir que uma série do histórico seja excluída caso ela seja a série que o aluno está cursando no período letivo ou já tenha cursado pelo sistema;
* Após a exclusão de uma série do histórico esta deverá ser eliminada imediatamente na lista de séries do histórico.
==== Na exclusão de disciplinas da série do histórico:====
* O sistema não deve permitir que uma disciplina da série do histórico seja excluída caso ela pertença à série que o aluno está cursando no período letivo ou já tenha cursado pelo sistema;
* Ao excluir o nome da disciplina esta deverá ser excluída da lista de disciplinas da série do histórico.
===== Observações =====
Nenhuma informação adicional.
~~DISCUSSION|Sugira mudanças, aponte falhas ou contribua de alguma forma aqui:~~