Code Change Filtering and Visual Reporting in Software Models

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing environments lack efficient tools for analyzing and reporting changes in software models, particularly in identifying and highlighting modified or added code since the last test execution, which hampers effective version control and configuration management.

Innovation Solution

A technical computing environment (TCE) with integrated tools for filtering and generating reports based on execution information, using a version control system to track changes and visually differentiate between added, deleted, or modified code, and unchanged code within software models.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If comprehensive code change tracking is implemented to identify all modified portions, then version control accuracy is improved, but system complexity and processing time increase

Engineering Contradiction:
Improveversion control accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments code changes into distinct categories (added, deleted, modified) and processes each segment separately through targeted filtering operations. This segmentation allows the system to track comprehensive changes while managing complexity by handling specific change types through dedicated filtering rules rather than analyzing entire codebases monolithically.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by establishing baseline versions of code and pre-defining filtering criteria before actual change detection occurs. Version control snapshots are created in advance, and filtering rules are pre-configured to identify specific change patterns, enabling efficient subsequent analysis without ad-hoc processing of entire codebases.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If detailed execution path analysis is performed on all code changes, then debugging accuracy is improved, but processing time increases

Engineering Contradiction:
Improvedebugging accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies local quality by directing detailed execution path analysis only to specifically identified changed code portions rather than analyzing entire codebases uniformly. Filtering mechanisms isolate relevant changed segments, and execution path tracing is concentrated on these localized areas, maintaining high debugging accuracy for critical changes while reducing overall processing time through selective analysis.

Inventive Principle:
Principle #3Local quality

3Ease of operation

If visual differentiation of code changes is implemented, then ease of operation is improved, but information processing complexity increases

Engineering Contradiction:
Improvecode review easeVSAvoidprocessing complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements visual differentiation through color-coded annotations that distinguish between added, deleted, and modified code portions. This color-change approach provides intuitive visual cues for code reviewers, enabling quick identification of change types without requiring complex symbolic notation or multiple visual layers, thus improving ease of operation while managing processing complexity through standardized visual encoding.

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS9678718B1Analyzing information associated with logic
Publication Date: 2017.06.13 MATHWORKS INC
  • US9678718B1 patent drawing
  • US9678718B1 patent drawing
  • US9678718B1 patent drawing

AI summary

In an embodiment, information associated with logic is acquired. The logic may have a changed portion and an unchanged portion. The information may include information associated with an execution of the logic. A filter is applied to the acquired information to identify information associated with the changed portion of the logic. A report may be generated based on the identified information.