Abstract
We introduce in this paper a novel approach, named MSExtractor, that formulate the microservices identification problem as a multi-objective combinatorial optimization problem to decompose a legacy application into a set of cohesive, loosely-coupled and coarse-grained services. We employ the non-dominated sorting genetic algorithm (NSGA-II) to drive a search process towards optimal microservices identification while considering structural dependencies in the source code. We conduct an empirical evaluation on a benchmark of two open-source legacy software systems to assess the efficiency of our approach. Results show that MSExtractor is able to find relevant microservice candidates and outperforms recent three state-of-the-art approaches.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002)
Mkaouer, W., et al.: Many-objective software remodularization using NSGA-III. ACM Trans. Softw. Eng. Methodol. (TOSEM) 24(3), 17 (2015)
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20(6), 476–493 (1994)
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. IEEE (2018)
Athanasopoulos, D., Zarras, A.V., Miskos, G., Issarny, V., Vassiliadis, P.: Cohesion-driven decomposition of service interfaces without access to source code. IEEE Trans. Serv. Comput. 8(4), 550–562 (2015)
Ouni, A., Wang, H., Kessentini, M., Bouktif, S., Inoue, K.: A hybrid approach for improving the design quality of web service interfaces. ACM Trans. Internet Technol. (TOIT) 19(1), 4 (2018)
Adjoyan, S., Seriai, A.-D., Shatnawi, A.: Service identification based on quality metrics object-oriented legacy system migration towards SOA. In: SEKE: Software Engineering and Knowledge Engineering (2014)
Newman, S.: Building Microservices: Designing Fine-grained Systems. O’Reilly Media, Sebastopol (2015)
Mazlami, G., Cito, J., Leitner, P.: Extraction of microservices from monolithic software architectures. In: 2017 IEEE International Conference on Web Services (ICWS) (2017)
Andritsos, P., Tzerpos, V.: Information-theoretic software clustering. IEEE Trans. Softw. Eng. 31(2), 150–165 (2005)
Zitzler, E., Laumanns, M., Thiele, L.: SPEA2: improving the strength Pareto evolutionary algorithm, TIK-report, vol. 103 (2001)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Saidani, I., Ouni, A., Mkaouer, M.W., Saied, A. (2019). Towards Automated Microservices Extraction Using Muti-objective Evolutionary Search. In: Yangui, S., Bouassida Rodriguez, I., Drira, K., Tari, Z. (eds) Service-Oriented Computing. ICSOC 2019. Lecture Notes in Computer Science(), vol 11895. Springer, Cham. https://doi.org/10.1007/978-3-030-33702-5_5
Download citation
DOI: https://doi.org/10.1007/978-3-030-33702-5_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-33701-8
Online ISBN: 978-3-030-33702-5
eBook Packages: Computer ScienceComputer Science (R0)