Remote Network Platform Post-Upgrade Debugging via Code Change Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

After software upgrades in a remote network management platform, enterprises face difficulties in identifying the cause of issues due to the large number of program code units executed, making it challenging to diagnose and resolve problems effectively.

Innovation Solution

The platform identifies and displays program code units that have been modified or added by the enterprise or changed during the upgrade, allowing users to efficiently narrow down the causes of issues by grouping and displaying relevant code units on a graphical user interface.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If all program code units are displayed after an upgrade, then complete information is provided, but the complexity of diagnosing problems increases due to the large number of code units

Engineering Contradiction:
Improveinformation completenessVSAvoiddiagnostic complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent segments the large set of program code units into two distinct groups: modified code units (those changed by the enterprise) and upgraded code units (those changed by the software upgrade). This segmentation is achieved by maintaining separate identifiers for each type of change and displaying them in different regions of the graphical interface. By dividing the code units into manageable segments, the system reduces diagnostic complexity while preserving complete information about all changes.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all executed program code units are displayed, then complete debugging information is available, but the time required to identify problems increases

Engineering Contradiction:
Improvedebugging accuracyVSAvoiddiagnostic time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments code units by change type (modified vs. upgraded) and displays them in separate regions, allowing developers to quickly focus on specific categories of changes. This segmentation enables faster identification of potential problem sources without sacrificing debugging accuracy, as all relevant code units are still displayed but organized for efficient analysis.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of organization by categorizing code units according to the type of change (enterprise-modified vs. upgrade-changed). This additional categorical dimension transforms the flat list of all executed code units into a structured, multi-dimensional view that enables faster filtering and analysis, reducing diagnostic time while maintaining complete debugging information.

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

3Loss of information

If the system tracks all program code units, then complete change history is recorded, but the difficulty of detecting and measuring specific changes increases

Engineering Contradiction:
Improvechange history completenessVSAvoidchange detection difficulty
Core Design Contradiction:
Loss of informationVSDifficulty of detecting and measuring

Solution Approach 1:

The system segments the change history by creating distinct identifiers for modified code units and upgraded code units. Each segment is tracked separately with its own metadata, allowing the system to maintain complete change history while enabling easy detection and measurement of specific change types. The graphical interface displays these segments in separate regions, making it simple to detect and measure changes in each category independently.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11922155B2Post-upgrade debugging in a remote network management platform
Publication Date: 2024.03.05 SERVICENOW INC
  • US11922155B2 patent drawing
  • US11922155B2 patent drawing
  • US11922155B2 patent drawing

AI summary

An example embodiment may involve receiving, from a client device, a request to access a web-based resource of a computational instance. The embodiment may also involve accessing data defining one or more change indications for one or more respective program code units, wherein each of the one or more change indications indicates that a respective program code unit of the one or more program code units has been changed since a most recent software release. The embodiment may also involve generating, for display via the client device, a representation of the web-based resource that includes a region specifying the one or more respective program code units for which there are change indications.