====== Índices Acadêmicos ====== Os índices acadêmicos são utilizados para avaliar o rendimento acadêmico dos discentes dos diversos níveis de ensino de acordo com diferentes critérios. Em graduação, temos sete índices, a MC (média de conclusão), a MCN (média de conclusão normalizada), o IRA (índice de rendimento acadêmico), o IEPL (índice de eficiência em períodos letivos), o IECH (índice de eficiência em carga horária), o IEA (índice de eficiência acadêmico) e o IEAN (índice de eficiência acadêmico normalizado); em pós-graduação stricto-sensu temos um índice, o CR (Coeficiente de Rendimento); etc. Esses índices são calculados de acordo com equações definidas nos regulamentos dos cursos e normalmente dependem de informações das suas matrículas nos períodos letivos como, por exemplo, as médias dos alunos nas turmas que ele pagou e o seu número de faltas. ===== Descrição do Caso de Uso ===== Cada índice acadêmico é representado por um objeto da classe ''br.ufrn.sigaa.ensino.dominio.IndiceAcademico''. Essa classe possui como atributos as seguintes informações: ^ Atributo ^ Descrição ^ | id | Identificador do índice acadêmico | | nome | Nome do índice | | sigla | Sigla do índice | | exibidoHistorico | Indica se o índice irá ou não aparecer no histórico dos discentes | | ativo | Indica se o índice está sendo utilizado ou não | | classe | Indica o nome completo da classe responsável por realizar o cálculo do índice | | descricao | Descrição do índice, texto do regulamento que fala do índice | | ordem | Ordem na qual o índice será calculado | | nivel | Nível de ensino associado ao índice acadêmico | Para associar um índice acadêmico com um discente, informando também o valor do índice para o discente, utiliza-se a classe ''br.ufrn.sigaa.ensino.dominio.IndiceAcademicoDiscente'', que possui os seguintes atributos: ^ Atributo ^ Descrição ^ | id | Identificador do índice acadêmico | | indice | Um índice acadêmico | | discente | Um discente de qualquer nível | | valor | O valor do índice especificado acima para o discente especificado acima | Além disso, cada alteração do valor de um índice acadêmico para um discente é registrado através da entidade ''br.ufrn.sigaa.ensino.dominio.AtualizacaoIndiceAcademicoDiscente'', cujos atributos são listados a seguir: ^ Atributo ^ Descrição ^ | id | Identificador do índice acadêmico | | indice | Um objeto do tipo IndiceAcademicoDiscente, que relaciona IndiceAcademico com Discente | | data | Data da atualização | | valor | O novo valor do índice | Para realizar o cálculo dos índices, deve-se criar uma classe para calcular cada índice. Essa classe deve implementar a interface ''br.ufrn.sigaa.ensino.negocio.CalculoIndiceAcademico''. Deve-se colocar o nome completo da classe no atributo classe do objeto IndiceAcademico associado ao índice que essa classe calcula. Em seguida, deve-se utilizar o método ''findIndicesAtivos(char nivel)'' para buscar os índices acadêmicos de um determinado nível de ensino e instanciar as classes que calculam tais índices, chamando o seu método calcular, conforme pode ser visto no exemplo abaixo: List indices = dao.findIndicesAtivos(NivelEnsino.GRADUACAO); for (IndiceAcademico ia : indices) { // Calcula o índice CalculoIndiceAcademico calculo = ReflectionUtils.newInstance(ia.getClasse()); float valor = calculo.calcular(discente.getDiscente(), mov); // Atualiza o índice do discente IndiceAcademicoDiscente iad = dao.findIndiceAcademicoDiscente(discente.getDiscente(), ia); if (iad == null) { iad = new IndiceAcademicoDiscente(); iad.setDiscente(discente.getDiscente()); iad.setIndice(ia); } iad.setValor(valor); dao.createOrUpdate(iad); } ===== Principais regras de negócio ===== Atualmente, apenas as regras para graduação estão definidas. Para conhecer as regras de cálculo deve-se consultar o anexo III do regulamento dos cursos de graduação, em anexo: {{:desenvolvimento:especificacoes:sigaa:ensino:regulamento_-_versão_aprovada_no_consepe_-_10-12-09.doc|}}. ====== Plano de Teste ====== Sistema: SIGAA Módulo: Graduação Link(s): * Graduação -> CDP -> Índices Acadêmicos * Graduação -> Alunos -> Outras Operações -> Cálculos de Discente Papel que usuário deve ter: ADMINISTRADOR_DAE ou CDP. ===== Dados para o Teste ===== Cadastrar índices acadêmicos através do primeiro link. Realizar cálculos de discentes utilizando o segundo link. Deve-se selecionar a opção de usar o novo regulamento. Verificar se os valores dos índices calculados estão corretos.