Efficient Verification of Evolving Software Product Lines
Software product line engineering represents a promising approach to achieve systematic reuse in development of families of software. Software product lines are intended to be used in a long period of time. As a result, they evolve over time, due to the changes in the requirements. Having several individual products in a software family, verification of the entire software family may take a considerable effort. In this paper, we present an idea for efficient verification of evolving software product lines, by reusing the result of verification and state space of the product family. To this end, we generate the state space of the product family once and verify the desired properties. The result of verification is the set of products satisfying the given properties. When the product line evolves, we may use the result of verification, and the state space to produce new results, and update the existing state space. We show the applicability of our approach by applying it on a small case study.
KeywordsState Space Product Line Feature Model Product Family Variation Point
Unable to display preview. Download preview PDF.
- 2.Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (foda) feasibility study. Technical report, Carnegie-Mellon University Software Engineering Institute (November 1990)Google Scholar
- 7.Sabouri, H., Khosravi, R.: An effective approach for verifying product lines in presence of variability models. In: FMSPLE: First International Workshop on Formal Methods in Software Product Line Engineering, pp. 113–120 (2010)Google Scholar
- 9.Milner, R.: A Calculus of Communicating Systems. Springer-Verlag New York, Inc., Secaucus (1982)Google Scholar