Ter Beek M. H., Legay A., Lluch Lafuente A., Vandin A. Statistical model checking for product lines. In: ISoLA'16 - 7th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (Corfu, Greece, 10-14 October 2016). Proceedings, pp. 114 - 133. T. Margaria, B. Steffen (eds.). (Lecture Notes in Computer Science, vol. 9952). Springer, 2016. |

Abstract (English) |
We report on the suitability of statistical model checking for the analysis of quantitative properties of product line models by an extended treatment of earlier work by the authors. The type of analysis that can be performed includes the likelihood of specific product behaviour, the expected average cost of products (in terms of the attributes of the products' features) and the probability of features to be (un)installed at runtime. The product lines must be modelled in QFLan, which extends the probabilistic feature-oriented language PFLan with novel quantitative constraints among features and on behaviour and with advanced feature installation options. QFLan is a rich process-algebraic specification language whose operational behaviour interacts with a store of constraints, neatly separating product configuration from product behaviour. The resulting probabilistic configurations and probabilistic behaviour converge in a discrete-time Markov chain semantics, enabling the analysis of quantitative properties. Technically, a Maude implementation of QFLan, integrated with Microsoft's SMT constraint solver Z3, is combined with the distributed statistical model checker MultiVeStA, developed by one of the authors. We illustrate the feasibility of our framework by applying it to a case study of a product line of bikes. | |

URL: | http://link.springer.com/chapter/10.1007%2F978-3-319-47166-2_8 | |

DOI: | 10.1007/978-3-319-47166-2_8 | |

Subject | Software Product Lines Probabilistic Models Quantitative Constraints Statistical Model Checking D.2.4 SOFTWARE ENGINEERING. Software/Program Verification. Formal methods D.2.4 SOFTWARE ENGINEERING. Software/Program Verification. Model checking D.2.4 SOFTWARE ENGINEERING. Software/Program Verification. Statistical methods D.2.13 SOFTWARE ENGINEERING. Reusable Software. Domain engineering F.3.2 LOGICS AND MEANINGS OF PROGRAMS. Semantics of Programming Languages F.3.2 LOGICS AND MEANINGS OF PROGRAMS. Algebraic approaches to semantics F.3.2 LOGICS AND MEANINGS OF PROGRAMS. Process models G.3 PROBABILITY AND STATISTICS |

1) Download Document PDF |

Open access Restricted Private