
GitClear rappelle que l'utilisation d'un tel outil peut conduire � � une dette technique induite par l'IA �
Avec l'av�nement des outils d'intelligence artificielle dans le d�veloppement logiciel, GitHub Copilot, bas� sur GPT, est devenu un acteur majeur. Mais une question fondamentale demeure : cet assistant de programmation am�liore-t-il r�ellement la qualit� du code produit ?
Qu'est-ce que GitHub Copilot ?
GitHub Copilot est un outil d'IA d�velopp� par OpenAI et GitHub. En s'appuyant sur des mod�les d'apprentissage automatique entra�n�s sur des milliards de lignes de code, il offre des suggestions de compl�tion en temps r�el. Que ce soit pour r�diger des fonctions, corriger des erreurs ou m�me g�n�rer des tests, il promet d'acc�l�rer le d�veloppement tout en r�duisant les efforts cognitifs des d�veloppeurs.
Pour GitClear, l'utilisation GitHub Copilot pour la programmation entra�ne une baisse de la qualit� globale du code
Selon une �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.

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.
GitHub tire une conclusion diff�rente avec sa propre recherche sur GitHub Copilot
Pour r�pondre � cette question, GitHub indique avoir men� un essai contr�l� randomis� pour comprendre � quel point le code r�dig� � l'aide de GitHub Copilot est fonctionnel, lisible, fiable, maintenable, concis et susceptible d'�tre approuv�.
Pour cette �tude, GitHub a recrut� 202 d�veloppeurs ayant au moins cinq ans d'exp�rience. La moiti� d'entre eux se sont vu attribuer au hasard un acc�s � GitHub Copilot et l'autre moiti� a re�u pour instruction de ne pas utiliser d'outils d'IA. Les participants ont tous �t� invit�s � effectuer une t�che de codage en �crivant des points d'extr�mit� d'API pour un serveur web. GitHub a ensuite �valu� le code � l'aide de tests unitaires et d'un examen d'expert r�alis� par des d�veloppeurs.
Selon les conclusions de cette �tude, le code r�dig� avec GitHub Copilot a une fonctionnalit� accrue et une meilleure lisibilit�, est de meilleure qualit� et re�oit des taux d'approbation plus �lev�s. Parmi les points cl�s :
- Fonctionnalit� accrue : les d�veloppeurs ayant acc�s � GitHub Copilot avaient 56 % plus de chances de r�ussir les 10 tests unitaires de l'�tude, ce qui indique que GitHub Copilot aide les d�veloppeurs � �crire un code plus fonctionnel, et ce dans une large mesure.
- Am�lioration de la lisibilit� : lors des �valuations en aveugle, le code �crit avec GitHub Copilot pr�sentait nettement moins d'erreurs de lisibilit�, ce qui a permis aux d�veloppeurs d'�crire 13,6 % de lignes de code suppl�mentaires, en moyenne, sans rencontrer de probl�mes de lisibilit�.
- Un code de meilleure qualit� : la lisibilit� s'est am�lior�e de 3,62 %, la fiabilit� de 2,94 %, la maintenabilit� de 2,47 % et la concision de 4,16 %. Tous les chiffres sont statistiquement significatifs. Ces am�liorations de la qualit� sont coh�rentes avec celles constat�es dans le rapport DORA 2024.
- Des taux d'approbation plus �lev�s : les d�veloppeurs �taient 5 % plus enclins � approuver le code �crit avec GitHub Copilot, ce qui signifie que ce code est pr�t � �tre fusionn� plus t�t, acc�l�rant ainsi le temps n�cessaire pour corriger les bogues ou d�ployer de nouvelles fonctionnalit�s.
GitHub a donn� des d�tails sur ces �l�ments. Ci-dessous, un extrait de leur billet � ce sujet.
Le code �crit � l'aide de GitHub Copilot est plus fonctionnel
Si le code ne fonctionne pas, il est impossible de dire qu'il est de haute qualit�. Nous avons donc examin� la fonctionnalit� et l'avons mesur�e en analysant le nombre de tests unitaires r�ussis par le code. Nous avons constat� que le code r�dig� � l'aide de GitHub Copilot passait significativement plus de tests (p=0,002). En fait, les d�veloppeurs ayant acc�s � GitHub Copilot avaient 56 % plus de chances de r�ussir les 10 tests unitaires de l'�tude (p=0,04). Cela signifie que l'utilisation de GitHub Copilot aide les d�veloppeurs � �crire un code qui est plus fonctionnel, et ce, dans une large mesure.
Les d�veloppeurs ont trouv� que le code �crit avec GitHub Copilot �tait plus facile � lire
Les 25 d�veloppeurs qui ont r�dig� un code ayant r�ussi les 10 tests unitaires de la premi�re phase de l'�tude ont �t� d�sign�s au hasard pour examiner en aveugle les soumissions anonymes, qu'elles aient �t� r�dig�es avec ou sans GitHub Copilot. Les examinateurs ont constat� que le code r�dig� � l'aide de GitHub Copilot comportait moins d'erreurs de lisibilit�.
Notre analyse de la revue de code ligne par ligne des d�veloppeurs a montr� que le code �crit � l'aide de GitHub Copilot comportait beaucoup moins d'erreurs de code : les d�veloppeurs utilisant GitHub Copilot ont �crit 18,2 lignes de code par erreur de code, contre seulement 16,0 sans GitHub Copilot. Cela �quivaut � 13,6 % de lignes de code en plus avec GitHub Copilot en moyenne sans erreur de code (p=0,002). Cela peut se traduire par des �conomies en temps r�el, car chacune de ces erreurs de code n�cessite une action de la part d'un d�veloppeur. Par exemple, sans utiliser GitHub Copilot, les �quipes peuvent �tre confront�es � 13 % de commentaires ou de suggestions suppl�mentaires � traiter, ce qui s'accumule au fil du temps.
Le code r�dig� � l'aide de GitHub Copilot a plus de chances d'�tre approuv�
Enfin, nous avons constat� que les d�veloppeurs �taient 5 % plus susceptibles d'approuver le code r�dig� � l'aide de GitHub Copilot (p=0,014). Dans le monde r�el, cela signifie que les d�veloppeurs utilisant GitHub Copilot �crivent du code qui est pr�t � �tre fusionn� plus t�t, ce qui acc�l�re la correction des bogues ou le d�ploiement de nouvelles fonctionnalit�s.
Alors, am�liore-t-il r�ellement la qualit� ?
La r�ponse d�pend largement de l'utilisateur et de l'usage. GitHub Copilot est un outil puissant, mais il n'est pas infaillible. Lorsqu'il est utilis� comme assistant, capable de r�duire le temps consacr� � des t�ches r�p�titives ou triviales, il peut contribuer indirectement � la qualit� en lib�rant les d�veloppeurs pour des t�ches strat�giques. Cependant, la responsabilit� ultime de produire un code robuste, s�curis� et maintenable reste entre les mains des d�veloppeurs.
Cela semble d'ailleurs �tre l'avis d'une �tude r�alis�e par McKinsey l'ann�e derni�re qui 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.
En conclusion, GitHub Copilot peut am�liorer la qualit� du code, mais uniquement dans les mains d'utilisateurs exp�riment�s capables de valider et d'adapter ses suggestions. Il ne remplace pas les bonnes pratiques de d�veloppement, mais il les compl�te efficacement.
Source : GitHub
Et vous ?






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.