Echoes of AI: Investigating the Downstream Effects of AI Assistants on Software Maintainability
By: Markus Borg , Dave Hewett , Nadim Hagatulah and more
Potential Business Impact:
AI helps programmers code faster, not worse.
[Context] AI assistants, like GitHub Copilot and Cursor, are transforming software engineering. While several studies highlight productivity improvements, their impact on maintainability requires further investigation. [Objective] This study investigates whether co-development with AI assistants affects software maintainability, specifically how easily other developers can evolve the resulting source code. [Method] We conducted a two-phase controlled experiment involving 151 participants, 95% of whom were professional developers. In Phase 1, participants added a new feature to a Java web application, with or without AI assistance. In Phase 2, a randomized controlled trial, new participants evolved these solutions without AI assistance. [Results] AI-assisted development in Phase 1 led to a modest speedup in subsequent evolution and slightly higher average CodeHealth. Although neither difference was significant overall, the increase in CodeHealth was statistically significant when habitual AI users completed Phase 1. For Phase 1, we also observed a significant effect that corroborates previous productivity findings: using an AI assistant yielded a 30.7% median decrease in task completion time. Moreover, for habitual AI users, the mean speedup was 55.9%. [Conclusions] Our study adds to the growing evidence that AI assistants can effectively accelerate development. Moreover, we did not observe warning signs of degraded code-level maintainability. We recommend that future research focus on risks such as code bloat from excessive code generation and the build-up of cognitive debt as developers invest less mental effort during implementation.
Similar Papers
AI-assisted Programming May Decrease the Productivity of Experienced Developers by Increasing Maintenance Burden
General Economics
AI tools make coding faster, but experts fix more mistakes.
AI-assisted Programming May Decrease the Productivity of Experienced Developers by Increasing Maintenance Burden
General Economics
AI helps coders but makes experts fix more mistakes.
"My productivity is boosted, but ..." Demystifying Users' Perception on AI Coding Assistants
Software Engineering
Helps AI write better code for programmers.