Skip to main content
Top
Published in: Empirical Software Engineering 7/2022

01-12-2022

Intensifying the search-based optimization of product line architectures with crossover operators

Authors: Diego Fernandes da Silva, Luiz Fernando Okada, Wesley K. G. Assunção, Thelma Elita Colanzi

Published in: Empirical Software Engineering | Issue 7/2022

Log in

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

search-config
loading …

Abstract

The Product Line Architecture (PLA) is a crucial artifact for the development of Software Product Lines. However, PLA is a complex artifact to be designed due to its large size and the multiple conflicting properties that need to be considered to ensure its quality, requiring a great effort for the architect. PLA designing has been formulated as an optimization problem aiming at improving some architectural properties in order to maximize both the feature modularization and the relational cohesion, and to minimize the class coupling. This kind of problem was successfully solved by multi-objective evolutionary algorithm. Nevertheless, most of existing approaches optimize PLA designs without applying the crossover operator, one of the fundamental genetic operators. To overcome these limitations, this paper aims to intensify the search-based PLA design optimization by presenting three crossover operators. These operators were empirically evaluated in quantitative and qualitative studies using three well-studied PLA designs. The experiments were conducted with eight experimental configurations of NSGA-II in comparison with a baseline that uses only mutation operators. Empirical results showed that there are significant differences among the use of only mutation and mutation with crossover. Also, we observed that the crossover operators contributed to generate solutions with better feature modularization. Finally, we could see that the proposed operators complement each other, since the experiment that combines at least two of the proposed operators achieved better results.

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

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!

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+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!

Footnotes
1
The supplementary material is available at: https://​doi.​org/​10.​5281/​zenodo.​6516279
 
2
Example of search string with synonyms and complementary keywords: (“Software Design” OR “Software Architecture”) AND (“Evolutionary Algorithm” OR “Genetic Algorithm”) AND (“Crossover” OR “Crossover Operator” OR “Recombination”)
 
3
Digital libraries commonly used for Software Engineering literature: IEEE Xplore, ACM Digital Library, Scopus, Springer Link, Engineering Village, and ScienceDirect.
 
4
Google Scholar indexes scholarly literature: https://​scholar.​google.​com/​
 
5
The value of H is inverted in COE, as we are interested in maximizing the cohesion and MOA4PLA minimizes all the objective functions.
 
7
The file of each PLA used to conduct the study is available at https://​github.​com/​otimizes/​OPLA-Tool/​tree/​master/​plas
 
8
Results of the experimental calibration are available at https://​doi.​org/​10.​5281/​zenodo.​6516279
 
10
The designs used in the qualitative analysis are available at https://​doi.​org/​10.​5281/​zenodo.​6516279.
 
