技术债务与敏捷软件开发实践及过程:一项行业从业者调查
软件工程
2021-05-03 v1
摘要
背景:当代软件开发通常在动态的、资源稀缺的环境中进行,易于积累技术债务。虽然这一普遍现象已被承认,但未知的是技术债务如何具体显现并影响软件过程,以及所采用的软件开发技术如何容纳或缓解此类债务的存在。目标:我们试图借助从业者的见解和经验,对敏捷方法使用在技术债务管理上的影响进行分类。我们探究从业者关于技术债务的知识广度;技术债务如何跨软件过程显现;以及常见敏捷软件开发实践与过程对技术债务的感知影响。由此,我们填补了技术债务知识的研究空白,并提供了新颖且可操作的管理建议。方法:我们设计、测试并执行了一份多国调查问卷以实现目标,收到了来自巴西、芬兰和新西兰从业者的 184 份回复。结果:我们的发现表明:1) 从业者知晓技术债务,但该概念未被充分利用;2) 技术债务通常存在于遗留系统中,然而技术债务的具体实例难以概念化,这使其管理成为难题;3) 所询问的敏捷实践与过程有助于减少技术债务;尤其是那些验证和维护已实施工件结构与清晰性的技术。结论:技术债务实例往往具有共同特征,这意味着对其采取系统化管理是可行的。然而,尽管部分敏捷实践对技术债务管理有积极影响,利益相关者相互竞争的利益仍是一个隐患。(节略)
引用
@article{arxiv.2104.14761,
title = {Technical debt and agile software development practices and processes: An industry practitioner survey},
author = {Johannes Holvitie and Sherlock A. Licorish and Rodrigo O. Spínola and Sami Hyrynsalmi and Stephen G. MacDonell and Thiago S. Mendes and Jim Buchan and Ville Leppänen},
journal= {arXiv preprint arXiv:2104.14761},
year = {2021}
}
备注
Journal paper, 23 pages, 7 figures, 2 tables