Environment-Specific Configuration Management in Multi-Environment Deployment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional development and deployment technologies are inadequate for managing and protecting configuration information across multiple environments, particularly in dynamic environments like cloud-based systems, leading to issues such as unintended changes affecting one environment from another and difficulty in writing applications that work across all environments.

Innovation Solution

Defining environment-specific configuration information for each type of environment, such as development, production, and QA, and storing it separately in a central configuration management system protected by an identity management system, which allows only specific security roles to access and modify this information, preventing unauthorized changes and leaks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If configuration information is shared across multiple environments, then ease of operation is improved, but reliability deteriorates due to unintended changes affecting different environments

Engineering Contradiction:
Improveease of operationVSAvoidreliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments configuration information into environment-specific instances (development, QA, production) while maintaining a shared template structure. Each environment has its own configuration instance that can be independently managed, preventing changes in one environment from affecting others while still allowing common patterns to be defined once in templates.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces configuration templates as an intermediary layer between the shared configuration structure and environment-specific instances. Templates define common patterns and defaults that can be inherited by multiple environment instances, reducing duplication while maintaining isolation through the template-instance hierarchy.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If environment-specific configuration information is stored separately, then reliability is improved, but device complexity increases due to separate storage and access control systems

Engineering Contradiction:
ImprovereliabilityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the management of environment-specific configuration instances and their templates into a single configuration management system. The system handles both templates and instances uniformly, using a common interface for definition, storage, and access control, thereby reducing overall system complexity despite the multi-level structure.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a universal configuration management system that handles multiple functions: defining templates, creating environment instances, managing inheritance relationships, and enforcing access control policies. This multi-functional system eliminates the need for separate management mechanisms for each configuration type.

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

3Reliability

If security roles restrict access to configuration information, then reliability is improved, but ease of operation deteriorates due to limited access

Engineering Contradiction:
ImprovereliabilityVSAvoidease of operation
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent applies different access control policies to different configuration elements based on their sensitivity and role requirements. Security roles are assigned specific permissions for templates versus instances, and different roles (e.g., developer, QA manager, production administrator) have appropriately tailored access levels, allowing each user to operate easily within their authorized scope.

Inventive Principle:
Principle #3Local quality

4Device complexity

If generic application code is used across all environments, then device complexity is reduced, but manufacturing precision deteriorates due to environment-specific issues

Engineering Contradiction:
Improvedevice complexityVSAvoidmanufacturing precision
Core Design Contradiction:
Device complexityVSManufacturing precision

Solution Approach 1:

The patent enables dynamic configuration of environment-specific parameters while maintaining a static, universal application codebase. The application code references configuration values that are resolved at runtime based on the target environment, allowing the same code to adapt precisely to different environment requirements without requiring environment-specific code paths.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10467386B2Software development and deployment in multiple environments
Publication Date: 2019.11.05 ALIBABA COM LTD
  • US10467386B2 patent drawing
  • US10467386B2 patent drawing
  • US10467386B2 patent drawing

AI summary

Developing, deploying, and operating an application in a plurality of environments is disclosed, including: defining runtime specific configuration information for a plurality of environments, wherein the runtime environment specific configuration includes topology configuration and security configuration, wherein the runtime environment specific configuration information is stored separately from other configuration information and is protected by an identity management system; executing an application in one of the plurality of environments, wherein execution of the application is controlled by a first role; and presenting a credential associated with the first role to the identity management system to obtain a portion of the runtime environment specific configuration information corresponding to the environment associated with the executing application.