Automated Microservice Decomposition Method as Multi-Objective Optimization

被引:3
作者
Kinoshita, Takahiro [1 ]
Kanuka, Hideyuki [1 ]
机构
[1] Hitachi Ltd, Res & Dev Grp, Yokohama, Kanagawa, Japan
来源
2022 IEEE 19TH INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE COMPANION (ICSA-C 2022) | 2022年
关键词
microservice; decomposition; multi-objective optimization; ALGORITHM;
D O I
10.1109/ICSA-C54293.2022.00028
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
IT architects expend a great deal of effort to manually decompose a current system into microservices (MSD) to improve the system maintainability. There are several methods that decompose the current system by automatically generating MSD candidates (MSDCs). These MSDCs are evaluated by defined evaluation functions, and the weighted sum of the evaluation is used to determine the best MSDC. However, it is difficult for IT architects to define the weighting on the spot. In this research, we propose an automated MSD method to generate a number of MSDCs by executing MSD as a multi-objective optimization problem. In the proposed method, a sufficient number of MSDCs is generated without weighting by using predefined MSD policies and fix operations. The generated MSDCs are mapped to a vector space that consists of basis vectors formulated in accordance with the evaluation functions defined by the MSD policies. Pareto-optimal solutions are then extracted from the mapped MSDCs by using a non-dominated sorting algorithm. We also extract MSDCs that are closest to the reference lines, which are defined to divide the vector space evenly, as distinctive MSDCs. We applied our method to two cases and found that it can automatically generate a sufficient number of distinctive MSDCs, thus enabling IT architects to efficiently find the best MSDC and rapidly execute MSD.
引用
收藏
页码:112 / 115
页数:4
相关论文
共 15 条
[1]  
Bogner J., 2017, P 27 INT WORKSH SOFT, P107, DOI [10.1145/3143434, DOI 10.1145/3143434.3143443]
[2]   Using Cohesion and Coupling for Software Remodularization: Is It Enough? [J].
Candela, Ivan ;
Bavota, Gabriele ;
Russo, Barbara ;
Oliveto, Rocco .
ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2016, 25 (03)
[3]   Normal-boundary intersection: A new method for generating the Pareto surface in nonlinear multicriteria optimization problems [J].
Das, I ;
Dennis, JE .
SIAM JOURNAL ON OPTIMIZATION, 1998, 8 (03) :631-657
[4]   Remodularization Analysis for Microservice Discovery Using Syntactic and Semantic Clustering [J].
De Alwis, Adambarage Anuruddha Chathuranga ;
Barros, Alistair ;
Fidge, Colin ;
Polyvyanyy, Artem .
ADVANCED INFORMATION SYSTEMS ENGINEERING, CAISE 2020, 2020, 12127 :3-19
[5]   A fast and elitist multiobjective genetic algorithm: NSGA-II [J].
Deb, K ;
Pratap, A ;
Agarwal, S ;
Meyarivan, T .
IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, 2002, 6 (02) :182-197
[6]   An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point-Based Nondominated Sorting Approach, Part I: Solving Problems With Box Constraints [J].
Deb, Kalyanmoy ;
Jain, Himanshu .
IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, 2014, 18 (04) :577-601
[7]   Migrating towards Microservice Architectures: an Industrial Survey [J].
Di Francesco, Paolo ;
Lago, Patricia ;
Malavolta, Ivano .
2018 IEEE 15TH INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE (ICSA), 2018, :29-38
[8]   Service Cutter: A Systematic Approach to Service Decomposition [J].
Gysel, Michael ;
Kolbener, Lukas ;
Giersche, Wolfgang ;
Zimmermann, Olaf .
SERVICE-ORIENTED AND CLOUD COMPUTING, (ESOCC 2016), 2016, 9846 :185-200
[9]   Service Candidate Identification from Monolithic Systems Based on Execution Traces [J].
Jin, Wuxia ;
Liu, Ting ;
Cai, Yuanfang ;
Kazman, Rick ;
Mo, Ran ;
Zheng, Qinghua .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2021, 47 (05) :987-1007
[10]   Extracting Candidates of Microservices from Monolithic Application Code [J].
Kamimura, Manabu ;
Yano, Keisuke ;
Hatano, Tomomi ;
Matsuo, Akihiko .
2018 25TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2018), 2018, :571-580