{"title":"Similarity-Based Search for Model Checking: A Pilot Study with Java PathFinder","authors":"Elmin Ibrahimov, Jixing Wang, Z. Zhou","doi":"10.1109/QSIC.2013.15","DOIUrl":"https://doi.org/10.1109/QSIC.2013.15","url":null,"abstract":"When a model checker cannot explore the entire state space because of limited resources, model checking becomes a kind of testing with an attempt to find a failure (violation of properties) quickly. We consider two state sequences in model checking: (i) the sequence in which new states are generated, and (ii) the sequence in which the states generated in sequence (i) are checked for property violation. We observe that neighboring states in sequence (i) often have similarities in certain ways. Based on this observation we propose a search strategy, which generates sequence (ii) in such a way that similar states are evenly spread over the sequence. As a result, neighboring states in sequence (ii) can have a higher diversity. A pilot empirical study with Java Path Finder suggests that the proposed strategy can outperform random search in terms of creating equal or smaller number of states to detect a failure.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"72 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132052270","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Improving Test Case Generation from UML Statecharts by Using Control, Data and Communication Dependencies","authors":"V. Chimisliu, F. Wotawa","doi":"10.1109/QSIC.2013.48","DOIUrl":"https://doi.org/10.1109/QSIC.2013.48","url":null,"abstract":"Dependence relations have been used in slicing of programs in order to remove statements that do not influence certain criteria of interest. More recently, slicing has also been applied at the specification level in order to obtain a reduced model pertinent to the selected criteria. Such models have been used for different verification and validation activities. In this article we present an approach that uses control, data and communication dependences in order to enhance test purposes with refuse transitions. A test purpose represents an abstraction of the original model describing a scenario of interest, which should be tested. The refuse transitions are used during the test case generation process in order to limit the state space being searched. As automating test case generation activities is of great importance the generation of the test purposes and of the test cases consequently is fully automatic. We have evaluated the proposed approach on three models from industry and several others from literature. The obtained results indicate an improvement regarding computation time compared to test case generation using unmodified test purposes.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"87 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131869819","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Simon Außerlechner, Sandra Fruhmann, Wolfgang Wieser, Birgit Hofer, Raphael Spork, Clemens Mühlbacher, F. Wotawa
{"title":"The Right Choice Matters! SMT Solving Substantially Improves Model-Based Debugging of Spreadsheets","authors":"Simon Außerlechner, Sandra Fruhmann, Wolfgang Wieser, Birgit Hofer, Raphael Spork, Clemens Mühlbacher, F. Wotawa","doi":"10.1109/QSIC.2013.46","DOIUrl":"https://doi.org/10.1109/QSIC.2013.46","url":null,"abstract":"Spreadsheets are undoubtedly the most prominent example of end-user programs vastly used in practice. Spreadsheets are often complex and comprise several hundreds or even thousands of formulas making fault localization a very hard and painstaking task. Although there has been work based on model-based reasoning for fault localization in spreadsheets, its applicability in practice is still limited mainly due to two reasons. First, most of the available constraint solvers, used for computing diagnoses, do not sufficiently support Real numbers. Second, the runtime especially for larger spreadsheets is too long preventing truly interactive debugging. In order to eliminate limitations regarding data type support and runtime performance, we suggest the use of SMT solvers for spreadsheet debugging. Besides lying out the foundations of SMT solving for diagnoses, we introduce its application to spreadsheet debugging. The empirical evaluation shows that the SMT solver Z3 requires six times less time for computing diagnoses compared to public available constraint solvers.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132223648","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
G. N. Iyer, Jayakhanna Pasimuthu, Ramesh Loganathan
{"title":"PCTF: An Integrated, Extensible Cloud Test Framework for Testing Cloud Platforms and Applications","authors":"G. N. Iyer, Jayakhanna Pasimuthu, Ramesh Loganathan","doi":"10.1109/QSIC.2013.65","DOIUrl":"https://doi.org/10.1109/QSIC.2013.65","url":null,"abstract":"Due to the inherent advantages of Cloud Computing paradigms, application development, deployment and usage in Cloud environments has been increased exponentially in the recent past. This results in reduced time to market, reduced capital and operational expenses and increased productivity. The proliferation of Cloud platforms and applications also poses several challenges for the quality assessment. In this paper, we analyze various Cloud test approaches and frameworks. Then we present our research findings on major Cloud dimensions for testing Cloud platforms and applications. Then we propose an integrated, extensible Cloud test framework for testing various Cloud features, called Progress Cloud Test Framework (PCTF) and describe its components and characteristics.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"62 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134497026","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Measuring Qualities for OSGi Component-Based Applications","authors":"Salma Hamza, Salah Sadou, Régis Fleurquin","doi":"10.1109/QSIC.2013.42","DOIUrl":"https://doi.org/10.1109/QSIC.2013.42","url":null,"abstract":"Component-based software engineering (CBSE) begins to reach a certain level of maturity. Indeed, for the development of complex applications the use of component paradigm has become common. Therefore, the evaluation of the quality of these applications becomes necessary. In this context, the use of metrics is considered very important. Several metrics specific to component-based applications have been proposed. However, any of these metrics gained the consensus of the CBSE community and mainly there is no proposed tool to support them. As a large part of frameworks for component-based application development is based on object-oriented technology, we propose to use some object-oriented (OO) metrics to evaluate component-based applications produced with this kind of framework. Indeed, these metrics became a standard in OO community. So, they are well-defined, well-known and empirically validated. To identify which object-oriented metrics are useful for the evaluation of component-based applications, we have conducted an experimental study on 10 OSGi applications. This study also gives us the opportunity to discuss on the respect by OSGi developers of some properties pointed out by the literature.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132874464","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pavneet Singh Kochhar, Tegawendé F. Bissyandé, David Lo, Lingxiao Jiang
{"title":"An Empirical Study of Adoption of Software Testing in Open Source Projects","authors":"Pavneet Singh Kochhar, Tegawendé F. Bissyandé, David Lo, Lingxiao Jiang","doi":"10.1109/QSIC.2013.57","DOIUrl":"https://doi.org/10.1109/QSIC.2013.57","url":null,"abstract":"Testing is an indispensable part of software development efforts. It helps to improve the quality of software systems by finding bugs and errors during development and deployment. Huge amount of resources are spent on testing efforts. However, to what extent are they used in practice? In this study, we investigate the adoption of testing in open source projects. We study more than 20,000 non-trivial software projects and explore the correlation of test cases with various project development characteristics including: project size, development team size, number of bugs, number of bug reporters, and the programming languages of these projects.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115471031","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Leveraging a Constraint Solver for Minimizing Test Suites","authors":"José Campos, Rui Abreu","doi":"10.1109/QSIC.2013.17","DOIUrl":"https://doi.org/10.1109/QSIC.2013.17","url":null,"abstract":"Software (regression) testing is performed to detect errors as early as possible and guarantee that changes did not affect the system negatively. As test suites tend to grow over time, (re-)executing the entire suite becomes prohibitive. We propose an approach, RZoltar, addressing this issue: it encodes the relation between a test case and its testing requirements (code statements in this paper) in a so-called coverage matrix, maps this matrix into a set of constraints, and computes a collection of optimal minimal sets (maintaining the same coverage as the original suite) by leveraging a fast constraint solver. We show that RZoltar efficiently (0.95 seconds on average) finds a collection of test suites that significantly reduce the size (64.88% on average) maintaining the same fault detection (as initial test suite), while the well-known greedy approach needs 11.23 seconds on average to find just one solution.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"820 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130659331","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Automated Test Case Generation for Embedded Software Using Extended Interface Automata","authors":"Chao Zhang, Xiaoying Bai, Junlong Li, Renwei Zhang","doi":"10.1109/QSIC.2013.24","DOIUrl":"https://doi.org/10.1109/QSIC.2013.24","url":null,"abstract":"With increasing size and complexity, more and more embedded systems are built from interconnected components. Testing is necessary to ensure the compatibility of composite components and the correctness of the integrated system. Interface automata (IAs) provide a light-weight formal method for modelling component external observable behaviour and component compositions. The paper presents a systematic method for automatic testing based on an extended IA (EIA) model. EIA enriches modelling capability by adding data and constraints to basic automata. Based on EIA, test path generation is then transformed to a search problem to traverse paths in the state model to achieve different model coverage. For each test path, a set of test data are generated by solving the constraints extracted from the transitions of the path. The paper analyses the proposed approach from four aspects: test adequacy, test case scale, test case correctness, and test effectiveness, using a simulated case study.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121826128","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Drew Williams, M. A. Alam, Sheikh Iqbal Ahamed, W. Chu
{"title":"Considerations in Designing Human-Computer Interfaces for Elderly People","authors":"Drew Williams, M. A. Alam, Sheikh Iqbal Ahamed, W. Chu","doi":"10.1109/QSIC.2013.36","DOIUrl":"https://doi.org/10.1109/QSIC.2013.36","url":null,"abstract":"As computing devices continue to become more heavily integrated into our lives, proper design of human-computer interfaces becomes a more important topic of discussion. Efficient and useful human-computer interfaces need to take into account the abilities of the humans who will be using such interfaces, and adapt to difficulties that different users may face - such as the difficulties that elderly users must deal with. Interfaces that allow for user-specific customization, while taking into account the multiple difficulties that older users might face, can assist the elderly in properly using these newer computing devices, and in doing so possibly achieving a better quality of life through the advanced technological support that these devices offer. In this paper, we explore common problems the elderly face when using computing devices and solutions developed for these problems. Difficulties ultimately fall into several categories: cognition, auditory, haptic, visual, and motor-based troubles. We also present an idea for a new adaptive operating system with advanced customizations that would simplify computing for older users.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114991327","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"ColFinder Collaborative Concurrency Bug Detection","authors":"Zhendong Wu, Kai Lu, Xiaoping Wang, Xu Zhou","doi":"10.1109/QSIC.2013.67","DOIUrl":"https://doi.org/10.1109/QSIC.2013.67","url":null,"abstract":"Many concurrency bugs are extremely difficult to be detected by random test due to huge input space and huge interleaving space. The multicore technology trend worsens this problem. We propose an innovative, collaborative approach called ColFinder to detect concurrency bugs effectively and efficiently. ColFinder uses static analysis to identify potential buggy statements. With respect to these statements, ColFinder uses program slicing to cut the original programs into smaller programs. Finally, it uses dynamic active test to verify whether the potential buggy statements will trigger real bugs. We implement a prototype of ColFinder, and evaluate it with several real-world programs. It significantly improves the probability of bug manifestation, from 0.75% to 89%. Additionally, ColFinder makes the time of bug manifestation obviously reduced by program slicing, with an average of 33%.","PeriodicalId":404921,"journal":{"name":"2013 13th International Conference on Quality Software","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128116600","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}