跳到主要内容
研究论文

破窗理论适用于技术债务

出版:2024年5月24日 出版历史
  • 获取引文警报
  • 摘要

    上下文:

    术语技术债务(TD)描述了阻碍系统进化和维护的次优解决方案的聚合。一些人声称破窗理论(BWT)是从犯罪学中借用的一个概念,也适用于软件开发项目。该理论指出,以往犯罪迹象的存在(如窗户破裂)将增加进一步犯罪活动的可能性;TD可被视为破碎的窗户软件系统。

    目标:

    实证研究系统TD密度与开发人员在系统扩展期间引入新TD的倾向之间的因果关系。

    方法:

    这项研究采用了一种混合方法的研究策略,包括一个对照实验,附带调查和后续访谈。该实验共有29名经验水平不同的开发人员在现有的高或低TD密度系统中完成系统扩展任务。

    结果:

    分析显示,TD水平对受试者倾向于重新实现(而非重用)功能、选择非描述性变量名以及引入其他变量的趋势有显著影响代码嗅觉由软件工具SonarQube识别,所有这些都至少95%可信区间。

    结论:

    三个独立的重要结果和一个验证性的定性结果相结合,形成了BWT在软件工程环境中存在的实质性证据。本研究发现,现有TD会对开发人员在开发过程中引入各种类型新TD的倾向产生重大影响。

    工具书类

    [1]
    敏捷宣言(2001)敏捷软件开发宣言。https://web.archive.org/web/20210521013723/,http://agilemanifesto.org/.访问时间:2021-05-21
    [2]
    Alves NS、Mendes TS、De Mendonça MG等,《技术债务的识别和管理:系统映射研究》Inf软件技术2016 70 100-121
    [3]
    Ampatzoglou A、Ampatzorgou A、Chatzigeorgiou A等。管理技术债务的财务方面:系统文献综述Inf Softw Technol公司2015 64 52-73
    [4]
    Avgeriou P、Kruchten P、Ozkaya I等人,《软件工程中的技术债务管理》(Dagstuhl研讨会16162)达格斯图尔报告2016 6 4 110-138
    [5]
    Avidan E,Feitelson DG(2017)变量名称对理解的影响:一项实证研究。IEEE国际程序理解会议第55–65页。
    [6]
    Basili VR,Caldiera G(2000)目标问题度量范式。软件工程百科全书-2卷集2:528-532。网址:https://www.cs.umd.edu/~basili/publications/technical/T89.pdf
    [7]
    Bavota G,Russo B(2016)关于自认技术债务的大规模实证研究。会议记录——第13届采矿软件库工作会议,2016年MSR,第315–326页。
    [8]
    Besker T、Martini A和Bosch J管理建筑技术债务:统一模型和系统文献综述J系统软件2018 135 1-16
    [9]
    Besker T、Martini A和Bosch J Software开发人员因技术债务导致的生产力损失——一项检查开发人员开发工作的复制和扩展研究J系统软件2019 156 41-61
    [10]
    Besker T、Ghanbari H、Martini A等。技术债务对软件开发人员士气的影响J系统软件2020 167
    [11]
    Besker T、Martini A、Edilisoriya Lokuge R等人。(2018b)从初创公司的角度来看,承担技术债务。2018年IEEE软件维护和发展国际会议记录,ICSME 2018,第415-425页。
    [12]
    Borowa K,Zalewski A,Kijas S(2021)认知偏见对建筑技术债务的影响。收录于:2021年IEEE第18届国际软件架构会议(ICSA),第115-125页,
    [13]
    Braga AA、Welsh BC和Schnell C治安混乱能减少犯罪吗?系统综述和荟萃分析研究犯罪行为杂志2015 52 4 567-588
    [14]
    Braun V和Clarke V在心理学中使用主题分析Qual Res精神病2006 3 2 77-101
    [15]
    Brown N、Ozkaya I、Sangwan R等人(2010)《软件相关系统中的技术债务管理》。摘自:FSE/SDP软件工程研究未来研讨会论文集。ACM出版社,第47页,
    [16]
    Butler S、Wermelinger M、Yu Y等人。(2009)关联标识符命名缺陷和代码质量:一项实证研究。《逆向工程工作会议记录》,WCRE第31–35页。
    [17]
    Chatzigeorgiou A和Manakos A研究面向对象系统中代码气味的演变Innov系统软件工程2014 10 1 3-18
    [18]
    Cialdini RB、Reno RR和Kallgren CA规范行为焦点理论:回收规范概念以减少公共场所的乱扔垃圾个性与社会心理学杂志1990 58 6 1015-1026
    [19]
    科尔曼·H、莫坎·N(2002)《胡萝卜、树枝和破碎的窗户》。美国马萨诸塞州剑桥市国家经济研究局技术代表1,
    [20]
    Cunningham W(1992)WyCash投资组合管理系统。附:《面向对象编程系统、语言和应用程序程序补遗》,第29–30页,
    [21]
    de Sousa DB、Maia PHM、Rocha LS等。研究长期大型项目中异常处理反模式的演变J Braz计算机Soc2020 26 1 1-24
    [22]
    Digkas G、Ampatzoglou A、Chatzigeorgiou A等。论引入代码技术债的时间性2020年CCIS Springer国际出版公司
    [23]
    Digkas G、Chatzigeorgiou AN、Ampatzoglou A等人(2020b)可以清理新代码,降低技术债务密度。IEEE软件工程学报XX(XX):1–18。
    [24]
    Fernández-Sánchez C、Garbajosa J、Yagüe A等,通过系统绘图研究确定和分析管理技术债务所需的要素J系统软件2017 124 22-38
    [25]
    Gelman A、Vehtari A、Simpson D等人(2020)贝叶斯工作流。arXiv公司
    [26]
    亨特A,托马斯D(1999)《实用程序员:从熟练工到大师》,第1版。Addison-Wesley Professional,美国马萨诸塞州波士顿
    [27]
    Izurieta C,Prouty M(2019)利用secdevops解决与网络安全攻击策略相关的技术债务。2019年IEEE/ACM国际技术债务会议(TechDebt),第33-37页,
    [28]
    Izurieta C、Rice D、Kimball K等人。(2018)调查与安全漏洞相关的技术债务的立场研究。收录于:《2018年国际技术债务会议记录》。计算机械协会,美国纽约州纽约市,TechDebt’18,p 138-142,
    [29]
    Kapser CJ和Godfrey MW“被认为有害的克隆”被认为有害:软件中的克隆模式经验软件工程2008 13 6 645-692
    [30]
    Keizer K、Lindenberg S和Steg L疾病的传播科学类2008 322 5908 1681-1685
    [31]
    Krauss RM、Freedman JL和Whitcup M乱扔垃圾的现场和实验室研究实验社会心理学杂志1978 14 109-122
    [32]
    Lenarduzzi V、Lomio F、Saarimäki N等。将单一系统迁移到微服务是否会减少技术债务?系统与软件杂志2020 169
    [33]
    李Z、Avgeriou P和Liang P技术债务及其管理的系统映射研究J系统软件2015 101 193-220
    [34]
    Martin RC(2014)《干净代码——敏捷软件工艺手册》,第1卷。美国新泽西州上鞍河普伦蒂斯·霍尔
    [35]
    Martini A和Bosch J论建筑技术债务的利息:揭露传染性债务现象软件期刊:进化与过程2017 29 10 1-18
    [36]
    Martini A,Bosch J(2017)《宏伟的七:走向技术债务利息的系统估算》。ACM国际会议论文集F1299部分。
    [37]
    Martini A、Besker T和Bosch J技术债务跟踪:实践现状科学计算程序2018 163 42-61
    [38]
    Martini A,Bosch J(2015)《建筑技术债务的危险:传染性债务和恶性循环》。会议记录——第12届IEEE/IFIP软件架构工作会议,WICSA 2015,第1-10页。
    [39]
    Martini A,Bosch J(2016)一种经验开发的方法,用于帮助决策架构技术债务重构:AnaConDebt。软件工程国际会议论文集,第31-40页。
    [40]
    McElreath R(2020)《统计反思》。美国佛罗里达州博卡拉顿CRC出版社,
    [41]
    Miller J三角剖分作为软件工程中知识发现的基础Empir软件工程2008 13 2 223-228
    [42]
    Olsson J,Risfell E,Besker T,et al.测量技术债务的情感状态Empir软件工程2021 26 5 105
    [43]
    Ozkaya I开发商的声音IEEE软件2019 36 5 3-5
    [44]
    Pearl J(2009)《因果关系:模型、推理和推断》,第二版,第2版。美国纽约剑桥大学出版社,
    [45]
    Phillips DL和Clancy KJ调查研究中“社会期望”的一些影响Am J社会学1972 77 5 921-940
    [46]
    Rios N、Mendes L、Cerdeiral C等人。听取软件从业者关于处理文档债务的原因、影响和实践的意见2020年LNCS Springer国际出版公司
    [47]
    Rios N、Spínola RO、Mendonça M等。从业人员对技术债务概念及其因果关系的观点:全球工业调查系列的设计及其来自巴西的初步结果Empir软件工程2020 25 5 3216-3287
    [48]
    Sampson RJ和Raudenbush SW公共空间的系统社会观察:城市街区混乱的新视角Am J社会学1999 105 3 603-651
    [49]
    软件工程实证研究中的Seaman C定性方法IEEE Trans软件工程1999 25 4 557-572
    [50]
    Sharma T、Suryanarayana G和Samarthyam G采用重构的挑战和解决方案:工业视角IEEE软件2015 32 6 44-51
    [51]
    Siavvas M,Tsoukalas D,Jankovic M,et al.技术债务作为软件安全风险的指标:软件开发企业的机器学习方法企业信息系统2022 16 5 1824017
    [52]
    Stol KJ和Fitzgerald B软件工程研究基础ACM Trans Softw工程方法2018 27 3 1-51
    [53]
    重新考虑Thacher D订单维护:超越强因果推理克里米诺犯罪学杂志2004 94 2 381
    [54]
    Torkar R、Furia CA、Feldt R等人。(2020)评估和论证软件工程实际意义的方法。
    [55]
    Tufano M、Palomba F、Bavota G等。何时以及为什么代码开始发出臭味程序-Int-Conf Softw Eng2015 1 403-414
    [56]
    Verdecchia R、Kruchten P和Lago P建筑技术债务:一个有根据的理论2020 LNCS施普林格国际出版
    [57]
    Wasserstein RL、Schirm AL、Lazar NA(2019)《迈向超越p的世界》<0.05美国统计学家73(sup1):1-19。
    [58]
    Wilson JQ,Kelling GL(1982)《破碎的窗户:警察和邻里安全》。《大西洋月刊》第29-38页。https://web.archive.org/web/20210522180623if_/https://www.theatlantic.com/magazine/archive/1982/03/broked-窗户/304465/
    [59]
    Wohlin C,Runeson P,Höst M等人,软件工程实验德国柏林海德堡施普林格,2012
    [60]
    Yu L、Ramaswamy S和Vaidyanathan A了解代码克隆对软件系统模块化的影响亚太软件工程会议论文集2012 2 105-111
    [61]
    津巴多·PG(1969)《人类的选择:个性化、理性和秩序与去个性化、冲动和混乱》。内布拉斯加州动机研讨会第237-307页。https://stacks.stanford.edu/file/gk002bt7757/gk002bt7757.pdf

    建议

    评论

    信息和贡献者

    问询处

    发布于

    封面图片经验软件工程
    经验软件工程 第29卷第4期
    2024年7月
    1224页
    国际标准编号:1382-3256
    期刊目录

    出版商

    Kluwer学术出版社

    美国

    出版历史

    出版:2024年5月24日
    认可的:2024年2月7日

    作者标记

    1. 软件工程
    2. 破窗理论
    3. 技术性债务
    4. 受控实验
    5. 贝叶斯数据分析
    6. 主题分析

    限定符

    • 研究文章

    资金来源

    • Vetenskapsrádet公司
    • 马库斯·奥赫·阿马利亚·瓦伦伯格(Marcus och Amalia Wallenbergs)明尼苏达州(SE)

    贡献者

    其他指标

    文献计量学和引文

    文献计量学

    文章指标

    • 0
      引文总数
    • 0
      总下载次数
    • 下载次数(过去12个月)0
    • 下载次数(最近6周)0

    其他指标

    引文

    视图选项

    查看选项

    获取访问权限

    登录选项

    完全访问权限

    媒体

    数字

    其他

    桌子

    分享

    分享

    共享此出版物链接

    在社交媒体上分享