Multi-Tenant Software Inheritance via Master Application Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multi-tenant systems face challenges in efficiently customizing server-based software applications to meet the diverse needs of different user groups, leading to increased development and deployment time and costs.

Innovation Solution

A multi-tenant architecture that allows for the creation of tenant applications derived from a master application, enabling customization and inheritance of functionalities, with the ability to selectively add or remove features based on user requirements, thereby reducing build and deployment time and costs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multi-tenant systems customize server-based software applications for different user groups, then user requirements compliance is improved, but development and deployment time increases

Engineering Contradiction:
Improveuser requirements complianceVSAvoiddevelopment and deployment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system segments the multi-tenant application into a master application and multiple tenant applications. The master application contains common functionalities that can be inherited by tenant applications, while tenant applications can have custom functionalities. This segmentation allows standardized inheritance of core features while enabling customization, thereby improving user requirements compliance without proportionally increasing development time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The master application is developed in advance with all common functionalities that will be inherited by tenant applications. This preliminary action allows tenant applications to be created more quickly by inheriting pre-built features, reducing the overall development and deployment time while still meeting diverse user requirements.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If multi-tenant systems customize server-based software applications for different user groups, then user requirements compliance is improved, but development costs increase

Engineering Contradiction:
Improveuser requirements complianceVSAvoiddevelopment costs
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The master application serves multiple purposes by providing common functionalities that are inherited by multiple tenant applications. This universal base reduces redundant development across tenant applications, lowering overall development costs while still allowing each tenant application to be customized for specific user requirements through selective inheritance and addition of custom features.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Productivity

If tenant applications inherit functionalities from master application, then build time is reduced, but system complexity increases

Engineering Contradiction:
Improvebuild timeVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements a nested structure where tenant applications are contained within the broader multi-tenant system and inherit from the master application. This nesting allows tenant applications to access and reuse functionalities from the master application without duplicating code, reducing build time. The hierarchical inheritance relationship manages complexity by organizing functionalities in a structured manner where common features are defined once in the master application and automatically available to all tenant applications.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS10484483B1Method and system for providing software functionalities to users of multi-tenant applications via inheritance
Publication Date: 2019.11.19 DELL EMC
  • US10484483B1 patent drawing
  • US10484483B1 patent drawing
  • US10484483B1 patent drawing

AI summary

In general, embodiments of the technology relate to a method for providing software functionalities to users of multi-tenant applications via inheritance. The method includes defining a functionality to be inheritable by a tenant application, in a master application, including selecting the functionality from a set of implemented functionalities, and defining a scope for the selected functionality, and publishing the master application. The method further includes, after publishing the master application, receiving a request to generate a tenant application. The request specifies the master application and the functionality to be inheritable by the tenant application. The method also includes generating the tenant application in response to the request. Further, the method includes publishing the tenant application, including the functionality, to a set of users; and receiving a request to access the published tenant application from a user of the first set of users.