Identifying Appropriately-Sized Services with Deep Reinforcement Learning
Syeda Tasnim Fabiha, Saad Shafiq, Wesley Klewerton Guez Assun\c{c}\~ao, Nenad Medvidovi\'c

TL;DR
This paper introduces Rake, a deep reinforcement learning method for decomposing legacy systems into appropriately sized, cohesive services without requiring extensive documentation or personnel input, balancing modularity and business alignment.
Contribution
Rake is a novel, language-agnostic reinforcement learning approach that improves service decomposition by balancing modularization quality and business capability alignment.
Findings
Rake outperforms state-of-the-art techniques in modularization quality.
Rake achieves 18-22% better business capability alignment.
Optimizing only for business context can reduce decomposition quality.
Abstract
Service-based architecture (SBA) has gained attention in industry and academia as a means to modernize legacy systems. It refers to a design style that enables systems to be developed as suites of small, loosely coupled, and autonomous components (services) that encapsulate functionality and communicate via language-agnostic APIs. However, defining appropriately sized services that capture cohesive subsets of system functionality remains challenging. Existing work often relies on the availability of documentation, access to project personnel, or a priori knowledge of the target number of services, assumptions that do not hold in many real-world scenarios. Our work addresses these limitations using a deep reinforcement learning-based approach to identify appropriately sized services directly from implementation artifacts. We present Rake, a reinforcement learning-based technique that…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsService-Oriented Architecture and Web Services · Advanced Software Engineering Methodologies · Software System Performance and Reliability
