Sobre • Ferramentas e Tecnologias • Entregas • Backlogs e User Stories • Documentação • Equipe
Nós somos estudantes da FATEC de São José dos Campos e estamos no 5º semestre de Desenvolvimento de Software e multiplataformas.
Atualmente, empresas de tecnologia enfrentam desafios na disseminação de conhecimento sobre seus próprios produtos, sistemas e processos internos. Muitas vezes, usuários internos e clientes precisam de suporte para entender funcionalidades de sistemas, regras de negócio ou fluxos operacionais. No entanto, centralizar esse conhecimento em poucos especialistas pode gerar gargalos e atrasos nas respostas.
Pensando nisso, este projeto tem como objetivo o desenvolvimento de uma plataforma de criação e gerenciamento de agentes de Inteligência Artificial. A ferramenta permitirá que administradores criem múltiplos agentes virtuais personalizados, treinados para responder dúvidas específicas sobre diferentes sistemas e processos internos da empresa. Além disso, a solução deve contar com um sistema de permissões, onde cada usuário terá acesso apenas aos agentes aos quais foi autorizado.
Os alunos deverão desenvolver um aplicativo móvel que possibilite a interação com esses agentes por meio de um chat inteligente, garantindo que cada usuário visualize apenas as conversas e respostas dos agentes aos quais possui permissão de acesso. A aplicação deve ser integrada a um banco de dados na nuvem para armazenamento das interações e permitir o gerenciamento eficiente dos agentes e permissões.
Desenvolvimento de uma Plataforma Móvel para Criação e Gerenciamento de Agentes de Inteligência Artificial para Atendimento Interno
Link do repositório do Front-end: https://github.com/BananaScripts/API_5-Semester-Frontend
Link do repositório do Back-end: https://github.com/BananaScripts/API_5-Semester-Backend
| Período | Data | Status |
|---|---|---|
| Kickoff | 25.02.2025 - 07.03.2025 | ✅ |
| Sprint 01 | 10.03.2025 - 30.03.2025 | ✅ |
| Sprint Review | 31.03.2025 - 04.04.2025 | ✅ |
| Sprint 02 | 07.04.2025 - 27.04.2025 | ✅ |
| Sprint Review | 28.04.2025 - 02.05.2025 | ✅ |
| Sprint 03 | 05.05.2025 - 25.05.2025 | ✅ |
| Feira de Soluções | 17.05.2025 | ✅ |
Desenvolvimento da Aplicação Móvel com Chat (Sem os Agentes Implementados)
Desenvolvimento e Implementação do Sistema de Criação e Gerenciamento dos Agentes de IA
Desenvolviemnto dos Dashboards e do Histórico, além do Aprimoramento dos Agentes de IA
| ID | Requisitos Funcionais | Prioridade |
|---|---|---|
| RF_1 | Permitir o cadastro de agentes de IA com conteúdos personalizados (ex.: um agente para responder dúvidas sobre um sistema de RH, outro para um ERP, etc.) | 2 |
| RF_2 | Implementar um sistema de chat, onde os usuários possam interagir com os agentes para esclarecer dúvidas | 1 |
| RF_3 | Criar um sistema de permissões, onde o administrador possa definir quais agentes cada usuário pode acessar | 1 |
| RF_4 | Armazenar o histórico de interações entre usuários e agentes em um banco de dados na nuvem | 3 |
| RF_5 | Desenvolver um dashboard administrativo para gerenciar os agentes, permissões e visualizar estatísticas de uso | 3 |
| ID | Requisitos Não Funcionais |
|---|---|
| RNF_1 | Utilizar ReactNative ou Flutter para o desenvolvimento do aplicativo móvel. |
| RNF_2 | Implementar a persistência de dados em um banco de dados compatível (MySQL, MongoDB, Oracle, etc.). |
| RNF_3 | Assegurar um tempo de resposta adequado para as interações no chat. |
| RNF_4 | Criar uma documentação técnica com instruções de instalação, uso e estrutura da API. |
| RNF_5 | Proporcionar uma experiência fluida ao usuário, com interações naturais e rápidas. |
| RNF_6 | Possuir uma interface intuitiva e acessível. |
| ID | Requsitos | Item | Prioridade |
|---|---|---|---|
| BCK_1 | RNF_1, RNF_5, RNF_6 | Estrutura do Aplicativo Móvel. | 1 |
| BCK_2 | RNF_2 | Implementação do Aplicativo e seus Serviços em Nuvem ( Cloud Service). | 3 |
| BCK_3 | RNF_4 | Definição e Aplicação dos Padrões de DevOps Definidos. | 1 |
| BCK_4 | RF_2 | Sistema de Chat entre um Usuário e um Agente de IA ( WebSocket Gateway). | 1 |
| BCK_5 | RF_5 | Sistema de Gerenciamento de Usuários ( Agent Management Service). | 1 |
| BCK_6 | RF_5 | Sistema de Login e Autenticação ( Auth Service). | 1 |
| BCK_7 | RF_5 | Sistema de Gerenciamento de Agentes de IAs ( Agent Management Service). | 2 |
| BCK_8 | RF_1, RNF_3 | Sistema de Configuração e criação de Agentes de IA ( AI Processing Service). | 2 |
| BCK_9 | RF_3 | Sistema de Permissão de Usuários e Agentes de IA ( Agent Management Service ). | 2 |
| BCK_10 | RF_4 | Sistema de Histórico dos Chats (Redis) | 3 |
| BCK_11 | RF_5 | Sistema de Dashboards dos Chats (Dashboards Administrativos) | 3 |
| ID dos Requisitos | ID Product Backlog | User Stories |
|---|---|---|
| RF_3, RF_5 | BCK_6, BCK_9 | Eu, enquanto usuário do sistema, quero poder acessar uma conta já criada pelo administrador por meio do e-mail e senha. |
| RNF_1, RNF_2, RNF_5, RNF_6, RF_2 | BCK_1, BCK_2, BCK_4 | Eu, enquanto usuário comum do sistema, quero poder ter acesso á aplicação e buscar chats onde posso buscar as respostas que preciso. |
| RF_2 | BCK_4 | Eu, enquanto usuário comum do sistema, quero poder acessar varias opções de chat, com vários contextos diferentes, onde poderei descobrir oque preciso por meio da conversa com um Agente. |
| RF_2 | BCK_4 | Eu, enquanto usuário comum do sistema, quero poder ter uma conversa normal, eficiente e rápida com um Agente. |
| RF_5 | BCK_10 | Eu, enquanto usuário comum do sistema, quero poder acessar o histórico das conversas que já tive com os Agentes de IA. |
| RF_3, RF_5 | BCK_6, BCK_9 | Eu, enquanto usuário comum, quero poder ter acesso a chats com informações internas a empresa, de acordo com meu nível de privilégio. |
| RF_1 | BCK_8 | Eu, enquanto curador, quero poder configurar novos e alterar antigos agentes. |
| RF_1 | BCK_8 | Eu, enquanto curador, quero poder categorizar os Agentes de forma individual. |
| RF_5 | BCK_5, BCK_7 | Eu, enquanto administrador, quero poder gerenciar (criar, deletar e alterar) usuários e poder além e tudo, configurar Agentes. |
| RF_3 | BCK_9 | Eu, enquanto administrador, quero poder definir e remover permissões de usuários cadastrados e Agentes. |
| RF_5 | BCK_11 | Eu, enquanto administrador, quero poder ter acesso a dashboards com estatísticas de uso das conversas entre os usuários e Agentes. |
| ID | ID do Jira | ID do Backlog | Titulo | Descrição |
|---|---|---|---|---|
| 1 | Scrum-10 | BCK_1 | (Frontend) Desenvolvimento da Estrutura do Aplicativo | Desenvolver a estrutura do aplicativo, ou seja, criar o projeto e desenvolver a barra de navegação funcional, além de iniciar a aplicação react. |
| 2 | Scrum-11 | BCK_4 | (Frontend) Desenvolvimento da Interface do Chat | Desenvolver a interface do chat, de forma que o chat permaneça estilizado durante a conversa. |
| 3 | Scrum-12 | BCK_5 | (Frontend) Desenvolvimento da Interface dos Administradores | Desenvolver a interface de gerenciamento dos usuários, com as funcionalidades de um CRUD padrão. |
| 4 | Scrum-13 | BCK_6 | (Frontend) Desenvolvimento da Interface de Login | Desenvolver a interface de login junto do acesso á essa interface. |
| 5 | Scrum-14 | BCK_5 | (Frontend) Implementação do Sistema de Gerenciamento de Usuários | Implementar sistema de gerenciamento de usuários desenvolvido no backend á interface do administrador. |
| 6 | Scrum-15 | BCK_6 | (Frontend) Impelmentação do Sistema de Autenticação | Implementar sistema de autenticação, incluindo a criação de token, á interface do login. |
| 7 | Scrum-16 | BCK_4 | (Frontend) Implementação do Chat | Implementar Chat sem os agentes de IA presente no backend na interface do chat. |
| 8 | Scrum-18 | BCK_5 | (Backend) Desenvolvimento do Sistema de Gerenciamento de Usuários | Desenvolver sistema que faz um CRUD padrão na entidade de usuários. |
| 9 | Scrum-19 | BCK_6 | (Backend) Desenvolvimento do Sistema de Autenticação | Desenvolviemnto do sistema de autenticação que será implementado no sistema. |
| 10 | Scrum-20 | BCK_4 | (Backend) Desenvolvimento do Chat | Desenvolvimento de um sistema que permita a conversa entre um usuário e um agente |
| 11 | Scrum-21 | BCK_2 | (Backend) Desenvolvimento do Banco de Dados | Desenvolvimento do banco de dados do sistema e conexão com os serviços do Backend. |
| 12 | Scrum-22 | BCK_8 | (Backend) Estudo Sobre Agentes de IA e suas Ferramentas | Estudos necessários para a próxima Sprint sobre o desenvolvimento de Agentes que supram as necessidades do cliente. |
| 13 | Scrum-23 | BCK_1 | (Backend) Desenvolvimento e Organização da base do Backend | Inicialização da aplicação em C# e organização dos serviços e sistemas do Backend |
| 14 | Scrum-25 | BCK_3 | (Geral) Definição de Padrões DevOps do Projeto | Definição dos padrões do projeto que serão seguidos nessa e nas próximas sprints. |
| ID | ID do Jira | ID do Backlog | Titulo | Descrição |
|---|---|---|---|---|
| 1 | Scrum-28 | BCK_7 | (Frontend) Desenvolvimento da interface dos Curadores | Desenvolvimento de uma interface que permmita que o curador possa gerenciar (criar, editar, alterar, ver e configurar o conteudo) dos Agentes já criados ou ao criar um novo. (Essa interface deve ser adicionada também na interface do Administrador como uma de suas funcionalidades.). |
| 2 | Scrum-29 | BCK_9 | (Frontend) Desenvolver a interface de gerenciamento de Permissões de usuários e Agentes. | Desenvolver uma interface que permita definir quais usuários poderão conversar com quais Agentes, baseados em um sistema de permissão próprio nosso ou nos padrões de mercado. (As permissões não devem afetar usuários com privilégios de curadores ou administradores, apenas usuários "comuns"/ cadastrados.) |
| 3 | Scrum-30 | BCK_9 | (Frontend) Aprimorar interface do Administrador, implementando a interface de um curador e a interface de permissões | Implementar na já criada interface do Administrador, duas interfaces desenvolvidas em outras Tasks como funcionalidades do Administrador. |
| 4 | Scrum-31 | BCK_1 | (Frontend) Aprimorar Sistema de Login, alterando as interfaces baseadas nos privilégios. | Aprimorar base do sistema e o sistema de Login, permitindo que usuários Administradores e Curadores possuam interfaces diferentes em um mesmo espaço, permitindo que cada um tenha as suas funcionalidades correspondente. |
| 5 | Scrum-32 | BCK_1 | (Frontend) Aprimotar as interfaces já criadas Implementando os Agentes, inserindo mecanismos de busca por nome e categoria. | Implementar Agentes nas interfaces de escolha, dando a possibilidade de filtrar os agentes em mecanismos de busca por nome do agente, categoria/ área e criadas por último. |
| 6 | Scrum-33 | BCK_4 | (Frontend) Aprimorar o chat, implementando os Agentes, permitindo a conversa do sistema com o usuário. | Implementar sistema de envio e recebimento de mensagens no frontend, mantendo a consistencia entre os agentes e usuários. |
| 7 | Scrum-34 | BCK_7 | (Frontend) Implementar o Sistema de Gerenciador dos Curadores em sua Interface. | Implementar sistema que permite gerenciar (criar, editar, alterar, ver e configurar o conteudo) os Agentes, além de também possuir a interface gerenciadora de permissões. |
| 8 | Scrum-35 | BCK_9 | (Backend) Desenvolvimento de Sistema de Permissões relacionado á Usuários e Agentes | Desenvolver um sistema que permita categorizar os usuários comuns e os Agentes por meio de niveis de permissão, onde o maior pode ver os menores, mas eles não podem visualizar/ conversar com algo superior á seu nivel de permissão. |
| 9 | Scrum-36 | BCK_7 | (Backend) Enfileiramento de Mensagens no Redis. | Implementar em conjunto com os Agentes, o enfileiramento de mensagens, via o Redis, permitindo o recebimento de mensagens na ordem correta |
| 10 | Scrum-37 | BCK_8 | (Backend) Implemtnação dos Agentes no Chat. | Alterar o sistema de chat, implementando os Agentes na geração de respostas. |
| 11 | Scrum-38 | BCK_9 | (Backend) Desenvolver sistema de Gerenciamento dos Agentes | Desenvolver sistema que o usuário Curador usará para criar, deletar, alterar, ver e definir o conteúdo dos Agentes. |
| 12 | Scrum-39 | BCK_8 | (Backend) Desenvolvimento e Aplicação da LLM no Sistema. | Desenvolver e aplicar nos agentes a LLM. Inserindo as IAs no sistema. |
| ID | ID do Jira | ID do Backlog | Titulo | Descrição |
|---|---|---|---|---|
| 1 | Scrum-40 | BCK_11 | (Frontend) Desenvolvimento do Dashboard Administrativo | Desenvolver interface de dashboard com gráficos e estatísticas de uso dos agentes (interações por período, agentes mais acessados, etc). |
| 2 | Scrum-41 | BCK_11 | (Backend) Implementação de Endpoints para Coleta de Dados do Dashboard | Criar endpoints para fornecer dados estatísticos necessários para o dashboard (métricas de uso, histórico de conversas, etc). |
| 3 | Scrum-42 | BCK_10 | (Frontend) Implementação da Interface de Histórico de Chats | Desenvolver interface que permita visualizar o histórico completo de conversas do usuário com filtros por data e agente. |
| 4 | Scrum-43 | BCK_10 | (Backend) Integração do Redis para Armazenamento de Histórico | Implementar sistema de persistência do histórico de conversas utilizando Redis e integração com o banco principal. |
| 5 | Scrum-44 | BCK_9 | (Backend) Refatoração do Sistema de Permissões | Aprimorar a arquitetura de permissões com hierarquia flexível, logs de alterações e integração com novos módulos. |
| 6 | Scrum-45 | BCK_2 | (DevOps) Implementação de Deploy na AWS | Configurar ambiente na AWS (EC2, RDS, Elasticache) e realizar deploy das aplicações com balanceamento de carga. |
| 7 | Scrum-46 | BCK_3 | (DevOps) Configuração de Pipeline CI/CD | Implementar pipeline automatizado com testes, build e deploy utilizando GitHub Actions e Docker. |
| 8 | Scrum-47 | BCK_9 | (Frontend) Implementação do Sistema de Permissões no Frontend | Adaptar a interface para refletir as permissões do usuário, bloqueando acesso a agentes não autorizados e garantindo sincronia com as regras do backend. |
| 9 | Scrum-48 | BCK_8 | (Backend) Aprimoramento do Sistema de Configuração de Agentes com Suporte a Arquivos | Permitir upload de arquivos (PDFs, documentos) durante a configuração dos agentes para enriquecer o conhecimento da IA. |
| 10 | Scrum-49 | BCK_7 | (Frontend) Ajustes na Tela de Cadastro/Edição de Agentes e Implementação de Anexos | Atualizar a interface de criação/edição de agentes para incluir upload de arquivos e melhorar a usabilidade do formulário. |
| 11 | Scrum-50 | BCK_3 | (Backend) Implementação de Testes de Integração | Desenvolver testes de integração para validar funcionalidades críticas (autenticação, permissões, chat) e garantir estabilidade do sistema. |
| 12 | Scrum-51 | BCK_3 | (DevOps) Integração de Testes Automatizados no Pipeline CI/CD | Adicionar etapa de execução de testes automatizados (frontend e backend) no pipeline CI/CD para validação pré-deploy. |
| 13 | Scrum-52 | BCK_8 | (Backend) Migração para o Google Gemini como Provedor de IA | Substituir a LLM atual (DeepSeek) pelo Gemini, adaptando processamento de prompts e integracao com API. |
| 14 | Scrum-53 | BCK_7 | (Frontend) Correção da interface de cadastro/Edição de Agentes | Ajustar formulários com campos obrigatórios, validação e organizacao intuitiva dos inputs. |
| DoR (Definition of Ready) | DoD (Definition of Done) |
|---|---|
| As Tasks e as User Stories devem estar claras e possuirem uma descrição. | A funcionalidade deve ter sido aplicada na branch development via Pull request |
| A interface ou sistema a ser feito deve ser apresentado pelo protótipo ou pela arquitetura na Task. | A funcionalidade deve estar implementada em conjunto ao resto do sistema. |
| Oque é necessário para o desenvolvimento da Task já deve estar completo ou sendo finalizado. | A funcionalidade que será implementada não deve interromper outra já desenvolvida. |
Todas as rotas estão documentadas no swagger, aqui está o link: localhost:/swagger
| Nome | Github | |
|---|---|---|
| Bruno Fernandes | |
|
| Douglas Medeiros | |
|
| Kaue Riki | |
|
| Miguel Conde | |
|
| Antonio Alexandre | |
Instituição: Fatec São José dos Campos - Prof. Jessen Vidal
Curso: Desenvolvimento de Software Multiplataforma/5º Semestre
