Skip to main content

Memetic Algorithms for the Automatic Discovery of Software Architectures

  • Conference paper
  • First Online:

Part of the book series: Advances in Intelligent Systems and Computing ((AISC,volume 557))

Abstract

Designing complex software systems involves making choices. Particularly in the early stages, software architects need to consider a wide range of design alternatives in order to satisfactorily meet all the requirements. Search techniques like evolutionary algorithms can support them to better explore these choices, requiring the resolution of the formulated search problem under the guidance of software metrics. Aspects like the system complexity and the diversity of metrics have a significant impact on the algorithm performance. Therefore, trying to improve its effectiveness by combining it with local search techniques represents an interesting option to fine tune the returned results. However, designing this kind of hybrid approaches, a.k.a. memetic algorithms, pose new challenges such as determining where these improvements should be located within the evolutionary process. Two memetic approaches are proposed with the aim of analysing and comparing their performance when dealing with a complex problem like the discovery of software architectures.

Work supported by the Spanish Ministry of Economy and Competitiveness, project TIN2014-55252-P, and the Ministry of Education, FPU program (FPU13/01466).

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   259.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   329.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

Learn about institutional subscriptions

Notes

  1. 1.

    http://jclec.sourceforge.net/.

  2. 2.

    http://www.uco.es/grupos/kdis/datapro4j.

References

  1. Harman, M.: The role of artificial intelligence in software engineering. In: 1st International Workshop on Realizing AI Synergies in Software Engineering, pp. 1–6. IEEE Press, Piscataway (2012)

    Google Scholar 

  2. Harman, M., Afshin Mansouri, S., Zhang, Y.: Search based software engineering: trends, techniques and applications. ACM Comput. Surv. 45, 1–64 (2012)

    Article  Google Scholar 

  3. Mucientes, M., Lama, M., Couto, M.I.: A genetic programming-based algorithm for composing web services. In: 9th International Conference on Intelligent Systems Design and Applications, pp. 379–384. IEEE (2009)

    Google Scholar 

  4. Mahdavi, K., Harman, M., Hierons, R.M.: A multiple hill climbing approach to software module clustering. In: International Conference on Software Maintenance, pp. 315–324. IEEE Computer Society, Washington (2003)

    Google Scholar 

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

    Article  Google Scholar 

  6. Ramírez, A., Romero, J.R., Ventura, S.: An approach for the evolutionary discovery of software architectures. Inf. Sci. 305, 234–255 (2015)

    Article  Google Scholar 

  7. Krasnogor, N., Smith, J.: A tutorial for competent memetic algorithms: model, taxonomy, and design issues. IEEE Trans. Evol. Comp. 9, 474–488 (2005)

    Article  Google Scholar 

  8. Neri, F., Cotta, C.: Memetic algorithms and memetic computing optimization: A literature review. Swarm Evol. Comput. 2, 1–14 (2012)

    Article  Google Scholar 

  9. Smith, J., Simons, C.L.: A comparison of two memetic algorithms for software class modelling. In: 15th Annual Conference on Genetic and Evolutionary Computation, pp. 1485–1492. ACM, New York (2013)

    Google Scholar 

  10. Sievi-Korte, O., Erkki, M., Poranen, T.: Simulated annealing for aiding genetic algorithm in software architecture synthesis. Acta Cybernetica 21, 235–265 (2013)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Aurora Ramírez .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Ramírez, A., Barbudo, R., Romero, J.R., Ventura, S. (2017). Memetic Algorithms for the Automatic Discovery of Software Architectures. In: Madureira, A., Abraham, A., Gamboa, D., Novais, P. (eds) Intelligent Systems Design and Applications. ISDA 2016. Advances in Intelligent Systems and Computing, vol 557. Springer, Cham. https://doi.org/10.1007/978-3-319-53480-0_43

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-53480-0_43

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-53479-4

  • Online ISBN: 978-3-319-53480-0

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics