Faudra-t-il bientôt que les développeurs portent sur eux un ensemble de capteurs biométriques, pour permettre à leur employeur d'optimiser les ressources humaines ? Des chercheurs de Microsoft ont publié le mois dernier une étude (.pdf) intitulée "Utiliser des mesures psycho-physiologiques pour évaluer la difficulté d'une tâche dans le développement de logiciels", dans laquelle ils détaillent les résultats d'une expérience menée pour déterminer les endroits du code qui sont le plus susceptibles de contenir des bugs ou des erreurs de stratégie d'approche.
L'objectif des chercheurs est de "détecter lorsque les développeurs de logiciels ressentent des difficultés au moment où ils travaillent sur leurs tâches de programmation, et les arrêter avant qu'ils n'introduisent des bugs dans le code".
Ils ont ainsi mené l'expérience auprès de 15 développeurs dont l'attitude au travail était constamment surveillée par des capteurs permettant d'enregistrer les mouvements oculaires et la taille de la pupille (eye-tracking, ou oculométrie), de mesurer leur activité électrodermale (en clair, savoir à quel point le développeur est en sueur), et leur activité neuronale par électro-encéphalographie.
Ces trois types de capteurs devaient permettre aux chercheurs de déterminer les moments dans lesquels le codeur ressentait une difficulté particulière, pour ajouter automatiquement des marqueurs et déterminer quels bouts de code devraient être relus à tête froide, voire revus par d'autres développeurs.
Le contre-maître est une IA
Les données collectées ont été croisées avec les déclarations faites par les cobayes dans des questionnaires, pour alimenter une base d'apprentissage machine basée sur WEKA. Le tout pour créer une forme d'intelligence artificielle qui sait quels indices rechercher pour détecter les phases de difficulté susceptibles d'être à l'origine de bugs (en l'espèce, ils ont utilisé une méthode basée sur une classification naïve bayésienne).
"Nos travaux amènent la communauté plus proche d'une mesure viable et fiable de la difficulté de la tâche, qui pourrait alimenter les prochaines générations d'outils de support", se réjouissent les chercheurs Thomas Fritz, Andrew Begel, Sebastian C. Müller, Serap Yigit-Elliot et Manuela Züger. Leurs résultats montrent que la difficulté de la tâche a été déterminée avec une précision de 64,99 % pour un nouveau développeur et de 84,38 % pour une nouvelle tâche.
Accessoirement, leurs travaux pourraient permettre aux DRH de savoir quels sont les développeurs qui ont le plus de sang froid dans leur travail, pour les affecter aux programmes les plus complexes à développer, ou au contraire pour casser l'évolution des développeurs qui atteignent trop vite leurs limites.
Jusqu'au jour où il suffira à l'Homme de dire le but qu'il veut atteindre avec un logiciel, et où il laissera une intelligence artificielle écrire le code à sa place. Ce n'est déjà plus tout à fait de la science-fiction.
+ rapide, + pratique, + exclusif
Zéro publicité, fonctions avancées de lecture, articles résumés par l'I.A, contenus exclusifs et plus encore.
Découvrez les nombreux avantages de Numerama+.
Vous avez lu 0 articles sur Numerama ce mois-ci
Tout le monde n'a pas les moyens de payer pour l'information.
C'est pourquoi nous maintenons notre journalisme ouvert à tous.
Mais si vous le pouvez,
voici trois bonnes raisons de soutenir notre travail :
- 1 Numerama+ contribue à offrir une expérience gratuite à tous les lecteurs de Numerama.
- 2 Vous profiterez d'une lecture sans publicité, de nombreuses fonctions avancées de lecture et des contenus exclusifs.
- 3 Aider Numerama dans sa mission : comprendre le présent pour anticiper l'avenir.
Si vous croyez en un web gratuit et à une information de qualité accessible au plus grand nombre, rejoignez Numerama+.
Abonnez-vous à Numerama sur Google News pour ne manquer aucune info !