~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Exceções por Período ====== Esta operação permite que o gerente do iproject possa visualizar algumas informações quantitativas sobre as exceções que foram lançadas nos sistemas durante um determinado período. Podem ser visualizadas as seguintes informações: * **Quantitativo por Subsistema:** Apresenta uma listagem agrupada por subsistema onde são mostrados os quantitativos de erros lançados e a quantidade de ocorrências dos erros. * **Listar Quantitativo de Exceções:** Apresenta uma listagem com a quantidade de erros existentes num determinado período, agrupado por tipo de exceção. * **Listar Quantitativo de Causa de Exceções:** Semelhante ao ponto anterior, com a diferença que no anterior mostra exceções que foram lançadas, enquanto este mostra a exceção real que ocorreu (sem encapsulamento de exceções). ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: //Iproject -> Gerência de Falhas -> Exceções por Período//. ==== Passo 1: ==== Ao iniciar, são exibidos os seguintes campos para consulta das exceções: * **Período:*** Tipo - DATA. Período em que as exceções foram lançadas * **Sistema:** Tipo - TEXTO. Sistema em que ocorreu o erro. * **Gerar Gráfico:** Tipo - LÓGICO. Gerar gráficos ou não. Ao realizar a consulta, é exibida uma listagem com as seguintes informações: * **__Sistema:__** Tipo - TEXTO. * **__Subsistema:__** Tipo - TEXTO. * **__Qtd. de Erros:__** Tipo - NUMÉRICO. Quantidade de erros distintos que ocorreu no período. Ao clicar em algum valor, é levado para o [[#Passo 2|Passo 2]] * **__Qtd. de Ocorrências:__** Tipo - NUMÉRICO. Quantidade de ocorrências de erros no período.([[#principais regras de negócio|RN03]]) Abaixo da listagem é exibido o gráfico relacionado à listagem acima ([[#principais regras de negócio|RN01]]). === Fluxo Alternativo 1: Listar Quantitativo de Exceções === Esta opção irá listar um quantitativo dos tipos de exceções que ocorreram segundo os filtros de busca informados no Passo 1. As exceções mostradas são aquelas que foram realmente lançadas, mas a causa real do erro pode ter sido outra exceção que foi encapsulada. Ao iniciar, é exibida uma listagem com os seguintes dados: * **__Exceção:__** Tipo - TEXTO. Tipo da Exceção que foi lançada. * **__Qtd. Ocorrências:__** Tipo - NUMÉRICO. Quantidade de vezes que ela foi lançada, sem contar as reincidências do erro. Ao clicar nos valores numéricos, é exibida uma listagem com as informações de quais módulos aquela exceção ocorreu e quantas vezes. Logo abaixo da listagem é mostrado um gráfico quantitativo ([[#principais regras de negócio|RN01]]). === Fluxo Alternativo 2: Listar Quantitativo de Causas de Exceções === Esta operação é bem semelhante a operação descrita no Fluxo Alternativo 1. A diferença é que nesta são apresentadas as causas reais da exceção, sem encapsulamento. Ao iniciar, é exibida uma listagem com os seguintes dados: * **__Causa:__** Tipo - TEXTO. Tipo da Exceção que foi lançada. * **__Qtd. Ocorrências:__** Tipo - NUMÉRICO. Quantidade de vezes que ela foi lançada, sem contar as reincidências do erro. Ao clicar nos valores numéricos, é exibida uma listagem com as informações de quais módulos aquela exceção ocorreu e quantas vezes. Logo abaixo da listagem é mostrado um gráfico quantitativo ([[#principais regras de negócio|RN01]]). ==== Passo 2: ==== Neste passo são apresentados os detalhes dos erros que ocorreram no subsistema em questão. Ao iniciar, são apresentadas as informações: * **__Primeira Ocorrência:__** Tipo - DATA. Data da primeira vez que o erro ocorreu. * **__Exceção:__** Tipo - TEXTO. Exceção que foi lançada * **__Causa:__** Tipo - TEXTO. Causa da exceção lançada. * **__Qtd. Ocorrências:__** Tipo - NUMÉRICO. Quantidade de vezes que esta exceção foi lançada. Temos ainda a opção de //Visualizar Stacktrace//. ([[#Passo 3|Passo 3]]) ==== Passo 3: ==== Neste passo é possível detalhar o erro selecionado no passo anterior. Ao iniciar são exibidas as informações: * **__Sistema:__** Tipo - TEXTO. * **__Subsistema:__** Tipo - TEXTO. * **__Exceção Lançada:__** Tipo - TEXTO. * **__Causa da Exceção:__** Tipo - TEXTO. * **__Trace Gerador:__** Tipo - TEXTO. Trecho do código que gerou o erro. * **__Primeira Ocorrência:__** Tipo - DATA. * **__Qtd. de Ocorrências:__** Tipo - NUMÉRICO. * **__Stacktrace Completo:__** Tipo - TEXTO. O caso de uso é finalizado. ===== Principais Regras de Negócio ===== * **RN01:** O gráfico é exibido somente se for marcada a opção Gerar Gráfico. * **RN02:** O usuário necessita ter permissão de Gerente do iproject para acessar o caso de uso. * **RN03:** A primeira ocorrência de uma exceção é persistida na tabela infra.erro. As demais ocorrências deste mesmo erro é persistida em infra.erro_ocorrência. * **RN04:** O período informado não pode ultrapassar 1 mês. ==== Resoluções/Legislações Associadas ==== Não se aplica. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela ^ | br.ufrn.arq.erros.gerencia.ErroOcorrencia.java | comum.infra.erro_ocorrencia | | br.ufrn.arq.erros.gerencia.Erro.java | comum.infra.erro | ====== Plano de Teste ====== Sistema: IPROJECT \\ \\ Módulo: Iproject \\ \\ Link(s): Testes -> Gerência de Falhas -> Exceções por Período \\ \\ Usuários: dalton, gleydson \\ \\ Papel que usuário deve ter: PermissaoIproject.gerente ===== Cenários de Teste ===== Não se aplica. ===== Dados para o Teste ===== Gerar exceções nos sistemas e verificar se foram contabilizadas corretamente pelo caso de uso.