IP Library Granted Patent US 11,108,875
Granted Patent B2
US 11,108,875 · App. 16/290,637 · Granted Aug 31, 2021

Server-side configuration variables in feature testing

Inventors: Ali Abbas Rizvi (San Francisco, CA); Michael J. Connolly, Jr. (San Francisco, CA); John Provine (Palo Alto, CA)
Assignee: Optimizely, Inc.
H04L67/20G06F40/197H04L67/141H04L67/18
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,108,875
App. No.
16/290,637
Granted
Aug 31, 2021
Kind
B2
Abstract

A method includes receiving an identification of a feature associated with digital content of a third-party content provider, wherein the identification comprises a feature variable placeholder associated with the feature. The method further includes receiving a configuration of a feature flag associated with the feature. The method further includes determining, by a processing device of an experimentation system, a plurality of feature variable values corresponding to the feature variable placeholder. The method further includes configuring, by the processing device, one or more rules on the experimentation system to determine: when and to whom the feature is to be deployed, based on the feature flag; and which of the plurality of feature variable values is to be deployed when and to whom.

Claims (41)

1. A method comprising:

receiving an identification of a feature associated with digital content of a third-party content provider, wherein the identification comprises a feature variable placeholder associated with the feature, wherein the digital content and the feature associated with the digital content are each deployed to a plurality of client devices;

receiving a configuration of a feature flag associated with the feature;

determining, by a processing device of an experimentation system, a plurality of feature variable values corresponding to the feature variable placeholder;

selecting a feature variable value to provide in place of the feature variable placeholder with the digital content based on the determining; and

configuring, by the processing device, one or more rules on the experimentation system to determine:

when and to whom of the plurality of client devices the deployed feature of the digital content is to be activated without deploying code, based on the feature flag; and

which of the plurality of feature variable values is to be deployed when and to whom.

2. The method of claim 1 , further comprising:

receiving, from the third-party content provider, a request to connect the digital content to an experimentation platform; and

in response to receiving the request, establishing a connection between the digital content and the experimentation platform.

3. The method of claim 2 , wherein the identification is received via the connection.

4. The method of claim 2 , wherein the request is received via an application programming interface (API) associated with the experimentation platform.

5. The method of claim 2 , wherein the connection is a local connection.

6. The method of claim 2 , wherein the connection is a nonlocal network connection.

7. The method of claim 1 , wherein the identification of the feature comprises a unique identifier of the feature.

8. The method of claim 7 , wherein the feature flag comprises the unique identifier of the feature.

9. The method of claim 1 , wherein the digital content comprises a web page or a software application.

10. An apparatus, comprising:

a memory to store state information;

a processing device operatively coupled to the memory, the processing device to:

receive a request to download digital content of a third-party content provider, wherein the digital content comprises a feature and feature variable placeholder, wherein the digital content and the feature of the digital content are each deployed to a client device;

determine that the deployed feature associated with the request is to be activated without deploying code, based on a feature flag associated with the feature;

based on the determination, select a feature variable value to provide in place of the feature variable placeholder with the digital content; and

provide the selected feature variable value to the third-party content provider to be displayed with the digital content;

receive data identifying how a user interacted with the digital content; and

select, based on the data, a new feature variable value to be provided instead of the feature variable placeholder in the future.

11. The apparatus of claim 10 , wherein the selected feature variable value is selected based on one or more characteristics of the client device.

12. The apparatus of claim 11 , wherein the one or more characteristics comprise a geographic location of the client device.

13. The apparatus of claim 11 , wherein the one or more characteristics comprise information associated with a user of the client device.

14. The apparatus of claim 10 , wherein the selected feature variable value is selected randomly from a plurality of feature variable values.

15. The apparatus of claim 11 , wherein the feature variable value comprises one or more of: a text string, a Boolean value, an Integer, a Double, a data object, an image, or a video.

16. The apparatus of claim 11 , wherein the digital content is a web page or a software application.

17. A non-transitory computer-readable storage medium including instructions that, when executed by a processing device, cause the processing device to:

receive a request to download digital content of a third-party content provider, wherein the digital content comprises a feature and feature variable placeholder, wherein the digital content and the feature of the digital content are each deployed to a plurality of client devices;

determine that the deployed feature associated with the request is to be activated without deploying code, based on a feature flag associated with the feature;

based on the determination, select, by the processing device, a feature variable value to provide in place of the feature variable placeholder with the digital content; and

provide the selected feature variable value to the third-party content provider to be displayed with the digital content;

receive data identifying how a user interacted with the digital content; and

select, based on the data, a new feature variable value to be provided instead of the feature variable placeholder in the future.

18. The non-transitory computer-readable storage medium of claim 17 , wherein the digital content is a web page or a software application.

Assignments (10)
TERMINATION AND RELEASE OF SECURITY INTEREST Recorded Oct 31, 2024
From: GOLUB CAPITAL MARKETS LLC
To: OPTIMIZELY NORTH AMERICA INC.
Reel/Frame 069285/0225 →
SECURITY INTEREST Recorded Oct 31, 2024
From: OPTIMIZELY NORTH AMERICA, INC.
To: GOLUB CAPITAL MARKETS LLC
Reel/Frame 069089/0588 →
MERGER Recorded Jul 3, 2023
From: OPTIMIZELY OPERATIONS HOLDCO INC.
To: OPTIMIZELY NORTH AMERICA INC.
Reel/Frame 064139/0628 →
MERGER Recorded Jun 20, 2023
From: OPTIMIZELY OPERATIONS INC.
To: OPTIMIZELY OPERATIONS HOLDCO INC.
Reel/Frame 063995/0874 →
CHANGE OF NAME Recorded Jun 8, 2023
From: OPTIMIZELY, INC.
To: OPTIMIZELY OPERATIONS INC.
Reel/Frame 063939/0656 →
CORRECTIVE ASSIGNMENT TO CORRECT THE UNDERLYING DOCUMENT PREVIOUSLY RECORDED ON REEL 056588 FRAME 0075. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL. Recorded Jul 22, 2021
From: HERCULES CAPITAL, INC., AS COLLATERAL AGENT
To: OPTIMIZELY, INC.
Reel/Frame 056958/0064 →
PATENT SECURITY AGREEMENT Recorded Jul 6, 2021
From: OPTIMIZELY, INC.
To: GOLUB CAPITAL MARKETS LLC, AS COLLATERAL AGENT
Reel/Frame 056768/0917 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Jun 14, 2021
From: HERCULES CAPITAL, INC., AS COLLATERAL AGENT
To: OPTIMIZELY, INC.
Reel/Frame 056588/0075 →
SECURITY INTEREST Recorded Oct 19, 2020
From: OPTIMIZELY, INC.
To: HERCULES CAPITAL, INC., AS COLLATERAL AGENT
Reel/Frame 054093/0019 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2019
From: RIZVI, ALI ABBAS; CONNOLLY, MICHAEL J., JR.; PROVINE, JOHN
To: OPTIMIZELY, INC.
Reel/Frame 048484/0691 →