汽车软件产品线的高效测试

Anastasia Cmyrev, Ralf Reißing
{"title":"汽车软件产品线的高效测试","authors":"Anastasia Cmyrev, Ralf Reißing","doi":"10.14416/J.IJAST.2014.05.001","DOIUrl":null,"url":null,"abstract":"Within the automotive industry, the clients’ high demand for individually customized products results in a growing number of product variants. In order to control the complexity of developing these variants, a product line approach is used that supports reuse of the common set of assets (e.g. requirements, software code, and test cases). The naive approach to assure quality of the variants derived from the product line would be to individually test each variant. However, due to the large number of variants it is virtually impossible to test all variants in detail and still release the product line on time. In this paper, we propose a new test approach based on requirements coverage and variant properties coverage (i.e. feature coverage) that leads to effective but also efficient test coverage of all variants of the product line. A set of variants is selected that is 1) as small as possible, 2) covers all requirements of the product line, and 3) covers all features of the product line. This small set of variants is then tested in detail. Reducing the number of tested variants allows for deeper testing and thus finding more defects. Because of the coverage achieved by the variant set, the quality of all other variants can be inferred from the test results. Finding the optimal set of variants in itself is a very hard problem, i.e. in an industry setting with huge numbers of possible variants it is practicably infeasible to strive for the optimum. Therefore, we developed two approaches which are not guaranteed to find the optimal set but get very near to it in little time. First, a greedy algorithm was created which produced very good results in very little time in all case studies. For example, for a system with one million variants a set of eight representing variants was selected within seconds. Second, a simulated annealing approach was evaluated in order to check for further potential of improvement. However, the case studies showed that the greedy algorithm is the better choice for practical results.","PeriodicalId":352801,"journal":{"name":"King Mongkut’s University of Technology North Bangkok International Journal of Applied Science and Technology","volume":"41 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"10","resultStr":"{\"title\":\"Efficient and Effective Testing of Automotive Software Product Lines\",\"authors\":\"Anastasia Cmyrev, Ralf Reißing\",\"doi\":\"10.14416/J.IJAST.2014.05.001\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Within the automotive industry, the clients’ high demand for individually customized products results in a growing number of product variants. In order to control the complexity of developing these variants, a product line approach is used that supports reuse of the common set of assets (e.g. requirements, software code, and test cases). The naive approach to assure quality of the variants derived from the product line would be to individually test each variant. However, due to the large number of variants it is virtually impossible to test all variants in detail and still release the product line on time. In this paper, we propose a new test approach based on requirements coverage and variant properties coverage (i.e. feature coverage) that leads to effective but also efficient test coverage of all variants of the product line. A set of variants is selected that is 1) as small as possible, 2) covers all requirements of the product line, and 3) covers all features of the product line. This small set of variants is then tested in detail. Reducing the number of tested variants allows for deeper testing and thus finding more defects. Because of the coverage achieved by the variant set, the quality of all other variants can be inferred from the test results. Finding the optimal set of variants in itself is a very hard problem, i.e. in an industry setting with huge numbers of possible variants it is practicably infeasible to strive for the optimum. Therefore, we developed two approaches which are not guaranteed to find the optimal set but get very near to it in little time. First, a greedy algorithm was created which produced very good results in very little time in all case studies. For example, for a system with one million variants a set of eight representing variants was selected within seconds. Second, a simulated annealing approach was evaluated in order to check for further potential of improvement. However, the case studies showed that the greedy algorithm is the better choice for practical results.\",\"PeriodicalId\":352801,\"journal\":{\"name\":\"King Mongkut’s University of Technology North Bangkok International Journal of Applied Science and Technology\",\"volume\":\"41 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-05-20\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"10\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"King Mongkut’s University of Technology North Bangkok International Journal of Applied Science and Technology\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.14416/J.IJAST.2014.05.001\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"King Mongkut’s University of Technology North Bangkok International Journal of Applied Science and Technology","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.14416/J.IJAST.2014.05.001","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 10

摘要

在汽车行业,客户对个性化定制产品的高需求导致了越来越多的产品变体。为了控制开发这些变体的复杂性,使用了一条产品线方法来支持公共资产集的重用(例如,需求、软件代码和测试用例)。确保来自产品线的变体质量的幼稚方法是单独测试每个变体。然而,由于大量的变体,几乎不可能在详细测试所有变体的同时仍然按时发布产品线。在本文中,我们提出了一种基于需求覆盖和变体属性覆盖(即特性覆盖)的新测试方法,这种方法可以对产品线的所有变体进行有效的测试覆盖。选择的一组变体是:1)尽可能小,2)涵盖产品线的所有需求,3)涵盖产品线的所有特性。然后对这一小部分变体进行详细测试。减少测试变量的数量可以进行更深入的测试,从而发现更多的缺陷。由于变体集的覆盖率,所有其他变体的质量都可以从测试结果中推断出来。寻找最优的变量集本身就是一个非常困难的问题,即在具有大量可能变量的行业环境中,追求最优实际上是不可行的。因此,我们开发了两种不保证能在短时间内找到最优集但非常接近最优集的方法。首先,提出了一种贪心算法,该算法在短时间内得到了很好的结果。例如,对于一个有一百万个变体的系统,在几秒钟内选择了一组8个代表变体的集合。其次,对模拟退火方法进行了评估,以检查进一步改进的潜力。然而,实例研究表明,从实际效果来看,贪心算法是更好的选择。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Efficient and Effective Testing of Automotive Software Product Lines
Within the automotive industry, the clients’ high demand for individually customized products results in a growing number of product variants. In order to control the complexity of developing these variants, a product line approach is used that supports reuse of the common set of assets (e.g. requirements, software code, and test cases). The naive approach to assure quality of the variants derived from the product line would be to individually test each variant. However, due to the large number of variants it is virtually impossible to test all variants in detail and still release the product line on time. In this paper, we propose a new test approach based on requirements coverage and variant properties coverage (i.e. feature coverage) that leads to effective but also efficient test coverage of all variants of the product line. A set of variants is selected that is 1) as small as possible, 2) covers all requirements of the product line, and 3) covers all features of the product line. This small set of variants is then tested in detail. Reducing the number of tested variants allows for deeper testing and thus finding more defects. Because of the coverage achieved by the variant set, the quality of all other variants can be inferred from the test results. Finding the optimal set of variants in itself is a very hard problem, i.e. in an industry setting with huge numbers of possible variants it is practicably infeasible to strive for the optimum. Therefore, we developed two approaches which are not guaranteed to find the optimal set but get very near to it in little time. First, a greedy algorithm was created which produced very good results in very little time in all case studies. For example, for a system with one million variants a set of eight representing variants was selected within seconds. Second, a simulated annealing approach was evaluated in order to check for further potential of improvement. However, the case studies showed that the greedy algorithm is the better choice for practical results.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信