On the correlation between testing effort and software complexity metrics

Adnan Muslija, Eduard Paul Enoiu
{"title":"On the correlation between testing effort and software complexity metrics","authors":"Adnan Muslija, Eduard Paul Enoiu","doi":"10.7287/peerj.preprints.27312v1","DOIUrl":null,"url":null,"abstract":"Software complexity metrics, such as code size and cyclomatic complexity, have been used in the software engineering community for predicting quality metrics such as maintainability, bug proneness and robustness. However, not many studies have addressed the relationship between complexity metrics and software testing and there is little experimental evidence to support the use of these code metrics in the estimation of test effort. We have investigated and evaluated the relationship between test effort (i.e, number of test cases and test execution time) and software complexity metrics for industrial control software used in an embedded system. We show how to measure different software complexity metrics such as number of elements, cyclomatic complexity, and information flow for a popular programming language named FBD used in the safety critical domain. In addition, we use test data and test suites created by experienced test engineers working at Bombardier Transportation Sweden AB to evaluate the correlation between several complexity measures and the testing effort. We found that there is a moderate correlation between software complexity metrics and test effort. In addition, the results show that the software size (i.e., number of elements in the FBD program) provides the highest correlation level with the number of test cases created and test execution time. Our results suggest that software size and structure metrics, while useful for identifying parts of the system that are more complicated, should not be solely used for identifying parts of the system for which test engineers might need to create more test cases. A potential explanation of this result concerns the nature of testing, since other attributes such as the level of thorough testing required and the size of the specifications can influence the creation of test cases. In addition, we used a linear regression model to estimate the test effort using the software complexity measurement results.","PeriodicalId":93040,"journal":{"name":"PeerJ preprints","volume":"26 1","pages":"e27312"},"PeriodicalIF":0.0000,"publicationDate":"2018-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"PeerJ preprints","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.7287/peerj.preprints.27312v1","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Software complexity metrics, such as code size and cyclomatic complexity, have been used in the software engineering community for predicting quality metrics such as maintainability, bug proneness and robustness. However, not many studies have addressed the relationship between complexity metrics and software testing and there is little experimental evidence to support the use of these code metrics in the estimation of test effort. We have investigated and evaluated the relationship between test effort (i.e, number of test cases and test execution time) and software complexity metrics for industrial control software used in an embedded system. We show how to measure different software complexity metrics such as number of elements, cyclomatic complexity, and information flow for a popular programming language named FBD used in the safety critical domain. In addition, we use test data and test suites created by experienced test engineers working at Bombardier Transportation Sweden AB to evaluate the correlation between several complexity measures and the testing effort. We found that there is a moderate correlation between software complexity metrics and test effort. In addition, the results show that the software size (i.e., number of elements in the FBD program) provides the highest correlation level with the number of test cases created and test execution time. Our results suggest that software size and structure metrics, while useful for identifying parts of the system that are more complicated, should not be solely used for identifying parts of the system for which test engineers might need to create more test cases. A potential explanation of this result concerns the nature of testing, since other attributes such as the level of thorough testing required and the size of the specifications can influence the creation of test cases. In addition, we used a linear regression model to estimate the test effort using the software complexity measurement results.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
关于测试工作和软件复杂性度量之间的关系
软件复杂性度量,例如代码大小和圈复杂度,已经在软件工程社区中用于预测质量度量,例如可维护性、bug倾向性和健壮性。然而,没有太多的研究处理复杂性度量和软件测试之间的关系,并且很少有实验证据支持在测试工作的估计中使用这些代码度量。我们已经调查并评估了在嵌入式系统中使用的工业控制软件的测试工作(例如,测试用例的数量和测试执行时间)和软件复杂性度量之间的关系。我们展示了如何度量不同的软件复杂性度量,例如在安全关键领域中使用的名为FBD的流行编程语言的元素数量、圈复杂度和信息流。此外,我们使用由庞巴迪运输瑞典公司经验丰富的测试工程师创建的测试数据和测试套件来评估几个复杂性度量和测试工作之间的相关性。我们发现在软件复杂性度量和测试工作之间存在适度的相关性。另外,结果显示软件大小(即,FBD程序中元素的数量)与创建的测试用例的数量和测试执行时间提供了最高的相关性。我们的结果表明,软件大小和结构度量,虽然对识别系统中更复杂的部分有用,但不应该仅仅用于识别测试工程师可能需要创建更多测试用例的系统部分。这一结果的潜在解释与测试的性质有关,因为其他属性,如所需的彻底测试的级别和规格说明的大小可以影响测试用例的创建。此外,我们使用线性回归模型来使用软件复杂性度量结果来估计测试工作量。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
A framework for designing compassionate and ethical artificial intelligence and artificial consciousness Time series event correlation with DTW and Hierarchical Clustering methods Securing ad hoc on-demand distance vector routing protocol against the black hole DoS attack in MANETs 12 Grand Challenges in Single-Cell Data Science Mice tracking using the YOLO algorithm
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1