Skip to main content
Log in

Requirements for a model-driven cloud-native migration of monolithic web-based applications

  • Special Issue Paper
  • Published:
SICS Software-Intensive Cyber-Physical Systems

Abstract

With the emergence of cloud-native applications, the question arises how existing, often monolithic, applications can be migrated to this new paradigm. The main migration challenges are the decomposition of an application into fine-grained components and the introduction of cloud computing paradigms. With complex existing applications the migration is difficult. A structured and tool-supported approach would facilitate the migration process, which is why this paper proposes a model-driven engineering based approach. As a basis, this paper derives and presents requirements for such an approach from the literature on the one hand and a migration case study on the other. The requirements are specifically targeted at the necessary models, but also consider the overall approach. The necessities for the realization of a model-driven cloud-native migration approach are shown and remaining challenges are discussed.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. https://gitlab.rz.uni-bamberg.de/dsg-ktr/wt1819/project/faasifier.

  2. https://github.com/spring-petclinic/spring-petclinic-rest.

  3. https://www.openfaas.com/.

  4. https://aws.amazon.com/lambda/.

  5. https://www.elastic.co/products/elasticsearch.

  6. https://www.elastic.co/products/kibana.

  7. https://github.com/artist-project.

  8. https://github.com/SeelabFhdo/ddmm.

