Dynamic UI Validation in Multi-Tenant Services

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In on-demand multi-tenant service environments, upgrading computer program code can lead to compatibility issues due to errors or ambiguities in new versions, causing client programs to malfunction, as existing validation methods fail to ensure substantive similarity in compiler results between different builds.

Innovation Solution

A validation logic system that processes user-submitted computer program code by translating it into an intermediate representation, comparing results between different builds, and presenting differences to users, ensuring compatibility by filtering out non-substantive changes and identifying regression errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If new versions of building blocks are upgraded to enhance functionality, then the features and capabilities are improved, but compatibility issues arise causing client programs to malfunction

Engineering Contradiction:
Improvefeatures of building blocksVSAvoidclient program compatibility
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The validation system performs preliminary actions by compiling client program code against both the old and new versions of building blocks before the upgrade is deployed. This allows compatibility issues to be detected in advance, enabling the system to prevent unreliable upgrades from being activated while still allowing functional enhancements to proceed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback by comparing compiler results from both old and new building block versions, identifying substantive differences that indicate compatibility problems. This feedback mechanism allows the system to automatically detect when an upgrade would cause client program failures and prevent deployment of such problematic versions.

Inventive Principle:
Principle #23Feedback

2Reliability

If validation is performed on all compiler results to ensure compatibility, then reliability is improved, but the complexity of the validation system increases

Engineering Contradiction:
Improvecompatibility validationVSAvoidvalidation system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system extracts only the substantive differences between compiler results using pattern matching and filtering techniques. By focusing only on meaningful changes rather than comparing entire compiler outputs, the system reduces validation complexity while maintaining reliability in detecting compatibility issues.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The validation system acts as an intermediary layer between the compiler and the deployment process. It intercepts compiler results, performs intelligent comparison and analysis, and determines whether upgrades should proceed. This intermediary approach automates the validation process, reducing the need for complex manual validation procedures.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If comprehensive validation is performed to identify all errors, then reliability is improved, but the time required for validation increases

Engineering Contradiction:
Improveerror detection accuracyVSAvoidvalidation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system replaces manual validation mechanics with automated computational processes. By using computer algorithms to compare compiler results, identify patterns, and detect substantive differences, the system achieves comprehensive error detection much faster than manual validation would allow, thus improving reliability without proportionally increasing validation time.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS9098618B2Validating visual components
Publication Date: 2015.08.04 SALESFORCE INC
  • US9098618B2 patent drawing
  • US9098618B2 patent drawing
  • US9098618B2 patent drawing

AI summary

Methods, systems, apparatus, and computer-readable media for validating components of a dynamic user interface in an on-demand multi-tenant service environment are disclosed. Organizations corresponding to tenants in the on-demand multi-tenant service environment are identified. A multi-tenant database system residing on multiple servers is provided for each of the identified organizations. Dynamic user interface pages associated with the organizations are identified. First and second compilation outputs based upon respective first and second invocations of a compiler configured to compile the one or more dynamic user interface pages are produced with reference to respective first and second builds of computer program code. Differences between the first and second compilation outputs are identified and presented in a user interface on a display device of the multi-tenant service environment. The differences can be identified by performing a comparison and selecting one or more differences that match a pattern specifier.