Semi-Automated Split Tool User Guide

Background

When extracting the Koupleless module from a large monolithic SpringBoot application, users face high learning and trial-and-error costs. Users need to analyze from the service entrance which classes to split into the module, then modify the module according to the Koupleless module coding method.

To reduce learning and trial-and-error costs, KouplelessIDE plugin provides semi-automated splitting capabilities: analyzing dependencies and automating modifications.

Quick Start

1. Install Plugin

Install the KouplelessIDE plugin from the IDEA plugin marketplace:

2. Configure IDEA

Ensure that IDEA -> Preferences -> Builder -> Compiler’s “User-local build process heap size” is at least 4096

3. Select Module

Step one: Open the SpringBoot application that needs splitting with IDEA, on the right panel open ServerlessSplit

Step two: Select the splitting method as needed, click “Confirm and Collapse”

4. Dependency Analysis

During splitting, it is necessary to analyze the dependencies between classes and Beans. The plugin allows for the visualization of dependency relationships, and it is up to the business side to decide whether a class should be split into a module.

Step one: Click to activate

Step two: Drag the service entry to the module, supporting cross-level dragging

Dragging result:

Step three: Drag the “Files for Analysis”, click to analyse dependencies, view Class/Bean dependencies as shown below:

Where the icons represent:

IconMeaningRequired Action
in-module-icon.jpgAlready in moduleNo action required
can-move-to-module.jpgCan be moved to moduleDrag to module can-move-to-module-action.jpg
recommend-to-analyse-icon.jpgRecommended to analyze dependencyDrag to analyze recommend-to-analyse-action.jpg
warning-icon.jpgShould not be moved to moduleHover to view dependency details warning-icon.jpg

Step four: Follow the prompts, through dragging, stepwise analyze, import the necessary module files

5. Detection

Click on “Preliminary Detection”, which will prompt the user about possible issues with this split, and which middleware might require manual intervention.

Open the lower sidebar in KouplelessIDE to view the prompts.

6. Splitting

Click to start the splitting.

Open the lower sidebar in KouplelessIDE to view the prompts.