首页 | 本学科首页   官方微博 | 高级检索  
     


Deriving thresholds of software metrics to predict faults on open source software: Replicated case studies
Affiliation:1. TUBITAK BILGEM, Information Technologies Institute, Kocaeli-Turkey\n;2. Department of Computer Engineering, Faculty of Computer and Information Science, Sakarya University, Sakarya-Turkey\n;1. Industrial Management, School of Engineering, University of Seville, Camino de los Descubrimientos s/n, 41092 Seville, Spain;2. Industrial Engineering, Faculty of Engineering, University of Duisburg-Essen, Bismarckstr. 90, 47057 Duisburg, Germany;1. Faculty of Electrical Engineering, Warsaw University of Technology, Koszykowa 75, Warsaw, Poland;2. Military Institute of Medicine, Szaserow 128, Warsaw, Poland;3. Military University of Technology, Kaliskiego 2, Warsaw, Poland
Abstract:Object-oriented metrics aim to exhibit the quality of source code and give insight to it quantitatively. Each metric assesses the code from a different aspect. There is a relationship between the quality level and the risk level of source code. The objective of this paper is to empirically examine whether or not there are effective threshold values for source code metrics. It is targeted to derive generalized thresholds that can be used in different software systems. The relationship between metric thresholds and fault-proneness was investigated empirically in this study by using ten open-source software systems. Three types of fault-proneness were defined for the software modules: non-fault-prone, more-than-one-fault-prone, and more-than-three-fault-prone. Two independent case studies were carried out to derive two different threshold values. A single set was created by merging ten datasets and was used as training data by the model. The learner model was created using logistic regression and the Bender method. Results revealed that some metrics have threshold effects. Seven metrics gave satisfactory results in the first case study. In the second case study, eleven metrics gave satisfactory results. This study makes contributions primarily for use by software developers and testers. Software developers can see classes or modules that require revising; this, consequently, contributes to an increment in quality for these modules and a decrement in their risk level. Testers can identify modules that need more testing effort and can prioritize modules according to their risk levels.
Keywords:
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号