Incremental UI Deployment via Segmented Code Switching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy approaches to software updates require a complete new codebase deployment, leading to long upgrade cycles and an undesirable 'big bang' effect, where incremental improvements cannot be deployed until all code is completed, causing user confusion and inefficiency.

Innovation Solution

The technique involves incremental user interface deployment and deprecation using spoofing, where new features are introduced as a union of 'old' and 'new' configurations in HTML, CSS, and JavaScript, allowing for backward compatibility and enabling either configuration on demand, eventually deprecating the 'old' behavior code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a complete new codebase is deployed for software updates, then the software can be updated with new features, but the upgrade cycle becomes very long and causes user confusion

Engineering Contradiction:
Improvesoftware update reliabilityVSAvoidupgrade cycle time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The codebase is segmented into multiple independent configuration files (HTML, CSS, JavaScript) that can be deployed and updated separately. This allows incremental updates of specific UI components without requiring a complete codebase replacement, thereby reducing upgrade cycle time while maintaining update reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically loads and switches between different UI configurations based on deployment needs. New configurations can be introduced and activated without replacing the entire codebase, enabling frequent incremental releases and reducing the time required for software updates.

Inventive Principle:
Principle #15Dynamics

2Stability of the object's composition

If all code is completed before deployment, then the software update is complete and consistent, but incremental improvements cannot be deployed and upgrade cycles become very long

Engineering Contradiction:
Improvecode base consistencyVSAvoiddeployment frequency
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The UI codebase is divided into separate configuration files (HTML, CSS, JavaScript) that can be developed, tested, and deployed independently. This segmentation allows incremental deployment of improvements without waiting for complete codebase readiness, increasing deployment frequency while maintaining consistency through modular architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Configuration files can be prepared and validated in advance without requiring complete integration of all code components. This preliminary action allows incremental deployment where individual UI improvements can be released as soon as their configuration files are ready, rather than waiting for the entire codebase to be complete.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If incremental UI improvements are deployed separately, then deployment frequency increases, but maintaining code synchronization becomes more complex

Engineering Contradiction:
Improvedeployment frequencyVSAvoidcode synchronization complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The UI codebase is segmented into independent configuration files (HTML, CSS, JavaScript) that can be deployed separately. This segmentation reduces code synchronization complexity by allowing each file to be managed and updated independently, while still achieving high deployment frequency through incremental releases.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The configuration file structure serves multiple functions: it enables incremental deployment, maintains code synchronization through standardized formats, and supports both new feature development and backward compatibility. This multi-functionality simplifies the overall system architecture despite increased deployment frequency.

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

Data Source

PatentUS9830132B2Incremental user interface deployment and deprecation
Publication Date: 2017.11.28 BOX INC
  • US9830132B2 patent drawing
  • US9830132B2 patent drawing
  • US9830132B2 patent drawing

AI summary

An original UI configuration is formed by a combination of a first user interface structural component portion, a first user interface style code portion, and a first behavioral code portion. When a variation of the first UI feature or a new feature is to be implemented, a second UI configuration is deployed, where the second UI configuration is formed by a second user interface structural component portion, a second user interface style code portion, and a second behavioral code portion. The second UI configuration implements a variation of the first UI feature. Embodiments deploy a third UI configuration formed by the second user interface structural component portion, a third user interface style code portion, and the second behavioral code portion. The third UI configuration emulates the original UI configuration using the second behavioral code portion. The third configuration or the second configuration can be enabled based on a software switch.