IP Library Granted Patent US 11,539,806
Granted Patent B2
US 11,539,806 · App. 17/403,501 · Granted Dec 27, 2022

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/53G06F40/197H04L67/141H04L67/52
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,539,806
App. No.
17/403,501
Granted
Dec 27, 2022
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 (39)

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;

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, wherein each of the plurality of the feature variable values comprises a different variation of a portion of the digital content; and

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.

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 is 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 a feature variable placeholder associated with the feature;

determine that a client device associated with the request is to receive the feature based on a feature flag associated with the feature;

based on the determination, select a feature variable value of a plurality of feature variable values to provide in place of the feature variable placeholder with the digital content, wherein each of the plurality of the feature variable values comprises a different variation of a portion of the digital content; and

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

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

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

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

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

15. The apparatus of claim 10 , wherein the processing device is further to:

select a new feature variable value of the plurality of feature variable values to be provided instead of the feature variable placeholder in the future based on data identifying how a user interacted with the digital content.

16. The apparatus of claim 12 , 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.

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

18. 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 a feature variable placeholder associated with the feature;

determine that a client device associated with the request is to receive the feature based on a feature flag associated with the feature;

based on the determination, select, by the processing device, a feature variable value of a plurality of feature variable values to provide in place of the feature variable placeholder with the digital content, wherein each of the plurality of the feature variable values comprises a different variation of a portion of the digital content; and

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

19. A non-transitory computer-readable storage medium of claim 18 , the processing device further to select a new feature variable value of the plurality of feature variable values to be provided instead of the feature variable placeholder in the future based on data identifying how a user interacted with the digital content.

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

Assignments (5)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2021
From: RIZVI, ALI ABBAS; CONNOLLY, MICHAEL J., JR.; PROVINE, JOHN
To: OPTIMIZELY, INC.
Reel/Frame 057198/0053 →