IDE Custom View for Variable Influence Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrated Development Environments (IDEs) lack an efficient method to present a custom view of program code based on variable selection, making it difficult for developers to focus on relevant code segments and understand variable influences across the codebase.

Innovation Solution

A method within an IDE that allows selecting a variable instance in one portion of the code, searching for and identifying other instances, and presenting a custom view showing only the relevant portions of code that include the selected variable, with options to toggle between views and visualize influences through arrows and indicators.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If the IDE presents all portions of program code to show complete variable references, then the developer can see all variable influences, but the code view becomes overwhelming and difficult to navigate

Engineering Contradiction:
Improvevariable reference informationVSAvoidcode navigation
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The patent segments the code view by creating a custom view that displays only selected portions of program code containing the variable of interest and its references. This segmentation allows developers to focus on relevant code segments while hiding irrelevant portions, thus preserving variable reference information while improving navigability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and highlights only the relevant code portions that contain the selected variable and its references, separating them from the rest of the codebase. This extraction approach presents a focused view that maintains complete variable influence information while eliminating the overwhelming effect of displaying the entire codebase.

Inventive Principle:
Principle #2Taking out (Extraction)

2Loss of information

If the IDE searches the entire codebase to identify all variable instances, then complete variable influence is captured, but the time and computational resources increase

Engineering Contradiction:
Improvevariable instance completenessVSAvoidsearch time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent performs preliminary indexing and organization of variable references in the background, so that when a developer selects a variable, the system can quickly retrieve and display all instances without performing a complete codebase search at that moment. This preliminary action ensures complete variable instance capture while minimizing search time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copied and filtered view of the code that shows only the relevant portions containing the selected variable and its references. This copying approach allows the system to present complete variable influence information in a focused view without requiring the developer to navigate through the entire codebase, thus reducing perceived search time.

Inventive Principle:
Principle #26Copying

3Loss of information

If the IDE provides detailed information about variable influences, then code comprehension improves, but the interface complexity increases

Engineering Contradiction:
Improvecode comprehensionVSAvoidIDE interface
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent applies local quality by providing detailed variable influence information specifically in the context of the selected variable, rather than presenting comprehensive information for all variables simultaneously. The custom view highlights relevant code portions with contextual information, improving code comprehension for the specific variable of interest while keeping the overall interface simple and focused.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9785416B2Presenting a custom view in an integrated development environment based on a variable selection
Publication Date: 2017.10.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9785416B2 patent drawing
  • US9785416B2 patent drawing
  • US9785416B2 patent drawing

AI summary

Within a system comprising a processor and a memory, a method for, within integrated development environment (IDE), presenting a custom view in the IDE based on a variable selection. The method can include selecting a first instance of the first variable in a first portion of program code. Via the processor, the program code can be searched to identify at least a second instance of the first variable in at least a second portion of the program code. Further, via the processor, the custom view can be presented in the IDE to present at least the first portion of the program code and the second portion of the program code based on the identification of the first variable in the second portion of the program code.