Abstract
Feature Models (FMs) are a key artifact for variability and commonality management in Software Product Lines (SPLs). In this context, the merging of FMs is being recognized as an important operation to support the adoption and evolution of SPLs. However, providing automated support for merging FMs still remains an open challenge. In this paper, we propose using graph transformations as a suitable technology and associated formalism to automate the merging of FMs. In particular, we first present a catalogue of technology-independent visual rules to describe how to merge FMs. Next, we propose a prototype implementation of our catalogue using the AGG system. Finally, we show the feasibility of our proposal by means of a running example inspired by the mobile phone industry. To the best of our knowledge, this is the first approach providing automated support for merging FMs including feature attributes and cross-tree constraints.
This work has been partially supported by the European Commission (FEDER) and Spanish Government under CICYT project Web-Factories (TIN2006-00472) and the Andalusian Government project ISABEL (TIC-2533).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Alves, V., Gheyi, R., Massoni, T., Kulesza, U., Borba, P., Lucena, C.: Refactoring product lines. In: GPCE 2006: Proceedings of the 5th international conference on Generative programming and component engineering, pp. 201–210. ACM Press, New York (2006)
Apel, S., Lengauer, C., Batory, D., Möller, B., Kästner, C.: An algebra for feature-oriented software development. Technical Report MIP-0706, Department of Informatics and Mathematics, University of Passau, Germany (July 2007)
Baresi, L., Heckel, R.: Tutorial introduction to graph transformation: A software engineering perspective. In: ICGT 2002: Proceedings of the First International Conference on Graph Transformation, London, UK, pp. 402–429. Springer, Heidelberg (2002)
Batory, D.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, pp. 7–20. Springer, Heidelberg (2005)
Batory, D., Benavides, D., Ruiz-Cortés, A.: Automated analysis of feature models: Challenges ahead. Communications of the ACM (December 2006)
Benavides, D., Ruiz-Cortés, A., Trinidad, P.: Automated reasoning on feature models. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 491–503. Springer, Heidelberg (2005)
Benavides, D., Ruiz-Cortés, A., Trinidad, P., Segura, S.: A survey on the automated analyses of feture models. In: Jornadas de Ingeniería del Software y Bases de Datos (JISBD) (2006)
Benavides, D., Segura, S., Trinidad, P., Ruiz-Cortés, A.: FAMA: Tooling a framework for the automated analysis of feature models. In: Proceeding of the First International Workshop on Variability Modelling of Software-intensive Systems (VAMOS), pp. 129–134 (2007)
Benavides, D., Trujillo, S., Trinidad, P.: On the modularization of feature models. In: First European Workshop on Model Transformation (September 2005)
Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. SEI Series in Software Engineering. Addison-Wesley, Reading (2001)
Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–645 (2006)
Czarnecki, K., Wasowski, A.: Feature diagrams and logics: There and back again. In: 11th International Software Product Line Conference (SPLC 2007), pp. 23–34. IEEE Computer Society, Los Alamitos (2007)
Ehrig, K., Guerra, E., de Lara, J., Lengyel, L., Levendovszky, T., Prange, U., Taentzer, G., Varró, D., Varró-Gyapay, S.: Model transformation by graph transformation: A comparative study. In: MTiP 2005, International Workshop on Model Transformations in Practice (Satellite Event of MoDELS 2005) (2005)
Gheyi, R., Massoni, T., Borba, P.: A theory for feature models in alloy. In: First Alloy Workshop, pp. 71–80, Portland, United States (November 2006)
Heckel, R., Malte Küster, J., Taentzer, G.: Confluence of typed attributed graph transformation systems. In: ICGT 2002: Proceedings of the First International Conference on Graph Transformation, London, UK, pp. 161–176. Springer, Heidelberg (2002)
Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature–Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University (November 1990)
Krueger, C.W.: Easing the transition to software mass customization. In: PFE 2001: Revised Papers from the 4th International Workshop on Software Product-Family Engineering, London, UK, pp. 282–293. Springer, Heidelberg (2002)
Liu, J., Batory, D., Lengauer, C.: Feature oriented refactoring of legacy applications. In: ICSE 2006: Proceeding of the 28th international conference on Software engineering, pp. 112–121. ACM Press, New York (2006)
Mens, T.: Conditional graph rewriting as a domain-independent formalism for software evolution. In: AGTIVE 1999: Proceedings of the International Workshop on Applications of Graph Transformations with Industrial Relevance, London, UK, pp. 127–143. Springer, Heidelberg (2000)
Mens, T.: On the use of graph transformations for model refactoring. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol. 4143, pp. 219–257. Springer, Heidelberg (2006)
Mens, T., Gorp, P.V., Varró, D., Karsai, G.: Applying a model transformation taxonomy to graph transformation technology. Electronic Notes in Theoretical Computer Science (ENTCS) 152, 143–159 (2006)
Mens, T., Taentzer, G., Runge, O.: Analysing refactoring dependencies using graph transformation. Software and Systems Modeling 6(3), 269–285 (2007)
Mens, T., Tourwé, T.: A survey of software refactoring. IEEE Trans. Softw. Eng. 30(2), 126–139 (2004)
Peña, J., Hinchey, M., Ruiz-Cortés, A., Trinidad, P.: Building the core architecture of a multiagent system product line: With an example from a future nasa mission. In: 7th International Workshop on Agent Oriented Software Engineering. LNCS (2006)
Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformations. Foundations, vol. 1. World Scientific, Singapore (1997)
Schobbens, P., Heymans, P., Trigaux, J., Bontemps, Y.: Feature Diagrams: A Survey and A Formal Semantics. In: Proceedings of the 14th IEEE International Requirements Engineering Conference (RE 2006), Minneapolis, Minnesota, USA (September 2006)
Segura, S., Benavides, D., Ruiz-Cortés, A., Trinidad, P.: Toward automated refactoring of feature models using graph transformations. In: Pimentel, E. (ed.) VII Jornadas sobre Programación y Lenguajes, PROLE 2007, Zaragoza, Spain, pp. 275–284 (September 2007)
Shvaiko, P., Euzenat, J.: A survey of schema-based matching approaches. Journal on Data Semantics IV, 146–171 (2005)
Taentzer, G.: Agg: A graph transformation environment for modeling and validation of software. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062. Springer, Heidelberg (2004)
Trujillo, S., Batory, D., Diaz, O.: Feature refactoring a multi-representation program into a product line. In: GPCE 2006: Proceedings of the 5th international conference on Generative programming and component engineering, pp. 191–200. ACM Press, New York (2006)
Westfechtel, B.: Structure-oriented merging of revisions of software documents. In: Proceedings of the 3rd international workshop on Software configuration management, pp. 68–79. ACM, New York (1991)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Segura, S., Benavides, D., Ruiz-Cortés, A., Trinidad, P. (2008). Automated Merging of Feature Models Using Graph Transformations . In: Lämmel, R., Visser, J., Saraiva, J. (eds) Generative and Transformational Techniques in Software Engineering II. GTTSE 2007. Lecture Notes in Computer Science, vol 5235. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-88643-3_15
Download citation
DOI: https://doi.org/10.1007/978-3-540-88643-3_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-88642-6
Online ISBN: 978-3-540-88643-3
eBook Packages: Computer ScienceComputer Science (R0)