Desenvolvimento

Nesta página serão descritas as principais funcionalidades do protótipo, as tecnologias utilizadas para o seu desenvolvimento, perfis da equipe e demais informações relevantes.

O repositório desta aplicação pode ser acessado em:

https://github.com/davesmg/grantocontratos

O usuário augustocordeiro foi adicionado ao repositório privado. Caso seja necessário permitir o acesso a outros avaliadores, entre em contato pelo e-mail danielpimentel@iftm.edu.br

Tecnologias utilizadas

Aplicação

Tecnologias utilizadas no desenvolvimento da aplicação.

Utilizado na criação da interface do protótipo.

React

Framework utilizado para a integração front-end e back-end.

Next JS

Estilização dos componentes.

Tailwind CSS

Inteligência Artificial

Tecnologias utilizadas na análise e coleta de informações nos contratos.

Em sua versão GPT-4o, desenvolvido pela Open AI.

ChatGPT

Em sua versão 1.5-flash, desenvolvida pelo Google.

Gemini

Banco de Dados

Tecnologias utilizadas para organização e armazenamento de dados.

Banco de Dados relacional utilzado para armazenar as informações contidas na aplicação.

Mysql

Utilizado para controle de versão na criação e manutenção das tabelas do banco de dados.

Knex

AWS

Para disponibilidade da aplicação, optou-se pela AWS, devido à gama de serviços oferecidos, bem como a possibilidade de escalabilidade do sistema, no futuro.

A seguir, serão listados os serviços da AWS utilizados no desenvolvimento e deploy:

Serviço de computação em nuvem.

AWS

Utilizado para a disponibilidade da aplicação desenvolvida.

Amplify

Armazenamento dos arquivos dos contratos submetidos no site.

Simple Storage Service (S3)

Disponibilidade do Banco de Dados utilizado.

Relational Database Service (RDS)

Responsável pelo envio de e-mails para autenticação.

Simple Email Service (SES)

Gerenciamento do domínio grantocontratos.com

Route 53

Gerenciamento de permissões para os serviços utilizados na AWS.

Identity and Access Management (IAM)

Funções executadas para upload dos arquivos dos contratos nos buckets do S3.

Lambda

Principais Funcionalidades

Pré-análise de contrato

  • Duas Inteligências Artificiais: possibilita a escolha do ChatGPT ou Gemini para análise dos contratos.
  • Múltiplos formatos: envios de documentos nos formatos .pdf, .txt ou texto inserido diretamente no formulário de envio.

Pós-análise de contrato

  • Coleta de informações: as informações extraídas incluem objeto do contrato, identificação, vigência, lista de valores financeiros, tags e partes envolvidas (incluindo nome, papel, documentos, informações de contato e endereço).
  • Edição: é possível modificar qualquer uma das informações coletadas no contrato, a fim de complementá-las, caso o usuário julgue necessário.
  • Sistema de tags: permite classificar os contratos analisados, com base em seu conteúdo, para fins de busca ou análises estatísticas futuras.
  • Upload dos arquivos: todos os documentos enviados são armazenados no servidor, para downloads e conferências futuras.
  • Implementações futuras: dentre as implementações futuras, destacam-se a possibilidade de coletar mais informações específicas, inserir informações sem depender da análise automática, remover informações, permitir ou não a visualização e download do documento original, dentre outras.

Autenticação de usuário

  • Meus contratos: permite que usuários autenticados gerenciem seus contratos.
  • Visibilidade: usuários autenticados podem escolher entre manter seus contratos públicos ou privados.
  • Simplicidade: não é necessário ao usuário lidar com usuário e senha, bastando informar seu e-mail e receber um link de acesso.
  • Expansividade: o protótipo já está pré-configurado para a implementação de login social e/ou suporte a usuário/e-mail e senha.

Listagem de contratos

  • Paginação: prévia do contrato, exibindo as principais informações, distribuídas em um sistema de paginação.
  • Busca: possibidade de buscar contratos através de palavras-chave nas principais informações utilizando a Busca simples ou buscar em campos específicos, quando utilizar a Busca avançada.
  • Implementações futuras: pretende-se aumentar o número de possibilidades na Busca avançada.

Visualização completa de contrato

  • Apresentação: as informações do contrato são apresentadas de forma estruturada, procurando facilitar o entendimento do usuário.
  • Download: permite o download do documento original do contrato, quando disponível.
  • Preservação de dados: números de CPF são parcialmente ocultados para preservar a privacidade das partes envolvidas, para usuários que não são os "donos" do contrato enviado. Obs.: o download do documento permite a visualização completa do documento, no entanto optamos por manter o download durante a apresentação do protótipo para demonstrar a funcionalidade.
  • Implementações futuras: informações do responsável pelo cadastro do contrato, favoritar, adicionar à listas, configurações de compartilhamento (propriedades Meta OG), dentre outras.

Equipe

A equipe 4 Bits é formada por estudantes do curso de Análise e Desenvolvimento de Sistemas, do Campus Ituiutaba, orientados por um professor com experiência acadêmica e de mercado, nas áreas de desenvolvimento para a web, mobile e jogos digitais.

A seguir, serão apresentados cada um dos membros do grupo e suas características:

Ana Victória
  • 5º Período Análise e Desenvolvimento de Sistemas
  • Experiência profissional.
  • Experiência em Projetos de Extensão.
Arquitetura
Marcello Vinhais
  • 1º Período Análise e Desenvolvimento de Sistemas
  • Formação em Técnico em Informática
  • Experiência em Projeto de Ensino
Testes
Melissa Medeiros
  • 3º Período Análise e Desenvolvimento de Sistemas
  • Formação em Técnico em Informática
  • Finalista da Maratona Feminina de Programação
  • Experiência em Projeto de Iniciação Científica
UI
Daniel Pimentel
  • Mestre em Computação Gráfica
  • 12 de docência em desenvolvimento para a web
  • Experiência profissional como desenvolvedor web
Orientador