Automated Refactoring Scale Calculation via Dependency Strength Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for estimating the scale of software refactoring, such as those described in Patent Literatures 1 and 2, primarily focus on module-level calculations and are difficult for non-skilled individuals to perform accurately, especially for large volumes of source code, making it challenging to estimate refactoring needs effectively.
Innovation Solution
A scale calculation apparatus that includes a source code analysis unit to identify dependency strengths, an influence analysis unit to determine affected transfer functions, and a scale calculation unit to estimate refactoring scale based on these dependencies, enabling more accurate and appropriate estimation of refactoring needs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If manual estimation methods (function point method or WBS) are used to estimate refactoring scale, then estimation can be performed with past experience, but it becomes difficult for non-skilled persons to perform accurate estimation and becomes challenging for large volumes of source code
Solution Approach 1:
The patent replaces manual mechanical estimation processes with an automated computer-based system. The apparatus automatically analyzes source code dependencies, identifies transfer functions, and calculates refactoring scales without requiring manual intervention, thereby making the process accessible to non-skilled persons while maintaining accuracy through systematic automated analysis
Solution Approach 2:
The system enables self-service estimation by automatically analyzing the source code structure and dependencies to determine refactoring requirements. The apparatus independently identifies transfer functions and calculates modification scales without requiring expert knowledge or manual input, allowing any user to obtain accurate estimates through automated processing
2Productivity
If mechanical estimation methods based on module dependency scales are used, then estimation can be performed automatically, but the estimation based on scale of each module can only be performed without capturing the full refactoring impact
Solution Approach 1:
The patent segments the software system into functions and subsystems, then analyzes dependencies between these segments. By identifying transfer functions that move between subsystems and calculating dependency strengths for each segment, the system achieves both automated processing efficiency and precise estimation of refactoring impact across the entire system
Solution Approach 2:
The patent adds the dimension of dependency strength measurement to traditional module-level estimation. Instead of merely counting modules or lines of code, the system incorporates dependency strength values that quantify the impact of transfers on related functions, thereby enhancing estimation precision while maintaining automated processing capabilities
Data Source
AI summary
A source code analysis unit identifies dependency strengths of one or more functions included in a source code. An influence analysis unit identifies one or more transfer functions that will each move to a different subsystem due to refactoring and identifies a dependency strength to be influenced by the refactoring, based on the dependency strengths that have been identified by the source code analysis unit with respect to the one or more transfer functions. A scale calculation unit calculates the scale of the refactoring, based on the dependency strength to be influenced, which has been identified by the influence analysis unit.


