Skip to main content
European Commission logo
français français
CORDIS - Résultats de la recherche de l’UE
CORDIS
CORDIS Web 30th anniversary CORDIS Web 30th anniversary

An Artificial Assistant for Software Developers

Description du projet

Des machines pour aider les développeurs de logiciels à écrire du code

Les équipes de développement et de test de logiciels travaillent ensemble pour écrire et réviser le code. Ce long processus dépend des interactions entre ces deux parties, qui peuvent traîner en longueur pour des questions de disponibilité. Le projet DEVINTA, financé par l’UE, donnera un coup de pouce high-tech à ce processus grâce à un assistant d’intelligence artificielle (IA) permettant d’accélérer le processus. Il est en train de développer une machine capable d’assister les développeurs de logiciels en les aidant à comprendre un programme avec lequel ils sont peu familiers, à traduire du code en langage naturel ainsi qu’à l’écrire plus rapidement grâce à l’implémentation de fonctions prédictives. L’assistant d’IA devrait permettra d’améliorer la qualité de la programmation en effectuant un examen du code en ligne pendant que le développeur est en train de le taper, en identifiant les bogues et les choix d’implémentation sous-optimaux et en proposant des solutions appropriées.

Objectif

Software development, also due to the complexity of software systems, is tackled by collaborating teams of people. For example, in pair programming two developers share a single workstation: One writes code, while the other reviews it and proposes ideas for improvement. While interacting with teammates is the preferred means to obtain help, their availability may fall short and they might not always have a solution at hand. To address this problem, recommender systems for developers have been proposed in the form of applications providing information items considered valuable for a given task and context (e.g. recommending documentation useful to understand a code component). However, these recommenders can hardly be considered as a valid alternative to teammates since they are not proactive, do not support the developer in a wide variety of tasks, do not adapt their recommendations to the developer’s profile, and fall short in having meaningful interactions with the developer (e.g. they are not able to answer developers’ questions). Given the advances in artificial intelligence, the vision that one day a developer's teammate is a machine does not seem far-fetched anymore. The DEVINTA project aims at making this future a reality, introducing models and techniques serving as the basis for the first artificial assistant supporting developers in their everyday activities. The assistant helps in (i) comprehending unfamiliar code via source code to natural language translation; (ii) writing code faster, providing predictive feature implementation, meaning the ability to infer the feature the developer is implementing and automatically complete it; and (iii) improve code quality, performing online code review while the developer types the code, timely catching bugs and suboptimal implementation choices and providing solutions for them. The assistant uses advanced conversational interfaces to interact with the developer, answer her questions, and disambiguate her needs.

Régime de financement

ERC-STG - Starting Grant

Institution d’accueil

UNIVERSITA DELLA SVIZZERA ITALIANA
Contribution nette de l'UE
€ 1 499 093,00
Adresse
VIA GIUSEPPE BUFFI 13
6900 Lugano
Suisse

Voir sur la carte

Région
Schweiz/Suisse/Svizzera Ticino Ticino
Type d’activité
Higher or Secondary Education Establishments
Liens
Coût total
€ 1 499 093,00

Bénéficiaires (1)