{"title":"Effective unit-testing in model-based software development","authors":"Damodaram Kamma, Pooja Maruthi","doi":"10.1145/2593501.2593507","DOIUrl":null,"url":null,"abstract":"Model-based software development is extensively used in avionics and automotive safety critical control software applications. In model-based software development, highly optimized code is generated automatically from models. Such code is often hard to understand and this can make it difficult to write test cases. Therefore, in model based software development, test cases have to be derived based on the models to achieve coverage of code auto-generated from the models. Further, safety standards in those domains often demand effective unit-testing method to check functional requirements as well as achieve 100% code coverage. \n In this paper, we first discuss three methods for unit testing in model based software development, namely Modified Condition & Decision Coverage (MCDC), Classification tree and Exploratory methods. We then discuss results of our field study conducted on 3 live projects at Robert Bosch Engineering & Business Solutions Limited to check on the effectiveness of three approaches. Based on the results from our field study, we conclude that MCDC method along with boundary value analysis is most productive to check functional requirements as well as achieve 100% coverage of auto-generated code.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"14 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-05-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Conference/Workshop on Automation of Software Test","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2593501.2593507","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5
Abstract
Model-based software development is extensively used in avionics and automotive safety critical control software applications. In model-based software development, highly optimized code is generated automatically from models. Such code is often hard to understand and this can make it difficult to write test cases. Therefore, in model based software development, test cases have to be derived based on the models to achieve coverage of code auto-generated from the models. Further, safety standards in those domains often demand effective unit-testing method to check functional requirements as well as achieve 100% code coverage.
In this paper, we first discuss three methods for unit testing in model based software development, namely Modified Condition & Decision Coverage (MCDC), Classification tree and Exploratory methods. We then discuss results of our field study conducted on 3 live projects at Robert Bosch Engineering & Business Solutions Limited to check on the effectiveness of three approaches. Based on the results from our field study, we conclude that MCDC method along with boundary value analysis is most productive to check functional requirements as well as achieve 100% coverage of auto-generated code.