Automatic Generation of SPL Structurally Valid Products Using Graph Transformations Approach

  • Khaled Khalfaoui
  • Allaoua Chaoui
  • Cherif Foudil
  • Elhillali Kerkouche
Part of the Studies in Computational Intelligence book series (SCI, volume 488)


A Software Product Line is a set of software products that share a number of core properties but also differ in others. Differences and commonalities between products are typically described in terms of features. A software product line is usually modeled with a feature diagram, describing the set of features and specifying the constraints and relationships between these features. Each product is defined as a set of features. In this area of research, a key challenge is to ensure correctness and safety of these products. There is an increasing need for automatic tools that can support feature diagram analysis, particularly with a large number of features that modern software systems may have. In this paper, we propose using model transformations an automatic framework to generate all valid products according to the feature diagram. We first introduce the basic idea behind our approach. Then, we present the used graph grammar to perform automatically this task using the AToM3 tool. Finally, we show the feasibility of our proposal by means of running example.


Software Product Lines Feature Diagram Variability Modelling Valid Products Graph Transformations 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Kang, K., Cohen, S., Hess, J., Novak, W. and Peterson, S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report, CMU/SEI- 90-TR-21 (1990) Google Scholar
  2. 2.
    Andries, M., Engels, G., Habel, A., Hoffmann, B., Kreowski, H.J., Kuske, S., Pump, D., Schürr, A., Taentzer, G.: Graph transformation for Specification and Programming. Science of Computer Programming 34, 1–54 (1999)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Rozenberg, G.: Handbook of Graph Grammars and Computing by Graph Transformation, vol. 1. World Scientific, Singapore (1999)Google Scholar
  4. 4.
    Mannion, M.: Using First-Order Logic for Product Line Model Validation. In: Chastek, G.J. (ed.) SPLC 2, pp. 176–187. Springer, London (2002)Google Scholar
  5. 5.
    Sun, J., Zhang, H., Li, Y., Wang, H.: Formal Semantics and Verification for Feature Modeling. In: Proceedings of the ICECS 2005, pp. 303–312 (2005)Google Scholar
  6. 6.
    Wang, H., Li, Y., Sun, J., Zhang, H., Pan, J.: Verifying Feature Models Using OWL. In: Web Semantics: Science Services and Agents on the World Wide Web, vol. 5, pp. 117–129 (2007)Google Scholar
  7. 7.
    Benavides, D., Trinidad, P., Ruiz-Cortés, A.: Automated Reasoning on Feature Models. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 491–503. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Bagheri, E., Noia, T.D., Gasevic, D., Ragone, A.: Formalizing Interactive Staged Feature Model Configuration. Journal of Software 24, 375–400 (2012)Google Scholar
  9. 9.
    Mendonca, M., Wasowski, A., Czarnecki, K., Cowan, D.: Efficient Compilation Techniques for Large Scale Feature Models. In: Proceedings of GPCE 2008, pp. 13–22. ACM Press, USA (2008)Google Scholar
  10. 10.
    Benavides, D., Segura, S., Ruiz-Cortés, A.: Automated Analysis of Feature Models 20 Years Later: A Literature Review. Journal of Information Systems 35, 615–636 (2010)CrossRefGoogle Scholar
  11. 11.
    Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.): ICGT 2012. LNCS, vol. 7562. Springer, Heidelberg (2012)MATHGoogle Scholar
  12. 12.
    Kerkouche, E., Chaoui, A., Bourennane, E.B., Labbani, O.: On the Use of Graph Transformation in the Modeling and Verification of Dynamic Behavior in UML Models. JSW 5, 1279–1291 (2010)CrossRefGoogle Scholar
  13. 13.
    Taibi, F.: Automatic Extraction and Integration of Changes in Shared Software Specifications. IJSEIA 6, 29–45 (2012)Google Scholar
  14. 14.
    Zambon, E., Rensink, A.: using Graph Transformations and Graph Abstractions for Software Verification. ICGT-DS, EC of the EASST 38 (2011)Google Scholar
  15. 15.
    Khalfaoui, K., Chaoui, A., Foudil, C., Kerkouche, E.: Formal Specification of Software Product Lines: A Graph Transformation Based Approach. JSW 7, 2518–2532 (2012)CrossRefGoogle Scholar
  16. 16.
    de Lara, J., Vangheluwe, H.: AToM: A Tool for Multi-formalism and Meta-modelling. In: Kutsche, R.-D., Weber, H. (eds.) FASE 2002. LNCS, vol. 2306, pp. 174–188. Springer, Heidelberg (2002)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2013

Authors and Affiliations

  • Khaled Khalfaoui
    • 1
  • Allaoua Chaoui
    • 2
  • Cherif Foudil
    • 3
  • Elhillali Kerkouche
    • 1
  1. 1.Department of Computer ScienceUniversity of JijelJijelAlgeria
  2. 2.Department of Computer Science and its ApplicationUniversity Constantine 2ConstantineAlgeria
  3. 3.Department of Computer ScienceUniversity of BiskraBiskraAlgeria

Personalised recommendations