Software Dependency Analysis via Communication Protocol Fixed Values
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software analysis methods fail to accurately determine the range of influence across multiple devices in a system, as they rely on dependency relationships within source code, neglecting interactions with other devices connected by communication, leading to potential malfunctions due to inconsistencies.
Innovation Solution
A software analysis apparatus that analyzes source code to extract fixed values and associate them with software elements, identifying dependency relationships between software components, and displays these relationships to users, enabling tracing of influences caused by changes across the system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Extent of automation
If source code analysis is used to identify dependency relationships, then the analysis can be automated and processed mechanically, but the range of influence including software running on other devices connected by communication cannot be indicated
Solution Approach 1:
The patent segments the analysis into two parts: intra-device dependency analysis through source code, and inter-device dependency analysis through communication protocol analysis. This allows automated processing of source code while separately capturing communication-based dependencies between devices that would otherwise be lost.
Solution Approach 2:
The patent introduces communication protocol analysis as an intermediary method to bridge the gap between source code analysis and inter-device dependencies. By analyzing communication protocols separately and combining results, the system recovers information about dependencies across device boundaries that source code analysis alone cannot detect.
2Loss of information
If design specification is used to examine the range of influence, then the analysis can cover the entire system including inter-device relationships, but the examination by humans takes a long time and there is a high likelihood of occurrence of mistakes
Solution Approach 1:
The patent replaces manual human examination of design specifications with automated computational analysis. The system uses algorithms to process both source code and communication protocol information, substituting the slow, error-prone human mechanical process with fast, consistent automated processing that maintains complete system visibility.
Solution Approach 2:
The patent creates a unified analysis framework that handles multiple types of dependencies (intra-device and inter-device) through a single automated system. This multi-functional approach eliminates the need for separate manual examinations while preserving the comprehensive system view that design specifications provide.
3Extent of automation
If design specification including machine-processable model is used, then the analysis can be automated, but content of the design document may be missing or may be out of date
Solution Approach 1:
The patent merges multiple information sources (source code analysis results and communication protocol analysis results) to create a comprehensive dependency map. This combination compensates for the incompleteness or outdated nature of any single source, improving accuracy while maintaining automated processing capability.
Solution Approach 2:
The system uses feedback loops where analysis results from both source code and communication protocols continuously refine and update the dependency information. This ensures the information remains current and accurate even as systems evolve, while the automated nature is preserved through iterative computational processes.
Data Source
AI summary
An analyzing unit analyzes source code specified by an input unit, to obtain fixed values which are used to distinguish between pieces of content of communication data for realizing a dependency relationship between pieces of software. A relationship between the obtained fixed values and software elements is saved in a storage unit. By an influence-by-change analyzing unit, pieces of information on a plurality of pieces of software saved in the storage unit are associated with each other based on the fixed values used to distinguish between pieces of content of communication data, and a dependency relationship between software program elements is analyzed. Analysis results are displayed in a diagram or table format on a display unit.


