We apologize for a recent technical issue with our email system, which temporarily affected account activations. Accounts have now been activated. Authors may proceed with paper submissions. PhDFocusTM
CFP last date
20 December 2024
Reseach Article

Mind Overflow: A Process Proposal for Decomposing Monolithic Applications in Microservices

by Tcharles Pereira Da Silva, Kleinner Farias
International Journal of Computer Applications
Foundation of Computer Science (FCS), NY, USA
Volume 176 - Number 18
Year of Publication: 2020
Authors: Tcharles Pereira Da Silva, Kleinner Farias
10.5120/ijca2020920125

Tcharles Pereira Da Silva, Kleinner Farias . Mind Overflow: A Process Proposal for Decomposing Monolithic Applications in Microservices. International Journal of Computer Applications. 176, 18 ( Apr 2020), 1-9. DOI=10.5120/ijca2020920125

@article{ 10.5120/ijca2020920125,
author = { Tcharles Pereira Da Silva, Kleinner Farias },
title = { Mind Overflow: A Process Proposal for Decomposing Monolithic Applications in Microservices },
journal = { International Journal of Computer Applications },
issue_date = { Apr 2020 },
volume = { 176 },
number = { 18 },
month = { Apr },
year = { 2020 },
issn = { 0975-8887 },
pages = { 1-9 },
numpages = {9},
url = { https://ijcaonline.org/archives/volume176/number18/31298-2020920125/ },
doi = { 10.5120/ijca2020920125 },
publisher = {Foundation of Computer Science (FCS), NY, USA},
address = {New York, USA}
}
%0 Journal Article
%1 2024-02-07T00:42:51.169682+05:30
%A Tcharles Pereira Da Silva
%A Kleinner Farias
%T Mind Overflow: A Process Proposal for Decomposing Monolithic Applications in Microservices
%J International Journal of Computer Applications
%@ 0975-8887
%V 176
%N 18
%P 1-9
%D 2020
%I Foundation of Computer Science (FCS), NY, USA
Abstract

Constant changes made by different developer profiles turn legacy applications into monolithic ones. Although it is a known issue, little has been done to mitigate it. This paper proposes Mind Overflow, a process to guide the decomposition of a monolithic application to a microservice architecture. With Mind Overflow, researchers and developers benefit from the use of consolidated design patterns, architectures, and technologies through a comprehensive decomposition workflow. The case study showed promising results, indicating that Mind Overflow is feasible to break down monolithic to a microservice-based architecture, including reducing cyclomatic complexity and producing highly cohesive microservices.

References
  1. Keith Bennett. Legacy systems: Coping with success. IEEE software, 12(1):19–23, 1995.
  2. Keith H Bennett and V´aclav T Rajlich. Software maintenance and evolution: a roadmap. In Proceedings of the Conference on the Future of Software Engineering, pages 73–87, 2000.
  3. Vinicius Bischoff, Kleinner Farias, Lucian Jos´e Gonc¸ales, and Jorge Luis Vict´oria Barbosa. Integration of feature models: A systematic mapping study. Information and Software Technology, 105:209–225, 2019.
  4. Alberto Brandolini. Introducing event storming. Available at: goo.gl/GMzzDv [Last accessed: 8 July 2017], 2013.
  5. Leandro Ferreira D’Avila, Kleinner Farias, and Jorge Luis Victria Barbosa. Effects of contextual information on maintenance effort: A controlled experiment. Journal of Systems and Software, 159, 2020.
  6. Daniel Escobar, Diana C´ardenas, Rolando Amarillo, Eddie Castro, Kelly Garc´es, Carlos Parra, and Rubby Casallas. Towards the understanding and evolution of monolithic applications as microservices. In XLII Latin American Computing Conference (CLEI), pages 1–11. IEEE, 2016.
  7. Eric Evans. Domain-driven design: tackling complexity in the heart of software. Addison-Wesley Professional, 2004.
  8. Kleinner Farias. Empirical evaluation of effort on composing design models. In 2010 ACM/IEEE 32nd International Conference on Software Engineering, volume 2, pages 405–408. IEEE, 2010.
  9. Kleinner Farias, Alessandro Garcia, and Carlos Lucena. Effects of stability on model composition effort: an exploratory study. Software&Systems Modeling, 13(4):1473–1494, 2014.
  10. Kleinner Farias, Alessandro Garcia, Jon Whittle, and Carlos Lucena. Analyzing the effort of composing design models of large-scale software in industrial case studies. In International Conference on Model Driven Engineering Languages and Systems, pages 639–655. Springer, 2013.
  11. Martin Fowler and James Lewis. Microservices. Viittattu, 28:2015, 2014.
  12. Lucian Jos´e Gonc¸ales, Kleinner Farias, Toacy Cavalcante De Oliveira, and Murilo Scholl. Comparison of software design models: An extended systematic mapping study. ACM Computing Surveys (CSUR), 52(3):1–41, 2019.
  13. Michael Gysel, Lukas K¨olbener, Wolfgang Giersche, and Olaf Zimmermann. Service cutter: A systematic approach to service decomposition. In European Conference on Service- Oriented and Cloud Computing, pages 185–200. Springer, 2016.
  14. Diane Kelly. A study of design characteristics in evolving software using stability as a criterion. IEEE Transactions on Software Engineering, 32(5):315–329, 2006.
  15. Holger Knoche and Wilhelm Hasselbring. Using microservices for legacy software modernization. IEEE Software, 35(3):44–49, 2018.
  16. Alessandra Levcovitz, Ricardo Terra, and Marco Tulio Valente. Towards a technique for extracting microservices from monolithic enterprise systems. arXiv preprint arXiv:1605.03175, 2016.
  17. Edson M Lucas, Toacy C Oliveira, Kleinner Farias, and Paulo SC Alencar. Collabrdl: A language to coordinate collaborative reuse. Journal of Systems and Software, 131:505– 527, 2017.
  18. Robert C Martin. Clean code: a handbook of agile software craftsmanship. Pearson Education, 2009.
  19. Robert C Martin. Clean architecture: a craftsman’s guide to software structure and design. Prentice Hall Press, 2017.
  20. Anderson Oliveira, Vinicius Bischoff, Lucian Jos´e Gonc¸ales, Kleinner Farias, and Matheus Segalotto. Brcode: An interpretive model-driven engineering approach for enterprise applications. Computers in Industry, 96:86–97, 2018.
  21. Diego Pereira da Rocha. Mon´olise: Uma t´ecnica para decomposic¸ ˜ao de aplicac¸ ˜oes monol´iticas em microsservic¸os. Master’s thesis, 2018.
  22. Vaughn Vernon. Implementing domain-driven design. Addison-Wesley, 2013.
Index Terms

Computer Science
Information Sciences

Keywords

Decomposition process software architecture