Nothing Special   »   [go: up one dir, main page]

Skip to main content

Performance of Genetic Algorithms in the Context of Software Model Refactoring

  • Conference paper
  • First Online:
Computer Performance Engineering and Stochastic Modelling (EPEW 2023, ASMTA 2023)

Abstract

Software systems continuously evolve due to new functionalities, requirements, or maintenance activities. In the context of software evolution, software refactoring has gained a strategic relevance. The space of possible software refactoring is usually very large, as it is given by the combinations of different refactoring actions that can produce software system alternatives. Multi-objective algorithms have shown the ability to discover alternatives by pursuing different objectives simultaneously. Performance of such algorithms in the context of software model refactoring is of paramount importance. Therefore, in this paper, we conduct a performance analysis of three genetic algorithms to compare them in terms of performance and quality of solutions. Our results show that there are significant differences in performance among the algorithms (e.g., \(\texttt{PESA2}\) seems to be the fastest one, while \(\texttt{NSGAII}\) shows the least memory usage).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 74.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    Replication package: https://github.com/danieledipompeo/replication-package__Perf-Comp-GA-4-Multi-Obj-SW-Model-Ref.

  2. 2.

    https://github.com/SEALABQualityGroup/2022-ist-replication-package/tree/main/case-studies/train-ticket.

