How Developers Interact with AI: A Taxonomy of Human-AI Collaboration in Software Engineering
This program is tentative and subject to change.
Artificial intelligence (AI), including large language models and generative AI, is emerging as a significant force in software development, offering developers powerful tools that span the entire development lifecycle. Although traditional software engineering research has extensively studied developer-tool interactions, the specific interactions between developers and these AI-powered tools have only recently begun to receive attention. Understanding and improving these interactions has the potential to improve productivity, trust, and efficiency in AI-driven workflows. In this paper, we propose a taxonomy of interaction types between developers and AI tools, identifying eleven distinct interaction modes, such as auto-complete code suggestions, command-driven actions, and conversational assistance. Building on this taxonomy, we outline a research agenda focused on optimizing AI interactions, improving developer control, and addressing trust and usability challenges in AI-assisted development. By establishing a structured foundation for understanding developer-AI interactions, this paper seeks to stimulate research on creating more effective, adaptive AI tools for software development.