Modularization Evaluator for Software Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods lack a comprehensive approach to accurately measure and analyze the modularization quality of software systems, particularly in legacy applications, leading to degradation over time due to ad-hoc changes that disregard modularity principles, making it difficult for managers to identify and address issues effectively.

Innovation Solution

A modularization evaluator is introduced that assesses software source code using multiple perspectives, including structural, architectural, size, and similarity of purpose, employing indices such as model interaction index, layer organization index, and concept domination metric to evaluate modularization quality and track changes over time, providing insights into preservation or degradation of modularity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If software systems are maintained and enhanced over time, then functionality and adaptability improve, but modularization quality degrades due to ad-hoc changes

Engineering Contradiction:
ImprovefunctionalityVSAvoidmodularization quality
Core Design Contradiction:
Adaptability or versatilityVSManufacturing precision

Solution Approach 1:

The patent implements automated feedback mechanisms by continuously measuring modularization quality metrics (cohesion, coupling, depth of inheritance) and providing this information to developers. This feedback loop enables teams to understand the impact of their changes on system modularity and adjust their development practices accordingly, preventing gradual degradation while maintaining adaptability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent applies preliminary action by establishing modularization quality thresholds and guidelines before development begins. Review processes are configured to check against these pre-defined standards, allowing teams to prevent modularity degradation before it occurs rather than reacting to it later.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If comprehensive modularization metrics are implemented, then measurement precision improves, but device complexity increases due to multiple perspectives and indices

Engineering Contradiction:
Improvemodularization quality measurementVSAvoidevaluator complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the complex evaluation task into distinct, manageable perspectives (structural, architectural, size, similarity of purpose), each with its own specific metrics. This segmentation allows the system to comprehensively measure modularization quality while keeping each individual measurement component simple and understandable.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal evaluation framework that handles multiple types of modularization assessments through a single integrated system. The evaluator can measure cohesion, coupling, inheritance depth, and other metrics using a common architecture, reducing overall system complexity compared to implementing separate tools for each metric.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Measurement precision

If multiple modularization perspectives are evaluated, then measurement comprehensiveness improves, but loss of time increases due to extensive analysis required

Engineering Contradiction:
Improveevaluation comprehensivenessVSAvoidanalysis time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent implements self-service by having the evaluation system automatically instrument and measure modularization quality without requiring manual intervention. The system autonomously collects data, computes metrics across all perspectives, and generates reports, eliminating the need for time-consuming manual code analysis while maintaining comprehensive evaluation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent applies preliminary action by pre-computing and caching intermediate results during the evaluation process. By preparing data structures and metrics in advance rather than calculating everything from scratch during analysis, the system significantly reduces the time required for comprehensive multi-perspective evaluation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8713513B2Evaluating programmer efficiency in maintaining software systems
Publication Date: 2014.04.29 INFOSYS LTD
  • US8713513B2 patent drawing
  • US8713513B2 patent drawing
  • US8713513B2 patent drawing

AI summary

Quality of modularization of source code is tested using different perspectives such as a structural modularity perspective, an architectural modularity perspective, a size perspective, and a similarity of purpose perspective. A history of changes in modularization may be kept such that the degree to which given source code is well-modularized can be determined over time. The changes made to the code by individual programmers may be kept, such that the degree to which their coding enhanced or harmed modularization may be tracked.