To infinity and beyond. 🚀
- Objetivo do Projeto
- Demonstração do Projeto
- Sprints
- Cronograma
- Backlog do Produto
- Tecnologias Utilizadas
- Dependências
- Integrantes
Desenvolver um ambiente integrado de desenvolvimento (IDE) utilizando Java para auxiliar o desenvolvedor a otimizar tempo e custo de desenvolvimento.
- Sprint 1 - Estrutura Básica da IDE e Integração com o Ollama para geração de Testes Unitários.
- Sprint 2 - Fazer recomendações personalizadas de código (melhorias do código: eficiência, segurança, legibilidade).
- Sprint 3 - Gerar documentação do código (docstrings, explicações do que o código faz).
| Sprint | Previsão | Status |
|---|---|---|
| Kick Off | 24/02 - 28/02 | Concluído |
| Sprint 1 | 10/03 - 30/03 | Concluído |
| Sprint 2 | 07/04 - 27/04 | Concluído |
| Sprint 3 | 05/05 - 25/05 | Concluído |
| Feira de Soluções | 17/06 | Não iniciada |
Tecnologias Base: Java (Swing), API Ollama (Modelo: Qwen/Code Llama/Similar), Python (para execução/teste), Banco de Dados MySql (para Sprint 3 - para armazenamento de prompts, histórico de interações da IA e outros dados relevantes) Estimativas: Escala Fibonacci-like (3, 5, 8, 13)
| id | prioridade | User Histories / Tarefas Técnicas | points | sprint |
|---|---|---|---|---|
| US01 | Alta | Como desenvolvedor, quero uma interface gráfica Java básica com uma área de texto para digitar e editar código Python. | 5 | 1 |
| US02 | Alta | Como desenvolvedor, quero poder Abrir arquivos .py existentes na IDE para visualizá-los e editá-los. |
5 | 1 |
| US03 | Alta | Como desenvolvedor, quero poder Salvar o código Python que estou editando em um arquivo. | 3 | 1 |
| US04 | Alta | Como desenvolvedor, quero poder selecionar um trecho de código Python e solicitar à IA (Ollama) a geração de testes unitários básicos para ele. | 13 | 1 |
| US05 | Alta | Como desenvolvedor, quero um botão/comando para acionar a geração de testes pela IA e uma área para visualizar os testes gerados. | 5 | 1 |
| US06 | Alta | Como usuário do sistema, quero que a IA (Ollama) analise meu código Python e sugira melhorias (qualidade, estilo, possíveis erros). | 8 | 2 |
| US07 | Alta | Como desenvolvedor, quero um botão/comando para acionar a análise de melhorias pela IA e uma área dedicada para visualizar as sugestões. | 5 | 2 |
| US08 | Alta | Como desenvolvedor, quero um botão/comando para executar o script Python atualmente aberto na IDE. | 5 | 2 |
| US09 | Alta | Como desenvolvedor, quero ver a saída (stdout/stderr) da execução do script Python em um painel ou console dentro da IDE. | 8 | 2 |
| US10 | Média/Alta | Como desenvolvedor, quero que a IA (Ollama) analise meu código em Python e documente o código automaticamente (gerando docstrings/comentários). | 8 | 3 |
| US11 | Média/Baixa | Como desenvolvedor, quero que a IA explique em linguagem natural o que um trecho selecionado de código em Python faz. | 5 | 3 |
| US12 | Alta | Como desenvolvedor (Tarefa Técnica), quero que os Prompts enviados à IA e exemplos de código associados sejam armazenados em banco de dados simples. | 13 | 3 |
| US13 | Alta | Como desenvolvedor quero que os códigos gerados sejam armazenados e comitados no GitHub, de maneira fácil e prática | 8 | 3 |
| id | Tasks | points |
|---|---|---|
| US04 | Implementar funcionalidade de gerar testes | 8 |
| US01 | Criação do Projeto Principal em Java | 5 |
| US05 | Integrar a Classe OllamaInterface com tela principal e capturar retorno para a janela de output de testes | 5 |
| US02 | Implementar abertura de código fonte (ler arquivo ".py") | 3 |
| US05 | Criar classe OllamaInterface para comunicação com Ollama | 2 |
| US04 | Criar prompts para refinar a saída do LLM | 3 |
| US05 | Criação da Tela Secundária para saída dos testes | 3 |
| id | Tasks | points |
|---|---|---|
| US01 | Melhoria de documentação | 2 |
| US07 | Melhorias Gerais (Abertura de arquivo, Salvamento da saída, alteração do nome do arquivo) | 5 |
| US06 | Desenvolver Prompts (Melhorar a eficiência, segurança e legibilidade do Código) | 5 |
| US01 | Prototipação no FIGMA (protótipo funcional) | 2 |
| US08 | Execução do Código (Permitir que o código seja executado na própira IDE) | 3 |
| US09 | Cirar método para envio do código para o Ollama | 3 |
| id | Tasks | points |
|---|---|---|
| US11 | Criar explicação do que o código faz | 5 |
| US10 | Criar DocStrings (Documentação do Código) | 8 |
| US12 | Armazenar códigos gerados pelo Ollama em novos prompts para melhoria | 13 |
- É necessário ter instalado o Ollama para executar o modelo de linguagem Baixar Ollama
- Além disso, é necessário ter o Java Development Kit (JDK) instalado e configurado para executar a aplicação Java.
- Esse projeto foi desenvolvido para funcionar no LLM qwen2.5-coder qwen2.5-coder
- Para armazenar os códigos com prompts é preciso ter o MySQL instalado e configurado localmente.

