Deriving a usage-independent software quality metric

被引:14
|
作者
Dey, Tapajit [1 ]
Mockus, Audris [2 ]
机构
[1] Univ Tennessee, Dept Elect Engn & Comp Sci, Knoxville, TN 37996 USA
[2] Univ Tennessee, Dept Elect Engn & Comp Sci, Digital Archeol & Evidence Engn, Knoxville, TN USA
基金
美国国家科学基金会;
关键词
Software quality; Software usage; Software faults; Bayesian networks; NPM packages; EMPIRICAL-ANALYSIS; PREDICTION; NETWORKS; COMPLEXITY; DEFECTS; MODEL;
D O I
10.1007/s10664-019-09791-w
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Context The extent of post-release use of software affects the number of faults, thus biasing quality metrics and adversely affecting associated decisions. The proprietary nature of usage data limited deeper exploration of this subject in the past. Objective To determine how software faults and software use are related and how, based on that, an accurate quality measure can be designed. Method Via Google Analytics we measure new users, usage intensity, usage frequency, exceptions, and release date and duration for complex proprietary mobile applications for Android and iOS. We utilize Bayesian Network and Random Forest models to explain the interrelationships and to derive the usage independent release quality measure. To increase external validity, we also investigate the interrelationship among various code complexity measures, usage (downloads), and number of issues for 520 NPM packages. We derived a usage-independent quality measure from these analyses, and applied it on 4430 popular NPM packages to construct timelines for comparing the perceived quality (number of issues) and our derived measure of quality during the lifetime of these packages. Results We found the number of new users to be the primary factor determining the number of exceptions, and found no direct link between the intensity and frequency of software usage and software faults. Crashes increased with the power of 1.02-1.04 of new user for the Android app and power of 1.6 for the iOS app. Release quality expressed as crashes per user was independent of other usage-related predictors, thus serving as a usage independent measure of software quality. Usage also affected quality in NPM, where downloads were strongly associated with numbers of issues, even after taking the other code complexity measures into consideration. Unlike in mobile case where exceptions per user decrease over time, for 45.8% of the NPM packages the number of issues per download increase. Conclusions We expect our result and our proposed quality measure will help gauge release quality of a software more accurately and inspire further research in this area.
引用
收藏
页码:1596 / 1641
页数:46
相关论文
共 50 条
  • [1] Deriving a usage-independent software quality metric
    Tapajit Dey
    Audris Mockus
    [J]. Empirical Software Engineering, 2020, 25 : 1596 - 1641
  • [2] Metric based software quality assurance system
    Xu, D
    Liu, ZT
    Zhu, B
    Xing, DH
    [J]. Current Trends in High Performance Computing and Its Applications, Proceedings, 2005, : 551 - 555
  • [3] Stabilization time - A quality metric for software products
    Sharma, Vibhu Saujanya
    Jalote, Pankaj
    [J]. ISSRE 2006:17TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, PROCEEDINGS, 2006, : 45 - +
  • [4] A Runtime Cloud Efficiency Software Quality Metric
    Shtern, Mark
    Smit, Michael
    Simmons, Bradley
    Litoiu, Marin
    [J]. 36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE COMPANION 2014), 2014, : 416 - 419
  • [5] A COMPLEXITY METRIC APPROACH TO SOFTWARE QUALITY MEASUREMENT
    LIN, HH
    [J]. COMPUTERS & INDUSTRIAL ENGINEERING, 1989, 17 : 531 - 535
  • [6] Quality function deployment usage in software development
    Haag, S
    Raja, MK
    Schkade, LL
    [J]. COMMUNICATIONS OF THE ACM, 1996, 39 (01) : 41 - 49
  • [7] Application of a usage profile in software quality models
    Jones, WD
    Hudepohl, JP
    Khoshgoftaar, TM
    [J]. PROCEEDINGS OF THE THIRD EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING, 1999, : 148 - 157
  • [8] Visualizing Metric Trends for Software Portfolio Quality Management
    Genfer, Patric
    Grabner, Johann
    Zoffi, Christina
    Bernhart, Mario
    Grechenig, Thomas
    [J]. 2021 WORKING CONFERENCE ON SOFTWARE VISUALIZATION (VISSOFT 2021), 2021, : 88 - 99
  • [9] Normalization approach for metric based software quality measurement
    Masud, Md. Raihan
    Hashem, M. M. A.
    Khaer, Md. Abul
    [J]. 2008 INTERNATIONAL CONFERENCE ON COMPUTER AND COMMUNICATION ENGINEERING, VOLS 1-3, 2008, : 138 - 142
  • [10] Structural information as a quality metric in software systems organization
    Visaggio, G
    [J]. INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 1997, : 92 - 99