International Journal of Information Technology and Computer Science(IJITCS)

ISSN: 2074-9007 (Print), ISSN: 2074-9015 (Online)

Published By: MECS Press

IJITCS Vol.9, No.10, Oct. 2017

Software Product Lines Composition through Partial Derivation

Full Text (PDF, 641KB), PP.47-58

Views:119   Downloads:11


Amina Guendouz, Djamal Bennouar

Index Terms

Reuse;Multi Product Lines;Software Product Lines;Partial Derivation; Composition


Software product line approach has been successfully adopted in various software domains. In some fields, single SPLs are no longer sufficient to fulfill their requirements due to the large variability amount they include. Consequently, a set of separated SPLs is built to handle this issue and construct what is known by Multi Product Lines (MPL). However, the emergence of MPLs results in several challenges, namely: managing the reuse between SPLs, structuring the MPL model and distributed derivation. In this paper, we propose a new approach for SPLs composition. Our approach relies on two main concepts: the separation of concerns and the partial derivation. It is validated in the context of an e-Learning MPL and an illustration is explained throughout the paper. The results show that our approach helps systemizing reuse within MPLs and structuring the MPL model. Moreover, SPLs are integrated early in the development process avoiding thus the distributed derivation challenges.

Cite This Paper

Amina Guendouz, Djamal Bennouar, "Software Product Lines Composition through Partial Derivation", International Journal of Information Technology and Computer Science(IJITCS), Vol.9, No.10, pp.47-58, 2017. DOI: 10.5815/ijitcs.2017.10.05


[1]L.M. Northrop and C.C. Clements, “A Framework for Software Product Line Practice,” SEI, Version 5.0,, 30-05-2017

[2]P. Klaus, G. Böckle, and F. van der Linden, Software Product Line Engineering: Foundations, Principles, and Techniques, Springer, 2005.

[3]F. Van der Linden, K. Schmid, and E. Rommes, Software Product Lines in Action, The Best Industrial Practice in Product Line Engineering, Springer, 2007.

[4]H. Gerald, P. Grünbacher, and R. Rabiser, “A systematic review and an expert survey on capabilities supporting multi product lines,” Information and Software Technology, vol. 54, no. 8, 2012, pp. 828-852. DOI:10.1016/j.infsof.2012.02.002.

[5]J. Savolainen, M. Mannion, and J. Kuusela, “Developing platforms for multiple software product lines,” Proc. Software Product Line Conf. (CBPL 12), 2012, pp. 220-228. 

[6]J. Bosch, “The challenges of broadening the scope of software product families,” Communications of the ACM, vol. 49, no. 12, 2006, pp. 41-44.

[7]A. Guendouz, and D. Bennouar, “Component-Based Specification of Software Product Line Architecture,” Proc. Int. Conference on Advanced Aspects of Software Engineering (ICAASE 14), 2014, pp. 100-107 

[8]S. Kaliraj, N. Premkumar, A. Bharathi, "The Novel Life Cycle Model for Component Based Software System Based on Architecture Quality Using KCW Framework", International Journal of Information Technology and Computer Science(IJITCS), vol.6, no.9, pp.74-79, 2014. DOI: 10.5815/ijitcs.2014.09.10.

[9]M. Rizwan Jameel Qureshi, Ahmed Barnawi, "Evaluation of the Extended CBD Model: A Case Study using IMS Application", International Journal of Information Technology and Computer Science (IJITCS), vol.5, no.7, pp.36-42, 2013. DOI: 10.5815/ijitcs.2013.07.04.

[10]A. Colin, B. Joachim, and M. Dirk, “Component-Based Product Line Development: The KobrA Approach,” Proc. Software Product Line Conf. (SPLC), 2000. 

[11]O. Rob van, “The Koala component model for consumer electronics software,” Philips Research Eindhoven, IEEE Computer, vol. 33, no. 3, 2000. 

[12]A. Timo, S. Timo, and M. Tomi, “A Koala-Based Approach for Modelling and Deploying Configurable Software Product Families,” PFE-5, 2004. 

[13]D. Bennouar, “The Integrated Approach to Software Architecture,” ” PhD dissertation, high school of Computer Science, Oued Smar, Algiers, 2009. 

