Detection and Filling of Functional Holes in Microservice Systems: Method and Infrastructure Support.

Zihang Su,Xiang He,Teng Wang,Lei Liu,Zhiying Tu,Zhongjie Wang
DOI: https://doi.org/10.1016/j.infsof.2023.107270
IF: 3.9
2023-01-01
Information and Software Technology
Abstract:With the widespread use of microservices technology, a growing number of Microservice Systems (MSS) have emerged. Monolithic applications are divided into several small and independent microservices that provide functions through APIs. These microservices can be orchestrated by service composition to satisfy various user requirements: microservice functionalities are aggregated into coarse-grained solutions to provide composite functions to users. However, although various service composition approaches have been presented in many works of literature, they failed to solve the situation that no feasible solutions can be found because of missing functions in MSS, named Functional Hole (FH). As a result, the system cannot satisfy user requirements and faces Quality of Service (QoS) declines. In this paper, to reduce the impact of missing functions, we defined the FH to describe the absence of functions for MSS when it cannot satisfy user requirements. Moreover, for the first time, we proposed the Detection and Filling Problem of FH (DFPFH) in a running MSS. A three-phase algorithm with supporting infrastructure was developed to solve DFPFH. It detects FHs based on hypergraphs, fills FHs with services from an external service system at runtime, and generates suggestions for thoroughly filling FH to developers. Plenty of experiments were conducted, and the results validate our approaches’ usability, effectiveness, and performance.
What problem does this paper attempt to address?