Literature
go back to reference Bass L, Clements P, Kazman R (2003) Software architecture in practice. Addison-Wesley Professional Bass L, Clements P, Kazman R (2003) Software architecture in practice. Addison-Wesley Professional
go back to reference Choma Neto J, Gaieski T, Amaral AM, Colanzi TE (2018) Quanti-qualitative analysis of a memetic algorithm to optimize product line architecture design. In: 2018 IEEE 30th international conference on tools with artificial intelligence (ICTAI). https://doi.org/10.1109/ICTAI.2018.00083, pp 498–505 Choma Neto J, Gaieski T, Amaral AM, Colanzi TE (2018) Quanti-qualitative analysis of a memetic algorithm to optimize product line architecture design. In: 2018 IEEE 30th international conference on tools with artificial intelligence (ICTAI). https://​doi.​org/​10.​1109/​ICTAI.​2018.​00083, pp 498–505
go back to reference Contieri AC Jr, Correia GG, Colanzi TE, Gimenes IM, Oliveira EA Jr, Ferrari S, Masiero PC, Garcia A (2011) Extending uml components to develop software product-line architectures: lessons learned. In: Proceeding of the 5th European conference on software architecture (ECSA). https://doi.org/10.1007/978-3-642-23798-0_13, pp 130–138 Contieri AC Jr, Correia GG, Colanzi TE, Gimenes IM, Oliveira EA Jr, Ferrari S, Masiero PC, Garcia A (2011) Extending uml components to develop software product-line architectures: lessons learned. In: Proceeding of the 5th European conference on software architecture (ECSA). https://​doi.​org/​10.​1007/​978-3-642-23798-0_​13, pp 130–138
go back to reference Donegan P M, Masiero P C (2007) Design issues in a component-based software product line. In: SBCARS, pp 3–16 Donegan P M, Masiero P C (2007) Design issues in a component-based software product line. In: SBCARS, pp 3–16
go back to reference Féderle E ́L, do Nascimento Ferreira T, Colanzi T E, Vergilio S R (2015) Opla-tool: a support tool for search-based product line architecture design. In: Proceedings of the 19th international software product line conference. https://doi.org/10.1145/2791060.2791096, pp 370–373 Féderle E ́L, do Nascimento Ferreira T, Colanzi T E, Vergilio S R (2015) Opla-tool: a support tool for search-based product line architecture design. In: Proceedings of the 19th international software product line conference. https://​doi.​org/​10.​1145/​2791060.​2791096, pp 370–373
go back to reference Freire W M, Massago M, Zavadski A C, Malachini A M, Amaral M, Colanzi TE (2020) OPLA-tool v2.0: a tool for product line architecture design optimization. In: Proceedings of the 34th Brazilian symposium on software engineering, SBES ’20. https://doi.org/10.1145/3422392.3422498. Association for Computing Machinery, New York, pp 818–823 Freire W M, Massago M, Zavadski A C, Malachini A M, Amaral M, Colanzi TE (2020) OPLA-tool v2.0: a tool for product line architecture design optimization. In: Proceedings of the 34th Brazilian symposium on software engineering, SBES ’20. https://​doi.​org/​10.​1145/​3422392.​3422498. Association for Computing Machinery, New York, pp 818–823
go back to reference Goldberg D E (1989) Genetic algorithms in search, optimization and machine learning, 1st edn. Addison-Wesley, Longman Publishing Co., Inc. Goldberg D E (1989) Genetic algorithms in search, optimization and machine learning, 1st edn. Addison-Wesley, Longman Publishing Co., Inc.
go back to reference Harman M, Hierons R (2002) A new representation and crossover operator for search-based optimization of software modularization. In: Proceedings of the annual conference on genetic and evolutionary computation (GECCO’2002), pp 1351–1358 Harman M, Hierons R (2002) A new representation and crossover operator for search-based optimization of software modularization. In: Proceedings of the annual conference on genetic and evolutionary computation (GECCO’2002), pp 1351–1358
go back to reference Juristo N, Moreno A M (2013) Basics of software engineering experimentation. Springer Science & Business Media Juristo N, Moreno A M (2013) Basics of software engineering experimentation. Springer Science & Business Media
go back to reference Kitchenham B, Charters S (2007) Guidelines for performing systematic literature reviews in software engineering. In: Proceedings of the 2nd international workshop on evidential assessment of software technologies (EAST’12) Kitchenham B, Charters S (2007) Guidelines for performing systematic literature reviews in software engineering. In: Proceedings of the 2nd international workshop on evidential assessment of software technologies (EAST’12)
go back to reference Kruskal W H, Wallis W A (1952) Use of ranks in one-criterion variance analysis. J Am Stat Assoc 47(260):583–621CrossRefMATH Kruskal W H, Wallis W A (1952) Use of ranks in one-criterion variance analysis. J Am Stat Assoc 47(260):583–621CrossRefMATH
go back to reference Nunes C, Kulesza U, Sant’Anna C, Nunes I, Garcia A, Lucena C (2009) Assessment of the design modularity and stability of multi-agent system product lines. J Univ Comput Sci 15(11):2254–2283 Nunes C, Kulesza U, Sant’Anna C, Nunes I, Garcia A, Lucena C (2009) Assessment of the design modularity and stability of multi-agent system product lines. J Univ Comput Sci 15(11):2254–2283
go back to reference Räihä O, Koskimies K, Mäkinen E (2009) Empirical study on the effect of crossover in genetic software architecture synthesis. In: Proceedings of world congress on nature and biologically inspired computing, pp 619–625 Räihä O, Koskimies K, Mäkinen E (2009) Empirical study on the effect of crossover in genetic software architecture synthesis. In: Proceedings of world congress on nature and biologically inspired computing, pp 619–625
go back to reference Vargha A, Delaney H D (2000) A critique and improvement of the cl common language effect size statistics of McGraw and Wong. J Educ Behav Stat 25(2):101–132 Vargha A, Delaney H D (2000) A critique and improvement of the cl common language effect size statistics of McGraw and Wong. J Educ Behav Stat 25(2):101–132
go back to reference Verdecia Y D, Colanzi T E, Vergilio S R, Santos M C B (2017) An enhanced evaluation model for search-based product line architecture design. In: Proceedings of the XX Ibero-American conference on software engineering (CIbSE - ICSE 2017), pp 155–168 Verdecia Y D, Colanzi T E, Vergilio S R, Santos M C B (2017) An enhanced evaluation model for search-based product line architecture design. In: Proceedings of the XX Ibero-American conference on software engineering (CIbSE - ICSE 2017), pp 155–168
go back to reference Young T J (2005) Using aspectj to build a software product line for mobile devices. Master’s thesis, University of British Columbia Young T J (2005) Using aspectj to build a software product line for mobile devices. Master’s thesis, University of British Columbia
go back to reference Zeleny M, Cochrane J L (1973) Multiple criteria decision making. University of South Carolina Press Zeleny M, Cochrane J L (1973) Multiple criteria decision making. University of South Carolina Press
go back to reference Zitzler E, Thiele L (1998) Multiobjective optimization using evolutionary algorithms—a comparative case study. In: Eiben A E, Bäck T, Schoenauer M, Schwefel H P (eds) Parallel problem solving from nature—PPSN v. Springer, Berlin, pp 292–301 Zitzler E, Thiele L (1998) Multiobjective optimization using evolutionary algorithms—a comparative case study. In: Eiben A E, Bäck T, Schoenauer M, Schwefel H P (eds) Parallel problem solving from nature—PPSN v. Springer, Berlin, pp 292–301
go back to reference Zitzler E, Laumanns M, Thiele L (2002) SPEA2: improving the strength pareto evolutionary algorithm. In: Evolutionary methods for design, optimization and control with applications to industrial problems (EUROGEN), pp 95–100 Zitzler E, Laumanns M, Thiele L (2002) SPEA2: improving the strength pareto evolutionary algorithm. In: Evolutionary methods for design, optimization and control with applications to industrial problems (EUROGEN), pp 95–100
go back to reference Zitzler E, Thiele L, Laumanns M, Fonseca C M, Da Fonseca V G (2003) Performance assessment of multiobjective optimizers: an analysis and review. IEEE Trans Evol Comput 7(2):117–132CrossRef Zitzler E, Thiele L, Laumanns M, Fonseca C M, Da Fonseca V G (2003) Performance assessment of multiobjective optimizers: an analysis and review. IEEE Trans Evol Comput 7(2):117–132CrossRef
Metadata
Title
Intensifying the search-based optimization of product line architectures with crossover operators
Authors
Diego Fernandes da Silva
Luiz Fernando Okada
Wesley K. G. Assunção
Thelma Elita Colanzi
Publication date
01-12-2022
Publisher
Springer US
Published in
Empirical Software Engineering / Issue 7/2022
Print ISSN: 1382-3256
Electronic ISSN: 1573-7616
DOI
https://doi.org/10.1007/s10664-022-10198-3

Other articles of this Issue 7/2022

Empirical Software Engineering 7/2022 Go to the issue

Premium Partner