Journal article
Service Candidate Identification from Monolithic Systems Based on Execution Traces
IEEE transactions on software engineering, v 47(5), pp 987-1007
01 May 2021
Featured in Collection : UN Sustainable Development Goals @ Drexel
Abstract
Monolithic systems increasingly suffer from maintainability and scalability issues as they grow in functionality, size, and complexity. It is widely believed that (micro)service-based architectures can alleviate these problems as each service is supposed to have the following characteristics: clearly defined functionality , sufficient modularity , and the ability to evolve independently . Industrial practices show that service extraction from a legacy monolithic system is labor-intensive and complex. Existing work on service candidate identification aims to group entities of a monolithic system into potential service candidates, but this process has two major challenges: first, it is difficult to extract service candidates with consistent quality; second, it is hard to evaluate the identified service candidates regarding the above three characteristics. To address these challenges, this paper proposes the Functionality-oriented Service Candidate Identification ( FoSCI ) framework to identify service candidates from a monolithic system. Our approach is to record the monolith's execution traces, and extract services candidates using a search-based functional atom grouping algorithm. We also contribute a comprehensive service candidate evaluation suite that uses interface information, structural/conceptual dependency, and commit history. This evaluation system consists of 8 metrics, measuring functionality, modularity, and evolvability respectively of identified service candidates. We compare FoSCI with three existing methods, using 6 widely-used open-source projects as our evaluation subjects. Our results show that FoSCI outperforms existing methods in most measures.
Metrics
Details
- Title
- Service Candidate Identification from Monolithic Systems Based on Execution Traces
- Creators
- Wuxia Jin - Ministry of Education Key Laboratory of Intelligent Networks and Network Security (MOEKLINNS), Xi'an Jiaotong University, Xian, Shaanxi, ChinaTing Liu - Ministry of Education Key Laboratory of Intelligent Networks and Network Security (MOEKLINNS), Xi'an Jiaotong University, Xian, Shaanxi, ChinaYuanfang Cai - Drexel UniversityRick Kazman - University of Hawaii SystemRan Mo - Drexel UniversityQinghua Zheng - Ministry of Education Key Laboratory of Intelligent Networks and Network Security (MOEKLINNS), Xi'an Jiaotong University, Xian, Shaanxi, China
- Publication Details
- IEEE transactions on software engineering, v 47(5), pp 987-1007
- Publisher
- IEEE
- Grant note
- 2016YFB0800202 / National Key Research and Development Program of China (10.13039/501100012166) 1816594; 1835292; 1823177 / National Science Foundation (10.13039/100000001) IRT_17R86 / Ministry of Education Innovation Research Team 61632015; 61772408; U1766215; 61721002; 61532015; 61833015 / National Natural Science Foundation of China (10.13039/501100001809)
- Resource Type
- Journal article
- Language
- English
- Academic Unit
- Computer Science
- Web of Science ID
- WOS:000650457700008
- Scopus ID
- 2-s2.0-85106015844
- Other Identifier
- 991019167589204721
UN Sustainable Development Goals (SDGs)
This publication has contributed to the advancement of the following goals:
InCites Highlights
Data related to this publication, from InCites Benchmarking & Analytics tool:
- Collaboration types
- Domestic collaboration
- International collaboration
- Web of Science research areas
- Computer Science, Software Engineering
- Engineering, Electrical & Electronic