[14]D. Bennouar, and A. Saadi, “The Design of an eGovernment Application Using an Aspect Oriented Software Architecture Approach,” AOSA conf., 2009.

[15]D. Bennouar, A. Henni, and A. Saadi, “The Design of A Complex Software System Using A Software Architecture Approach,” The International Arab Conference on Information Technology (ACIT 08), 2008.

[16]D. Bennouar, T. Khammaci, and A. Henni, “A new approach for component’s port modeling in software architecture,” Journal of System and Software Elsevier, vol. 83, no. 8, 2010.  DOI:10.1016/j.jss.2010.03.005.

[17]M. Rosenmüller, N. Siegmund, C. Kästner, and S. ur R. Syed, Modeling dependent software product lines, Pro. of the GPCE Workshop on Modularization, Composition and Generative Techniques for Product Line Engineering (McGPLE), 2008, pp. 13-18.

[18]M. Rosenmüller, and N. Siegmund, “Automating the Configuration of Multi Software Product Lines,” VaMoS 10, 2010, pp. 123-130.

[19]R. Schröter, “Using Multi-Level Interfaces to Improve Analyses of Multi Product Lines,” Technical report, Otto-von-Guericke University Magdeburg, Germany, 2014. 

[20]R. Schröter, N. Siegmund, and T. Thüm, “Towards modular analysis of multi product lines,” Pro. of the 17th Int. Software Product Line Conference co-located workshops, ACM, 2013, pp. 96-99. 

[21]H. Hartmann, and T. Trew, “Using feature diagrams with context variability to model multiple product lines for software supply chains,” Pro. Software Product Line Conference, IEEE, 2008, pp. 12-21.

[22]R. Rabiser, P. Grünbacher, and G. Holl, “Improving awareness during product derivation in multi-user multi product line environments,” Proc. of the 1st Int. Workshop on Automated Configuration and Tailoring of Applications (ACoTA 10), in Conjunction with 25th IEEE/ACM International Conference on Automated Software Engineering (ASE’10), CEUR-WS, 2010, pp. 1–5.  

[23]D. Dhungana, P. Grünbacher, R. Rabiser, and T. Neumayer, “Structuring the modeling space and supporting evolution in software product line engineering,” Journal of Systems and Software, vol. 83, no. 7, 2010, pp. 1108–1122. 

[24]K. Czarnecki, S. Helsen and U. Eisenecker, “Staged configuration using feature models,” Proc. of Software Product Lines Conference (SPLC’04), Springer Berlin Heidelberg, 2004 pp. 266-283.

[25]K. Czarnecki, S. Helsen and U. Eisenecker, “Staged configuration through specialization and multilevel configuration of feature models,” Software Process: Improvement and Practice, vol. 10, no. 2, 2005, pp. 143-169. DOI: 10.1002/spip.225.

[26]B. Morin, G. Vanwormhoudt, P. Lahire, A. Gaignard, O. Barais, and J. M. Jézéquel, “Managing variability complexity in aspect-oriented modeling,” Model Driven Engineering Languages and Systems, Springer Berlin Heidelberg, 2008, pp. 797-812. 

[27]B. Morin, J. Klein, O. Barais, and J. M. Jézéquel, “A generic weaver for supporting product lines,” Pro. of 13th int. workshop on Early Aspects, ACM, 2008, pp. 11-18.  

[28]A. Abele, Y. Papadopoulos, D. Servat, M. Törngren, and M. Weber, “The CVM Framework-A Prototype Tool for Compositional Variability Management,” VaMoS 10, 2010, pp. 101-105.  

[29]M. Alférez, J. Santos, A. Moreira, A. Garcia, U. Kulesza, J. Araújo, and V. Amaral, “Multi-view composition language for software product line requirements,” Software Language Engineering, Springer Berlin Heidelberg, 2010, pp. 103-122. 

[30]D. Dhungana, D. Seichter, G. Botterweck, R. Rabiser, P. Grunbacher, D. Benavides, and J. A. Galindo, “Configuration of multi product lines by bridging heterogeneous variability modeling approaches,” Software Product Line Conference (SPLC) IEEE, 2011, pp. 120-129.