Software Dependency Analysis via Communication Protocol Fixed Values

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improveautomated analysisVSAvoidinter-device dependency information
Core Design Contradiction:
Extent of automationVSLoss of information

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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

Engineering Contradiction:
Improvecomplete system viewVSAvoidexamination time
Core Design Contradiction:
Loss of informationVSLoss of time

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.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

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.

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

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

Engineering Contradiction:
Improveautomated processingVSAvoidaccuracy of dependency information
Core Design Contradiction:
Extent of automationVSMeasurement precision

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.

Inventive Principle:
Principle #5Merging (Combining)

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.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11119886B2Software analysis apparatus, software analysis method, and computer readable medium
Publication Date: 2021.09.14 MITSUBISHI ELECTRIC CORP
  • US11119886B2 patent drawing
  • US11119886B2 patent drawing
  • US11119886B2 patent drawing

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.