
selon une �tude
Une nouvelle �tude publi�e par la soci�t� d'analyse GitClear rapporte que l'utilisation des assistants d'IA pour la programmation ne contribue pas toujours � la qualit� du code produit. Les chercheurs de GitClear ont constat� que les outils d'IA comme GitHub Copilot ne donnent en fait que des suggestions pour ajouter du code. Aucune suggestion n'est faite pour la mise � jour ou la suppression de code. Il en r�sulte notamment une quantit� importante de code redondant. Ils ont �galement constat� une forte augmentation du "code churn". Cela signifie que le code est fr�quemment modifi�, ce qui est g�n�ralement un mauvais signe pour la qualit�.
Les outils d'IA de codage connaissent une popularit� croissante. La version b�ta de GitHub Copilot, qui a donn� le coup d'envoi pour cette nouvelle classe de logiciels, a �t� introduite en juin 2021 et selon le PDG Thomas Dohmke, l'outil compte plus d'un million de d�veloppeurs ayant souscrit un abonnement payant. Dohmke a aussi publi� des statistiques selon lesquelles GitHub Copilot permet aux d�veloppeurs d'accomplir leurs t�ches 55 % plus rapidement. Selon lui, 46 % du code a �t� compl�t� par GitHub Copilot dans les fichiers o� il a �t� activ�. Mais quel est l'impact de l'utilisation de ces outils sur la qualit� du code ?
Eh bien, selon une nouvelle �tude de GitClear, la qualit� du code n'est pas bonne, avec des probl�mes tels que le renouvellement du code - du code ajout�, mais supprim� peu apr�s - et une plus grande proportion de code r�p�t�. L'�tude porte sur le code ajout�, mis � jour, supprim�, copi� ou d�plac�, et exclut ce que GitClear d�finit comme du "bruit". Cela fait r�f�rence au m�me code engag� dans plusieurs branches, des lignes vierges et d'autres lignes non significatives. Voici ci-apr�s la conclusion des analystes de GitClear :

