Technical debt and agile software development practices and processes: An industry practitioner survey
Johannes Holvitie; Ville Leppänen; Jim Buchan; Rodrigo O.Spínola; Thiago S. Mendes; Sami Hyrynsalmi; Sherlock A.Licorish; Stephen G.MacDonell
https://urn.fi/URN:NBN:fi-fe2021042718504
Tiivistelmä
Context:
Contemporary software development is typically conducted in dynamic,
resource-scarce environments that are prone to the accumulation of
technical debt. While this general phenomenon is acknowledged, what
remains unknown is how technical debt specifically manifests in and
affects software processes, and how the software development techniques
employed accommodate or mitigate the presence of this debt.
Objectives:
We sought to draw on practitioner insights and experiences in order to
classify the effects of agile method use on technical debt management,
given the popularity and perceived success of agile methods. We explore
the breadth of practitioners’ knowledge about technical debt; how
technical debt is manifested across the software process; and the
perceived effects of common agile software development practices and
processes on technical debt. In doing so, we address a research gap in
technical debt knowledge and provide novel and actionable managerial
recommendations.
Method: We
designed, tested and executed a multi-national survey questionnaire to
address our objectives, receiving 184 responses from practitioners in
Brazil, Finland, and New Zealand.
Results:
Our findings indicate that: 1) Practitioners are aware of technical
debt, although, there was under utilization of the concept, 2) Technical
debt commonly resides in legacy systems, however, concrete instances of
technical debt are hard to conceptualize which makes it problematic to
manage, 3) Queried agile practices and processes help to reduce
technical debt; in particular, techniques that verify and maintain the
structure and clarity of implemented artifacts (e.g., Coding standards
and Refactoring) positively affect technical debt management.
Conclusions:
The fact that technical debt instances tend to have characteristics in
common means that a systematic approach to its management is feasible.
However, notwithstanding the positive effects of some agile practices on
technical debt management, competing stakeholders’ interests remain a
concern.
Kokoelmat
- Rinnakkaistallenteet [19207]