← Derniers articles
🤖 AI

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

Cet article présente une étude empirique à méthodes mixtes combinant une analyse de 291 conversations GitHub et une enquête auprès de 65 praticiens afin de caractériser la manière dont les développeurs utilisent les LLM pour des tâches de conception logicielle, révélant neuf catégories d'application distinctes, sept avantages clés et six limitations significatives qui mettent en lumière la tension actuelle entre le potentiel de la technologie et ses défis pratiques.

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

Publié 2026-05-06
📖 6 min de lecture🧠 Analyse approfondie

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

Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète

Imaginez la conception logicielle comme le processus d'architecturer une ville massive et complexe. Avant même qu'une seule brique ne soit posée, les architectes doivent décider où passent les routes, comment les bâtiments sont connectés, quels matériaux utiliser et comment fonctionne le système d'égouts. C'est cela, la « conception logicielle ».

Pendant des décennies, ce travail a été entièrement réalisé par des experts humains. Mais récemment, un nouvel outil est arrivé : les Grands Modèles de Langage (LLM), comme ChatGPT. Imaginez ces modèles comme des stagiaires surdoués et incroyablement rapides qui ont lu presque tous les livres jamais écrits sur la programmation et l'urbanisme. Ils peuvent discuter avec vous, répondre à des questions et même dessiner des plans.

Cet article est une étude de terrain visant à répondre à une question simple : Comment les architectes logiciels réels utilisent-ils réellement ces « super-stagiaires » pour concevoir leurs villes, et cela fonctionne-t-il ?

Les chercheurs ne se sont pas contentés de deviner ; ils ont examiné deux sources de preuves :

  1. Le « Journal » (Étude par exploration de données) : Ils ont analysé 291 conversations réelles partagées sur GitHub où des développeurs discutaient avec ChatGPT de problèmes de conception.
  2. L'« Entretien » (Enquête) : Ils ont demandé directement à 65 développeurs logiciels : « Comment utilisez-vous ces outils, et que aimez-vous ou détestez-vous à leur sujet ? »

Voici ce qu'ils ont découvert, décomposé en concepts simples :

1. Quels travaux les « Stagiaires » accomplissent-ils ? (Les Tâches)

L'étude a révélé que les développeurs ne demandent pas simplement à l'IA d'écrire une seule ligne de code. Ils l'utilisent pour neuf types spécifiques de travail de conception, allant de la vue d'ensemble aux détails :

  • La Vue d'ensemble (Architecture) : Décider si la ville doit être un seul immeuble géant ou un ensemble de petites maisons (microservices).
  • Le Plan (Modèles de données) : Concevoir comment les informations sont stockées, comme l'organisation du système de classement d'une bibliothèque.
  • Les Règles de la route (Interfaces) : Déterminer comment les différentes parties du système communiquent entre elles.
  • Les Vérifications de sécurité (Sécurité) : Planifier comment verrouiller les portes et les fenêtres.
  • L'Équipe de « Réparation » (Refactoring) : Prendre une conception ancienne et désordonnée pour la nettoyer.

L'Analogie : C'est comme embaucher un stagiaire qui peut vous aider à esquisser la disposition de la ville, dessiner les schémas de plomberie et suggérer des portails de sécurité, mais vous devez toujours être celui qui tient le stylo et prend la décision finale.

2. Comment parlent-ils au « Stagiaire » ? (L'Interaction)

Les chercheurs ont découvert qu'il ne s'agit pas d'une interaction « unique ».

  • C'est une Conversation, pas un Ordre : En moyenne, un développeur et l'IA échangent environ 6 fois pour résoudre un seul problème de conception.
  • Le Motif : Le développeur pose une question, l'IA donne une réponse, le développeur dit « C'est trop vague » ou « Essayez comme ça », et l'IA réessaie.
  • Le Focus : La plupart de ces conversations ont lieu au niveau de la « Conception Détaillée ». C'est comme débattre du type précis de brique à utiliser ou de l'emplacement exact d'une fenêtre, plutôt que de débattre de l'endroit où toute la ville devrait être construite.

L'Analogie : Utiliser l'IA pour la conception, c'est comme naviguer dans un labyrinthe avec un GPS qui se perd parfois. Vous devez continuer à le corriger en disant : « Non, tournez à gauche ici, pas à droite », jusqu'à ce que vous trouviez enfin la sortie.

3. Quelles sont les Super-pouvoirs ? (Les Avantages)

Les développeurs ont rapporté sept avantages principaux, les deux premiers étant :

  • Le « Meilleur Google » : L'IA est souvent plus rapide et plus utile qu'un moteur de recherche traditionnel pour trouver des idées de conception. Elle agit comme un bibliothécaire érudit capable de résumer instantanément des sujets complexes.
  • Le « Système d'Alerte Précoce » : L'IA est étonnamment bonne pour repérer les failles dans une conception avant que quiconque ne la construise. Elle pourrait dire : « Hé, si vous la construisez ainsi, la circulation sera bloquée plus tard », épargnant ainsi des maux de tête futurs à l'équipe.

D'autres avantages incluaient l'aide aux nouveaux membres de l'équipe pour comprendre rapidement le projet et la suggestion d'idées nouvelles et créatives que les humains n'avaient pas envisagées.

4. Quelles sont les Super-faiblesses ? (Les Limites)

Cependant, le « super-stagiaire » présente certaines failles sérieuses qui rendent son utilisation délicate :

  • Le Problème du « Mur de Texte » : L'IA écrit souvent trop. Au lieu d'un plan clair, elle vous donne un essai de 50 pages. Les développeurs ont trouvé cela difficile à lire et frustrant.
  • Le Problème du « Plan Cassé » : Parfois, l'IA génère du code ou des conceptions qui semblent bons sur le papier mais ne fonctionnent pas réellement lorsque vous essayez de les exécuter. C'est comme un architecte dessinant un pont qui semble magnifique mais qui s'effondrerait si vous y posiez une voiture.
  • Le Problème de l'« Amnésie » : L'IA est très sensible au contexte. Si vous ne lui donnez pas assez de détails sur votre projet spécifique, elle pourrait halluciner (inventer des choses) ou donner des conseils qui conviennent à une ville entièrement différente.
  • La Lutte du « Téléchargement de Fichiers » : Il est difficile de télécharger des dossiers de projet entiers à l'IA. C'est comme essayer d'expliquer la disposition de votre ville en lisant une liste de noms de rues un par un, plutôt que de montrer une carte.

La Conclusion

L'article conclut que les LLM sont d'excellents « explorateurs » mais pas encore des « décideurs ».

Ils sont fantastiques pour :

  • Faire du brainstorming d'idées.
  • Vérifier les erreurs évidentes.
  • Apprendre de nouveaux concepts rapidement.
  • Ébaucher des croquis initiaux.

Mais ils ne sont pas prêts à remplacer l'architecte humain. L'humain doit toujours vérifier le travail, réparer les parties cassées et prendre les décisions finales. La relation est un partenariat : l'IA fournit la matière brute et les suggestions, mais l'humain fournit le jugement et la finition finale.

En bref : Utiliser un LLM pour la conception logicielle, c'est comme avoir un copilote très rapide, très érudit, mais qui hallucine parfois. Il peut vous aider à voler plus vite et à repérer les tempêtes tôt, mais vous devez toujours garder les mains sur les commandes.

Noyé(e) sous les articles dans votre domaine ?

Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.

Essayer Digest →