Cognitive Scope Analyzer for Programming Objects

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrated Development Environments (IDEs) lack effective means to visually distinguish and manage the scope of programming objects, leading to confusion and potential errors among developers due to limited coloring schemes that do not clearly indicate the type or scope of variables.

Innovation Solution

A computer-implemented method and system that determines the scope of programming objects and generates a cognitive user-interface mask based on a programmer's profile, applying it to a virtual reality representation of the code, allowing for intuitive visualization of scope and accessibility in a virtual world interface.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If traditional coloring schemes are used to identify programming objects, then basic variable identification is possible, but the type or scope of each variable cannot be readily determined

Engineering Contradiction:
Improvescope informationVSAvoiduser interface complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent segments the user interface into multiple layered masks, where each mask represents a different aspect of programming object scope (e.g., local scope, global scope, module scope). This allows comprehensive scope information to be displayed without overwhelming the developer with a single complex view.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimensional layer of visualization by applying cognitive masks that add scope context to the traditional code display. Instead of merely coloring variables, the system overlays scope information as an additional dimension, showing which scope levels each variable belongs to through mask layers.

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

2Ease of operation

If comprehensive scope visualization is implemented, then developer understanding improves, but the interface becomes more complex

Engineering Contradiction:
Improvedeveloper understandingVSAvoidinterface complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent applies different cognitive masks to different regions or contexts within the code display. Each mask is tailored to highlight scope information relevant to the current context, allowing developers to understand scope locally without being presented with all possible scope information simultaneously.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The cognitive masks are dynamically applied and adjusted based on the programmer's profile, the specific code context, and the type of scope information needed. The system can switch between different mask configurations to match the current development task, making the interface adaptive rather than static.

Inventive Principle:
Principle #15Dynamics

3Loss of information

If cognitive masks are applied to display scope information, then scope visibility improves, but processing requirements increase

Engineering Contradiction:
Improvescope visibilityVSAvoidprocessing energy
Core Design Contradiction:
Loss of informationVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary analysis of the code to identify programming objects and their scope attributes before the developer views the code. Scope information is pre-computed and organized into mask structures in advance, reducing the processing burden during actual code display and interaction.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates simplified copy representations of scope information through cognitive masks, rather than processing and displaying the full complexity of scope relationships. These mask copies provide sufficient scope visibility for development tasks while consuming less processing energy than a complete scope analysis display.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10169003B2Cognitive scope analyzer
Publication Date: 2019.01.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10169003B2 patent drawing
  • US10169003B2 patent drawing
  • US10169003B2 patent drawing

AI summary

Technical solutions are described for augmenting cognitive scope of a programming object in a programming development system. For example, a computer-implemented method includes determining, by a processor, a scope of a programming object in a computer program. The method further includes generating, by the processor, a cognitive programming user-interface mask corresponding to a programmer profile. The method further includes applying, by the processor, the cognitive programming user-interface mask to a user-interface of the programming development system, the user-interface displaying an indication of the scope of the programming object.