Skip to main content
Top

2019 | OriginalPaper | Chapter

An Incremental Approach for the Extraction of Software Product Lines from Model Variants

Authors : Mohammed Boubakir, Allaoua Chaoui

Published in: Advances in Computing Systems and Applications

Publisher: Springer International Publishing

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

In practice, a large amount of Software Product Lines (SPLs) are developed using a bottom-up process. In this case, an SPL is synthesized from similar product variants that are developed for SPL using ad hoc reuse techniques such as copy-paste-modify. In this paper, we present an approach for migrating existing product variants into an SPL. This approach is applied on models and it takes as input a set of models that abstract the product variants. The result of the approach is a software product line represented by the SPL model and the variability model. SPL model is the result of merging input product models. The variability model is a Feature Model (FM) allowing the specification of the variability on the SPL model. We propose to construct the SPL in an incremental way. After an initialization step, the set of input products are integrated in the SPL one after another. To integrate a new product, we first compare the input product model with the SPL model in order to identify the variability, and then we update both the SPL model and the variability model. The approach is implemented and evaluated on a case study.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Footnotes
1
In our work, we consider features and product models as sets of elements, so all usual operations on sets (such as union, intersection, and difference, etc.) are also applicable on them.
 
2
Meta-Object Facility (MOF) Core Specification, http://​www.​omg.​org/​spec/​MOF/​2.​0/​.
 
