Crédit :CC0 Domaine public
Les informaticiens de l'UBC ont transformé Amazon Alexa en un outil pour les ingénieurs logiciels, charger l'assistant virtuel de s'occuper des tâches de programmation banales, aidant à augmenter la productivité et à accélérer le flux de travail.
Les ingénieurs logiciels utilisent de nombreux outils différents pour un même projet. Ils travaillent avec des millions de lignes de code informatique et exécutent leur code via divers outils indépendants pour aider à éditer, construire et tester des systèmes et pour la gestion de projet afin que leurs programmes fonctionnent correctement.
« Il peut être assez compliqué de basculer entre les différents outils car ils utilisent chacun une syntaxe unique et il faut savoir les assembler, " a déclaré Nick Bradley, qui a dirigé ce travail lors de sa maîtrise en recherche en informatique à l'UBC. "L'idée d'utiliser Alexa est venue de ma frustration d'utiliser ces différents outils et de devoir passer autant de temps à chercher comment le faire et utiliser ces outils ensemble."
Bradley et les professeurs d'informatique Reid Holmes et Thomas Fritz ont décidé de tester si l'assistant virtuel d'Amazon pouvait aider dans ce processus. Ils voulaient que les ingénieurs logiciels utilisent des langage conversationnel pour demander à Alexa d'accomplir certaines de leurs tâches, de la même manière que nous lui demandons de nous donner la météo ou de jouer nos chansons préférées.
Les chercheurs ont déclaré qu'il ne s'agissait pas seulement d'enseigner à Alexa quelques phrases clés et de mapper différentes commandes au travail, ils devaient également déterminer les tâches courantes en plusieurs étapes que les ingénieurs exécutaient et créer un système capable d'automatiser ces tâches. Ils ont ensuite demandé à 21 ingénieurs d'entreprises de logiciels locales de Vancouver de tester leur système et de l'évaluer. Alors que les ingénieurs ont trouvé l'outil utile et ont fourni de nombreux commentaires positifs, il y avait un défi.
« Le plus gros problème était l'utilisation de commandes vocales dans un environnement de bureau ; ils trouvaient cela gênant pour leurs voisins, " a déclaré Bradley.
Le prochain développement des informaticiens sera de créer un chat bot pour remplir une fonction similaire afin que les ingénieurs puissent taper des requêtes minimales et que le système effectue leurs tâches en plusieurs étapes afin qu'ils puissent se concentrer sur les parties les plus importantes de leur travail.
Holmes dit que cette recherche fait partie d'un effort plus large pour comprendre comment les ingénieurs logiciels font leur travail.
"Le rythme du changement dans le domaine du logiciel est si rapide que les ingénieurs n'ont pas le temps d'être introspectifs et de réfléchir à leur façon de travailler, ", a-t-il déclaré. "Notre travail dans le monde universitaire consiste à prendre du recul et à vraiment réfléchir à la manière dont nous pouvons mieux aider les ingénieurs à créer rapidement et correctement les types de logiciels dont nous dépendons dans notre société moderne. Les systèmes ne cessent de s'agrandir et de se complexifier, et l'utilisation d'assistants personnels pourrait être un moyen d'aider les développeurs à être plus efficaces dans cet environnement en évolution rapide. »
Les chercheurs reconnaissent également que ces assistants virtuels pourraient être programmés pour une variété de professions, notamment la médecine, loi, ou comptable.
« Vous pouvez imaginer une situation dans laquelle un avocat lit un mémoire juridique et demande à Alexa de trouver des affaires pertinentes sur des sujets similaires pour aider à la recherche, " dit Holmes.
L'étude sera présentée la semaine prochaine à la Conférence internationale sur le génie logiciel (ICSE) à Göteborg, Suède.