From Monolith to Microservices: A Classification of Refactoring Approaches

07/26/2018
by   Jonas Fritzsch, et al.
0

While the recently emerged Microservices architectural style is widely discussed in literature, it is difficult to find clear guidance on the process of refactoring legacy applications. The importance of the topic is underpinned by high costs and effort of a refactoring process which has several other implications, e.g. overall processes (DevOps) and team structure. Software architects facing this challenge are in need of selecting an appropriate strategy and refactoring technique. One of the most discussed aspects in this context is finding the right service granularity to fully leverage the advantages of a Microservices architecture. This study first discusses the notion of architectural refactoring and subsequently compares 10 existing refactoring approaches recently proposed in academic literature. The approaches are classified by the underlying decomposition technique and visually presented in the form of a decision guide for quick reference. The review yielded a variety of strategies to break down a monolithic application into independent services. With one exception, most approaches are only applicable under certain conditions. Further concerns are the significant amount of input data some approaches require as well as limited or prototypical tool support.

READ FULL TEXT
POST COMMENT

Comments

There are no comments yet.

Authors

page 7

page 8

10/08/2021

A Decision Model for Selecting Patterns and Strategies to Decompose Applications into Microservices

Microservices Architecture (MSA) style is a promising design approach to...
02/11/2021

Business Model Canvas Should Pay More Attention to the Software Startup Team

Business Model Canvas (BMC) is a tool widely used to describe startup bu...
06/04/2019

Design principles, architectural smells and refactorings for microservices: A multivocal review

Potential benefits such as agile service delivery have led many companie...
09/15/2018

Choosing a Knowledge Dissemination Approach

Knowledge management has been described as getting the right knowledge t...
08/15/2021

A Qualitative Study of Architectural Design Issues in DevOps

Software architecture is critical in succeeding with DevOps. However, de...
03/23/2018

APR: Architectural Pattern Recommender

This paper proposes Architectural Pattern Recommender (APR) system which...
09/09/2020

How much does an interlibrary loan request cost? A review of the literature

Interlibrary loan (ILL) services are used to fill the gap between academ...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.