Motivations, Benefits and Issues for Adopting Micro-Frontends: A Multivocal Literature Review
Peltonen, Severi (2020)
Peltonen, Severi
2020
Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2020-11-25
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202010307722
https://urn.fi/URN:NBN:fi:tuni-202010307722
Tiivistelmä
Micro frontends are increasing in popularity, being adopted by several large companies, such as DAZN, Ikea, Starbucks and may others. Micro frontends enable splitting of monolithic frontends into independent and smaller micro applications. However, many companies are still hesitant to adopt such applications, due to the lack of knowledge concerning their benefits. Additionally, provided online documentation is often times perplexed and contradictory.
The goal of this work is to map the existing knowledge on micro frontends, by understanding the motivations of companies when adopting such applications as well as possible benefits and issues.
For this purpose, we surveyed the academic and grey literature by means of the Multivocal Literature Review process, analyzing 172 sources, of which 42 reported motivations, benefits and issues.
The results show that existing architectural options to build web applications are cumbersome if the application and development team grows, and if multiple teams need to develop the same frontend application. In such cases, companies adopted micro frontends to increase team independence and to reduce the overall complexity of the frontend. The application of the micro frontend, confirmed the expected benefits, and micro frontends resulted to provide the same benefits as microservices on the back end side, combining the development team into a fully cross-functional development team that can scale processes when needed. However, micro frontends also showed some issues, such as the increased payload size of the application, increased code duplication and coupling between teams, and monitoring complexity.
Micro frontends allow companies to scale development according to business needs in the same way microservices do with the back end side. In addition, micro frontends have a lot of overhead and require careful planning if an advantage is achieved by using micro frontends. Further research is needed to carefully investigate this new hype, by helping practitioners to understand how to use micro frontends as well as understand in which contexts they are the most beneficial.
The goal of this work is to map the existing knowledge on micro frontends, by understanding the motivations of companies when adopting such applications as well as possible benefits and issues.
For this purpose, we surveyed the academic and grey literature by means of the Multivocal Literature Review process, analyzing 172 sources, of which 42 reported motivations, benefits and issues.
The results show that existing architectural options to build web applications are cumbersome if the application and development team grows, and if multiple teams need to develop the same frontend application. In such cases, companies adopted micro frontends to increase team independence and to reduce the overall complexity of the frontend. The application of the micro frontend, confirmed the expected benefits, and micro frontends resulted to provide the same benefits as microservices on the back end side, combining the development team into a fully cross-functional development team that can scale processes when needed. However, micro frontends also showed some issues, such as the increased payload size of the application, increased code duplication and coupling between teams, and monitoring complexity.
Micro frontends allow companies to scale development according to business needs in the same way microservices do with the back end side. In addition, micro frontends have a lot of overhead and require careful planning if an advantage is achieved by using micro frontends. Further research is needed to carefully investigate this new hype, by helping practitioners to understand how to use micro frontends as well as understand in which contexts they are the most beneficial.