Shared Execution for Efficiently Testing Product Lines

A software product line (SPL) is a family of related programs, each of which is uniquely defined by a combination of features. Testing an SPL requires running each of its programs, which may be computationally expensive as the number of programs in an SPL is potentially exponential in the number of...

Full description

Saved in:
Bibliographic Details
Published in:2012 IEEE 23rd International Symposium on Software Reliability Engineering pp. 221 - 230
Main Authors: Kim, C. H. P., Khurshid, S., Batory, D.
Format: Conference Proceeding
Language:English
Published: IEEE 01.11.2012
Subjects:
ISBN:9781467346382, 1467346381
ISSN:1071-9458
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:A software product line (SPL) is a family of related programs, each of which is uniquely defined by a combination of features. Testing an SPL requires running each of its programs, which may be computationally expensive as the number of programs in an SPL is potentially exponential in the number of features. It is also wasteful since instructions common to many programs must be repeatedly executed, rather than just once. To reduce this waste, we propose the idea of shared execution, which runs instructions just once for a set of programs until a variable read yields multiple values, causing execution to branch for each value until a common execution point that allows shared execution to resume. Experiments show that shared execution can be faster than conventionally running each program from start to finish, despite its overhead.
ISBN:9781467346382
1467346381
ISSN:1071-9458
DOI:10.1109/ISSRE.2012.23