Learning to Detect Unwanted Feature Interactions Earlier in Software Product Lines
An ongoing problem for developers of software product lines is that features (units of functionality) from separate products can create unwanted, or even hazardous, behavioral interactions when combined in a new product. Detecting such unwanted feature interactions earlier in a new product would save costly re-testing and re-design. We here propose a way to learn unwanted feature interactions for a new product from the data of existing products in the product line. Using symbolic execution to extract a learning model from prior products' normal and failed paths, we then use the model to classify unseen paths in the new product. Our technique enables detection of unwanted feature interactions, even with partial data. Early experimental results show the learning-guided technique’s potential for accurate and efficient prediction of unwanted feature interactions. This is collaborative work with Profs. Tuba Yavuz and Robyn Lutz.
Committee: Robyn Lutz (major professor), Samik Basu, Andrew Miner, Hridesh Rajan, and Karin Dorman
Email email@example.com for videoconference link if you are interested in viewing this exam.