References

  1. Gannon D, Barga R, Sundaresan N (2017) Cloud-native applications. IEEE Cloud Comput 4(5):16–21. https://doi.org/10.1109/mcc.2017.4250939

    Article  Google Scholar 

  2. Di Francesco P, Lago P, Malavolta I (2018) Migrating towards microservice architectures: an industrial survey. In: 2018 IEEE ICSA. https://doi.org/10.1109/icsa.2018.00012

  3. Taibi D, Lenarduzzi V, Pahl C (2017) Processes, motivations, and issues for migrating to microservices architectures: an empirical investigation. IEEE Cloud Comput 4(5):22–32. https://doi.org/10.1109/mcc.2017.4250931

    Article  Google Scholar 

  4. Balalaie A, Heydarnoori A, Jamshidi P (2016) Migrating to cloud-native architectures using microservices: an experience report. Springer, Berlin, pp 201–215. https://doi.org/10.1007/978-3-319-33313-7_15

    Book  Google Scholar 

  5. Bucchiarone A, Dragoni N, Dustdar S, Larsen ST, Mazzara Manuel (2018) From monolithic to microservices: an experience report from the banking domain. IEEE Softw 35(3):50–55. https://doi.org/10.1109/ms.2018.2141026

    Article  Google Scholar 

  6. Iosifescu-Enescu I, Matthys C, Gkonos C, Iosifescu-Enescu CM, Hurni Lorenz (2017) Cloud-based architectures for auto-scalable web geoportals towards the cloudification of the GeoVITe swiss academic geoportal. ISPRS Int J Geo-Inf 6(7):192. https://doi.org/10.3390/ijgi6070192

    Article  Google Scholar 

  7. Lichtenthaeler R (2019) Model-driven software migration towards fine-grained cloud architectures. In: 11th ZEUS Workshop, pp 35–38. http://ceur-ws.org/Vol-2339/paper7.pdf. Accessed 6 June 2019

  8. Kratzke N, Quint P-C (2017) Understanding cloud-native applications after 10 years of cloud computing—a systematic mapping study. J Syst Softw 126:1–16. https://doi.org/10.1016/j.jss.2017.01.001

    Article  Google Scholar 

  9. Dragoni N, Giallorenzo S, Lafuente AL, Mazzara Manuel, Montesi F, Mustafin R, Safina L (2017) Microservices: yesterday, today, and tomorrow. In: Present and ulterior software engineering. Springer, Berlin, pp 195–216. https://doi.org/10.1007/978-3-319-67425-4_12

  10. Baldini I, Castro P, Chang K, Cheng P, Fink S, Ishakian V, Mitchell N, Muthusamy V, Rabbah R, Slominski A, Suter P (2017) Serverless computing: current trends and open problems. In: Research advances in cloud computing. Springer, Berlin, pp 1–20. https://doi.org/10.1007/978-981-10-5026-8_1

  11. Jamshidi P, Ahmad A, Pahl C (2013) Cloud migration research: a systematic review. IEEE Trans Cloud Comput 1(2):142–157. https://doi.org/10.1109/tcc.2013.10

    Article  Google Scholar 

  12. Kazman R, Woods SG, Carriere SJ (1998) Requirements for integrating software architecture and reengineering models: CORUM II. In: Proceedings of the fifth working conference on reverse engineering. IEEE Computer Society. https://doi.org/10.1109/wcre.1998.723185

  13. Kent S (2002) Model driven engineering. In: Lecture notes in computer science. Springer, Berlin, pp 286–298. https://doi.org/10.1007/3-540-47884-1_16

  14. Brereton P, Kitchenham BA, Budgen D, Turner M, Khalil M (2007) Lessons from applying the systematic literature review process within the software engineering domain. J Syst Softw 80(4):571–583. https://doi.org/10.1016/j.jss.2006.07.009

    Article  Google Scholar 

  15. Frey S, Hasselbring W (2011) The cloudmig approach: model-based migration of software systems to cloud-optimized applications. Int J Adv Softw 4(3 and 4):342–353

    Google Scholar 

  16. Menychtas A, Konstanteli K, Alonso J, Orue-Echevarria L, Gorronogoitia J, Kousiouris G, Santzaridou C, Bruneliere H, Pellens B, Stuer P, Strauss O, Senkova T, Varvarigou T (2014) Software modernization and cloudification using the ARTIST migration methodology and framework. Scalable Comput Pract Exp. https://doi.org/10.12694/scpe.v15i2.980

    Article  Google Scholar 

  17. Levcovitz A, Terra R, Valente MT (2016) Towards a technique for extracting microservices from monolithic enterprise systems. CoRR. abs/1605.03175. arXiv:1605.03175v1

  18. Gysel M, Kölbener L, Giersche W, Zimmermann O (2016) Service cutter: a systematic approach to service decomposition. In: Service-oriented and cloud computing. Springer, Berlin, pp 185–200. https://doi.org/10.1007/978-3-319-44482-6_12

  19. Mazlami G, Cito J, Leitner P (2017) Extraction of microservices from monolithic software architectures. In: 2017 IEEE ICWS. IEEE, pp 524–531. https://doi.org/10.1109/ICWS.2017.61

  20. Spillner J, Dorodko S (2017) Java code analysis and transformation into AWS lambda functions. CoRR. arXiv:1702.05510

  21. Nakazawa R, Ueda T, Enoki M, Horii H (2018) Visualization tool for designing microservices with the monolith-first approach. In: 2018 IEEE VISSOFT. https://doi.org/10.1109/vissoft.2018.00012

  22. Object Management Group (2016) Architecture-driven modernization: knowledge discovery meta-model (KDM), 1.4. https://www.omg.org/spec/KDM/. Accessed 6 June 2019

  23. Peter M, Timothy G (2011) The NIST definition of cloud computing. Technical report, National Institute of Standards and Technology, Gaithersburg. https://doi.org/10.6028/nist.sp.800-145

  24. Quint P-C, Kratzke N (2018) Towards a lightweight multi-cloud DSL for elastic and transferable cloud-native applications. 2018 CLOSER. arXiv:1802.03562v1

  25. Rademacher F, Sorgalla J, Sachweh S (2018) Challenges of domain-driven microservice design: a model-driven perspective. IEEE Softw 35(3):36–43. https://doi.org/10.1109/ms.2018.2141028

    Article  Google Scholar 

  26. Fritzsch J, Bogner J, Zimmermann A, Wagner S (2019) From monolith to microservices: a classification of refactoring approaches. In: Software engineering aspects of continuous development and new paradigms of software production and deployment. Springer, Berlin, pp 128–141. https://doi.org/10.1007/978-3-030-06019-0_10

  27. Granchelli G, Cardarelli M, Di Francesco P, Malavolta I, Iovino L, Di Salle A (2017) MicroART: a software architecture recovery tool for maintaining microservice-based systems. In: 2017 IEEE ICSAW. IEEE. https://doi.org/10.1109/icsaw.2017.9

  28. Mayer B, Weinreich R (2018) An approach to extract the architecture of microservice-based software systems. In: 2018 SOSE

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Robin Lichtenthäler.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Lichtenthäler, R., Prechtl, M., Schwille, C. et al. Requirements for a model-driven cloud-native migration of monolithic web-based applications. SICS Softw.-Inensiv. Cyber-Phys. Syst. 35, 89–100 (2020). https://doi.org/10.1007/s00450-019-00414-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00450-019-00414-9

Keywords

Navigation