SZZ误标变更对移动APP即时缺陷预测性能和解释的影响
作者:
中图分类号:

TP311

基金项目:

国家自然科学基金(61902228, 62176069, U23A20302); 陕西省自然科学基础研究计划(2024JC-YBMS-497); 陕西省重点研发计划 (2023-YBGY-265)


Impact of Mislabeled Changes by SZZ on Performance and Interpretation of Just-in-time Defect Prediction for Mobile APP
Author:
  • 摘要
  • | |
  • 访问统计
  • |
  • 参考文献 [94]
  • | |
  • 引证文献
  • | |
  • 文章评论
    摘要:

    近年来, SZZ作为一种识别引入缺陷的变更算法, 被广泛应用于即时软件缺陷预测技术中. 先前的研究表明, SZZ算法在对数据进行标注时会存在误标问题, 这将影响数据集的质量, 进而影响预测模型的性能. 因此, 研究人员对SZZ算法进行了改进, 并提出多个SZZ变体. 然而, 目前尚未有文献研究数据标注质量对移动APP即时缺陷预测性能和解释的影响. 为探究SZZ错误标注的变更对移动APP即时软件缺陷预测模型的影响, 对4种SZZ算法进行广泛而深入的实证研究. 首先, 选取GitHub库中17个大型移动APP项目, 借助PyDriller工具抽取软件度量元. 其次, 采用B-SZZ (原始SZZ版本)、AG-SZZ、MA-SZZ和RA-SZZ这4种算法标注数据. 然后, 根据时间序列划分数据, 利用随机森林、朴素贝叶斯和逻辑回归分类器分别建立即时缺陷预测模型. 最后, 使用AUCMCCG-mean传统指标和F-measure@20%、IFA工作量感知指标评估模型性能, 并使用SKESD和SHAP算法对结果进行统计显著性检验与可解释性分析. 通过对比4种SZZ算法的标注性能, 研究发现: (1) 数据的标注质量符合SZZ变体之间的递进关系; (2) B-SZZ、AG-SZZ 和MA-SZZ错误标注的变更会造成AUCMCC 得分不同程度的下降, 但不会造成G-mean得分下降; (3) B-SZZ会造成F-measure@20%得分下降, 而在代码审查时, B-SZZ、AG-SZZ 和MA-SZZ不会导致审查工作量的增加; (4)在模型解释方面, 不同SZZ算法会影响预测过程中贡献程度排名前3的度量元, 并且la度量元对预测结果有重要影响.

    Abstract:

    In recent years, as an algorithm for identifying bug-introducing changes, SZZ has been widely employed in just-in-time software defect prediction. Previous studies show that the SZZ algorithm may mislabel data during data annotation, which could influence the dataset quality and consequently the performance of the defect prediction model. Therefore, researchers have made improvements to the SZZ algorithm and proposed multiple variants of SZZ. However, there is no empirical study to explore the effect of data annotation quality by SZZ on the performance and interpretability of just-in-time defect prediction for mobile APP. To investigate the influence of mislabeled changes by SZZ on just-in-time defect prediction for mobile APP, this study conducts an extensive and in-depth empirical comparison of four SZZ algorithms. Firstly, 17 large-scale mobile APP projects are selected from the GitHub repository, and software metrics are extracted by adopting the PyDriller tool. Then, B-SZZ (original SZZ), AG-SZZ, MA-SZZ, and RA-SZZ are employed for data annotation. Then, the just-in-time defect prediction models are built with random forest, naive Bayes, and logistic regression classifiers based on the time-series data partitioning. Finally, the performance of the models is evaluated by traditional measures of AUC, MCC, and G-mean, and effort-aware measures of F-measure@20% and IFA, and a statistical significance test and interpretability analysis are conducted on the results by employing SKESD and SHAP respectively. By comparing the annotation performance of the four SZZ algorithms, the results are as follows. (1) The data annotation quality conforms to the progressive relationship among SZZ variants. (2) The mislabeled changes by B-SZZ, AG-SZZ, and MA-SZZ can cause performance reduction of AUC and MCC of different levels, but cannot lead to performance reduction of G-mean. (3) B-SZZ is likely to cause a performance reduction of F-measure@20%, while B-SZZ, AG-SZZ, and MA-SZZ are unlikely to increase effort during code inspection. (4) In terms of model interpretation, different SZZ algorithms will influence the three metrics with the largest contribution during the prediction, and the la metric has a significant influence on the prediction results.

    参考文献
    [1] 陈翔, 顾庆, 刘望舒, 刘树龙, 倪超. 静态软件缺陷预测方法研究. 软件学报, 2016, 27(1): 1–25. http://www.jos.org.cn/1000-9825/4923.htm
    Chen X, Gu Q, Liu WS, Liu SL, Ni C. Survey of static software defect prediction. Ruan Jian Xue Bao/Journal of Software, 2016, 27(1): 1–25 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/4923.htm
    [2] 宫丽娜, 姜淑娟, 姜丽. 软件缺陷预测技术研究进展. 软件学报, 2019, 30(10): 3090–3114. http://www.jos.org.cn/1000-9825/5790.htm
    Gong LN, Jiang SJ, Jiang L. Research progress of software defect prediction. Ruan Jian Xue Bao/Journal of Software, 2019, 30(10): 3090–3114 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/5790.htm
    [3] 蔡亮, 范元瑞, 鄢萌, 夏鑫. 即时软件缺陷预测研究进展. 软件学报, 2019, 30(5): 1288–1307. http://www.jos.org.cn/1000-9825/5713.htm
    Cai L, Fan YR, Yan M, Xia X. Just-in-time software defect prediction: Literature review. Ruan Jian Xue Bao/Journal of Software, 2019, 30(5): 1288–1307 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/5713.htm
    [4] Li ZQ, Jing XY, Zhu XK. Progress on approaches to software defect prediction. IET Software, 2018, 12(3): 161–175.
    [5] Fan YR, Xia X, Da Costa DA, Lo D, Hassan AE, Li SP. The impact of mislabeled changes by SZZ on just-in-time defect prediction. IEEE Trans. on Software Engineering, 2021, 47(8): 1559–1586.
    [6] Kamei Y, Fukushima T, McIntosh S, Yamashita K, Ubayashi N, Hassan AE. Studying just-in-time defect prediction using cross-project models. Empirical Software Engineering, 2016, 21(5): 2072–2106.
    [7] 葛建, 虞慧群, 范贵生, 唐锏浩, 黄子杰. 面向智能计算框架的即时缺陷预测. 软件学报, 2023, 34(9): 3966–3980. http://www.jos.org.cn/1000-9825/6874.htm
    Ge J, Yu HQ, Fan GS, Tang JH, Huang ZJ. Just-in-time defect prediction for intelligent computing frameworks. Ruan Jian Xue Bao/Journal of Software, 2023, 34(9): 3966–3980 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/6874.htm
    [8] Jiang T, Tan L, Kim S. Personalized defect prediction. In: Proc. of the 28th IEEE/ACM Int’l Conf. on Automated Software Engineering (ASE). Silicon Valley: IEEE, 2013. 279–289. [doi: 10.1109/ASE.2013.6693087]
    [9] Kamei Y, Shihab E, Adams B, Hassan AE, Mockus A, Sinha A, Ubayashi N. A large-scale empirical study of just-in-time quality assurance. IEEE Trans. on Software Engineering, 2013, 39(6): 757–773.
    [10] Li ZQ, Zhang HY, Jing XY, Xie JY, Guo M, Ren J. DSSDPP: Data selection and sampling based domain programming predictor for cross-project defect prediction. IEEE Trans. on Software Engineering, 2023, 49(4): 1941–1963.
    [11] Xia X, Lo D, Pan SJ, Nagappan N, Wang XY. HYDRA: Massively compositional model for cross-project defect prediction. IEEE Trans. on Software Engineering, 2016, 42(10): 977–998.
    [12] Śliwerski J, Zimmermann T, Zeller A. When do changes induce fixes? ACM SIGSOFT Software Engineering Notes, 2005, 30(4): 1–5.
    [13] Kim S, Zimmermann T, Pan K Jr, Whitehead E. Automatic identification of bug-introducing changes. In: Proc. of the 21st IEEE/ACM Int’l Conf. on Automated Software Engineering (ASE 2006). Tokyo: IEEE, 2006. 81–90. [doi: 10.1109/ASE.2006.23]
    [14] Da Costa DA, McIntosh S, Shang WY, Kulesza U, Coelho R, Hassan AE. A framework for evaluating the results of the SZZ approach for identifying bug-introducing changes. IEEE Trans. on Software Engineering, 2017, 43(7): 641–657.
    [15] Neto EC, Da Costa DA, Kulesza U. The impact of refactoring changes on the SZZ algorithm: An empirical study. In: Proc. of the 25th IEEE Int’l Conf. on Software Analysis, Evolution and Reengineering (SANER). Campobasso: IEEE, 2018. 380–390. [doi: 10.1109/SANER.2018.8330225]
    [16] Tantithamthavorn C, Hassan AE, Matsumoto K. The impact of class rebalancing techniques on the performance and interpretation of defect prediction models. IEEE Trans. on Software Engineering, 2020, 46(11): 1200–1219.
    [17] Catolino G, Di Nucci D, Ferrucci F. Cross-project just-in-time bug prediction for mobile APPs: An empirical assessment. In: Proc. of the 6th IEEE/ACM Int’l Conf. on Mobile Software Engineering and Systems (MOBILESoft). Montreal: IEEE, 2019: 99–110. [doi: 10.1109/MOBILESoft.2019.00023]
    [18] Bird C, Bachmann A, Aune E, Duffy J, Bernstrin A, Filkov V, Devanbu P. Fair and balanced? Bias in bug-fix datasets. In: Proc. of the 7th Joint Meeting of the European Software Engineering Conf. and the ACM SIGSOFT Symp. on the Foundations of Software Engineering. Amsterdam: ACM, 2009. 121–130. [doi: 10.1145/1595696.1595716]
    [19] Bachmann A, Bird C, Rahman F, Devanbu P, Bernstein A. The missing links: Bugs and bug-fix commits. In: Proc. of the 18th ACM SIGSOFT Int’l Symp. on Foundations of Software Engineering. Santa Fe: ACM, 2010. 97–106. [doi: 10.1145/1882291.1882308]
    [20] Kim S, Zhang HY, Wu RX, Gong L. Dealing with noise in defect prediction. In: Proc. of the 33rd Int’l Conf. on Software Engineering. Honolulu: ACM, 2011. 481–490. [doi: 10.1145/1985793.1985859]
    [21] Antoniol G, Ayari K, Di Penta M, Khomh F, Guéhéneuc YG. Is it a bug or an enhancement? A text-based approach to classify change requests. In: Proc. of the 2008 Conf. of the Center for Advanced Studies on Collaborative Research: Meeting of Minds. Ontario: ACM, 2008. 304–318. [doi: 10.1145/1463788.1463819]
    [22] Kochhar PS, Thung F, Lo D. Automatic fine-grained issue report reclassification. In: Proc. of the 19th Int’l Conf. on Engineering of Complex Computer Systems. Tianjin: IEEE, 2014. 126–135. [doi: 10.1109/ICECCS.2014.25]
    [23] Herzig K, Just S, Zeller A. It’s not a bug, it’s a feature: How misclassification impacts bug prediction. In: Proc. of the 35th Int’l Conf. on Software Engineering (ICSE). San Francisco: IEEE, 2013. 392–401. [doi: 10.1109/ICSE.2013.6606585]
    [24] Tantithamthavorn C, McIntosh S, Hassan AE, Ihara A, Mastsumoto K. The impact of mislabelling on the performance and interpretation of defect prediction models. In: Proc. of the 37th IEEE/ACM IEEE Int’l Conf. on Software Engineering. Florence: IEEE, 2015. 812–823. [doi: 10.1109/ICSE.2015.93]
    [25] Herzig K, Just S, Zeller A. The impact of tangled code changes on defect prediction models. Empirical Software Engineering, 2016, 21(2): 303–336.
    [26] Zimmermann T, Kim S, Zeller A, Whitehead EJ. Mining version archives for co-changed lines. In: Proc. of the 2006 Int’l Workshop on Mining Software Repositories. Shanghai: ACM, 2006. 72–75. [doi: 10.1145/1137983.1138001]
    [27] Shivaji S, Whitehead EJ, Akella R, Kim S. Reducing features to improve code change-based bug prediction. IEEE Trans. on Software Engineering, 2013, 39(4): 552–569.
    [28] Koru AG, Zhang DS, El Emam K, Liu HF. An investigation into the functional form of the size-defect relationship for software modules. IEEE Trans. on Software Engineering, 2009, 35(2): 293–304.
    [29] Mockus A, Weiss DM. Predicting risk of software changes. Bell Labs Technical Journal, 2002, 5(2): 169–180.
    [30] Kim S, Whitehead EJ, Zhang Y. Classifying software changes: Clean or buggy? IEEE Trans. on Software Engineering, 2008, 34(2): 181–196.
    [31] Shihab E, Hassan AE, Adams B, Jiang ZM. An industrial study on the risk of software changes. In: Proc. of the 20th ACM SIGSOFT Int’l Symp. on the Foundations of Software Engineering. Cary: ACM, 2012. 62. [doi: 10.1145/2393596.2393670]
    [32] Arisholm E, Briand LC, Fuglerud M. Data mining techniques for building fault-proneness models in telecom Java software. In: Proc. of the 18th IEEE Int’l Symp. on Software Reliability (ISSRE 2007). Trollhattan: IEEE, 2007. 215–224. [doi: 10.1109/ISSRE.2007.22]
    [33] Mende T, Koschke R. Revisiting the evaluation of defect prediction models. In: Proc. of the 5th Int’l Conf. on Predictor Models in Software Engineering. Vancouver: ACM, 2009. 7. [doi: 10.1145/1540438.1540448]
    [34] Yang YB, Zhou YM, Liu JP, Zhao YY, Lu HM, Xu L, Xu BW, Leung H. Effort-aware just-in-time defect prediction: Simple unsupervised models could be better than supervised models. In: Proc. of the 24th ACM SIGSOFT Int’l Symp. on Foundations of Software Engineering. Seattle: ACM, 2016. 157–168. [doi: 10.1145/2950290.2950353]
    [35] Liu JP, Zhou YM, Yang YB, Lu HM, Xu BW. Code churn: A neglected metric in effort-aware just-in-time defect prediction. In: Proc. of the 2017 ACM/IEEE Int’l Symp. on Empirical Software Engineering and Measurement (ESEM). Toronto: IEEE, 2017. 11–19.
    [36] Fu W, Menzies T. Revisiting unsupervised learning for defect prediction. In: Proc. of the 11th Joint Meeting on Foundations of Software Engineering. Paderborn: ACM, 2017. 72–83. [doi: 10.1145/3106237.3106257]
    [37] Huang Q, Xia X, Lo D. Revisiting supervised and unsupervised models for effort-aware just-in-time defect prediction. Empirical Software Engineering, 2019, 24(5): 2823–2862.
    [38] Chen X, Zhao YQ, Wang QP, Yuan ZD. MULTI: Multi-objective effort-aware just-in-time software defect prediction. Information and Software Technology, 2018, 93: 1–13.
    [39] Li WW, Zhang WZ, Jia XY, Huang ZQ. Effort-aware semi-supervised just-in-time defect prediction. Information and Software Technology, 2020, 126: 106364.
    [40] Yan M, Xia X, Fan YR, Lo D, Hassan AE, Zhang XD. Effort-aware just-in-time defect identification in practice: A case study at Alibaba. In: Proc. of the 28th ACM Joint Meeting on European Software Engineering Conf. and Symp. on the Foundations of Software Engineering. ACM, 2020. 1308–1319.
    [41] Ni C, Xia X, Lo D, Yang XH, Hassan AE. Just-in-time defect prediction on JavaScript projects: A replication study. ACM Trans. on Software Engineering and Methodology (TOSEM), 2022, 31(4): 76.
    [42] Xu Z, Zhao KS, Zhang T, Fu CL, Yan M, Xie ZW, Zhang XH, Catolino G. Effort-aware just-in-time bug prediction for mobile APPs via cross-triplet deep feature embedding. IEEE Trans. on Reliability, 2022, 71(1): 204–220.
    [43] Zhao KS, Xu Z, Zhang TZ, Tang YT, Yan M. Simplified deep forest model based just-in-time defect prediction for Android mobile APPs. IEEE Trans. on Reliability, 2021, 70(2): 848–859.
    [44] Zhao KS, Xu Z, Yan M, Xue L, Li W, Catolino G. A compositional model for effort-aware just-in-time defect prediction on Android APPs. IET Software, 2022, 16(3): 259–278.
    [45] Yang XL, Lo D, Xia X, Zhang Y, Sun JL. Deep learning for just-in-time defect prediction. In: Proc. of the 2015 IEEE Int’l Conf. on Software Quality, Reliability and Security. Vancouver: IEEE, 2015. 17–26. [doi: 10.1109/QRS.2015.14]
    [46] Hoang T, Dam HK, Kamei Y, Lo D, Ubayashi N. DeepJIT: An end-to-end deep learning framework for just-in-time defect prediction. In: Proc. of the 2019 IEEE/ACM 16th Int’l Conf. on Mining Software Repositories (MSR). Montreal: IEEE, 2019. 34–45.
    [47] Hoang T, Kang HJ, Lo D, Lawall J. CC2Vec: Distributed representations of code changes. In: Proc. of the 42nd ACM/IEEE Int’l Conf. on Software Engineering. Seoul: ACM, 2020. 518–529. [doi: 10.1145/3377811.3380361]
    [48] Zeng ZR, Zhang YQ, Zhang HT, Zhang LM. Deep just-in-time defect prediction: How far are we? In: Proc. of the 30th ACM SIGSOFT Int’l Symp. on Software Testing and Analysis. ACM, 2021. 427–438. [doi: 10.1145/3460319.3464819]
    [49] Pornprasit C, Tantithamthavorn CK. JITLine: A simpler, better, faster, finer-grained just-in-time defect prediction. In: Proc. of the 18th IEEE/ACM Int’l Conf. on Mining Software Repositories (MSR). Madrid: IEEE, 2021. 369–379.
    [50] Pornprasit C, Tantithamthavorn C, Jiarpakdee J, Fu M, Thongtanunam P. PyExplainer: Explaining the predictions of just-in-time defect models. In: Proc. of the 36th IEEE/ACM Int’l Conf. on Automated Software Engineering (ASE). Melbourne: IEEE, 2021. 407–418. [doi: 10.1109/ASE51524.2021.9678763]
    [51] Lin DY, Tantithamthavorn C, Hassan AE. The impact of data merging on the interpretation of cross-project just-in-time defect models. IEEE Trans. on Software Engineering, 2022, 48(8): 2969–2986.
    [52] Zheng W, Shen TR, Chen X. Just-in-time defect prediction technology based on interpretability technology. In: Proc. of the 8th Int’l Conf. on Dependable Systems and Their Applications (DSA). Yinchuan: IEEE, 2021. 78–89. [doi: 10.1109/DSA52907.2021.00017]
    [53] 陈丽琼, 王璨, 宋士龙. 一种即时软件缺陷预测模型及其可解释性研究. 小型微型计算机系统, 2022, 43(4): 865–871.
    Chen LQ, Wang C, Song SL. Just-in-time software defect prediction model and its interpretability research. Journal of Chinese Computer Systems, 2022, 43(4): 865–871 (in Chinese with English abstract).
    [54] Yang XG, Yu HQ, Fan GS, Huang ZJ, Yang K, Zhou ZY. An empirical study of model-agnostic interpretation technique for just-in-time software defect prediction. In: Proc. of the 17th EAI Int’l Conf. on Collaborative Computing: Networking, Applications and Worksharing. Springer, 2021. 420–438. [doi: 10.1007/978-3-030-92635-9_25]
    [55] Pascarella L, Palomba F, Bacchelli A. Fine-grained just-in-time defect prediction. Journal of Systems and Software, 2019, 150: 22–36.
    [56] Cabral GG, Minku LL, Shihab E, Mujahid S. Class imbalance evolution and verification latency in just-in-time software defect prediction. In Proc. of the 41st IEEE/ACM Int’l Conf. on Software Engineering (ICSE). Montreal: IEEE, 2019. 666–676. [doi: 10.1109/ICSE.2019.00076]
    [57] Zhao YH, Damevski K, Chen H. A systematic survey of just-in-time software defect prediction. ACM Computing Surveys, 2023, 55(10): 201.
    [58] Scandariato R, Walden J. Predicting vulnerable classes in an Android application. In: Proc. of the 4th Int’l Workshop on Security Measurements and Metrics. Lund: ACM, 2012. 11–16. [doi: 10.1145/2372225.2372231]
    [59] Kaur A, Kaur K, Kaur H. Application of machine learning on process metrics for defect prediction in mobile application. In: Proc. of the 3rd Int’l Conf. on Information Systems Design and Intelligent Applications. Springer, 2016. 81–98. [doi: 10.1007/978-81-322-2755-7_10]
    [60] Malhotra R. An empirical framework for defect prediction using machine learning techniques with Android software. Applied Soft Computing, 2016, 49: 1034–1050.
    [61] Ricky MY, Purnomo F, Yulianto B. Mobile application software defect prediction. In: Proc. of the 2016 IEEE Symp. on Service-oriented System Engineering (SOSE). Oxford: IEEE, 2016. 307–313. [doi: 10.1109/SOSE.2016.25]
    [62] Fan YQ, Cao XY, Xu J, Xu SH, Yang HJ. High-frequency keywords to predict defects for Android applications. In: Proc. of the 42nd IEEE Annual Computer Software and Applications Conf. (COMPSAC). Tokyo: IEEE, 2018. 442–447.
    [63] Cheng T, Zhao KS, Sun S, Mateen M, Wen JH. Effort-aware cross-project just-in-time defect prediction framework for mobile APPs. Frontiers of Computer Science, 2022, 16(6): 166207.
    [64] 胡新宇, 陈翔, 夏鸿崚, 顾亚锋. 移动APP即时缺陷预测模型的可解释性方法. 计算机应用研究, 2022, 39(7): 2104–2108.
    Hu XY, Chen X, Xia HL, Gu YF. Interpretable method of just-in-time defect prediction model for mobile APP. Application Research of Computers, 2022, 39(7): 2104–2108 (in Chinese with English abstract).
    [65] McIntosh S, Kamei Y. [Journal First] Are fix-inducing changes a moving target? A longitudinal case study of just-in-time defect prediction. In: Proc. of the 40th IEEE/ACM Int’l Conf. on Software Engineering. Gothenburg: IEEE, 2018. 560.
    [66] Hassan AE. Predicting faults using the complexity of code changes. In: Proc. of the 31st IEEE Int’l Conf. on Software Engineering. Vancouver: IEEE, 2009. 78–88. [doi: 10.1109/ICSE.2009.5070510]
    [67] Moser R, Pedrycz W, Succi G. A comparative analysis of the efficiency of change metrics and static code attributes for defect prediction. In: Proc. of the 30th Int’l Conf. on Software Engineering (ICSE). Leipzig: ACM, 2008. 181–190. [doi: 10.1145/1368088.1368114]
    [68] Guo PJ, Zimmermann T, Nagappan N, Murphy B. Characterizing and predicting which bugs get fixed: An empirical study of Microsoft Windows. In: Proc. of the 32nd ACM/IEEE Int’l Conf. on Software Engineering (ICSE). Cape Town: ACM, 2010. 495–504.
    [69] Purushothaman R, Perry DE. Toward understanding the rhetoric of small source code changes. IEEE Trans. on Software Engineering, 2005, 31(6): 511–526.
    [70] Matsumoto S, Kamei Y, Monden A, Matsumoto KI, Nakamura M. An analysis of developer metrics for fault prediction. In: Proc. of the 6th Int’l Conf. on Predictive Models in Software Engineering. Timişoara: ACM, 2010. 18. [doi: 10.1145/1868328.1868356]
    [71] Spadini D, Aniche M, Bacchelli A. PyDriller: Python framework for mining software repositories. In: Proc. of the 26th ACM Joint Meeting on European Software Engineering Conf. and Symp. on the Foundations of Software Engineering. Lake Buena Vista: ACM, 2018. 908–911. [doi: 10.1145/3236024.3264598]
    [72] Tantithamthavorn C, Hassan AE. An experience report on defect modelling in practice: Pitfalls and challenges. In: Proc. of the 40th Int’l Conf. on Software Engineering: Software Engineering in Practice. Gothenburg: ACM, 2018. 286–295. [doi: 10.1145/3183519.3183547]
    [73] Jiarpakdee J, Tantithamthavorn C, Treude C. AutoSpearman: Automatically mitigating correlated software metrics for interpreting defect models. In Proc. of the 2018 IEEE Int’l Conf. on Software Maintenance and Evolution (ICSME). Madrid: IEEE, 2018. 92–103. [doi: 10.1109/ICSME.2018.00018]
    [74] Tan M, Tan L, Dara S, Mayeux C. Online defect prediction for imbalanced data. In: Proc. of the 37th IEEE/ACM IEEE Int’l Conf. on Software Engineering. Florence: IEEE, 2015. 99–108. [doi: 10.1109/ICSE.2015.139]
    [75] Liaw A, Wiener M. Classification and regression by randomForest. R News, 2002, 2(3): 18–22.
    [76] Freund Y, Schapire RE. A decision-theoretic generalization of on-line learning and an application to boosting. Journal of Computer and System Sciences, 1997, 55(1): 119–139.
    [77] 刘旭同, 郭肇强, 刘释然, 张鹏, 卢红敏, 周毓明. 软件缺陷预测模型间的比较实验: 问题、进展与挑战. 软件学报, 2023, 34(2): 582–624.
    Liu XT, Guo ZQ, Liu SR, Zhang P, Lu HM, Zhou YM. Comparing software defect prediction models: Research problem, progress, and challenges. Ruan Jian Xue Bao/Journal of Software, 2023, 34(2): 582–624 (in Chinese with English abstract).
    [78] Li ZQ, Jing XY, Zhu XK, Zhang HY, Xu BW, Ying S. On the multiple sources and privacy preservation issues for heterogeneous defect prediction. IEEE Trans. on Software Engineering, 2019, 45(4): 391–411.
    [79] Tantithamthavorn C, McIntosh S, Hassan AE, Matsumoto K. An empirical comparison of model validation techniques for defect prediction models. IEEE Trans. on Software Engineering, 2017, 43(1): 1–18.
    [80] Li ZQ, Jing XY, Zhu XK, Zhang HY, Xu BW, Ying S. Heterogeneous defect prediction with two-stage ensemble learning. Automated Software Engineering, 2019, 26(3): 599–651.
    [81] Lundberg SM, Lee SI. A unified approach to interpreting model predictions. In: Proc. of the 31st Int’l Conf. on Neural Information Processing Systems. Long Beach: Curran Associates Inc., 2017. 4768–4777.
    [82] Chawla NV, Bowyer KW, Hall LO, Kegelmeyer WP. SMOTE: Synthetic minority over-sampling technique. Journal of Artificial Intelligence Research, 2002, 16: 321–357.
    [83] Lunardon N, Menardi G, Torelli N. ROSE: A package for binary imbalanced learning. The R Journal, 2014, 6(1): 79–89.
    [84] Rosa G, Pascarella L, Scalabrino S, Tufano R, Bavota G, Lanza M, Oliveto R. Evaluating SZZ implementations through a developer-informed oracle. In: Proc. of the 43rd IEEE/ACM Int’l Conf. on Software Engineering (ICSE). Madrid: IEEE, 2021. 436–447. [doi: 10.1109/ICSE43902.2021.00049]
    [85] Li ZQ, Jing XY, Wu F, Zhu XK, Xu BW, Ying S. Cost-sensitive transfer kernel canonical correlation analysis for heterogeneous defect prediction. Automated Software Engineering, 2018, 25(2): 201–245.
    [86] Li ZQ, Niu JW, Jing XY, Yu WY, Qi C. Cross-project defect prediction via landmark selection-based kernelized discriminant subspace alignment. IEEE Trans. on Reliability, 2021, 70(3): 996–1013.
    [87] Rosen C, Grawi B, Shihab E. Commit guru: Analytics and risk prediction of software commits. In: Proc. of the 10th Joint Meeting on Foundations of Software Engineering. Bergamo: ACM, 2015. 966–969. [doi: 10.1145/2786805.2803183]
    相似文献
    引证文献
    网友评论
    网友评论
    分享到微博
    发 布
引用本文

李志强,马睿,张洪宇,荆晓远,任杰,刘金会. SZZ误标变更对移动APP即时缺陷预测性能和解释的影响.软件学报,,():1-32

复制
相关视频
分享
文章指标
  • 点击次数:55
  • 下载次数: 207
  • HTML阅读次数: 0
  • 引用次数: 0
历史
  • 收稿日期:2023-09-28
  • 最后修改日期:2023-12-26
  • 在线发布日期: 2025-02-19
文章二维码
您是第19765591位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号