English
Related papers

Related papers: From Monolith to Microservices: A Classification o…

200 papers

Recently the trend of companies switching from microservice back to monolith has increased, leading to intense debate in the industry. We conduct a multivocal literature review, to investigate reasons for the phenomenon and key aspects to…

Software Engineering · Computer Science 2023-08-30 Ruoyu Su , Xiaozhou Li , Davide Taibi

Microservice applications are created as loosely coupled application components and they leverage cloud elasticity to reduce costs and increase development speed. However, microservice applications exhibit complex interactions among…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-03-10 Minxian Xu , Junhan Liao , Linfeng Wen , Huaming Wu , Kejiang Ye , Rajkumar Buyya , Chengzhong Xu

Microservice architectures encourage the use of small, independently developed services; however, this can lead to increased architectural complexity. Accurate documentation is crucial, but is challenging to maintain due to the rapid,…

Software Engineering · Computer Science 2026-02-10 Oscar Manglaras , Alex Farkas , Thomas Woolford , Christoph Treude , Markus Wagner

Microservices are a popular architectural style adopted by the industry when it comes to deploying software that requires scalability, maintainability, and agile development. There is an increasing demand for improving the sustainability of…

Software Engineering · Computer Science 2024-07-25 Xingwen Xiao

Monolithic applications used to be considered the standard for software development. However, due to the rapid evolution of technology and the increasing demand for scalability and flexibility, these applications have become increasingly…

Systems and Control · Electrical Eng. & Systems 2023-07-13 David Ahmad Abboud , Damien Jacob

Microservices based architectures are based on a set of modular, independent and fault-tolerant services. In recent years, the software engineering community presented studies investigating potential, recurrent, effective architectural…

Software Engineering · Computer Science 2019-09-10 Mohammad Imranur , Rahman , Sebastiano Panichella , Davide Taibi

Several companies are re-architecting their monolithic information systems with microservices. However, many companies migrated without experience on microservices, mainly learning how to migrate from books or from practitioners' blogs.…

Software Engineering · Computer Science 2019-08-22 Davide Taibi , Valentina Lenarduzzi , Claus Pahl

To refactor already working code while keeping reliability, compatibility and perhaps security, we can borrow ideas from micropass/nanopass compilers. By treating the procedure of software refactoring as composing code transformations, and…

Software Engineering · Computer Science 2023-08-15 Yu Liu

Software refactoring plays an important role in software engineering. Developers often turn to refactoring when they want to restructure software to improve its quality without changing its external behavior. Studies show that small-scale…

Software Engineering · Computer Science 2022-02-16 James Ivers , Robert L. Nord , Ipek Ozkaya , Chris Seifried , Christopher S. Timperley , Marouane Kessentini

In the micro frontends architectural style, the frontend is divided into smaller components, which can range from a simple button to an entire page. The goal is to improve scalability, resilience, and team independence, albeit at the cost…

Cloud-native systems represent a significant leap in constructing scalable, large systems, employing microservice architecture as a key element in developing distributed systems through self-contained components. However, the decentralized…

Software Engineering · Computer Science 2024-07-25 Amr S. Abdelfattah

Microservices is an emerging development paradigm where software is obtained by composing autonomous entities, called (micro)services. However, microservice systems are currently developed using general-purpose programming languages that do…

Programming Languages · Computer Science 2017-04-27 Claudio Guidi , Ivan Lanese , Manuel Mazzara , Fabrizio Montesi

The reengineering process of large data-intensive legacy software applications to cloud platforms involves different interrelated activities. These activities are related to planning, architecture design, re-hosting/lift-shift, code…

Software Engineering · Computer Science 2021-12-15 Mahdi Fahmideh , John Grundy , Ghassan Beydoun , Didar Zowghi , Willy Susilo , Davoud Mougouei

Refactoring is the de-facto practice to optimize software health. While several studies propose refactoring strategies to optimize software design through applying design patterns and removing design defects, little is known about how…

Software Engineering · Computer Science 2021-11-16 Eman Abdullah AlOmar , Tianjia Wang , Vaibhavi Raut , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni

Widely used complex code refactoring tools lack a solid reasoning about the correctness of the transformations they implement, whilst interest in proven correct refactoring is ever increasing as only formal verification can provide true…

Software Engineering · Computer Science 2017-08-25 Dániel Horpácsi , Judit Kőszegi , Zoltán Horváth

Background. The migration from monolithic systems to microservices involves deep refactoring of the systems. Therefore, the migration usually has a big economic impact and companies tend to postpone several activities during this process,…

Software Engineering · Computer Science 2020-07-07 Valentina Lenarduzzi , Francesco Lomio , Nyyti Saarimäki , Davide Taibi

The microservice architecture is a style inspired by service-oriented computing that has recently started gaining popularity and that promises to change the way in which software is perceived, conceived and designed. In this paper, we…

Software Engineering · Computer Science 2017-02-24 Nicola Dragoni , Ivan Lanese , Stephan Thordal Larsen , Manuel Mazzara , Ruslan Mustafin , Larisa Safina

Microservices architecture is one of the new architectural styles that has improved in recent years. It has become a popular architectural style among system architects and developers. This popularity increased with the advent of new…

Software Engineering · Computer Science 2023-08-14 Mahyar Karimi , Ahmad Abdollahzadeh Barfroush

Microservice architecture advocates a number of technologies and practices such as lightweight container, container orchestration, and DevOps, with the promised benefits of faster delivery, improved scalability, and greater autonomy.…

Software Engineering · Computer Science 2021-06-15 Qilin Xiang , Xin Peng , Chuan He , Hanzhang Wang , Tao Xie , Dewei Liu , Gang Zhang , Yuanfang Cai

Microservices emerged as a popular architectural style over the last decade. Although microservices are designed to be self-contained, they must communicate to realize business capabilities, creating dependencies among their data and…

Software Engineering · Computer Science 2024-08-02 Rodrigo Laigner , Ana Carolina Almeida , Wesley K. G. Assunção , Yongluan Zhou