Skip to main content
Log in

Specification and automated validation of staged reconfiguration processes for dynamic software product lines

  • Theme Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Dynamic software product lines (DSPLs) propose elaborated design and implementation principles for engineering highly configurable runtime-adaptive systems in a sustainable and feature-oriented way. For this, DSPLs add to classical software product lines (SPL) the notions of (1) staged (pre-)configurations with dedicated binding times for each individual feature, and (2) continuous runtime reconfigurations of dynamic features throughout the entire product life cycle. Especially in the context of safety- and mission-critical systems, the design of reliable DSPLs requires capabilities for accurately specifying and validating arbitrary complex constraints among configuration parameters and/or respective reconfiguration options. Compared to classical SPL domain analysis which is usually based on Boolean constraint solving, DSPL validation, therefore, further requires capabilities for checking temporal properties of reconfiguration processes. In this article, we present a comprehensive approach for modeling and automatically verifying essential validity properties of staged reconfiguration processes with complex binding time constraints during DSPL domain engineering. The novel modeling concepts introduced are motivated by (re-)configuration constraints apparent in a real-world industrial case study from the automation engineering domain, which are not properly expressible and analyzable using state-of-the-art SPL domain modeling approaches. We present a prototypical tool implementation based on the model checker SPIN and present evaluation results obtained from our industrial case study, demonstrating the applicability of the approach.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18

Similar content being viewed by others

Notes

  1. https://www.eckelmann.de/en.

  2. http://wwwiti.cs.uni-magdeburg.de/iti_db/research/featureide/.

  3. http://www.moflon.org/.

  4. http://spinroot.com/.

