Abstract
Context: Microservice-oriented architecture relies on the implementation and deployment of small and autonomous microservices, rather than implementing the functionalities in one unique module to be deployed. They have been adopted as a solution to the shortcomings of the monolithic architecture such as lack of flexibility. Goal: This paper discusses lessons learned and challenges reported in the literature regarding the migration of legacy monolithic software systems to microservices based architecture. Method: We performed an automated search targeting public repositories to accomplish the stated goal. Results: Based on the evidence provided by 12 studies, we classified main findings in lessons learned related to the migration, as well as associated difficulties and challenges. Conclusions: the guidelines to migrate to microservices based architecture are maturing/evolving and the literature has pinpointed issues that deserve further investigation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Singleton, A.: The economics of microservices. IEEE Cloud Comput. 3(5), 16–20 (2016)
Kratzke, N., Quint, P.-C.: Understanding cloud-native applications after 10 years of cloud computing-a systematic map** study. J. Syst. Softw. 126, 1–16 (2017)
Furda, A., et al.: Migrating enterprise legacy source code to microservices: on multitenancy, statefulness, and data consistency. IEEE Soft. 35(3), 63–72 (2018)
Escobar, D., Cárdenas, D., Amarillo, R., Castro, E., Garcés, K., Parra, C., Casallas, R.: Towards the understanding and evolution of monolithic applications as microservices. In: Computing Conference (CLEI), 2016 XLII Latin American, pp. 1–11. IEEE (2016)
Reza Bazi, H., Hassanzadeh, A., Moeini, A.: A comprehensive framework for cloud computing migration using meta-synthesis approach. J. Syst. Softw. 128, 87–105 (2017)
Taibi, D., Lenarduzzi, V.: On the definition of microservice bad smells. IEEE Softw. 35(3), 56–62 (2018)
Leymann, F., Breitenbücher, U., Wagner, S., Wettinger, J.: Native cloud applications: why monolithic virtualization is not their foundation. In: Cloud Computing and Services Science, pp. 16–40. Springer, Cham (2016)
Fowler, M.: Microservices resource guide. Martinfowler. com. Web 1 (2015)
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A.: Experimentation in Software Engineering. Springer Science & Business Media, Berlin/Heidelberg (2012)
Petticrew, M., Roberts, H.: Systematic Reviews in the Social Sciences: A Practical Guide. Blackwell Publishing CrossRef Google Scholar, Malden (2006)
Mazlami, G., Cito, J., Leitner, P.: Extraction of microservices from monolithic software architectures. In: 2017 IEEE International Conference on Web Services (ICWS), pp. 524–531 (2017)
Chen, R., Li, S., Li, Z.: From monolith to microservices: a dataflow-driven approach. In: 2017 24th Asia-Pacific Software Engineering Conference (APSEC), pp. 466–475 (2017)
Acevedo, C.A.J., Y Jorge, J.P.G., Patio, I.R.: Methodology to transform a monolithic software into a microservice architecture. In: 2017 6th International Conference on Software Process Improvement (CIMPS), pp. 1–6 (2017)
Baresi, L., Garriga, M., Renzis, A.D.: Microservices identification through interface analysis. In: Service-Oriented and Cloud Computing, pp. 19–33. Springer, Cham (2017)
Gysel, M., Klbener, L., Giersche, W., Zimmermann, O.: Service cutter: a systematic approach to service decomposition. In: Service-Oriented and Cloud Computing, pp. 185–200. Springer, Cham (2016)
Richter, D., Konrad, M., Utecht, K., Polze, A.: Highly-available applications on unreliable infrastructure: microservice architectures in practice. In: Software Quality, Reliability and Security Companion (QRS-C), 2017 IEEE International Conference on, pp. 130–137 (2017)
De Lemos, R., Giese, H., Müller, H.A., Shaw, M., Andersson, J., Litoiu, M., Schmerl, B., et al.: Software engineering for self-adaptive systems: a second research roadmap. In: Software Engineering for Self-Adaptive Systems II, pp. 1–32. Springer, Berlin/Heidelberg (2013)
Hassan, S., Bahsoon, R.: Microservices and their design trade-offs: a self-adaptive roadmap. In: Services Computing (SCC), 2016 IEEE International Conference on, pp. 813–818. IEEE (2016)
Balalaie, A., Heydarnoori, A., Jamshidi, P.: Migrating to cloud-native architectures using microservices: an experience report. In: European Conference on Service-Oriented and Cloud Computing, pp. 201–215 (2015)
Paolo Di Francesco, I.M., Lago, P.: Migrating towards microservice architectures: an industrial survey. IEEE Cloud Computing bibtex em 12052018 ainda nao disponivel (2018)
Jamshidi, P., Pahl, C., Mendona, N.C.: Pattern-based multi-cloud architecture migration. Softw. Pract. Exp. 47(9), 1159–1184 (2017)
Taibi, D., Lenarduzzi, V., Pahl, C.: Processes, motivations, and issues for migrating to microservices architectures: an empirical investigation. IEEE Cloud Comput. 4(5), 22–32 (2017)
Lewis, J., Fowler, M.: Microservices: a definition of this new architectural term (2014). http://martinfowler.com/articles/microservices. html (cit. on p. 26) (2017)
Kalske, M., Mkitalo, N., Mikkonen, T.: Challenges when moving from monolith to microservice architecture. In: Current Trends in Web Engineering, pp. 32–47. Springer, Cham (2017)
DAgostino, D., Danovaro, E., Clematis, A., Roverelli, L., Zereik, G., Galizia, A.: From lesson learned to the refactoring of the DRIHM science gateway for hydro-meteorological research. J. Grid Comput. 14(4), 575–588 (2016)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendix
Appendix
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Silva Filho, H.C.d., Figueiredo Carneiro, G.d. (2019). Strategies Reported in the Literature to Migrate to Microservices Based Architecture. In: Latifi, S. (eds) 16th International Conference on Information Technology-New Generations (ITNG 2019). Advances in Intelligent Systems and Computing, vol 800. Springer, Cham. https://doi.org/10.1007/978-3-030-14070-0_81
Download citation
DOI: https://doi.org/10.1007/978-3-030-14070-0_81
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-14069-4
Online ISBN: 978-3-030-14070-0
eBook Packages: EngineeringEngineering (R0)