Software Version Traceability for Cross-Repository Performance Defects

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software performance analysis methods struggle to identify the cause of performance deterioration when software changes occur at earlier times, especially when multiple software components have separate update histories, making it difficult and time-consuming to specify the responsible software version.

Innovation Solution

A software analysis system that specifies the version of software causing performance degradation by identifying changes in reference information and merging software versions, using a binary search method to efficiently trace back to the problematic location across separate version management tools.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If separate version management tools are used for multiple software components, then each software can be independently managed and updated, but it becomes difficult and time-consuming to specify the cause of performance deterioration across software boundaries

Engineering Contradiction:
Improveindependent software managementVSAvoidtime to specify cause
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent introduces an intermediary mechanism that collects and manages reference information (version numbers, commit IDs, build numbers) between separate software components and their version management tools. This intermediary data structure enables cross-software traceability without requiring integration of the version management tools themselves, thus maintaining independent management while enabling efficient cause specification.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent adds a new dimension of analysis by examining reference information changes across software versions rather than only analyzing code differences. This dimensional shift allows tracing performance deterioration causes back to earlier versions even when the problematic change occurred in a different software component, bypassing the limitations of traditional diff-based analysis.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If traditional difference-based analysis is used to identify software changes, then recent changes can be identified, but changes occurring considerably earlier than the analysis time point cannot be discovered

Engineering Contradiction:
Improvechange detection accuracyVSAvoidtime span for detection
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent performs preliminary recording of reference information (version numbers, commit IDs, build numbers) at each software update and integration point. This preliminary action creates a historical trail that enables retrospective analysis of any version, allowing the system to trace causes back to any point in the software evolution history, not just recent changes.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces the mechanical diff-based comparison system with an information-theoretic approach using reference information tracing. Instead of comparing code bytes to find differences, the system uses version metadata and reference relationships to logically trace changes, enabling detection of causal changes regardless of time elapsed or code obfuscation.

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

Data Source

PatentUS20250390420A1Software analysis system and software analysis method
Publication Date: 2025.12.25 ASTEMO LTD
  • US20250390420A1 patent drawing
  • US20250390420A1 patent drawing
  • US20250390420A1 patent drawing

AI summary

An object of the invention is to quickly specify a version of software that causes a defect even when update histories of a plurality of pieces of software are managed separately. In a software analysis system according to the invention, when a performance degradation of second software is detected by a performance test, a version updated by merging first software is specified or a version where reference information of the first software is changed from that before is specified among past versions of the second software, thereby specifying a candidate in the first software which is a cause of the degradation (see FIG. 4B).