Multi-tenant Extension Deployment via Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional approaches to managing the release or upgrade of extensions to applications in a multi-tenant platform environment lack sufficient control over processes and administration, leading to potential harmful interactions with tenant accounts and inefficient feedback loops.

Innovation Solution

A system and method for managing the deployment of extensions to a multi-tenant data processing platform, which includes a platform extension manager that allows developers to control the phased rollout of upgrades, perform validation tests, and implement deployment processes selectively, ensuring that only designated users receive updates without impacting others.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If extensions are deployed to all users simultaneously, then the rollout speed is fast, but it causes harmful interactions and stability issues across tenant accounts

Engineering Contradiction:
Improveextension rollout speedVSAvoidtenant account stability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent segments the user base into different groups (e.g., by tenant account, by user role, by geographic region) and deploys extensions to each segment separately at different times. This controlled segmentation allows the system to maintain fast overall rollout speed while ensuring stability within each segment, preventing widespread harmful interactions by isolating potential issues to specific segments only.

Inventive Principle:
Principle #1Segmentation

2Reliability

If extensions are deployed to selected users only, then user feedback and stability can be tested, but the deployment process becomes more complex

Engineering Contradiction:
Improveextension stabilityVSAvoiddeployment process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic deployment system where the selection of users receiving extensions is not fixed but can be adjusted in real-time based on feedback, stability metrics, and business requirements. The system automatically adapts deployment parameters such as target user groups, rollout timing, and rollback triggers, reducing manual complexity while maintaining high reliability through continuous monitoring and adaptive control.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If developers have full control over extension deployment, then deployment flexibility is high, but administrative control and validation become difficult

Engineering Contradiction:
Improvedeployment flexibilityVSAvoidadministration ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent introduces an intermediary deployment management layer between developers and the multi-tenant platform. This intermediary automatically handles validation, tenant account verification, and deployment coordination based on pre-configured policies. Developers retain flexibility to define deployment strategies and target users, while the intermediary ensures administrative control, validates compatibility, and prevents harmful interactions, making the overall process easier to operate without sacrificing flexibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20170235559A1System and methods for management of cloud application extensions
Publication Date: 2017.08.17 NETSUITE INC
  • US20170235559A1 patent drawing
  • US20170235559A1 patent drawing
  • US20170235559A1 patent drawing

AI summary

Systems, apparatuses, and methods for managing the deployment of extensions to the functionality of a multi-tenant data processing platform. A computing system, such as a multi-tenant distributed computing platform, may have multiple business related applications installed on the platform that are used by one or more users/tenants to perform business related functions. Developers may create and implement “extensions” to such applications, and make those extensions available to tenants/users of the platform. Such extensions may provide an enhancement to the underlying application, such as by introducing new or improved functionality, a new or improved user interface, new or improved reporting capabilities, etc.