Literature
1.
go back to reference Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Boston (2000) Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Boston (2000)
2.
go back to reference Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, New York (2005)CrossRef Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, New York (2005)CrossRef
3.
go back to reference Acher, M., Cleve, A., Collet, P., Merle, P., Duchien, L., Lahire, P.: Extraction and evolution of architectural variability models in plugin-based systems. In: SoSyM, pp. 1–28 (2013) Acher, M., Cleve, A., Collet, P., Merle, P., Duchien, L., Lahire, P.: Extraction and evolution of architectural variability models in plugin-based systems. In: SoSyM, pp. 1–28 (2013)
4.
go back to reference Kang, K., Cohen, S., Hess, J., Nowak, W., Peterson, S.: Feature oriented domain analysis (FODA) feasibility study, Technical report. CMU/SEI-90-TR-021 (1990) Kang, K., Cohen, S., Hess, J., Nowak, W., Peterson, S.: Feature oriented domain analysis (FODA) feasibility study, Technical report. CMU/SEI-90-TR-021 (1990)
5.
go back to reference She, S., Lotufo, R., Berger, T., Wasowski, A., Czarnecki, K.: Reverse engineering feature models. In: Proceedings of ICSE 2011, pp. 461–470. ACM (2011) She, S., Lotufo, R., Berger, T., Wasowski, A., Czarnecki, K.: Reverse engineering feature models. In: Proceedings of ICSE 2011, pp. 461–470. ACM (2011)
6.
go back to reference Rubin, J., Chechik, M.: Combining related products into product lines. In: Proceedings of FASE 2012, pp. 285–300. ACM (2012) Rubin, J., Chechik, M.: Combining related products into product lines. In: Proceedings of FASE 2012, pp. 285–300. ACM (2012)
7.
go back to reference Acher, M., Baudry, B., Heymans, P., Cleve, A., Hainaut, J.L.: Support for reverse engineering and maintaining feature models. In: Proceedings of VaMoS 2013. ACM (2013) Acher, M., Baudry, B., Heymans, P., Cleve, A., Hainaut, J.L.: Support for reverse engineering and maintaining feature models. In: Proceedings of VaMoS 2013. ACM (2013)
8.
go back to reference Batory, D.: Feature models, grammars, and propositional formulas. In: Proceedings of SPLC 2005, pp. 7–20 (2005) Batory, D.: Feature models, grammars, and propositional formulas. In: Proceedings of SPLC 2005, pp. 7–20 (2005)
9.
go back to reference Koschke, R., Frenzel, P., Breu, A.P.J., Angstmann, K.: Extending the reflexion method for consolidating software variants into product lines. Softw. Qual. J. 17(4), 331–366 (2009)CrossRef Koschke, R., Frenzel, P., Breu, A.P.J., Angstmann, K.: Extending the reflexion method for consolidating software variants into product lines. Softw. Qual. J. 17(4), 331–366 (2009)CrossRef
10.
go back to reference Klatt, B., Küster, M.: Respecting component architecture to migrate product copies to a software product line. In: Proceedings of WCOP 2012, pp. 7–12. ACM (2012) Klatt, B., Küster, M.: Respecting component architecture to migrate product copies to a software product line. In: Proceedings of WCOP 2012, pp. 7–12. ACM (2012)
11.
go back to reference Xue, Y., Xing, Z., Jarzabek, S.: Feature location in a collection of product variants. In: Proceedings of WCRE, pp. 145–154 (2012) Xue, Y., Xing, Z., Jarzabek, S.: Feature location in a collection of product variants. In: Proceedings of WCRE, pp. 145–154 (2012)
12.
go back to reference Assunção, W.K.G., Vergilio, S.R.: Feature location for software product line migration: a mapping study. In: Proceedings of SPLC 2014, pp. 52–59. ACM (2014) Assunção, W.K.G., Vergilio, S.R.: Feature location for software product line migration: a mapping study. In: Proceedings of SPLC 2014, pp. 52–59. ACM (2014)
13.
go back to reference Davril, J.-M., Delfosse, E., Hariri, N., Acher, M., Cleland-Huang, J., Heymans, P.: Feature model extraction from large collections of informal product descriptions. In: Proceedings of ESEC/FSE, pp. 290–300. ACM, Saint Petersburg, Russia (2013) Davril, J.-M., Delfosse, E., Hariri, N., Acher, M., Cleland-Huang, J., Heymans, P.: Feature model extraction from large collections of informal product descriptions. In: Proceedings of ESEC/FSE, pp. 290–300. ACM, Saint Petersburg, Russia (2013)
14.
go back to reference Zhang, B., Becker, M.: Recovar: a solution framework towards reverse engineering variability. In: PLEASE, pp. 45–48 (2013) Zhang, B., Becker, M.: Recovar: a solution framework towards reverse engineering variability. In: PLEASE, pp. 45–48 (2013)
16.
go back to reference Ziadi, T., Frias, L., da Silva, M.A.A., Ziane, M.: Feature identification from the source code of product variant. In: Proceedings of CSMR, pp. 417–422 (2012) Ziadi, T., Frias, L., da Silva, M.A.A., Ziane, M.: Feature identification from the source code of product variant. In: Proceedings of CSMR, pp. 417–422 (2012)
17.
go back to reference Ziadi, T., Henard, C., Papadakis, M., Ziane, M., Traon, Y.L.: Towards a language-independent approach for reverse-engineering of software product lines. In: Proceedings of SAC 2014, pp. 1064–1071. ACM (2014) Ziadi, T., Henard, C., Papadakis, M., Ziane, M., Traon, Y.L.: Towards a language-independent approach for reverse-engineering of software product lines. In: Proceedings of SAC 2014, pp. 1064–1071. ACM (2014)
18.
go back to reference Ryssel, U., Ploennigs, J., Kabitzsch, K.: Automatic variation point identification in function-block-based models. In: Proceedings of GPCE 2010, pp. 23–32. ACM (2010) Ryssel, U., Ploennigs, J., Kabitzsch, K.: Automatic variation point identification in function-block-based models. In: Proceedings of GPCE 2010, pp. 23–32. ACM (2010)
19.
go back to reference Martinez, J. Ziadiy, T., Bissyandé, T.F., Klein, J., Traon, Y.L.: Automating the extraction of model-based software product lines from model variants. In: ASE (2015) Martinez, J. Ziadiy, T., Bissyandé, T.F., Klein, J., Traon, Y.L.: Automating the extraction of model-based software product lines from model variants. In: ASE (2015)
20.
go back to reference Ryssel, U., Ploennigs, J., Kabitzsch, K.: Extraction of feature models from formal contexts. In: Proceedings of SPLC 2011, vol. 2. ACM, Munich, Germany (2011) Ryssel, U., Ploennigs, J., Kabitzsch, K.: Extraction of feature models from formal contexts. In: Proceedings of SPLC 2011, vol. 2. ACM, Munich, Germany (2011)
21.
go back to reference Fenske, W., Meinicke, J., Schulze, S.: Variant-preserving refactorings for migrating cloned products to a product line. In: SANER (2017) Fenske, W., Meinicke, J., Schulze, S.: Variant-preserving refactorings for migrating cloned products to a product line. In: SANER (2017)
22.
go back to reference Kim, J., Batory, D., Dig, D.: Refactoring java software product lines. In: Proceedings of SPLC, vol. A, pp. 59–68. ACM (2017) Kim, J., Batory, D., Dig, D.: Refactoring java software product lines. In: Proceedings of SPLC, vol. A, pp. 59–68. ACM (2017)
23.
go back to reference Boubakir, M., Chaoui, A.: A pairwise approach for model merging. In: MISC 2016, pp. 327–340. Springer, Constantine, Algeria (2016) Boubakir, M., Chaoui, A.: A pairwise approach for model merging. In: MISC 2016, pp. 327–340. Springer, Constantine, Algeria (2016)
24.
go back to reference Martinez, J., Ziadi, T., Klein, J., Traon, Y.: Identifying and visualizing commonality and variability in model variants. In: Proceedings of ECMFA, vol. 8569, pp. 117–131. ACM (2014) Martinez, J., Ziadi, T., Klein, J., Traon, Y.: Identifying and visualizing commonality and variability in model variants. In: Proceedings of ECMFA, vol. 8569, pp. 117–131. ACM (2014)
Metadata
Title
An Incremental Approach for the Extraction of Software Product Lines from Model Variants
Authors
Mohammed Boubakir
Allaoua Chaoui
Copyright Year
2019
DOI
https://doi.org/10.1007/978-3-319-98352-3_14

Premium Partner