Actionable Diagnostic Tags in Software Development Environment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of obtaining and utilizing information from software analysis tools to improve software development is complex and time-consuming, often interfering with development activities.

Innovation Solution

A software development environment that displays code with actionable tags providing diagnostic information, allowing developers to drill down for more details without interrupting their work, using a code information service that automatically retrieves and updates information asynchronously.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If diagnostic information is obtained from analysis tools, then code quality improvement is enabled, but the process becomes complex and time-consuming

Engineering Contradiction:
Improvecode qualityVSAvoidprocess complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges multiple analysis tools and diagnostic information sources into a single integrated development environment. The code information service consolidates data from various analysis tools, making them available as actionable tags within the IDE itself, thereby reducing process complexity while maintaining comprehensive code quality monitoring

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The code information service acts as an intermediary between analysis tools and developers. It automatically retrieves diagnostic information, processes it into actionable tags, and presents it in the IDE, eliminating the need for developers to manually navigate complex toolchains and reducing overall process complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If diagnostic information is obtained from analysis tools, then code quality improvement is enabled, but the process is time-consuming

Engineering Contradiction:
Improvecode qualityVSAvoidtime consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The code information service performs preliminary actions by automatically retrieving and processing diagnostic information in advance. Actionable tags are pre-generated and displayed in the IDE before developers need them, eliminating time-consuming manual information gathering during development

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system maintains continuous operation by automatically updating actionable tags as code changes. The code information service continuously monitors code modifications and updates relevant diagnostic information without interrupting developer workflow, ensuring always-up-to-date insights are available

Inventive Principle:
Principle #20Continuity of useful action

3Loss of information

If diagnostic information is displayed in the development environment, then code insights are improved, but development activities may be interfered with

Engineering Contradiction:
Improvecode insightsVSAvoiddevelopment activity continuity
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The patent segments diagnostic information into discrete actionable tags that are displayed in close proximity to the relevant code without overwhelming the interface. This segmentation allows developers to access specific insights on-demand through drill-down functionality, maintaining ease of operation while providing comprehensive code insights

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically adapts its behavior based on developer interaction. Actionable tags can be expanded or collapsed, and detailed information is revealed only when needed through drill-down actions. This dynamic presentation ensures code insights are available without interfering with normal development activities

Inventive Principle:
Principle #15Dynamics

4Measurement precision

If detailed diagnostic information is provided, then code analysis depth is improved, but information retrieval complexity increases

Engineering Contradiction:
Improvecode analysis depthVSAvoidinformation retrieval complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments detailed diagnostic information into hierarchical levels of actionable tags. Surface-level tags provide high-level summaries, while drill-down functionality reveals detailed information only when needed. This segmentation maintains deep code analysis capability while simplifying the retrieval process through progressive disclosure

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9069899B2Integrating diagnostic information in development environment
Publication Date: 2015.06.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9069899B2 patent drawing
  • US9069899B2 patent drawing
  • US9069899B2 patent drawing

AI summary

Aspects of the subject matter described herein relate to assisting software development. In aspects, a software development environment may display code and information about the code on a user interface. In one example, the information includes diagnostic information about the code. The information may be represented by actionable tags that allow the software developer to drill-down and obtain more detailed information about the code. The information may be automatically obtained by the software development environment in a way that does not interfere with the development activities of the software developer. The actionable tags are displayed in close proximity to code with which they are associated.