Vantagens e Barreiras da IA Generativa como Ferramenta Educacional, de Produtividade e Resolução de Problemas de Lógica de Programação e Engenharia de Software: um Estudo Exploratório da Ferramenta GitHub Copilot

Rodrigo Ferreira Araújo

O grande impacto do advento da IA generativa trouxe para o mundo de engenharia de software um novo paradigma: o uso da IA como ferramenta de produção de código. Mais especificamente, as inteligências artificiais generativas de texto como o chatGPT conseguem produzir trechos de código de qualidades partir de prompts descritivos simples, o que levantou dúvidas entre múltiplas comunidades acerca de qual nível essas novas ferramentas poderiam substituir o próprio programador humano em si, mesmo com suas limitações. Nesse viés, este projeto orientado a computação, com uma atuação empírica e experimentar, visou avaliar quantitativa e qualitativamente a performance de uma promissora ferramenta de IA especializada na geração de código, a extensão de IDEs GitHub Copilot, por meio da sua aplicação extensiva na resolução de problemas de diferentes categorias e dificuldades de programação do repositório online beecrowd. O ponto chave é avaliar, de forma exploratória, a sua performance e as estratégias lógico-estruturais empregadas pela ferramenta de IA generativa para desvelar contextos de uso úteis e prejudiciais para o programador humano. Das linguagens usadas para os testes (JS e Python), os resultados mostraram uma performance acima do esperado para problemas de dificuldade mais fácil e categorias mais simples, mas com uma queda acentuada com o aumento da complexidade geral dos problemas, produzindo mais erros e soluções incompletas.
Tanto o Copilot quanto o Copilot Chat, um chatbot dedicado ao uso em codificação, conseguem produzir resultados úteis e bem estruturados em contextos triviais, mas para um contexto mais complexo e multifatorial, introduzem um alto débito técnico e bugs sutis. O trabalho futuro deste projeto consiste em explorar essa IA mais a fundo em outros contextos, mais especificamente em um contexto educacional acerca de engenharia de software e corporativo,  como uma revisão da literatura acerca do uso atual da ferramenta em ambiente profissional de codificação.


2024/1 - POC1

Orientador: Pedro Olmo Stancioli Vaz de Melo

Link para vídeo

PDF Disponível