Skip to main content

A Qualitative Literature Review on Microservices Identification Approaches

Part of the Communications in Computer and Information Science book series (CCIS,volume 1310)

Abstract

Microservices has become a widely used and discussed architectural style for designing modern applications due to advantages like granular scalability and maintainability. However, it is still a complex task decomposing an application into microservices. Software architects often design architectures manually. In this paper we give a state-of-the-art overview of current approaches to identifying microservices. Therefore we use a literature review and classify the content based on the software development process.

The main results are that mostly monolithic artifacts are used for starting with microservice decomposition. Data-intensive applications are less focused. Rule-based and clustering algorithms are suitable ways to find microservice candidates. Both researchers and software architects profit from this overview. Practically it supports choosing suitable approaches considering aspects like cohesion, coupling, workload, deployment and further quality criteria for each phase during the software development process.

Keywords

  • Microservices
  • Literature review
  • Software architecture
  • Identification
  • Decomposition

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-030-64846-6_9
  • Chapter length: 18 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   69.99
Price excludes VAT (USA)
  • ISBN: 978-3-030-64846-6
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   89.99
Price excludes VAT (USA)
Fig. 1.
Fig. 2.
Fig. 3.

References

  1. Andritsos, P., Tzerpos, V.: Information-theoretic software clustering. IEEE Trans. Softw. Eng. 31(2) (2005)

    Google Scholar 

  2. Arsanjani, A., Ghosh, S., Allam, A., Abdollah, T., Ganapathy, S., Holley, K.: SOMA: a method for developing service-oriented solutions. IBM Syst. J. 47(3), 377–396 (2008)

    CrossRef  Google Scholar 

  3. Carrasco, A., van Bladel, B., Demeyer, S.: Migrating towards microservices: migration and architecture smells. In: Proceedings of the 2nd International Workshop on Refactoring, IWoR 2018, pp. 1–6. Association for Computing Machinery, New York (2018)

    Google Scholar 

  4. Carvalho, L., Garcia, A., Assunção, W.K.G., Mello, R.d., Lima, M.J.d.: Analysis of the criteria adopted in industry to extract microservices. In: 2019 IEEE/ACM Joint 7th International Workshop on Conducting Empirical Studies in Industry (CESI) and 6th International Workshop on Software Engineering Research and Industrial Practice (SER IP), pp. 22–29 (2019)

    Google Scholar 

  5. Cato, P.: Einflüsse auf den Implementierungserfolg von Big Data Systemen: Ergebnisse einer inhalts- und kausalanalytischen Untersuchung. Dissertation, Friedrich-Alexander-Universität Erlangen-Nürnberg, Erlangen-Nürnberg (2016)

    Google Scholar 

  6. Cojocaru, M., Uta, A., Oprescu, A.: Attributes assessing the quality of microservices automatically decomposed from monolithic applications. In: 2019 18th International Symposium on Parallel and Distributed Computing (ISPDC), pp. 84–93 (2019)

    Google Scholar 

  7. Di Francesco, P., Lago, P., Malavolta, I.: Architecting with microservices: a systematic mapping study. J. Syst. Softw. 150, 77–97 (2019)

    CrossRef  Google Scholar 

  8. Di Francesco, P., Malavolta, I., Lago, P.: Research on architecting microservices: trends, focus, and potential for industrial adoption. In: IEEE International Conference on Software Architecture, pp. 21–30 (2017)

    Google Scholar 

  9. Evans, E.: Domain-Driven Design: Tackling Complexity in the Heart of Software. Addison-Wesley, Upper Saddle River (2011)

    Google Scholar 

  10. Fritzsch, J., Bogner, J., Wagner, S., Zimmermann, A.: Microservices migration in industry: intentions, strategies, and challenges. In: IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 481–490 (2019)

    Google Scholar 

  11. Bruel, J.-M., Mazzara, M., Meyer, B. (eds.): DEVOPS 2018. LNCS, vol. 11350. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-06019-0

    CrossRef  Google Scholar 

  12. Gouigoux, J., Tamzalit, D.: From monolith to microservices: lessons learned on an industrial migration to a web oriented architecture. In: 2017 IEEE International Conference on Software Architecture Workshops (ICSAW), pp. 62–65 (2017)

    Google Scholar 

  13. Govind, Y., et al.: Entity matching meets data science. In: SIGMOD 2019: Proceedings of the 2019 International Conference on Management of Data, pp. 389–403 (2019)

    Google Scholar 

  14. Hassan, S., Bahsoon, R.: Microservices and their design trade-offs: a self-adaptive roadmap. In: IEEE International Conference on Services Computing, pp. 813–818 (2016)

    Google Scholar 

  15. Johnston, S.: RUP Plug-In for SOA V1.0. IBM developerWorks (2005)

    Google Scholar 

  16. Kazanavičius, J., Mažeika, D.: Migrating legacy software to microservices architecture. In: 2019 Open Conference of Electrical, Electronic and Information Sciences (eStream),pp. 1–5 (2019)

    Google Scholar 

  17. Krämer, M.: A microservice architecture for the processing of large geospatial data in the cloud. Dissertation, Technische Universität Darmstadt, Darmstadt (2017)

    Google Scholar 

  18. Lewis, J., Fowler, M.: Microservices: a definition of this new architectural term (2014). https://martinfowler.com/articles/microservices.html

  19. Marz, N., Warren, J.: Big Data: Principles and Best Practices of Scalable Real-time Data Systems, 1. aufl. edn. Manning, Shelter Island (2015)

    Google Scholar 

  20. Mayring, P.: Qualitative content analysis: theoretical foundation, basic procedures and software solution. Klagenfurt (2014)

    Google Scholar 

  21. Mazlami, G., Cito, J., Leitner, P.: Extraction of microservices from monolithic software architectures. In: 2017 IEEE International Conference on Web Services (ICWS), pp. 524–531 (2017)

    Google Scholar 

  22. Papazoglou, M.: Web Services: Principles and Technology. Pearson, Prentice Hall, Upper Saddle River (2008)

    Google Scholar 

  23. Petersen, K., Vakkalanka, S., Kuzniarz, L.: Guidelines for conducting systematic mapping studies in software engineering: an update. Inf. Softw. Technol. 64, 1–18 (2015)

    CrossRef  Google Scholar 

  24. Richardson, C.: Microservice Patterns: With Examples in Java. Manning, Shelter Island (2019)

    Google Scholar 

  25. Starke, G.: Effektive Softwarearchitekturen: Ein praktischer Leitfaden, 7 edn. Hanser eLibrary, Hanser, München (2015)

    Google Scholar 

  26. Taibi, D., Lenarduzzi, V., Pahl, C.: Architectural patterns for microservices: a systematic mapping study. In: Proceedings of the 8th International Conference on Cloud Computing and Services Science, vol. 1, pp. 221–232 (2018)

    Google Scholar 

  27. Wilde, T., Hess, T.: Forschungsmethoden der Wirtschaftsinformatik: Eine empirische Untersuchung. WIRTSCHAFTSINFORMATIK 49(4), 280–287 (2007)

    CrossRef  Google Scholar 

  28. Zimmermann, O.: An architectural decision modeling framework for service-oriented architecture design. Dissertation@Stuttgart, University (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Christoph Schröer .

Editor information

Editors and Affiliations

A Selected Studies

A Selected Studies

The selected studies are listed below and in reverse chronological order.

Key Study
P31 Abdullah, M., Iqbal, W., Erradi, A.: Unsupervised learning approach for web application auto-decomposition into microservices. Journal of Systems and Software (2019)
P30 Li, S., Zhang, H., Jia, Z., Li, Z., Zhang, C., Li, J., Gao, Q., Ge, J., Shan, Z.: A dataflow-driven approach to identifying microservices from monolithic applications. Journal of Systems and Software (2019)
P29 Tserpes, K.: stream-MSA: A microservices’ methodology for the creation of short, fast-paced, stream processing pipelines. ICT Express (2019)
P28 Alturki, B., Reiff-Marganiec, S., Perera, C., De, S.: Exploring the Effectiveness of Service Decomposition in Fog Computing Architecture for the Internet of Things. IEEE Transactions on Sustainable Computing (2019)
P27 Kaplunovich, A.: ToLambda-Automatic Path to Serverless Architectures. In: 2019 IEEE/ACM 3rd International Workshop on Refactoring (IWoR), pp. 1–8 (2019)
P26 Sharma, S., Uniyal, N., Tola, B., Jiang, Y.: On Monolithic and Microservice Deployment of Network Functions. In: 2019 IEEE Conference on Network Softwarization (NetSoft), pp. 387–395 (2019)
P25 Jin, W., Liu, T., Cai, Y., Kazman, R., Mo, R., Zheng, Q.: Service Candidate Identification from Monolithic Systems based on Execution Traces. IEEE Transactions on Software Engineering (2019)
P24 Gouigoux, J.; Tamzalit, D.: “Functional-First" Recommendations for Beneficial Microservices Migration and Integration Lessons Learned from an Industrial Experience. In: 2019 IEEE International Conference on Software Architecture Companion (ICSA-C), pp. 182–186 (2019)
P23 Carvalho, L., Garcia, A., Assunção, W.K.G., Bonifácio, R., Tizzei, L.P., Colanzi, T.E.: Extraction of Configurable and Reusable Microservices from Legacy Systems: An Exploratory Study. In: Proceedings of the 23rd International Systems and Software Product Line Conference - Volume A, pp. 26–31. Association for Computing Machinery, New York, NY, USA (2019)
P22 Knoche, H., Hasselbring, W.: Using Microservices for Legacy Software Modernization. IEEE Softw. (2018)
P21 Shimoda, A., Sunada, T.: Priority Order Determination Method for Extracting Services Stepwise from Monolithic System. In: 2018 7th International Congress on Advanced Applied Informatics (IIAI-AAI), pp. 805–810 (2018)
P20 Jin, W., Liu, T., Zheng, Q., Cui, D., Cai, Y.: Functionality-Oriented Microservice Extraction Based on Execution Trace Clustering. In: 2018 IEEE International Conference on Web Services (ICWS), pp. 211–218 (2018)
P19 Kamimura, M., Yano, K., Hatano, T., Matsuo, A.: Extracting Candidates of Microservices from Monolithic Application Code. In: 2018 25th Asia-Pacific Software Engineering Conference (APSEC), pp. 571–580 (2018)
P18 Tusjunt, M., Vatanawood, W.: Refactoring Orchestrated Web Services into Microservices Using Decomposition Pattern. In: 2018 IEEE 4th International Conference on Computer and Communications (ICCC), pp. 609–613 (2018)
P17 Sriraman, A., Wenisch, T.F.: \(\mu \) Suite: A Benchmark Suite for Microservices. In: 2018 IEEE International Symposium on Workload Characterization (IISWC), pp. 1–12 (2018)
P16 Amiri, M.J.: Object-Aware Identification of Microservices. In: 2018 IEEE International Conference on Services Computing (SCC), pp. 253–256 (2018)
P15 Baresi, L., Garriga, M., Renzis, A. de: Microservices Identification Through Interface Analysis. In: Paoli, F. de, Schulte, S., Broch Johnsen, E. (eds.) Service-Oriented and Cloud Computing. European Conference, ESOCC 2017, Oslo, Norway, September 27–29, 2017 (2017)
P14 Gouigoux, J.; Tamzalit, D.: From Monolith to Microservices: Lessons Learned on an Industrial Migration to a Web Oriented Architecture. In: 2017 IEEE International Conference on Software Architecture Workshops (ICSAW), pp. 62–65 (2017)
P13 Boubendir, A., Bertin, E., Simoni, N.: A VNF-as-a-service design through micro-services disassembling the IMS. In: 2017 20th Conference on Innovations in Clouds, Internet and Networks (ICIN), pp. 203–210 (2017)
P12 Fan, C., Ma, S.: Migrating Monolithic Mobile Application to Microservice Architecture: An Experiment Report. In: 2017 IEEE International Conference on AI Mobile Services (AIMS), pp. 109–112 (2017)
P11 Hausotter, A., Koschel, A., Zuch, M., Busch, J., Kreczik, A.: Process and Service Modelling of Insurancy Use Cases. In: 2017 IEEE 10th Conference on Service-Oriented Computing and Applications (SOCA), pp. 116–124 (2017)
P10 Klock, S., van der Werf, J.M.E.M., Guelen, J.P., Jansen, S.: Workload-Based Clustering of Coherent Feature Sets in Microservice Architectures. In: 2017 IEEE International Conference on Software Architecture (ICSA), pp. 11–20 (2017)
P9 Chen, R., Li, S., Li, Z.: From Monolith to Microservices: A Dataflow-Driven Approach. In: 2017 24th Asia-Pacific Software Engineering Conference (APSEC), pp. 466–475 (2017)
P8 Mazlami, G., Cito, J., Leitner, P.: Extraction of Microservices from Monolithic Software Architectures. In: 2017 IEEE International Conference on Web Services (ICWS), pp. 524–531 (2017)
P7 Sarita, Sebastian, S.: Transform Monolith into Microservices using Docker. In: 2017 International Conference on Computing, Communication, Control and Automation (ICCUBEA), pp. 1–5 (2017)
P6 Sayara, A., Towhid, M.S., Hossain, M.S.: A probabilistic approach for obtaining an optimized number of services using weighted matrix and multidimensional scaling. In: 2017 20th International Conference of Computer and Information Technology (ICCIT), pp. 1–6 (2017)
P5 Hasselbring, W., Steinacker, G.: Microservice Architectures for Scalability, Agility and Reliability in E-Commerce. In: 2017 IEEE International Conference on Software Architecture Workshops (ICSAW), pp. 243–246 (2017)
P4 Asik, T., Selcuk, Y.E.: Policy enforcement upon software based on microservice architecture. In: 2017 IEEE 15th International Conference on Software Engineering Research, Management and Applications (SERA), pp. 283–287 (2017)
P3 Gysel, M., Kölbener, L., Giersche, W., Zimmermann, O.: Service Cutter: A Systematic Approach to Service Decomposition. In: Aiello, M., Johnsen, E.B., Dustdar, S., Georgievski, I. (eds.) Service-Oriented and Cloud Computing. 5th IFIP WG 2.14 European Conference, ESOCC 2016, Vienna, Austria, September 5-7, 2016, Proceedings, pp. 185–200 (2016)
P2 Ahmadvand, M., Ibrahim, A.: Requirements Reconciliation for Scalable and Secure Microservice (De)composition. In: 2016 IEEE 24th International Requirements Engineering Conference Workshops (REW), pp. 68–73 (2016)
P1 Levcovitz, A., Terra, R., Valente, M.T.: Towards a Technique for Extracting Microservices from Monolithic Enterprise Systems. 3rd Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM), 97–104 (2015)

Rights and permissions

Reprints and Permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Verify currency and authenticity via CrossMark

Cite this paper

Schröer, C., Kruse, F., Marx Gómez, J. (2020). A Qualitative Literature Review on Microservices Identification Approaches. In: Dustdar, S. (eds) Service-Oriented Computing. SummerSOC 2020. Communications in Computer and Information Science, vol 1310. Springer, Cham. https://doi.org/10.1007/978-3-030-64846-6_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-64846-6_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-64845-9

  • Online ISBN: 978-3-030-64846-6

  • eBook Packages: Computer ScienceComputer Science (R0)