DET - Documento de Especificação Técnica
1. Informações Gerais sobre o Levantamento
RESPONSÁVEL PELA ELABORAÇÃO
| Unidade | Nome | Fone | |
| GER-TI | Pedro Antônio Sebba Gomide | pantonio@tce.go.gov.br | |
NOME DO CLIENTE
| Unidade | Nome | Fone | |
INFORMAÇÕES DA SOLICITAÇÃO
| Tipo de Solicitação | DET de Origem |
| Novo Desenvolvimento | XXX |
INFORMAÇÕES DE AMBIENTE
| Sistema operacional do servidor de aplicação | Windows 2012 R2 |
| Sistema operacional das estações cliente | Windows 7 |
| Banco de dados e versão | 11g R2 |
| Versão do Programa | 1 |
2. Objetivo
Trata o presente documento, de análise de sistema elaborada pela Gerência de TI, tendo por escopo a gerencia de jurisprudências das decisões criadas no Tribunal de Contas do Estado de Goiás.
3. Descrição do Cenário
Atualmente não é efetuado pelo TCE a produção de jurisprudência, somente uma catalogação de julgados. Com a criação do sistema de Jurisprudência Selecionada, será possível centralizar a catalogação das jurisprudências e decisões, permitindo o controle e buscas otimizadas.
5. Descrição das Necessidades
A importância da jurisprudência na formação do Direito é notória nos dias atuais, ao interpretar e aplicar as normas jurídicas. Apesar de sua relevância, dada a peculiaridade de cada caso, o agrupamento de jurisprudências a fim de reunir um conjunto de decisões para casos semelhantes pode vir a se torna um processo delicado e oneroso.
6. Premissas e Restrições
- O sistema de Jurisprudência selecionada será um sistema web;
- O sistema de Jurisprudência é composto por dois módulos, sendo o módulo de seleção de jurisprudência e o módulo de consulta Jurisprudência Selecionada
- O módulo de seleção de jurisprudência será acessado por um navegador web, através do TCE Net;
- O módulo Consulta Jurisprudência Selecionada será acessado por um navegador web, através do sitio do TCE;
- O módulo de seleção de jurisprudência será restrito à usuários internos o TCE, pois será requisitada a autenticação, e acesso às funcionalidades;
- O módulo de Consulta Jurisprudência Selecionada não terá restrição de usuários, sendo liberado para toda a sociedade.
7. Proposta de Solução
A proposta de solução descrita neste escopo é uma sugestão e poderá sofrer mudanças durante o processo de desenvolvimento, caso se identifique a necessidade. Para referenciar as imagens dos protótipos, foi utilizado a notação [ImgX - Y] .
7.1. Grupo de Assuntos
Esta funcionalidade tem como objetivo manter agrupamento de assuntos, para que esses componham a catalogação da decisão. A tela será composta basicamente pelos campos:
7.1.1. Descrição Campos
- Grid de Aterrissagem [Img1 - 2] - Lista que será mostrada ao abrir a tela, ela possibilitará o usuário selecionar um assunto para alterar ou excluir. A lista possibilitará também o usuário filtrar o campo de grupo;
- Botão de Incluir [Img1 - 1] - Possibilita o usuário incluir novos grupos de assuntos;
- Botão Excluir e Alterar da Grid de Aterrissagem [Img1 - 3] - Permite o usuário excluir e alterar o assunto da linha a qual o botão foi pressionado;
- Campo Grupo [Img2 - 1] - Caracteriza a descrição do grupo, ao buscar um grupo, ele será identificado por esse nome;
- Botão Adicionar Assunto [Img2 - 2] - Abre a tela de adição de assunto, representada pelo protótipo da Img3;
- Grid Assuntos Selecionados [Img2 - 3] - Mostra todos os assuntos que foram selecionados para compor o grupo;
- Botão Excluir Assunto Selecionado [Img2 - 4] - Exclui o assunto da lista de assuntos pelo grupo correspondente a linha do botão selecionado.
- Botão Salvar [Img2 - 5] - Salva/Edita o formulário;
- Grid Seleção de Assuntos [Img3 - 1] - Permite o usuário selecionar os assuntos que serão vinculados ao Grupo.
7.1.2. Protótipos
Img1 Prototipo
Img2 Prototipo
Img3 Prototipo
7.1.3. Comportamentos de Interface
- [Img1] Ao abrir o sistema, a tela que deverá ser apresentado é a da [Img1];
- [Img1 - 1] Ao clicar no botão incluir, o sistema deverá fazer um slide trazendo a tela da [Img2] em branco para ser preenchida;
- [Img2 - 2] Ao clicar no botão adicionar, o sistema deve trazer em uma modal todos os assuntos cadastrados na tabela de assunto assim como na [Img3];
- [Img3 - 1] A lista mostrada será a lista de todos assuntos existentes na tabela de assuntos, marcando todos os assuntos checando posteriormente. Caso um assunto seja desmarcado, ele deverá ser excluído na lista de assuntos marcados apresentado pela grid [Img2 - 3].
7.1.4. Regras
Para manutenção dos assuntos, são persistidas as seguintes regras:
Na adição e alteração
- O Grupo é um campo obrigatório;
- Deve ser adicionado pelo menos um grupo por assunto;
- O campo grupo deve ter no máximo 500 caracteres;
Na deleção
- O grupo não pode estar relacionado a nenhuma catalogação
7.1.5. Dados
Os grupos serão salvos na tabela JUR_GRUPO e os assuntos relacionados na tabela intermediária JUR_GRUPOASSUNTO
7.2. Manter Referencia Legislativa
Esta funcionalidade tem como objetivo manter Referência Legislativa, para que essas componham a catalogação da jurisprudência. A tela será composta basicamente pelos campos:
7.2.1. Descrição Campos
- [Img1 - 1] Botão Incluir - O botão incluir tem como objetivo possibilitar a inclusão de uma nova referência legislativa;
- [Img1 - 2] Filtro Grid - O filtro da grid possibilitará o usuário filtrar e encontrar com mais facilidade a referência que ele deseja alterar ou excluir;
- [Img1 - 3] Botão Alterar - O botão alterar possibilita a alteração da referência legislativa da linha correspondente;
- [Img1 - 4] Botão Excluir - O botão excluir possibilita a exclusão da referência legislativa da linha correspondente;
- [Img2 - 1 até 9] Campos de preenchimento da Referência legislativa - Compõem a referência legislativa;
- [Img2 - 10] Incluir - Botão que inclui ou altera a referência legislativa;
- [Img2 - 11] Voltar - O botão voltar retorna a tela para o estado inicial.
7.2.2. Protótipos
Img1 Protótipo
Img2 Protótipo
7.2.3. Comportamentos de Interface
- [Img1] O sistema iniciará seu fluxo neste protótipo, trazendo todas as referências legislativas cadastradas na Grid de aterrissagem;
- [Img1 - 1] Ao clicar no botão incluir o sistema fará uma transição escondendo a seção da [Img1] e mostrando os campos a serem preenchidos para que a inclusão da referência legislativa possa ser efetuada ([Img2]);
- [Img1 - 2] Ao adicionar um filtro na grid, ela deve atualizar automaticamente trazendo só os valores filtrados. A grid deve suportar também opções de filtro como “Contém”, “Começa com”, “Termina com”, etc (Opção fornecida pelo componente do DevExpress);
- [Img1 - 3] O botão alterar deve efetuar um comportamento semelhante ao incluir (descrito logo a cima), porém ele deverá preencher os campos ([Img2 - 1 até 9]) com os dados da referência legislativa da linha selecionada e altera o texto do botão de “Incluir” para “Alterar”;
- [Img2 - 10] O botão incluir deve verificar se existe validações e mostrar caso existam. Caso o formulário preenchido seja válido, deverá efetuar a transição para a tela inicial ([Img1]) e fazer um refersh na grid de aterrissagem;
- [Img2 - 11] O botão voltar retornará o estado da tela para o inicial ([Img1]).
7.2.4. Regras
Na adição e alteração
- O campo referência legislativa ([Img2 - 1]) é obrigatório;
- O campo numero ([Img2 - 4]) é obrigatório;
- O campo ano ([Img2 - 5]) é obrigatório;
Na deleção
- Não se pode excluir uma referência legislativa ([Img1 - 4]) que está sendo referenciada em alguma jurisprudência;
7.2.5. Dados
Os dados de referência legislativa são salvos na tabela JUR_REFLEGISLATIVA.
7.3. Manter Tema/Subtema
Esta funcionalidade tem como objetivo manter Tema/Subtema, para que essas componham a catalogação da jurisprudência. A tela será composta basicamente pelos campos:
7.3.1. Descrição Campos
- [Img1] Tela de aterrissagem - O sistema iniciará nesta tela, dispondo todos os temas que foram cadastrados na grid;
- [Img1 - 1] Botão incluir - Botão responsável por incluir um novo Tema/Subtema;
- [Img1 - 2] Filtro Grid - O filtro da grid possibilitará o usuário filtrar e encontrar com mais facilidade a referência que ele deseja alterar ou excluir;
- [Img1 - 3] Botão Alterar - O botão alterar possibilita a alteração da linha correspondente;
- [Img1 - 4] Botão Excluir - O botão excluir possibilita a exclusão da linha correspondente;
- [Img2 - 1 até 2] Campos de preenchimento - Compõem o tema e o subtema;
- [Img2 - 3] Botão Adicionar - Adiciona um subtema na lista;
- [Img2 - 4] Grid Subtemas - Grid com os subtemas adicionados para aquele tema;
- [Img2 - 5] Botão Adicionar subtema - Exclui o subtema relacionado aquele tema;
- [Img2 - 6] Botão incluir - Salva/Inclui o tema;
- [Img2 - 7] Voltar - Retorna a tela de aterrissagem.
7.3.2. Protótipos
Img1 Protótipo
Img2 Protótipo
7.3.3. Comportamentos de Interface
- [Img1] O sistema iniciará seu fluxo neste protótipo, trazendo todos as sínteses cadastradas na Grid de aterrissagem;
- [Img1 - 1] Ao clicar no botão incluir o sistema fará uma transição escondendo a seção da [Img1] e mostrando os campos a serem preenchidos para que a inclusão da síntese possa ser efetuada ([Img2]);
- [Img1 - 2] Ao adicionar um filtro na grid, ela deve atualizar automaticamente trazendo só os valores filtrados. A grid deve suportar também opções de filtro como “Contém”, “Começa com”, “Termina com”, etc (Opção fornecida pelo componente do DevExpress);
- [Img1 - 3] O botão alterar deve efetuar um comportamento semelhante ao incluir (descrito logo a cima), porém ele deverá preencher os campos ([Img2 - 1 até 2]) com os dados da síntese da linha selecionada e altera o texto do botão Img2 - 6 de “Incluir” para “Alterar”;
- [Img2 - 6] O botão incluir deve verificar se existe validações e mostrar caso existam. Caso o formulário preenchido seja válido, deverá efetuar a transição para a tela inicial ([Img1]) e fazer um refresh na grid de aterrissagem;
7.3.4. Regras
Na adição e alteração
- [Img2 - 1] O Tema é um campo obrigatório;
- [Img2 - 2] O tema deve conter ao menos um subtema;
Na deleção
- Não se pode excluir um tema/subtema ([Img1 - 4]) que está sendo referenciada em alguma jurisprudência;
7.3.5. Dados
As tabelas usadas para salvar os dados são as tabelas JUR_TEMA e JUR_SUBTEMA
7.4. Manter Síntese de Decisão
Esta funcionalidade tem como objetivo manter Síntese de Decisão, para que essas componham a catalogação da jurisprudência. A tela será composta basicamente pelos campos:
7.4.1. Descrição Campos
- [Img1] Tela de aterrissagem - O sistema iniciará nesta tela, dispondo todos as sínteses que foram cadastrados na grid;
- [Img1 - 1] Botão incluir - Botão responsável por incluir uma nova Síntese de Decisão;
- [Img1 - 2] Filtro Grid - O filtro da grid possibilitará o usuário filtrar e encontrar com mais facilidade o dado que ele deseja alterar ou excluir;
- [Img1 - 3] Botão Alterar - O botão alterar possibilita a alteração da linha correspondente;
- [Img1 - 4] Botão Excluir - O botão excluir possibilita a exclusão da linha correspondente;
- [Img2 - 1 até 2] Campos de preenchimento - Compõem a síntese de decisão;
- [Img2 - 3] Botão incluir - Salva/Inclui o a síntese da decisão;
- [Img2 - 4] Voltar - Retorna a tela de aterrissagem.
7.4.2. Protótipos
Img1 Protótipo
Img2 Protótipo
7.4.3. Comportamentos de Interface
- [Img1] O sistema iniciará seu fluxo neste protótipo, trazendo todos as sínteses cadastradas na Grid de aterrissagem;
- [Img1 - 1] Ao clicar no botão incluir o sistema fará uma transição escondendo a seção da [Img1] e mostrando os campos a serem preenchidos para que a inclusão da síntese da decisão possa ser efetuada ([Img2]);
- [Img1 - 2] Ao adicionar um filtro na grid, ela deve atualizar automaticamente trazendo só os valores filtrados. A grid deve suportar também opções de filtro como “Contém”, “Começa com”, “Termina com”, etc (Opção fornecida pelo componente do DevExpress);
- [Img1 - 3] O botão alterar deve efetuar um comportamento semelhante ao incluir (descrito logo a cima), porém ele deverá preencher os campos ([Img2 - 1 até 2]) com os dados do tema e subtemas da linha selecionada e altera o texto do botão Img2 - 3 de “Incluir” para “Alterar”;
- [Img2 - 6] O botão incluir deve verificar se existe validações e mostrar caso existam. Caso o formulário preenchido seja válido, deverá efetuar a transição para a tela inicial ([Img1]) e fazer um refresh na grid de aterrissagem;
7.4.5. Dados
Os temas e subtemas serão salvos nas tabelas JUR_SINTESEDECISAO
7.5. Manter Descritores
7.5.1. Descrição Campos
- [Img1] Tela de aterrissagem - O sistema iniciará nesta tela, dispondo todos os descritores que foram cadastrados na grid para um determinado qualificador;
- [Img1 - 1] Botão incluir - Botão responsável por incluir uma nova descrição;
- [Img1 - 2] Filtro Grid - O filtro da grid possibilitará o usuário filtrar e encontrar com mais facilidade o dado que ele deseja alterar ou excluir;
- [Img1 - 3] Botão Alterar - O botão alterar possibilita a alteração da linha correspondente;
- [Img1 - 4] Botão Excluir - O botão excluir possibilita a exclusão da linha correspondente;
- [Img2 - 1] Campos de preenchimento - Compõem a descrição para o qualificador;
- [Img2 - 3] Botão incluir - Salva/Inclui a descrição para o qualificador;
- [Img2 - 4] Voltar - Retorna a tela de aterrissagem.
7.5.2. Protótipos
Img1 Protótipo
Img2 Protótipo
7.5.3. Comportamentos de Interface
- Esta tela deverá receber o ID do qualificador por querystring e colocar o nome do qualificador (DESC_QUALIFICADOR_A da tabela JUR_QUALDESCRIT) aonde se encontra a notação [QUALIFICADOR] nos protótipos [Img1] e [Img2]. Todas as descrições mostradas e manipuladas, devem ser específicas para aquele qualificador passado por querystring
- [Img1] O sistema iniciará seu fluxo neste protótipo, trazendo os descritores cadastrados para o qualificador passado por querystring na Grid de aterrissagem;
- [Img1 - 1] Ao clicar no botão incluir o sistema fará uma transição escondendo a seção da [Img1] e mostrando os campos a serem preenchidos para que a inclusão do descritor possa ser efetuada ([Img2]);
- [Img1 - 2] Ao adicionar um filtro na grid, ela deve atualizar automaticamente trazendo só os valores filtrados. A grid deve suportar também opções de filtro como “Contém”, “Começa com”, “Termina com”, etc (Opção fornecida pelo componente do DevExpress);
- [Img1 - 3] O botão alterar deve efetuar um comportamento semelhante ao incluir (descrito logo a cima), porém ele deverá preencher o campo ([Img2 - 1]) com os dados do tema e subtemas da linha selecionada e altera o texto do botão Img2 - 2 de “Incluir” para “Alterar”;
- [Img2 - 6] O botão incluir deve verificar se existe validações e mostrar caso existam. Caso o formulário preenchido seja válido, deverá efetuar a transição para a tela inicial ([Img1]) e fazer um refresh na grid de aterrissagem;
7.5.5. Dados
A tabela de Descritores é a JUR_DESCRITORES e a de qualificador é JUR_QUALDESCRIT