Dynamic Feature Loading via Workflow Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current website and mobile service deployment methods require updating the entire code for even minor changes, making it time-consuming and expensive, especially when catering to different user groups or incorporating AI features, which often necessitates specialized programming skills.

Innovation Solution

A configuration server with a workflow generator and client user interface allows for dynamic feature loading, enabling developers to deploy variable features based on user characteristics without rewriting the entire code, using a graphical programming interface for AI and ML development, and controlling feature deployment through a client user interface.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the entire website code is updated to implement even small changes, then the changes can be deployed, but the development time and cost increase significantly

Engineering Contradiction:
ImproveAbility to update website featuresVSAvoidTime to implement changes
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The website is divided into independent feature modules that can be updated separately. Each feature is encapsulated as a discrete unit that can be developed, tested, and deployed independently from other features, eliminating the need to update the entire website codebase for minor changes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic feature loading where features can be enabled or disabled at runtime without requiring a full redeployment. The service director dynamically loads feature workflows based on configuration, allowing rapid feature updates and A/B testing without downtime or complete site redeployment.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If the entire website code is updated to implement even small changes, then the changes can be deployed, but the development cost increases

Engineering Contradiction:
ImproveAbility to update website featuresVSAvoidCost to implement changes
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The website is divided into independent feature modules that can be updated separately. Each feature is encapsulated as a discrete unit that can be developed, tested, and deployed independently from other features, eliminating the need to update the entire website codebase for minor changes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system provides self-service capabilities through configuration files and automated deployment pipelines. Non-technical users can enable or disable features through configuration without requiring developer intervention, reducing labor costs and enabling faster feature iteration.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If multiple versions of the website are maintained for different user groups, then user-specific features can be implemented, but the complexity of maintaining versions increases

Engineering Contradiction:
ImproveAbility to serve different user groupsVSAvoidComplexity of maintaining website versions
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A single website codebase serves multiple user groups through feature flags and conditional loading. The same core infrastructure supports different feature configurations for different user segments, eliminating the need to maintain separate code versions while still providing customized experiences.

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

Solution Approach 2:

The system implements dynamic feature loading where features can be enabled or disabled at runtime without requiring a full redeployment. The service director dynamically loads feature workflows based on configuration, allowing rapid feature updates and A/B testing without downtime or complete site redeployment.

Inventive Principle:
Principle #15Dynamics

4Adaptability or versatility

If AI operations are integrated into the website, then functionality is enhanced, but the requirement for specialized programming knowledge increases

Engineering Contradiction:
ImproveAI functionality integrationVSAvoidProgramming knowledge required
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system introduces an intermediary layer (service director and configuration files) that mediates between the user and complex AI operations. Users can configure and control AI features through simple configuration files without needing to understand the underlying complex programming, while the service director handles the technical implementation details.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11763217B2Dynamic feature loading
Publication Date: 2023.09.19 ITERATE STUDIO INC
  • US11763217B2 patent drawing
  • US11763217B2 patent drawing
  • US11763217B2 patent drawing

AI summary

A configuration server is provided including one or more processors and a workflow generator executing on the one or more processors. The workflow generator is configured to generate a workflow corresponding to a feature of a service. The configuration server also includes a client user interface configured to receive requests from a client user to enable or disable the feature of the service. A service director is configured to control deployment of the feature of the service by placing the workflow corresponding to the feature in an active state or an inactive state responsive to client requests. Responsive to a determination that the workflow is in the active state, the service director communicates the workflow to a deployment server. The feature associated with the workflow is available to an end user accessing the service when the workflow is communicated to the deployment server.