Model-Based Testing for Software Product Lines (MBT4SPL)
Software product lines (SPLs) have been proposed as a response to the ever-increasing demand for mass production and mass customization of software. Since their introduction, SPLs have gained popularity and have been increasingly used in the practice of software development. Briefly, an SPL consists of a variety of computer systems (products) that are built upon a common base (platform). The products share several core features, but also differ from each other in some features, commonly referred to as variability points.
Testing such SPLs is known to be very challenging due to the large spectrum of variability and the complexity of products. There have been several attempts to provide a structured discipline for testing SPLs. However, it appears from the recent surveys that several fundamental approaches to model-based testing are not yet fully adapted to and adopted in this domain. In this project, we aim to bridge this gap by providing notions of conformance testing that take the structure of a product line into account.
A major challenge in testing software product lines is efficiency. In particular, testing a product line should take less effort than testing each and every product individually. In this project, we address this issue in the context of model-based testing. We aim at minimizing the test effort by taking the commonalities and differences of various products into account and structure the test-suites and coordinate their executions so that commonalities are tested once and for all and then the focus of the testing on specific product is shifted into the specifics of each product.
- H. Beohar and M.R. Mousavi. Spinal Test Suites for Software Product Lines. Proceedings of the 9th Workshop on Model-Based Testing (MBT 2014), volume 141 of Electronic Proceedings in Theoretical Computer Science, pages 44--55, 2014.
- H. Beohar and M.R. Mousavi. Input-Output Conformance Testing Based on Featured Transition Systems. Proceedings of the 29th ACM Symposium on Applied Computing, Software Verification and Testing Track (SAC-SVT 2014), ACM Press, 2014.
Mohammad Mousavi, Professor of Computer Systems Engineering