SDK Feature Flags for Remote Deployment and User Targeting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional testing platforms are inefficient in deploying features to specific users, toggling features on or off, gradually rolling out features, and managing feature interactions, leading to reduced efficiency and accuracy in product development.

Innovation Solution

The use of Software Development Kit (SDK)-driven features and events allows developers to define and deploy features and events once, enabling remote toggling, experimentation, and data collection, thereby managing feature rollouts and user targeting without code deployment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional testing platforms are used for feature deployment and management, then basic testing functionality is provided, but efficiency and accuracy in deploying features to specific users, toggling features, rolling out features gradually, and managing feature interactions are reduced

Engineering Contradiction:
Improveefficiency in feature deployment and managementVSAvoidaccuracy in feature deployment and user targeting
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces an intermediary layer between the feature code and the user experience through configuration variables and feature flags. This intermediary allows program managers to control feature deployment, toggling, and user targeting without requiring code changes or deployments, thereby improving both efficiency and accuracy in feature management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments feature management into distinct components: feature flags, configuration variables, user targeting rules, and rollout schedules. This segmentation allows independent control of each aspect, enabling precise deployment to specific users and gradual rollouts while maintaining high accuracy and efficiency.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If code deployment is required for every feature change, then feature control is precise, but development process errors and delays increase

Engineering Contradiction:
Improveease of feature toggling and deploymentVSAvoiddelays in development process
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-configuring feature flags and configuration variables in the code during development. These placeholders are prepared in advance with default values and structures, allowing feature toggling and deployment changes to be made later through configuration updates alone, eliminating the need for code re-deployment and reducing development delays.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces dynamic configuration variables that can be changed at runtime without requiring code deployment. This dynamic approach allows program managers to toggle features on or off, adjust configuration values, and control feature rollout schedules in real-time, greatly improving ease of operation and eliminating deployment delays.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If multiple developers manage feature interactions, then feature functionality is comprehensive, but coordination errors and inefficiencies occur

Engineering Contradiction:
Improvefeature interaction management capabilityVSAvoidcomplexity in managing feature interactions
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal feature management system that handles multiple aspects of feature interactions through a single integrated framework. Configuration variables and feature flags serve multiple purposes: controlling feature activation, managing user targeting, scheduling rollouts, and coordinating interactions between multiple features. This universal approach reduces coordination complexity while maintaining comprehensive feature interaction management capability.

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

Data Source

PatentUS11651047B2Software development kit driven features and events
Publication Date: 2023.05.16 OPTIMIZELY NORTH AMERICA INC
  • US11651047B2 patent drawing
  • US11651047B2 patent drawing
  • US11651047B2 patent drawing

AI summary

A method includes providing, to a third-party content provider, code identifying a feature associated with digital content of the third-party content provider, wherein the identification comprises a feature variable placeholder associated with the feature. The method further includes receiving, by an experimentation platform, an indication of a first event type associated with the digital content, wherein the first event type identifies a first trackable action associated with the feature. The method further includes determining, by a processing device of the experimentation platform, that the first event type does not exist in a configuration associated with the feature; The method further includes, in response to the determining, generating the first event type in the configuration, generating and providing a graphical representation of the first event type for display in a user interface of the experimentation platform, and tracking the first event type on the experimentation platform.