~~ODT~~
Quadro Sintético
O caso de uso mostra uma listagem com a quantidade de tarefas abertas, agrupadas pelas mais diversas características. Ele está situado no menu de Administração e só é acessível a usuários com perfil de Gerente ou Diretor. Os usuários com o perfil já mencionados serão encaminhados para esse caso de uso automaticamente ao fazer login. O objetivo é fornecer uma visão geral das tarefas abertas para os gerentes e gestores dos projetos.
Descrição do Caso de Uso
O caso de uso inicia quando o usuário acessa iProject → Administração → Quadro Sintético.
Inicialmente é apresentado diversas listagens dos seguintes grupos de tarefas:
- Tarefas por Sistemas: Agrupa tarefas por sistemas
- Erros em aberto: Agrupa tarefas por sistemas
- Cooperação Técnica: Agrupa tarefas por Instituições de Cooperação Técnica
- Testes Abertos: Agrupa tarefas por sistemas
- Chamados Abertos: Agrupa tarefas por tipo de tarefa
- Atendimentos no mês: Agrupa tarefas por sistemas.
Em cada uma dessas listagens são exibidas as categorias no seguinte modelo: <CATEGORIA>(<N° DE TAREFAS>). Ao selecionar uma categoria é exibida uma listagem com as tarefas relacionadas e os seguintes dados para cada tarefa:
- #: Número da tarefa.
- Tarefa: Tipo - TEXTO.
- Data Cadastro: Tipo - DATA. Formato - 99/99/9999.
- Início: Tipo - DATA. Formato - 99/99/9999.
- Fim: Tipo - DATA. Formato - 99/99/9999.
- Previsão: Tipo - DATA. Formato - 99/99/9999.
- Subsistema: Tipo - TEXTO.
- Situação: Tipo - TEXTO.
- Tipo Tarefa: Tipo - TEXTO.
- %: Tipo - NUMÉRICO.
- Criador: Usuário que criou a tarefa.
Além disso, são mostradas as opções:
- Marcar como tarefa da semana
O caso de uso é finalizado.
Principais Regras de Negócio
Não se aplica!
Resoluções/Legislações Associadas
Não se Aplica.
Classes Persistentes e Tabelas Envolvidas
Classe | Tabela |
---|---|
br.com.jeebrasil.iproject.diminio.Tarefa | iproject.tarefa |
Plano de Teste
Sistema: IPROJECT
Link(s): Administração → Quadro Sintético
Usuário: dalton
Papel que usuário deve ter: Gerente
Cenários de Teste
Não se aplica.
Dados para o Teste
O script para testes:
--script para saber as tarefas por sistema (OK) select count(t.*), s.denominacao, s.id from iproject.tarefa t inner join iproject.subsistema sub on t.id_subsistema = sub.id_sub_sistema inner join iproject.sistema s on s.id = sub.id_sistema where t.percentual < 100 and t.id_status != 3 and t.id_status != 14 and t.id_status != 13 group by s.denominacao, s.id --Erros em aberto (OK) SELECT count(t.*), s.denominacao, s.id FROM iproject.tarefa t INNER JOIN iproject.subsistema sub on t.id_subsistema = sub.id_sub_sistema inner join iproject.sistema s on s.id = sub.id_sistema where t.percentual < 100 and (t.id_status = 21 or t.id_status = 16) and t.id_status != 3 and t.id_status != 14 and t.id_status != 13 group by s.denominacao, s.id --cooperação técnica (OK) select count(t.*), c.nome, c.id_cooperacao_tecnica from iproject.tarefa t inner join iproject.cooperacao_tecnica c on t.id_cooperacao_tecnica = c.id_cooperacao_tecnica where t.percentual < 100 and t.id_status != 3 and t.id_status != 14 and t.id_status != 13 group by c.nome, c.id_cooperacao_tecnica --testes em abertos (OK) select s.id, count(t.*), s.denominacao from iproject.tarefa t inner join iproject.subsistema sub on t.id_subsistema = sub.id_sub_sistema inner join iproject.sistema s on s.id = sub.id_sistema where t.id_status = 1 and t.percentual < 100 and t.id_status != 3 and t.id_status != 14 and t.id_status != 13 group by s.denominacao, s.id --script para saber os chamados em aberto select count(t.*), tt.denominacao, tt.id_tipo_tarefa from iproject.tarefa t inner join iproject.tipo_tarefa tt on tt.id_tipo_tarefa = t.id_tipo_tarefa where t.id_status = 1 and t.percentual < 100 and t.id_status != 3 and t.id_status != 14 and t.id_status != 13 group by tt.denominacao, tt.id_tipo_tarefa order by tt.denominacao --atendimentos por mês select count(t.*), s.denominacao, s.id from iproject.tarefa t inner join iproject.subsistema sub on t.id_subsistema = sub.id_sub_sistema inner join iproject.sistema s on s.id = sub.id_sistema where t.numchamado != 0 and t.percentual < 100 and t.id_status != 3 and t.id_status != 14 and t.id_status != 13 and DATE_PART('MONTH',t.inicio) = DATE_PART('MONTH', CURRENT_TIMESTAMP) group by s.denominacao, s.id