Concepts for enriching formal languages with variability capabilities aim at comprehensive specifications and efficient development of families of similar software variants as propagated, e.g., by the software product line paradigm. However, recent approaches are usually limited to purely structural variability, e.g., by adapting choice operator semantics for variant selection. Those approaches lack (1) a modular separation of common and variable parts and/or (2) a rigorous formalization of semantical impacts of structural variations. To overcome those deficiencies, we propose a delta-oriented extension to Milner’s process calculus CCS, called DeltaCCS, that allows for modular reasoning about behavioral variability. In DeltaCCS, modular change directives are applied to core processes by altering term rewriting semantics in a determined way. We define variability-aware CCS congruences for a modular reasoning on the preservation of behavioral properties defined by the Modal μ-Calculus after changing CCS specifications. We implemented a DeltaCCS model checker to efficiently verify the members of a family of process variants.


Variability Modeling Operational Semantics Model Checking 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Apel, S., Hutchins, D.: A Calculus for Uniform Feature Composition. TOPLAS 32, 1–33 (2008)CrossRefGoogle Scholar
  2. 2.
    Asirelli, P., ter Beek, M.H., Fantechi, A., Gnesi, S.: A Model-Checking Tool for Families of Services. In: Bruni, R., Dingel, J. (eds.) FMOODS/FORTE 2011. LNCS, vol. 6722, pp. 44–58. Springer, Heidelberg (2011)Google Scholar
  3. 3.
    ter Beek, M.H., Lafuente, A.L., Petrocchi, M.: Combining declarative and procedural views in the specification and analysis of product families. In: SPLC 2013 Workshops, pp. 10–17. ACM, New York (2013)Google Scholar
  4. 4.
    Bradfield, J., Stirling, C.: Modal mu-Calculi. In: Handbook of Modal Logic, pp. 1–30 (2007)Google Scholar
  5. 5.
    Bravetti, M., Giusto, C.D., Pérez, J.A., Zavattaro, G.: Adaptable Processes. LMCS 8(4) (2012)Google Scholar
  6. 6.
    Clarke, D., Helvensteijn, M., Schaefer, I.: Abstract Delta Modeling. SIGPLAN Notices 46(2), 13–22 (2010)CrossRefGoogle Scholar
  7. 7.
    Classen, A., Heymans, P., Schobbens, P.Y., Legay, A.: Symbolic Model Checking of Software Product Lines. In: ICSE 2011, pp. 321–330 (2011)Google Scholar
  8. 8.
    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 (2010)Google Scholar
  9. 9.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.: All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)zbMATHGoogle Scholar
  10. 10.
    Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley Longman Publishing Co., Inc. (2001)Google Scholar
  11. 11.
    Cordy, M., Classen, A., Heymans, P., Schobbens, P.Y., Legay, A.: Provelines: A product line of verifiers for software product lines. In: SPLC 2013 Workshops, pp. 141–146. ACM, New York (2013)Google Scholar
  12. 12.
    Cordy, M., Classen, A., Schobbens, P.Y., Heymans, P., Legay, A.: Simulation-Based Abstractions for Software Product-Line Model Checking. In: ICSE 2012 (2012)Google Scholar
  13. 13.
    Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approach Based on Superimposed Variants. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 422–437. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  14. 14.
    Damiani, F., Padovani, L., Schaefer, I.: A Formal Foundation for Dynamic Delta-oriented Software Product Lines. In: GPCE 2012 (2012)Google Scholar
  15. 15.
    Erwig, M., Walkingshaw, E.: The Choice Calculus: A Representation for Software Variation. ACM TOSEM (2011)Google Scholar
  16. 16.
    Fischbein, D., Uchitel, S., Braberman, V.A.: A Foundation for Behavioural Conformance in Software Product Line Architectures. In: ISSTA 2006, pp. 39–48 (2006)Google Scholar
  17. 17.
    Gnesi, S., Petrocchi, M.: Towards an executable algebra for product lines. In: SPLC 2014, SPLC 2012, pp. 66–73. ACM, New York (2012)Google Scholar
  18. 18.
    Gruler, A., Leucker, M., Scheidemann, K.: Modeling and Model Checking Software Product Lines. In: Barthe, G., de Boer, F.S. (eds.) FMOODS 2008. LNCS, vol. 5051, pp. 113–131. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  19. 19.
    Larsen, K.G., Nyman, U., Wąsowski, A.: Modal I/O Automata for Interface and Product Line Theories. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 64–79. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  20. 20.
    Lauenroth, K., Pohl, K., Toehning, S.: Model Checking of Domain Artifacts in Product Line Engineering. In: ASE 2009, pp. 269–280 (2009)Google Scholar
  21. 21.
    Leucker, M., Thoma, D.: A Formal Approach to Software Product Families. In: Margaria, T., Steffen, B. (eds.) ISoLA 2012, Part I. LNCS, vol. 7609, pp. 131–145. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  22. 22.
    Li, H.C., Krishnamurthi, S., Fisler, K.: Interfaces for Modular Feature Verification. In: ASE 2002, pp. 195–204 (2002)Google Scholar
  23. 23.
    Lochau, M., Schaefer, I., Kamischke, J., Lity, S.: Incremental Model-based Testing of Delta-oriented Software Product Lines. In: TAP 2012 (2012)Google Scholar
  24. 24.
    Milner, R.: A Calculus of Communicating Systems. Springer, New York (1982)Google Scholar
  25. 25.
    Stirling, C.: An introduction to modal and temporal logics for CCS. Concurrency: Theory, Language, and Architecture (1991)Google Scholar
  26. 26.
    Verdejo, A., Martí-Oliet, N.: Implementing CCS in Maude 2. ENTCS 71, 282–300 (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Malte Lochau
    • 1
  • Stephan Mennicke
    • 2
  • Hauke Baller
    • 2
  • Lars Ribbeck
    • 2
  1. 1.TU DarmstadtGermany
  2. 2.TU BraunschweigGermany

Personalised recommendations