Abstract
Microservices Architecture (MSA) style is a promising design approach to develop software applications consisting of multiple small and independently deployable services. Over the past few years, researchers and practitioners have proposed many MSA patterns and strategies covering various aspects of microservices design, such as application decomposition. However, selecting appropriate patterns and strategies can entail various challenges for practitioners. To this end, this study proposes a decision model for selecting patterns and strategies to decompose applications into microservices. We used peer-reviewed and grey literature to collect the patterns, strategies, and quality attributes for creating this decision model.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Dragoni, N., Lanese, I., Larsen, S.T., Mazzara, M., Mustafin, R., Safina, L.: Microservices: how to make your application scale. In: Petrenko, A.K., Voronkov, A. (eds.) PSI 2017. LNCS, vol. 10742, pp. 95–104. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-74313-4_8
Garousi, V., Felderer, M., Mäntylä, M.V.: Guidelines for including grey literature and conducting multivocal literature reviews in software engineering. Inf. Softw. Technol. 106, 101–121 (2019)
Hari, O.P.R., Tabby, W., Dmitry, G.: Decomposing monoliths into microservices - AWS prescriptive (2021). http://alturl.com/5spq4
Harms, H., Rogowski, C., Lo Iacono, L.: Guidelines for adopting frontend architectures and patterns in microservices-based systems. In: Proceedings of the 11th ESEC/FSE, pp. 902–907. ACM (2017)
Haselböck, S., Weinreich, R.: Decision guidance models for microservice monitoring. In: Proceedings of the 14th ICSAW, pp. 54–61. IEEE (2017)
Haselböck, S., Weinreich, R., Buchgeher, G.: Decision guidance models for microservices: service discovery and fault tolerance. In: Proceedings of the 5th ECBS, pp. 1–10. ACM (2017)
Haselböck, S., Weinreich, R., Buchgeher, G.: An expert interview study on areas of microservice design. In: Proceedings of the 11th SOCA, pp. 137–144. IEEE (2018)
Kamimura, M., Yano, K., Hatano, T., Matsuo, A.: Extracting candidates of microservices from monolithic application code. In: Proceedings of the 25th APSEC, pp. 571–580. IEEE (2018)
Kobayashi, K., Kamimura, M., Yano, K., Kato, K., Matsuo, A.: SArF map: visualizing software architecture from feature and layer viewpoints. In: Proceedings of the 21st ICPC, pp. 43–52. IEEE (2013)
Lewis, G.A., Lago, P., Avgeriou, P.: A decision model for cyber-foraging systems. In: Proceedings of the 13th WICSA, pp. 51–60. IEEE (2016)
Li, S., et al.: A dataflow-driven approach to identifying microservices from monolithic applications. J. Syst. Softw. 157, 110380 (2019)
Newman, S.: Building Microservices: Designing Fine-Grained Systems, 2nd edn. O’Reilly Media Inc., Newton (2020)
Ntentos, E., Zdun, U., Plakidas, K., Schall, D., Li, F., Meixner, S.: Supporting architectural decision making on data management in microservice architectures. In: Bures, T., Duchien, L., Inverardi, P. (eds.) ECSA 2019. LNCS, vol. 11681, pp. 20–36. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-29983-5_2
Richardson, C.: Microservices Patterns: With Examples in Java. Manning, Shelter Island (2018)
Taibi, D., Auer, F., Lenarduzzi, V., Felderer, M.: From monolithic systems to microservices: an assessment framework. Inf. Softw. Technol. 137, 106600 (2021)
Tusjunt, M., Vatanawood, W.: Refactoring orchestrated web services into microservices using decomposition pattern. In: Proceedings of the 4th ICCC, pp. 609–613. IEEE (2018)
Waseem, M., Liang, P., Shahin, M.: A systematic mapping study on microservices architecture in DevOps. J. Syst. Softw. 170, 110798 (2020)
Waseem, M., Liang, P., Shahin, M., Ahmad, A., Nassab, A.R.: On the nature of issues in five open source microservices systems: an empirical study. In: Proceedings of the 25th EASE, pp. 201–210. ACM (2021)
Waseem, M., Liang, P., Shahin, M., Di Salle, A., Gastón, M.: Design, monitoring, and testing of microservices systems: the practitioners’ perspective. J. Syst. Softw. 182, 111061 (2021)
Acknowledgments
This work has been supported by the National Key R&D Program of China under Grant No. 2018YFB1402800 and the NSFC under Grant No. 62172311.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Waseem, M., Liang, P., Márquez, G., Shahin, M., Khan, A.A., Ahmad, A. (2021). A Decision Model for Selecting Patterns and Strategies to Decompose Applications into Microservices. In: Hacid, H., Kao, O., Mecella, M., Moha, N., Paik, Hy. (eds) Service-Oriented Computing. ICSOC 2021. Lecture Notes in Computer Science(), vol 13121. Springer, Cham. https://doi.org/10.1007/978-3-030-91431-8_62
Download citation
DOI: https://doi.org/10.1007/978-3-030-91431-8_62
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-91430-1
Online ISBN: 978-3-030-91431-8
eBook Packages: Computer ScienceComputer Science (R0)