[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
research-article

White-box validation of quantitative product lines by statistical model checking and process mining

Published: 25 June 2024 Publication History

Abstract

We propose a novel methodology to validate software product line (PL) models by integrating Statistical Model Checking (SMC) with Process Mining (PM). We consider the feature-oriented language QFLan from the PL engineering domain. QFLan allows to model PL equipped with rich cross-tree and quantitative constraints, as well as aspects of dynamic PLs such as the staged configurations. This richness allows us to easily obtain models with infinite state-space, calling for simulation-based analysis techniques, like SMC. For example, we use a running example with infinite state space. SMC is a family of analysis techniques based on the generation of samples of the dynamics of a system. SMC aims at estimating properties of a system like the probability of a given event (e.g., installing a feature), or the expected value of quantities in it (e.g., the average price of products from the studied family). Instead, PM is a family of data-driven techniques that uses logs collected on the execution of an information system to identify and reason about its underlying execution process. This often regards identifying and reasoning about process patterns, bottlenecks, and possibilities for improvement. In this paper, to the best of our knowledge, we propose, for the first time, the application of Process Mining (PM) techniques to the byproducts of Statistical Model Checking (SMC) simulations. This aims to enhance the utility of SMC analyses. Typically, if SMC gives unexpected results, the modeler has to discover whether these come from actual characteristics of the system, or from bugs in the model. This is done in a black-box manner, only based on the obtained numerical values. We improve on this by using PM to get a white-box perspective on the dynamics of the system observed by SMC. Roughly speaking, we feed the samples generated by SMC to PM tools, obtaining a compact graphical representation of the observed dynamics. This mined PM model is then transformed into a mined QFLan model, making it accessible to PL engineers. Using two well-known PL models, we show that our methodology is effective (helps in pinpointing issues in models, and in suggesting fixes), and that it scales to complex models. We also show that it is general, by applying it to the security domain.

Highlights

Effective, scalable, multi-domain methodology for the analysis of product lines.
Integration of statistical model checking and process mining
Multi-domain: applied to product line and security domains.
From black-box model validation to white-box novel validation and enhancement.
Mining of product line models.

References

[1]
Agha G., Palmskog K., A survey of statistical model checking, ACM Trans. Model. Comput. Simul. 28 (1) (2018) 6:1–6:39.
[2]
Anon G., SPIN 2015: Proceedings of the 22nd International Symposium on Model Checking Software - Volume 9232, Springer-Verlag, Berlin, Heidelberg, 2015.
[3]
Apel S., von Rhein A., Wendler P., Größlinger A., Beyer D., Strategies for product-line verification: case studies and experiments, in: Notkin D., Cheng B.H.C., Pohl K. (Eds.), 35th International Conference on Software Engineering, ICSE ’13, San Francisco, CA, USA, May 18-26, 2013, IEEE Computer Society, 2013, pp. 482–491,.
[4]
Bartoletti M., Chiang J.H., Junttila T., Lluch-Lafuente A., Mirelli M., Vandin A., Formal analysis of lending pools in decentralized finance, in: Margaria T., Steffen B. (Eds.), Leveraging Applications of Formal Methods, Verification and Validation. Adaptation and Learning - 11th International Symposium, ISoLA 2022, Rhodes, Greece, October 22-30, 2022, Proceedings, Part III, in: Lecture Notes in Computer Science, vol. 13703, Springer, 2022, pp. 335–355,.
[5]
ter Beek M.H., Damiani F., Lienhardt M., Mazzanti F., Paolini L., Efficient static analysis and verification of featured transition systems, Empir. Softw. Eng. 27 (1) (2022) 10,.
[6]
ter Beek M.H., Fantechi A., Gnesi S., Mazzanti F., Modelling and analysing variability in product families: Model checking of modal transition systems with variability constraints, J. Log. Algebraic Methods Program. 85 (2) (2016) 287–315,.
[7]
ter Beek M.H., Legay A., Lluch Lafuente A., Vandin A., Quantitative analysis of probabilistic models of software product lines with statistical model checking, in: FMSPLE 2015, in: EPTCS, vol. 182, 2015, pp. 56–70,.
[8]
ter Beek M.H., Legay A., Lluch-Lafuente A., Vandin A., Statistical analysis of probabilistic models of software product lines with quantitative constraints, in: Schmidt D.C. (Ed.), Proceedings of the 19th International Conference on Software Product Line, SPLC 2015, Nashville, TN, USA, July 20-24, 2015, ACM, 2015, pp. 11–15,.
[9]
ter Beek M.H., Legay A., Lluch-Lafuente A., Vandin A., A Framework for Quantitative Modeling and Analysis of Highly (Re)configurable Systems, IEEE Trans. Softw. Eng. 46 (3) (2020) 321–345.
[10]
ter Beek M.H., Mazzanti F., VMC: recent advances and challenges ahead, in: Gnesi S., Fantechi A., ter Beek M.H., Botterweck G., Becker M. (Eds.), 18th International Software Product Lines Conference - Companion Volume for Workshop, Tools and Demo Papers, SPLC ’14, Florence, Italy, September 15-19, 2014, ACM, 2014, pp. 70–77,.
[11]
ter Beek M.H., Mazzanti F., Sulova A., VMC: a tool for product variability analysis, in: Giannakopoulou D., Méry D. (Eds.), FM 2012: Formal Methods - 18th International Symposium, Paris, France, August 27-31, 2012. Proceedings, in: Lecture Notes in Computer Science, vol. 7436, Springer, 2012, pp. 450–454,.
[12]
ter Beek M.H., de Vink E.P., Using mCRL2 for the analysis of software product lines, in: FormaliSE 2014, ACM, 2014, pp. 31–37,.
[13]
ter Beek M.H., de Vink E.P., Willemse T.A.C., Family-based model checking with mCRL2, in: Huisman M., Rubin J. (Eds.), Fundamental Approaches To Software Engineering - 20th International Conference, FASE 2017, Held As Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017, Uppsala, Sweden, April 22-29, 2017, Proceedings, in: Lecture Notes in Computer Science, vol. 10202, Springer, 2017, pp. 387–405,.
[14]
Belzner, L., De Nicola, R., Vandin, A., Wirsing, M., 2014. Reasoning (on) service component ensembles in rewriting logic. In: Spec., Alg., and Soft. pp. 188–211.
[15]
Berti A., van Zelst S.J., van der Aalst W.M.P., Process mining for python (PM4py): Bridging the gap between process- and data science, CoRR abs/1905.06169, 2019, URL http://arxiv.org/abs/1905.06169.
[16]
Bürdek J., Lity S., Lochau M., Berens M., Goltz U., Schürr A., Staged Configuration of Dynamic Software Product Lines with Complex Binding Time Constraints, in: Collet P., asowski A.W., Weyer T. (Eds.), Proceedings of the 8th International Workshop on Variability Modelling of Software-Intensive Systems, VaMoS’14, ACM, 2014,.
[17]
Casaluce R., Burattin A., Chiaromonte F., Vandin A., Process mining meets statistical model checking: Towards a novel approach to model validation and enhancement, in: Cabanillas C., Garmann-Johnsen N.F., Koschmider A. (Eds.), Business Process Management Workshops, Springer International Publishing, Cham, 2023, pp. 243–256.
[18]
Chrszon P., Dubslaff C., Klüppelholz S., Baier C., ProFeat: feature-oriented engineering for family-based probabilistic model checking, Formal Aspects Comput. 30 (1) (2018) 45–75,.
[19]
Ciancia, V., Latella, D., Massink, M., Paškauskas, R., Vandin, A., 2017. A tool-chain for statistical spatio-temporal model checking of bike sharing systems. In: ISOLA’17.
[20]
Clarke E., Grumberg O., Jha S., Lu Y., Veith H., Counterexample-guided abstraction refinement, in: Emerson E.A., Sistla A.P. (Eds.), Computer Aided Verification, Springer Berlin Heidelberg, Berlin, Heidelberg, 2000, pp. 154–169.
[21]
Clarke D., Helvensteijn M., Schaefer I., Abstract delta modeling, in: Visser E., Järvi J. (Eds.), Generative Programming and Component Engineering, Proceedings of the Ninth International Conference on Generative Programming and Component Engineering, GPCE 2010, Eindhoven, the Netherlands, October 10-13, 2010, ACM, 2010, pp. 13–22,.
[22]
Classen A., Cordy M., Heymans P., Legay A., Schobbens P., Model checking software product lines with SNIP, Int. J. Softw. Tools Technol. Transf. 14 (5) (2012) 589–612,. URL https://doi.org/10.1007/s10009-012-0234-1.
[23]
Classen A., Cordy M., Heymans P., Legay A., Schobbens P., Formal semantics, modular specification, and symbolic verification of product-line behaviour, Sci. Comput. Program. 80 (2014) 416–439,.
[24]
Classen A., Heymans P., Schobbens P.-Y., Legay A., Symbolic model checking of software product lines, in: Proceedings of the 33rd International Conference on Software Engineering, ICSE’11, ACM, 2011, pp. 321–330,.
[25]
Classen A., Heymans P., Schobbens P., Legay A., Symbolic model checking of software product lines, in: Taylor R.N., Gall H.C., Medvidovic N. (Eds.), Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, Waikiki, Honolulu, HI, USA, May 21-28, 2011, ACM, 2011, pp. 321–330,.
[26]
Classen A., Heymans P., Schobbens P.-Y., Legay A., Raskin J.-F., Model checking Lots of systems: Efficient verification of temporal properties in software product lines, in: ICSE 2010, ACM, 2010, pp. 335–344,.
[27]
Cordy M., Classen A., Heymans P., Legay A., Schobbens P., Model checking adaptive software with featured transition systems, in: Cámara J., de Lemos R., Ghezzi C., Lopes A. (Eds.), Assurances for Self-Adaptive Systems - Principles, Models, and Techniques, in: Lecture Notes in Computer Science, vol. 7740, Springer, 2013, pp. 1–29,.
[28]
Cordy M., Classen A., Heymans P., Schobbens P., Legay A., ProVeLines: a product line of verifiers for software product lines, in: 17th International Software Product Line Conference Co-Located Workshops, SPLC 2013 Workshops, Tokyo, Japan - August 26 - 30, 2013, ACM, 2013, pp. 141–146,.
[29]
Cordy M., Schobbens P., Heymans P., Legay A., Beyond boolean product-line model checking: dealing with feature attributes and multi-features, in: Notkin D., Cheng B.H.C., Pohl K. (Eds.), 35th International Conference on Software Engineering, ICSE ’13, San Francisco, CA, USA, May 18-26, 2013, IEEE Computer Society, 2013, pp. 472–481,.
[30]
Corradini F., Fornari F., Polini A., Re B., Tiezzi F., Vandin A., A formal approach for the analysis of BPMN collaboration models, JSS 180 (2021).
[31]
Czarnecki K., Helsen S., Eisenecker U.W., Staged Configuration Using Feature Models, in: Nord R.L. (Ed.), Proceedings of the 3rd International Software Product Lines Conference, in: LNCS, vol. 3154, SPLC’04, Springer, 2004, pp. 266–283,.
[32]
Dimovski A.S., $\hbox {CTL}̂{\star }$ family-based model checking using variability abstractions and modal transition systems, Int. J. Softw. Tools Technol. Transf. 22 (1) (2020) 35–55,.
[33]
Dimovski A.S., Al-Sibahi A.S., Brabrand C., Wąsowski A., Efficient family-based model checking via variability abstractions, Int. J. Softw. Tools Technol. Transfer 19 (2017) 585–603.
[34]
Dimovski A.S., Al-Sibahi A.S., Brabrand C., Wasowski A., Efficient family-based model checking via variability abstractions, Int. J. Softw. Tools Technol. Transf. 19 (5) (2017) 585–603,.
[35]
Dimovski A.S., Legay A., Wasowski A., Variability abstraction and refinement for game-based lifted model checking of full CTL, in: Hähnle R., van der Aalst W.M.P. (Eds.), Fundamental Approaches To Software Engineering - 22nd International Conference, FASE 2019, Held As Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2019, Prague, Czech Republic, April 6-11, 2019, Proceedings, in: Lecture Notes in Computer Science, vol. 11424, Springer, 2019, pp. 192–209,.
[36]
Dimovski A.S., Wasowski A., Variability-specific abstraction refinement for family-based model checking, in: Huisman M., Rubin J. (Eds.), Fundamental Approaches To Software Engineering - 20th International Conference, FASE 2017, Held As Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017, Uppsala, Sweden, April 22-29, 2017, Proceedings, in: Lecture Notes in Computer Science, vol. 10202, Springer, 2017, pp. 406–423,.
[37]
Dubslaff C., Baier C., Klüppelholz S., Probabilistic model checking for feature-oriented systems, LNCS Trans. Aspect Oriented Softw. Dev. 12 (2015) 180–220,.
[38]
Erwig M., Walkingshaw E., The choice calculus: A representation for software variation, ACM Trans. Softw. Eng. Methodol. 21 (1) (2011) 6:1–6:27,.
[39]
Fischbein D., Uchitel S., Braberman V.A., A foundation for behavioural conformance in software product line architectures, in: Hierons R.M., Muccini H. (Eds.), Proceedings of the 2006 Workshop on Role of Software Architecture for Testing and Analysis, Held in Conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis, ISSTA 2006, ROSATEA 2006, Portland, Maine, USA, July 17-20, 2006, ACM, 2006, pp. 39–48,.
[40]
Gilmore, S., Tribastone, M., Vandin, A., 2014. An analysis pathway for the quantitative evaluation of public transport systems. In: IFM.
[41]
Hermanns H., Wachter B., Zhang L., Probabilistic CEGAR, in: Gupta A., Malik S. (Eds.), Computer Aided Verification, 20th International Conference, CAV 2008, Princeton, NJ, USA, July 7-14, 2008, Proceedings, in: Lecture Notes in Computer Science, vol. 5123, Springer, 2008, pp. 162–175,.
[42]
Hu J., Niu H., Carrasco J., Lennox B., Arvin F., Fault-tolerant cooperative navigation of networked UAV swarms for forest fire monitoring, Aerosp. Sci. Technol. 123 (2022).
[43]
Konsta A.-M., Lluch Lafuente A., Spiga B., Dragoni N., Survey: automatic generation of attack trees and attack graphs, Comput. Secur. 137 (2024) 103602,.
[44]
Kwiatkowska M.Z., Norman G., Parker D., PRISM 4.0: Verification of probabilistic real-time systems, in: Gopalakrishnan G., Qadeer S. (Eds.), Computer Aided Verification - 23rd International Conference, CAV 2011, Snowbird, UT, USA, July 14-20, 2011. Proceedings, in: Lecture Notes in Computer Science, vol. 6806, Springer, 2011, pp. 585–591,.
[45]
Legay A., Sedwards S., Traonouez L., Rare events for statistical model checking an overview, in: Larsen K.G., Potapov I., Srba J. (Eds.), Reachability Problems - 10th International Workshop, RP 2016, Aalborg, Denmark, September 19-21, 2016, Proceedings, in: Lecture Notes in Computer Science, vol. 9899, Springer, 2016, pp. 23–35,.
[46]
Leucker M., Thoma D., A formal approach to software product families, in: Margaria T., Steffen B. (Eds.), Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change - 5th International Symposium, ISoLA 2012, Heraklion, Crete, Greece, October 15-18, 2012, Proceedings, Part I, in: Lecture Notes in Computer Science, vol. 7609, Springer, 2012, pp. 131–145,.
[47]
Lochau M., Mennicke S., Baller H., Ribbeck L., Incremental model checking of delta-oriented software product lines, J. Log. Algebraic Methods Program. 85 (1) (2016) 245–267,.
[48]
Macedo N., Brunel J., Chemouil D., Cunha A., Kuperberg D., Lightweight specification and analysis of dynamic systems with rich configurations, in: Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE’16, ACM, 2016, pp. 373–383,.
[49]
Meinicke J., Wong C., Kästner C., Thüm T., Saake G., On essential configuration complexity: measuring interactions in highly-configurable systems, in: Lo D., Apel S., Khurshid S. (Eds.), Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, ASE’16, ACM, 2016, pp. 483–494,.
[50]
Muschevici R., Proença J., Clarke D., Feature Nets: behavioural modelling of software product lines, Softw. Sys. Model. 15 (4) (2016) 1181–1206,.
[51]
Pianini, D., Sebastio, S., Vandin, A., 2014. Distributed statistical analysis of complex systems modeled through a chemical metaphor. In: HPCS. pp. 416–423.
[52]
Plath M., Ryan M., Feature integration using a feature construct, Sci. Comput. Programm. 41 (1) (2001) 53–84,. URL https://www.sciencedirect.com/science/article/pii/S0167642300000186.
[53]
Research and Technology Organisation of NATO, 2008. Improving Common Security Risk Analysis report. RTO Technical Report TR-IST-049.
[54]
Sabouri H., Jaghoori M.M., de Boer F.S., Khosravi R., Scheduling and analysis of real-time software families, in: Bai X., Belli F., Bertino E., Chang C.K., Elçi A., Seceleanu C.C., Xie H., Zulkernine M. (Eds.), Proceedings of the 36th Annual IEEE Computer Software and Applications Conference, COMPSAC’12, IEEE, 2012, pp. 680–689,.
[55]
Sebastio S., Vandin A., MultiVeStA: statistical model checking for discrete event simulators, in: 7th Int. Conf ValueTools’13, ICST/ACM, 2013, pp. 310–315.
[56]
ter Beek M.H., Legay A., Lafuente A.L., Vandin A., Quantitative security risk modeling and analysis with RisQFLan, Comput. Secur. 109 (2021).
[57]
ter Beek M.H., de Vink E.P., Willemse T.A.C., Family-Based Model Checking with mCRL2, in: FASE 2017, in: LNCS, vol. 10202, 2017, pp. 387–405,.
[58]
Tribastone M., Behavioral relations in a process algebra for variants, in: Gnesi S., Fantechi A., Heymans P., Rubin J., Czarnecki K., Dhungana D. (Eds.), 18th International Software Product Line Conference, SPLC ’14, Florence, Italy, September 15-19, 2014, ACM, 2014, pp. 82–91,.
[59]
U.S. Department of Defense M., Defense Acquisition Guidebook, Section 8.5.3.3, 2009, URL https://bit.ly/3NJjs07.
[60]
van der Aalst W.M., Process Mining, second ed., Springer, 2016.
[61]
Vandin A., ter Beek M.H., Legay A., Lluch-Lafuente A., QFLan: A tool for the quantitative analysis of highly reconfigurable systems, in: FM 2018, in: LNCS, vol. 10951, 2018, pp. 329–337.
[62]
Vandin A., Giachini D., Lamperti F., Chiaromonte F., Automated and distributed statistical analysis of economic agent-based models, J. Econom. Dynam. Control (2022).
[63]
Weijters A., van Der Aalst W.M., De Medeiros A.A., Process Mining with the Heuristics Miner-Algorithm, Vol. 166, No. July 2017, Technische Universiteit Eindhoven, Citeseer, WP, 2006, pp. 1–34.
[64]
Younes H.L., Probabilistic verification for “black-box” systems, in: CAV 2015, Springer, 2005, pp. 253–265.

Cited By

View all
  • (2024)Attack Tree Generation via Process MiningLeveraging Applications of Formal Methods, Verification and Validation. REoCAS Colloquium in Honor of Rocco De Nicola10.1007/978-3-031-73709-1_22(356-372)Online publication date: 27-Oct-2024
  • (2024)White-Box Validation of Collective Adaptive Systems by Statistical Model Checking and Process MiningLeveraging Applications of Formal Methods, Verification and Validation. REoCAS Colloquium in Honor of Rocco De Nicola10.1007/978-3-031-73709-1_13(204-222)Online publication date: 27-Oct-2024
  • (2024)Introduction to the REoCAS Colloquium in Honor of Rocco De Nicola’s 70th BirthdayLeveraging Applications of Formal Methods, Verification and Validation. REoCAS Colloquium in Honor of Rocco De Nicola10.1007/978-3-031-73709-1_1(1-12)Online publication date: 27-Oct-2024

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Journal of Systems and Software
Journal of Systems and Software  Volume 210, Issue C
Apr 2024
609 pages

Publisher

Elsevier Science Inc.

United States

Publication History

Published: 25 June 2024

Author Tags

  1. Software product lines
  2. Product line engineering
  3. Probabilistic modeling
  4. Statistical model checking
  5. Process mining
  6. Attack-defense trees

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Attack Tree Generation via Process MiningLeveraging Applications of Formal Methods, Verification and Validation. REoCAS Colloquium in Honor of Rocco De Nicola10.1007/978-3-031-73709-1_22(356-372)Online publication date: 27-Oct-2024
  • (2024)White-Box Validation of Collective Adaptive Systems by Statistical Model Checking and Process MiningLeveraging Applications of Formal Methods, Verification and Validation. REoCAS Colloquium in Honor of Rocco De Nicola10.1007/978-3-031-73709-1_13(204-222)Online publication date: 27-Oct-2024
  • (2024)Introduction to the REoCAS Colloquium in Honor of Rocco De Nicola’s 70th BirthdayLeveraging Applications of Formal Methods, Verification and Validation. REoCAS Colloquium in Honor of Rocco De Nicola10.1007/978-3-031-73709-1_1(1-12)Online publication date: 27-Oct-2024

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media