Serverless Service Mapping via Code Pattern Parsing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional service mapping technologies struggle to discover relationships between units of programmatic code hosted on third-party computing systems and other services provided by these systems, especially when computing resources are assigned on demand, leading to difficulties in understanding and managing network services.

Innovation Solution

A software application configured to obtain and parse programmatic code for patterns indicative of relationships with other services, generating associations and storing them in a database to create a service map, allowing for the visualization of these relationships independently of the on-demand execution of the code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Difficulty of detecting and measuring

If service mapping is performed on third-party computing systems with on-demand resource assignment, then service discovery capability is improved, but the ability to establish stable relationships between code and services deteriorates

Engineering Contradiction:
Improveservice discovery capabilityVSAvoidrelationship stability
Core Design Contradiction:
Difficulty of detecting and measuringVSReliability

Solution Approach 1:

The patent performs service mapping and relationship discovery before code execution occurs. By analyzing code patterns, dependencies, and service interactions in advance, the system establishes relationship mappings that persist in the database even when no specific computing resources are dedicated to executing the code. This preliminary action ensures relationships are captured despite the on-demand nature of cloud resource allocation.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If computing resources are assigned on demand for code execution, then resource utilization efficiency is improved, but service relationship traceability deteriorates

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidservice relationship traceability
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent creates a virtual copy of the service relationship map in the database that mirrors the actual code-service relationships. This copied representation allows the system to track and analyze service interactions without requiring persistent physical connections or dedicated computing resources. The relationship data is preserved independently of the transient nature of on-demand resource allocation.

Inventive Principle:
Principle #26Copying

3Device complexity

If traditional service mapping methods are used without code parsing, then system complexity is reduced, but relationship discovery accuracy deteriorates

Engineering Contradiction:
Improvesystem complexityVSAvoidrelationship discovery accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent introduces code parsing as an intermediary step between code upload and service mapping. The parser analyzes code patterns, service calls, and dependency relationships to extract accurate relationship information. This intermediary processing layer enables precise relationship discovery while maintaining manageable system complexity through modular architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11997746B2Discovery and service mapping of serverless resources
Publication Date: 2024.05.28 SERVICENOW INC
  • US11997746B2 patent drawing
  • US11997746B2 patent drawing
  • US11997746B2 patent drawing

AI summary

A computing system may include a database disposed within a remote network management platform that manages a managed network, and a software application associated with the platform. The software application may be configured to: obtain a unit of programmatic code from a third-party computing system, where the unit of programmatic code is hosted by the third-party computing system on behalf of the managed network, and where a program using the unit of programmatic code is executable by computing resources of the third-party computing system that are assigned on demand; parse the unit of programmatic code for a pattern indicative of respective relationships between the unit of programmatic code and service(s) provided by the third-party computing system; generate an association between the unit of programmatic code and the service(s); and store, in the database, representations of the unit of programmatic code, the service(s), and the association therebetween as discovered configuration items.