En outre, une �tude publi�e en octobre dernier a rapport� que GitHub Copilot g�n�re du code comportant des faiblesses de s�curit�. � Nos r�sultats confirment que les d�veloppeurs doivent �tre prudents lorsqu'ils ajoutent du code g�n�r� par Copilot (et des outils d'IA similaires de g�n�ration de code) et doivent �galement effectuer des contr�les de s�curit� appropri�s lorsqu'ils acceptent le code sugg�r�. Cela montre �galement que les praticiens doivent d�velopper une conscience et des comp�tences en mati�re de s�curit� correspondantes �, ont �crit les chercheurs � l'origine de l'�tude.
Dans le cadre de son �tude, GitClear a mis l'accent sur la qualit� du code plut�t que sur la quantit�, et observe que les assistants d'IA ont tendance � donner "des suggestions pour ajouter du code, mais jamais de suggestions pour mettre � jour, d�placer ou supprimer du code". Les chercheurs proposent �galement que les algorithmes de suggestion de code soient incit�s � proposer les suggestions les plus susceptibles d'�tre accept�es, ce qui semble raisonnable jusqu'� ce que l'on consid�re l'importance d'un code concis et lisible. Selon le rapport de l'�tude, il n'est pas facile de mesurer la qualit� du code.
Les chercheurs identifient toutefois certaines tendances qui montrent que la quantit� de code ajout�e, supprim�e, mise � jour et copi�e/coll�e n'a jamais �t� aussi �lev�e, mais que les cas de d�placement de code ont diminu�. Ils constatent �galement une augmentation du taux de renouvellement, qui atteint aujourd'hui 7,1 %, contre seulement 3,3 % en 2020. Le code est d�plac� lorsque les d�veloppeurs le restructurent, ce qui pourrait �tre un indicateur de refactorisation, qui consiste � am�liorer la conception et la structure du code sans en modifier le comportement. Cette tendance inqui�te les chercheurs.
Les raisons de ces tendances sont sujettes � sp�culation, mais les chercheurs pensent qu'elles sont li�es � l'utilisation croissante des assistants d'IA de programmation. Ils sont cinglants quant � l'impact de l'augmentation du code copier-coller, affirmant qu'il n'y a pas "de pire fl�au pour la maintenabilit� � long terme du code". Le copier-coller excessif n'est pas un probl�me nouveau. Les d�veloppeurs peuvent le faire parce que cela leur semble plus rapide et plus facile que de chercher � r�utiliser le code existant, ou simplement parce que plusieurs d�veloppeurs travaillant sur un projet ne communiquent pas bien.
De nombreux analystes et critiques semblent partager l'avis du fondateur de GitClear selon lequel la dette technique des entreprises pourrait fortement augmenter � l'avenir. � L'IA est comme une toute nouvelle carte de cr�dit qui va nous permettre d'accumuler de la dette technique comme nous n'avons jamais pu le faire auparavant �, a d�clar� Armando Solar-Lezama, professeur au MIT, au Wall Street Journal dans un article paru l'ann�e derni�re sur les outils de codage de l'IA. D'un autre c�t�, l'essor de la programmation assist�e par l'IA pourrait �galement avoir une incidence sur la r�mun�ration des ing�nieurs.
� Si les responsables de l'ing�nierie prennent des d�cisions salariales bas�es sur les lignes de code modifi�es, la combinaison de ce facteur et de l'IA cr�e des incitations propices � la soumission de codes regrettables �, a d�clar� Harding. Selon lui, il est difficile de dire si les outils d'IA seront un avantage net pour le d�veloppement de logiciels. Il a soulign� les avantages de l'utilisation de l'IA pour obtenir des r�ponses personnalis�es en mati�re de code, gr�ce � des sites tels que Phind. Mais il a �galement d�clar� que "la lecture d'un mauvais code est l'�l�ment du travail qui �puise le plus la volont� des d�veloppeurs".
Une �tude r�alis�e par McKinsey l'ann�e derni�re a r�v�l� qu'une "augmentation massive de la productivit�" gr�ce aux assistants d'IA de programmation �tait possible, mais qu'elle d�pendait de la complexit� de la t�che et de l'exp�rience du d�veloppeur. � En fin de compte, pour maintenir la qualit� du code, les d�veloppeurs doivent comprendre les attributs d'un code de qualit� et inciter l'outil � produire les bons r�sultats �, indique l'�tude de McKinsey. L'�tude de GitClear porte sur GitHub Copilot, mais les programmeurs utilisent �galement d'autres outils d'IA pour le codage qui ont �merg� ces derni�res ann�es.
Par ailleurs, GitClear ne dit pas grand-chose sur la mani�re de r�soudre les probl�mes identifi�s, se contentant de poser des questions pour le suivi de la recherche, bien qu'il sugg�re que les responsables de l'ing�nierie devraient surveiller les donn�es entrantes et prendre en compte leurs implications pour la maintenance future du produit. Les assistants d'IA de programmation ne dispara�tront pas, bien qu'ils puissent s'am�liorer, et comme tous les nouveaux outils, les d�veloppeurs apprendront � optimiser leur utilisation.
D'une certaine mani�re, ces recherches peuvent rassurer les d�veloppeurs qui craignent d'�tre remplac�s par des outils d'IA. Une �tude r�cente sur le remaniement par l'IA, r�alis�e par la soci�t� d'analyse de code CodeScene, a conclu que "l'IA est loin de remplacer les humains dans un contexte de codage ; l'IA d'aujourd'hui est tout simplement trop sujette aux erreurs et est loin d'�tre en mesure de modifier le code existant en toute s�curit�".
Source : rapport de l'�tude
Et vous ?





Voir aussi



Vous avez lu gratuitement 0 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer � vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer � vous proposer des publications.