Conversational Assistants for Software Development: Integration, Traceability and Coordination

Albert Contreras, Esther Guerra, Juan D. Lara · 2024

The recent advances in generative artificial intelligence are revolutionising our daily lives. Large language models (LLMs) – the technology underlying conversational agents like ChatGPT – can produce sensible text in response to user prompts, and so, they are being used to solve tasks in many disciplines like marketing, law, human resources or media content creation. Software development is also following this trend, with recent proposals for conversational assistants tailored for this domain. However, there is still a need to understand the possibilities of integrating these assistants within integrated development environments (IDEs), coordinating multiple assistants, and tracing their contributions to the software project under development. This paper tackles this gap by exploring alternatives for assistant integration within IDEs, and proposing a general architecture for conversational assistance in software development that comprises a rich traceability model of the user-assistant interaction, and a multi-assistant coordination model. We have realised our proposal building an assistant (named CARET) for Java development within Eclipse. The assistant supports tasks like code completion, documentation, maintenance, code comprehension and testing. We present an evaluation for one specific development task (method renaming), showing promising results

Read the paper · More papers on PaperTik