References & Citations
Computer Science > Software Engineering
Title: Monolith to Microservices: Representing Application Software through Heterogeneous Graph Neural Network
(Submitted on 1 Dec 2021 (v1), last revised 20 May 2022 (this version, v3))
Abstract: Monolithic software encapsulates all functional capabilities into a single deployable unit. But managing it becomes harder as the demand for new functionalities grow. Microservice architecture is seen as an alternate as it advocates building an application through a set of loosely coupled small services wherein each service owns a single functional responsibility. But the challenges associated with the separation of functional modules, slows down the migration of a monolithic code into microservices. In this work, we propose a representation learning based solution to tackle this problem. We use a heterogeneous graph to jointly represent software artifacts (like programs and resources) and the different relationships they share (function calls, inheritance, etc.), and perform a constraint-based clustering through a novel heterogeneous graph neural network. Experimental studies show that our approach is effective on monoliths of different types.
Submission history
From: Sambaran Bandyopadhyay [view email][v1] Wed, 1 Dec 2021 15:27:45 GMT (5196kb,D)
[v2] Fri, 17 Dec 2021 12:29:18 GMT (20805kb,D)
[v3] Fri, 20 May 2022 10:39:49 GMT (28922kb,D)
Link back to: arXiv, form interface, contact.