References

  1. Froschauer, R., Dhungana, D., Grünbacher, P.: Managing the life-cycle of industrial automation systems with product line variability models. In: 34th EUROMICRO Conference on Software Engineering and Advanced Applications, IEEE, pp. 35–42 (2008)

  2. Maga, C., Jazdi, N.: An approach for modeling variants of industrial automation systems. In: AQTR, IEEE, pp. 1–6 (2010)

  3. Feldmann, S., Fuchs, J., Vogel-Heuser, B.: Modularity, variant and version management in plant automation—future challenges and state of the art. In: International Design Conference (DESIGN). Springer, pp. 1689–1698 (2012)

  4. Lochau, M., Bürdek, J., Lity, S., Hagner, M., Legat, C., Goltz, U., Schürr, A.: Applying model-based software product line testing approaches to the automation engineering domain. Automatisierungstechnik 62, 771–780 (2014)

    Article  Google Scholar 

  5. Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley Professional, Reading (2000)

    Google Scholar 

  6. Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Berlin (2005)

    Book  MATH  Google Scholar 

  7. Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley Longman, Reading (2001)

    Google Scholar 

  8. Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, S.A.: Feature Oriented Domain Analysis (FODA). Technical report, CMU (1990)

  9. Benavides, D., Segura, S., Ruiz-Cortés, A.: Automated analysis of feature models 20 years later: a literature review. Inf. Syst. 35, 615–636 (2010)

    Article  Google Scholar 

  10. Benavides, D., Trinidad, P., Ruiz-Cortés, A.: Automated reasoning on feature models. In: CAiSE. Springer, pp. 491–503 (2005)

  11. Hubaux, A., Classen, A., Heymans, P.: Formal modelling of feature configuration workflows. In: SPLC, ACM, pp. 221–230 (2009)

  12. Mendonça, M., Wasowski, A., Czarnecki, K.: SAT-based analysis of feature models is easy. In: SPLC, ACM, pp. 231–240 (2009)

  13. Hallsteinsen, S., Hinchey, M., Park, S., Schmid, K.: Dynamic software product lines. Computer 41, 93–95 (2008)

    Article  Google Scholar 

  14. Bencomo, N., Sawyer, P., Blair, G.S., Grace, P.: Dynamically adaptive systems are product lines too: using model-driven techniques to capture dynamic variability of adaptive systems. In: SPLC, ACM, pp. 23–32 (2008)

  15. Bencomo, N., Hallsteinsen, S., Santana de Almeida, E.: A view of the dynamic software product line landscape. Computer 45, 36–41 (2012)

    Article  Google Scholar 

  16. Czarnecki, K., Helsen, S., Ulrich, E.: Staged configuration using feature models. In: SPLC. Springer, pp. 266–283 (2004)

  17. 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: Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems. VaMoS, ACM, pp. 16:1–16:8 (2013)

  18. Saller, K., Lochau, M., Reimund, I.: Context-aware DSPLs: model-based runtime adaptation for resource-constrained systems. In: SPLC, ACM pp. 106–113 (2013)

  19. Heidelberg University Hospital: Heidelberg Ion-Beam Therapy Center. http://www.klinikum.uni-heidelberg.de/Welcome.113005.0.html?&L=1 (2013)

  20. Rosenmüller, M., Siegmund, N., Pukall, M., Apel, S.: Combining Runtime Adaptation and Static Binding in Dynamic Software Product Lines. Technical Report 02, University of Magdeburg (2011)

  21. Rosenmüller, M., Siegmund, N., Saake, G., Apel, S.: Code generation to support static and dynamic composition of software product lines. In: GPCE, ACM, pp. 3–12 (2008)

  22. Rosenmüller, M., Siegmund, N., Apel, S., Saake, G.: Flexible feature binding in software product lines. Autom. Softw. Eng. 18, 163–197 (2011)

    Article  Google Scholar 

  23. Batory, D.: Feature models, grammars, and propositional formulas. In: SPLC, ACM, pp. 7–20 (2005)

  24. Schobbens, P.Y., Heymans, P., Trigaux, J.C.: Feature diagrams: a survey and a formal semantics. In: RE, IEEE pp. 139–148 (2006)

  25. Heymans, P., Schobbens, P.Y., Trigaux, J.C., Bontemps, Y., Matulevicius, R., Classen, A.: Evaluating formal properties of feature diagram languages. IET Softw. 2, 281–302 (2008)

    Article  Google Scholar 

  26. Schroeter, J., Lochau, M., Winkelmann, T.: Multi-perspectives on feature models. In: MODELS. Springer, pp. 252–268 (2012)

  27. Karataş, A.S., Oğuztüzün, H., Doğru, A.: From extended feature models to constraint logic programming. Sci. Comput. Program. 78, 2295–2312 (2013)

    Article  Google Scholar 

  28. Passos, L.T., Berger, T., Novakovic, M., Czarnecki, K., Xiong, Y., Wasowski, A.: A study of non-boolean constraints in variability models of an embedded operating system. In: SPLC, pp. 21–28 (2011)

  29. Classen, A., Hubaux, A., Heymans, P.: A formal semantics for multi-level staged configuration. In: VaMoS, pp. 51–60 (2009)

  30. Classen, A., Hubaux, A., Heymans, P.: Analysis of feature configuration workflows. In: RE, IEEE, pp. 381–382 (2009)

  31. White, J., Dougherty, B., Schmidt, D.C., Benavides, D.: Automated reasoning for multi-step feature model configuration problems. In: SPLC, CMU, pp. 11–20 (2009)

  32. Mennicke, S., Lochau, M., Schroeter, J., Winkelmann, T.: Automated verification of feature model configuration processes based on workflow petri nets. In: SPLC, ACM, pp. 62–71 (2014)

  33. Post, H., Sinz, C.: Configuration lifting: verification meets software configuration. In: ASE, pp. 347–350 (2008)

  34. Helvensteijn, M.: Dynamic delta modeling. In: SPLC, ACM, pp. 127–134 (2012)

  35. Damiani, F., Schaefer, I.: Dynamic delta-oriented programming. In: SPLC, ACM, pp. 34:1–34:8 (2011)

  36. Benavides, D., Segura, S., Martín-Arroyo, P.T., Cortés, A.R.: Using Java CSP solvers in the automated analyses of feature models. In: GTTSE. Springer, pp. 399–408 (2006)

  37. Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press, Cambridge (1999)

    Google Scholar 

  38. Runeson, P., Hst, M.: Guidelines for conducting and reporting case study research in software engineering. Empir. Softw. Eng. 14, 131–164 (2009)

  39. Czarnecki, K., Helsen, S., Eisenecker, U.: Staged configuration through specialization and multi-level configuration of feature models. Softw. Process Improv. Pract. 10, 143–169 (2005)

    Article  Google Scholar 

  40. Mei, H., Zhang, W., Gu, F.: A feature oriented approach to modeling and reusing requirements of software product lines. In: COMPSAC, IEEE, pp. 250–256 (2003)

  41. Acher, M., Collet, P., Lahire, P., France, R.: Separation of concerns in feature modeling: support and applications. In: AOSD, ACM, pp. 1–12 (2012)

  42. Schroeter, J., Mucha, P., Muth, M., Jugel, K., Lochau, M.: Dynamic configuration management of cloud-based applications. In: SPLC, ACM, pp. 171–178 (2012)

  43. Hubaux, A., Heymans, P., Schobbens, P.Y.: Supporting Multiple Perspectives in Feature-based Configuration: Foundations. Technical Report P-CS-TR MPFD-000001, PReCISE Research Centre, Univ. of Namur (2010)

  44. Hubaux, A., Heymans, P., Schobbens, P.Y., Deridder, D.: Towards multi-view feature-based configuration. In: REFSQ. Springer, pp. 106–112 (2010)

  45. Mendonça, M., Cowan, D.D., de Oliveira, T.C.: A process-centric approach for coordinating product configuration decisions. In: HICSS, IEEE, p. 283 (2007)

  46. Abbasi, E.K., Hubaux, A., Heymans, P.: A toolset for feature-based configuration workflows. In: SPLC, IEEE, pp. 65–69 (2011)

  47. Botterweck, G., Nestor, D.: Towards supporting feature configuration by interactive visualisation. In: ViSPLE (2007)

  48. Svahnberg, M., van Gurp, J., Bosch, J.: A taxonomy of variability realization techniques: research articles. Softw. Pract. Exp. 35, 705–754 (2005)

    Article  Google Scholar 

  49. Hinchey, M., Park, S., Schmid, K.: Building dynamic software product lines. Computer 45, 22–26 (2012)

    Article  Google Scholar 

  50. Saller, K., Oster, S., Schürr, A., Schroeter, J., Lochau, M.: Reducing feature models to improve runtime adaptivity on resource limited devices. In: SPLC, ACM, pp. 135–142 (2012)

Download references

Acknowledgments

This work was partially supported by the DFG (German Research Foundation) under the Priority Programme SPP 1593: Design For Future—Managed Software Evolution.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Johannes Bürdek.

Additional information

Communicated by Andrzej Wąsowski and Thorsten Weyer.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Lochau, M., Bürdek, J., Hölzle, S. et al. Specification and automated validation of staged reconfiguration processes for dynamic software product lines. Softw Syst Model 16, 125–152 (2017). https://doi.org/10.1007/s10270-015-0470-4

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-015-0470-4

Keywords

Navigation