Unified PVAI Display for Cross-Context Code Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software development is hindered by the need for frequent context switches when managing shared code across multiple development contexts, leading to productivity losses due to unconsidered development context dependencies and errors.

Innovation Solution

The implementation of parsing-validated alternatives information (PVAI) that automatically acquires and displays relevant information from inactive development contexts within the active context, allowing developers to see unified IntelliSense-style information across multiple contexts without leaving the current context, thereby reducing processing costs and improving responsiveness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If developers switch between multiple development contexts to manage shared code, then they can access information from different contexts, but productivity decreases due to frequent context switching

Engineering Contradiction:
Improveinformation accessibilityVSAvoiddeveloper productivity
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent combines information from multiple development contexts into a unified presentation within the active context. The system merges parsing-validated alternatives information from inactive contexts with the active context information, allowing developers to access comprehensive information without switching contexts, thereby resolving the contradiction between information accessibility and productivity

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces an intermediary mechanism (the PVAI system) that acts as a mediator between the developer and multiple development contexts. This intermediary automatically acquires and processes information from inactive contexts, presenting it in a unified manner within the active context, eliminating the need for direct context switching while maintaining full information accessibility

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If developers focus on a single active development context, then productivity increases by avoiding context switches, but errors occur due to unconsidered dependencies in other contexts

Engineering Contradiction:
Improvedeveloper productivityVSAvoidcode reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary action by automatically acquiring parsing-validated alternatives information from inactive contexts before the developer makes changes in the active context. This advance preparation ensures that potential conflicts and dependencies across all contexts are identified upfront, allowing developers to proceed with confidence without switching contexts, thus maintaining both productivity and reliability

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback by providing unified PVAI results that incorporate information from all development contexts back to the developer within the active context. This feedback mechanism ensures that developers are aware of implications across contexts without leaving the active context, maintaining productivity while improving reliability through comprehensive information availability

Inventive Principle:
Principle #23Feedback

3Loss of information

If the system acquires PVAI from multiple inactive contexts, then information completeness improves, but processing time and computational cost increase

Engineering Contradiction:
Improveinformation completenessVSAvoidprocessing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent extracts only the necessary parsing-validated alternatives information from inactive contexts rather than processing entire context datasets. By selectively acquiring only the relevant PVAI needed for the current development task, the system achieves information completeness while minimizing processing time and computational overhead

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by acquiring PVAI from inactive contexts on-demand and selectively, rather than continuously processing all contexts. The system performs the minimum necessary acquisition to provide comprehensive information for the current active context, balancing information completeness with processing efficiency

Inventive Principle:
Principle #16Partial or excessive action

4Ease of operation

If the system provides unified PVAI results across all contexts, then developer understanding improves, but system complexity increases

Engineering Contradiction:
Improveease of useVSAvoidsystem complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements self-service by automatically acquiring, processing, and presenting unified PVAI results without requiring developer intervention to manage multiple contexts. The system autonomously handles the complexity of multi-context information integration, presenting simplified unified results that improve ease of use while the system internally manages the complexity through automated PVAI acquisition and merging mechanisms

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9262125B2Contextual focus-agnostic parsing-validated alternatives information
Publication Date: 2016.02.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9262125B2 patent drawing
  • US9262125B2 patent drawing
  • US9262125B2 patent drawing

AI summary

Parsing-validated alternatives information (PVAI) is acquired from inactive software development contexts and displayed in the current context to help developers understand how changes to an artifact will impact other contexts. A PVAI request occurs at user request or proactively, in a stand-alone tool or an integrated development environment. PVAI is obtained and acquired from active and inactive contexts, unified, and displayed with corresponding context IDs. PVAI provides parsing-validated information for identifier autocompletion, parameter selection, class or object member selection, routine references, and software construct declarations. Development contexts have dimensions such as target platform, lifecycle configuration, target operating system, graphics processing configuration, numeric processing configuration, IDE project, and licensing configuration. Development context candidates for PVAI acquisition are determined from user preferences and by exclusion of unrealized contexts. PVAI acquisition cost is reduced by reusing computational results in another context. PVAI code can be distributed and/or run in the background.