← Últimos artigos
🤖 AI

Using LLMs in Software Design: An Empirical Study of GitHub and A Practitioner Survey

Este artigo apresenta um estudo empírico de métodos mistos que combina uma análise de mineração de 291 conversas no GitHub e uma pesquisa com 65 profissionais para caracterizar como os desenvolvedores utilizam LLMs em tarefas de design de software, revelando nove categorias distintas de aplicação, sete benefícios principais e seis limitações significativas que destacam a tensão atual entre o potencial da tecnologia e seus desafios práticos.

Autores originais: Yifei Wang, Ruiyin Li, Peng Liang, Yangxiao Cai, Zengyang Li, Mojtaba Shahin, Arif Ali Khan, Qiong Feng

Publicado 2026-05-06
📖 5 min de leitura🧠 Leitura aprofundada

Autores originais: Yifei Wang, Ruiyin Li, Peng Liang, Yangxiao Cai, Zengyang Li, Mojtaba Shahin, Arif Ali Khan, Qiong Feng

Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo

Imagine o design de software como o processo de arquitetar uma cidade massiva e complexa. Antes que um único tijolo seja assentado, os arquitetos devem decidir onde as estradas vão, como os edifícios se conectam, quais materiais usar e como o sistema de esgoto funciona. Isso é "design de software".

Por décadas, esse trabalho foi feito inteiramente por especialistas humanos. Mas, recentemente, uma nova ferramenta chegou: Modelos de Linguagem de Grande Escala (LLMs), como o ChatGPT. Pense nesses modelos como estagiários superinteligentes e incrivelmente rápidos que leram quase todos os livros já escritos sobre programação e planejamento urbano. Eles podem conversar com você, responder perguntas e até mesmo desenhar plantas baixas.

Este artigo é um estudo de campo para responder a uma pergunta simples: Como arquitetos de software reais estão, na verdade, usando esses "super-estagiários" para projetar suas cidades, e isso funciona?

Os pesquisadores não apenas especularam; eles analisaram duas fontes de evidência:

  1. O "Diário" (Estudo de Mineração): Eles examinaram 291 conversas reais compartilhadas no GitHub, onde desenvolvedores conversaram com o ChatGPT sobre problemas de design.
  2. A "Entrevista" (Pesquisa): Eles perguntaram diretamente a 65 desenvolvedores de software: "Como vocês usam essas ferramentas e o que gostam ou odeiam nelas?"

Aqui está o que eles descobriram, dividido em conceitos simples:

1. Que Trabalhos os "Estagiários" Estão Fazendo? (As Tarefas)

O estudo descobriu que os desenvolvedores não estão apenas pedindo à IA para escrever uma única linha de código. Eles a estão usando para nove tipos específicos de trabalho de design, variando da visão geral aos detalhes menores:

  • A Visão Geral (Arquitetura): Decidir se a cidade deve ser um único edifício gigante ou um conjunto de casas pequenas (microsserviços).
  • A Planta Baixa (Modelos de Dados): Projetar como as informações são armazenadas, como organizar o sistema de arquivamento de uma biblioteca.
  • As Regras da Estrada (Interfaces): Descobrir como diferentes partes do sistema conversam entre si.
  • As Verificações de Segurança (Segurança): Planejar como trancar as portas e janelas.
  • A Equipe de "Conserto" (Refatoração): Pegar um design antigo e bagunçado e limpá-lo.

A Analogia: É como contratar um estagiário que pode ajudar você a esboçar o layout da cidade, desenhar os diagramas de encanamento e sugerir portões de segurança, mas você ainda precisa ser quem segura a caneta e toma a decisão final.

2. Como Eles Conversam com o "Estagiário"? (A Interação)

Os pesquisadores descobriram que isso não é uma interação "única e concluída".

  • É uma Conversa, Não um Comando: Em média, um desenvolvedor e a IA vão e voltam cerca de 6 vezes para resolver um único problema de design.
  • O Padrão: O desenvolvedor faz uma pergunta, a IA dá uma resposta, o desenvolvedor diz: "Isso é muito vago" ou "Tente assim", e a IA tenta novamente.
  • O Foco: A maioria dessas conversas ocorre no nível de "Design Detalhado". Isso é como discutir o tipo específico de tijolo a usar ou a colocação exata de uma janela, em vez de discutir onde toda a cidade deve ser construída.

A Analogia: Usar a IA para design é como navegar por um labirinto com um GPS que às vezes se perde. Você precisa continuar corrigindo-o, dizendo: "Não, vire à esquerda aqui, não à direita", até finalmente encontrar a saída.

3. Quais São os Superpoderes? (Os Benefícios)

Os desenvolvedores relataram sete benefícios principais, sendo os dois principais:

  • O "Melhor Google": A IA é frequentemente mais rápida e útil do que um mecanismo de busca tradicional para encontrar ideias de design. Ela age como um bibliotecário conhecedor que pode resumir instantaneamente tópicos complexos.
  • O "Sistema de Alerta Precoce": A IA é surpreendentemente boa em identificar falhas em um design antes que alguém o construa. Ela pode dizer: "Ei, se você construí-lo assim, o tráfego ficará congestionado mais tarde", poupando a equipe de futuras dores de cabeça.

Outros benefícios incluíram ajudar novos membros da equipe a entender o projeto rapidamente e sugerir novas e criativas ideias que os humanos não haviam pensado.

4. Quais São as Super-Fraquezas? (As Limitações)

No entanto, o "super-estagiário" tem algumas falhas graves que tornam seu uso complicado:

  • O Problema do "Muro de Texto": A IA frequentemente escreve demasiado. Em vez de uma planta baixa clara, ela entrega um ensaio de 50 páginas. Os desenvolvedores acharam isso difícil de ler e frustrante.
  • O Problema da "Planta Baixa Quebrada": Às vezes, a IA gera código ou designs que parecem bons no papel, mas não funcionam de verdade quando você tenta executá-los. É como um arquiteto desenhando uma ponte que parece bela, mas desmoronaria se você colocasse um carro sobre ela.
  • O Problema da "Amnésia": A IA é muito sensível ao contexto. Se você não der a ela detalhes suficientes sobre seu projeto específico, ela pode alucinar (inventar coisas) ou dar conselhos que se encaixam em uma cidade completamente diferente.
  • A Luta com "Upload de Arquivos": É difícil carregar pastas inteiras de projetos na IA. É como tentar explicar o layout da sua cidade lendo uma lista de nomes de ruas um por um, em vez de mostrar um mapa.

A Conclusão

O artigo conclui que os LLMs são excelentes "exploradores", mas ainda não são "tomadores de decisão".

Eles são fantásticos para:

  • Brainstorming de ideias.
  • Verificação de erros óbvios.
  • Aprender novos conceitos rapidamente.
  • Esboçar rascunhos iniciais.

Mas eles não estão prontos para substituir o arquiteto humano. O humano ainda deve verificar o trabalho, consertar as partes quebradas e tomar as decisões finais. O relacionamento é uma parceria: a IA fornece a matéria-prima e as sugestões, mas o humano fornece o julgamento e o polimento final.

Em resumo: Usar um LLM para design de software é como ter um copiloto muito rápido, muito conhecedor, mas que ocasionalmente alucina. Ele pode ajudá-lo a voar mais rápido e a detectar tempestades cedo, mas você ainda precisa manter as mãos nos controles.

Afogado em artigos na sua área?

Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.

Experimentar Digest →