References

  1. Aleti, A., Björnander, S., Grunske, L., Meedeniya, I.: ArcheOpterix: an extendable tool for architecture optimization of AADL models. In: ICSE 2009 Workshop on Model-Based Methodologies for Pervasive and Embedded Software. MOMPES 2009, May 16, 2009, Vancouver, Canada, pp. 61–71. IEEE Computer Society, Washington, DC, USA (2009)

    Google Scholar 

  2. Aleti, A., Buhnova, B., Grunske, L., Meedeniya, I.: Software architecture optimization methods: a systematic literature review. IEEE Trans. Software Eng. 39(5), 658–683 (2013)

    Article  Google Scholar 

  3. Arcuri, A., Briand, L.C.: A practical guide for using statistical tests to assess randomized algorithms in software engineering. In: Taylor, R.N., Gall, H.C., Medvidovic, N. (eds.) Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, Waikiki, Honolulu, HI, USA, May 21–28, 2011, pp. 1–10, ACM (2011). https://doi.org/10.1145/1985793.1985795

  4. Arcuri, A., Fraser, G.: Parameter tuning or default values? an empirical investigation in search-based software engineering. Empir. Softw. Eng. 18(3), 594–623 (2013). https://doi.org/10.1007/s10664-013-9249-9

    Article  Google Scholar 

  5. Becker, S., Koziolek, H., Reussner, R.H.: The Palladio component model for model-driven performance prediction. J. Syst. Softw.82(1), 3–22 (2009)

    Google Scholar 

  6. Blum, C., Roli, A.: Metaheuristics in combinatorial optimization: overview and conceptual comparison. ACM Comput. Surv. 35(3), 268–308 (2003). https://doi.org/10.1145/937503.937505

    Article  Google Scholar 

  7. Corne, D.W., Jerram, N.R., Knowles, J.D., Oates, M.J.: Pesa-ii: Region-based selection in evolutionary multiobjective optimization. In: GECCO, pp. 283–290 (2001), ISBN 1558607749, https://doi.org/10.5555/2955239.2955289

  8. Cortellessa, V., Di Pompeo, D.: Analyzing the sensitivity of multi-objective software architecture refactoring to configuration characteristics. Inf. Softw. Technol. 135, 106568 (2021). https://doi.org/10.1016/j.infsof.2021.106568

    Article  Google Scholar 

  9. Cortellessa, V., Di Pompeo, D., Eramo, R., Tucci, M.: A model-driven approach for continuous performance engineering in microservice-based systems. J. Syst. Softw. 183, 111084 (2022). https://doi.org/10.1016/j.jss.2021.111084

    Article  Google Scholar 

  10. Cortellessa, V., Di Pompeo, D., Stoico, V., Tucci, M.: On the impact of performance antipatterns in multi-objective software model refactoring optimization. In: 47th SEAA 2021, Palermo, Italy, September 1–3, 2021, pp. 224–233, IEEE (2021). https://doi.org/10.1109/SEAA53835.2021.00036

  11. Cortellessa, V., Di Pompeo, D., Stoico, V., Tucci, M.: Many-objective optimization of non-functional attributes based on refactoring of software models. Inf. Softw. Technol. 157, 107159 (2023). https://doi.org/10.1016/j.infsof.2023.107159

    Article  Google Scholar 

  12. Cortellessa, V., Eramo, R., Tucci, M.: Availability-driven architectural change propagation through bidirectional model transformations between UML and petri net models. In: IEEE International Conference on Software Architecture, ICSA 2018, Seattle, WA, USA, April 30 - May 4, 2018, pp. 125–134, IEEE Computer Society (2018). https://doi.org/10.1109/ICSA.2018.00022

  13. Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002)

    Google Scholar 

  14. Di Pompeo, D., Tucci, M.: Search budget in multi-objective refactoring optimization: a model-based empirical study. In: 48th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2022, pp. 406–413, IEEE (2022). https://doi.org/10.1109/SEAA56994.2022.00070,to appear

  15. Di Pompeo, D., Tucci, M., Celi, A., Eramo, R.: A microservice reference case study for design-runtime interaction in MDE. In: STAF 2019 Co-Located Events Joint Proceedings: 1st Junior Researcher Community Event, 2nd International Workshop on Model-Driven Engineering for Design-Runtime Interaction in Complex Systems, and 1st Research Project Showcase Workshop co-located with Software Technologies: Applications and Foundations (STAF 2019), Eindhoven, The Netherlands, July 15–19, 2019, CEUR Workshop Proceedings, vol. 2405, pp. 23–32, CEUR-WS.org (2019)

    Google Scholar 

  16. Durillo, J.J., Nebro, A.J.: jmetal: A Java framework for multi-objective optimization. Adv. Eng. Softw. 42(10), 760–771 (2011)

    Article  Google Scholar 

  17. Feiler, P.H., Gluch, D.P.: Model-Based Engineering with AADL - An Introduction to the SAE Architecture Analysis and Design Language. SEI series in software engineering, Addison-Wesley (2012)

    Google Scholar 

  18. Gadhvi, B., Savsani, V., Patel, V.: Multi-objective optimization of vehicle passive suspension system using NSGA-II, SPEA2 and PESA-II. Procedia Technol. 23, 361–368 (2016)

    Article  Google Scholar 

  19. Herold, S., et al.: Cocome - the common component modeling example. In: The Common Component Modeling Example: Comparing Software Component Models, LNCS, vol. 5153, pp. 16–53 (2008) https://doi.org/10.1007/978-3-540-85289-6_3

  20. Hiroyasu, T., Nakayama, S., Miki, M.: Comparison study of spea2+, spea2, and NSGA-II in diesel engine emissions and fuel economy problem. In: CEC, pp. 236–242 (2005). https://doi.org/10.1109/CEC.2005.1554690

  21. Kessentini, M., Sahraoui, H.A., Boukadoum, M., Benomar, O.: Search-based model transformation by example. J. Softw. Syst. Model. 11(2), 209–226 (2012). https://doi.org/10.1007/s10270-010-0175-7

    Article  Google Scholar 

  22. King, R.A., Deb, K., Rughooputh, H.: Comparison of NSGA-II and SPEA2 on the multiobjective environmental/economic dispatch problem. Univ. Mauritius Res. J. 16(1), 485–511 (2010)

    Google Scholar 

  23. Koziolek, A., Koziolek, H., Reussner, R.H.: PerOpteryx: automated application of tactics in multi-objective software architecture optimization. In: 7th International Conference on the Quality of Software Architectures, pp. 33–42, ACM, New York, New York, USA (2011)

    Google Scholar 

  24. López, E.M., Coello, C.A.C.: An improved version of a reference-based multi-objective evolutionary algorithm based on igd\({}^{\text{+}}\). In: Aguirre, H.E., Takadama, K. (eds.) GECCO, pp. 713–720 (2018). https://doi.org/10.1145/3205455.3205530

  25. Mariani, T., Vergilio, S.R.: A systematic review on search-based refactoring. J. Inform. Softw. Technol. 83, 14–34 (2017)

    Google Scholar 

  26. Martens, A., Koziolek, H., Becker, S., Reussner, R.H.: Automatically improve software architecture models for performance, reliability, and cost using evolutionary algorithms. In: ICPE 2010 - Proceedings of the 1st ACM/SPEC International Conference on Performance Engineering, pp. 105–116 (2010). https://doi.org/10.1145/1712605.1712624

  27. Menascé, D.A., Ewing, J.M., Gomaa, H., Malek, S., Sousa, J.P.: A framework for utility-based service oriented design in SASSY. In: Adamson, A., Bondi, A.B., Juiz, C., Squillante, M.S. (eds.) Proceedings of the First Joint WOSP/SIPEW International Conference on Performance Engineering, pp. 27–36 (2010). https://doi.org/10.1145/1712605.1712612

  28. Ni, Y., et al.: Multi-objective software performance optimisation at the architecture level using randomised search rules. Inf. Softw. Technol. 135, 106565 (2021). https://doi.org/10.1016/j.infsof.2021.106565

    Article  Google Scholar 

  29. Ouni, A., Kessentini, M., Inoue, K., Cinnéide, M.Ó.: Search-based web service antipatterns detection. IEEE Trans. Serv. Comput. 10(4), 603–617 (2017). https://doi.org/10.1109/TSC.2015.2502595

    Article  Google Scholar 

  30. Rago, A., Vidal, S.A., Diaz-Pace, J.A., Frank, S., van Hoorn, A.: Distributed quality-attribute optimization of software architectures. In: Proceedings of the 11th Brazilian Symposium on Software Components, Architectures and Reuse, SBCARS, pp. 7:1–7:10 (2017). https://doi.org/10.1145/3132498.3132509

  31. Ramírez, A., Romero, J.R., Ventura, S.: A survey of many-objective optimisation in search-based software engineering. J. Syst. Softw. 149, 382–395 (2019)

    Article  Google Scholar 

  32. Zhao, F., Lei, W., Ma, W., Liu, Y., Zhang, C.: An improved spea2 algorithm with adaptive selection of evolutionary operators scheme for multiobjective optimization problems. Math. Probl. Eng. 2016, 1–20 (2016)

    MathSciNet  MATH  Google Scholar 

  33. Zhou, X., et al.: Fault analysis and debugging of microservice systems: industrial survey, benchmark system, and empirical study. TSE 47(2), 243–260 (2021). https://doi.org/10.1109/TSE.2018.2887384

    Article  Google Scholar 

  34. Zitzler, E., Laumanns, M., Thiele, L.: SPEA 2: Improving the strength pareto evolutionary algorithm. TIK-report 103, Swiss Federal Institute of Technology (ETH) Zurich (2001)

    Google Scholar 

  35. Zitzler, E., Thiele, L.: Multiobjective optimization using evolutionary algorithms - A comparative case study. In: Eiben, A.E., Bäck, T., Schoenauer, M., Schwefel, H. (eds.) Parallel Problem Solving from Nature, LNCS, vol. 1498, pp. 292–304 (1998). https://doi.org/10.1007/BFb0056872

Download references

Acknowledgments

Daniele Di Pompeo and Michele Tucci are supported by European Union - NextGenerationEU - National Recovery and Resilience Plan (Piano Nazionale di Ripresa e Resilienza, PNRR) - Project: “SoBigData.it - Strengthening the Italian RI for Social Mining and Big Data Analytics” - Prot. IR0000013 - Avviso n. 3264 del 28/12/2021.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Daniele Di Pompeo .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Cortellessa, V., Di Pompeo, D., Tucci, M. (2023). Performance of Genetic Algorithms in the Context of Software Model Refactoring. In: Iacono, M., Scarpa, M., Barbierato, E., Serrano, S., Cerotti, D., Longo, F. (eds) Computer Performance Engineering and Stochastic Modelling. EPEW ASMTA 2023 2023. Lecture Notes in Computer Science, vol 14231. Springer, Cham. https://doi.org/10.1007/978-3-031-43185-2_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-43185-2_16

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-43184-5

  • Online ISBN: 978-3-031-43185-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics