IP Library Granted Patent US 10,725,888
Granted Patent B2
US 10,725,888 · App. 15/968,020 · Granted Jul 28, 2020

Segmented customization

Inventors: Jeff DiTullio (Menlo Park, CA); Wesley Reitzfeld (Chattanooga, TN)
Assignee: Apptimize LLC
G06F11/3612G06F8/72H04L67/22H04L67/34H04W4/50H04W4/60
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 10,725,888
App. No.
15/968,020
Granted
Jul 28, 2020
Kind
B2
Abstract

Techniques to facilitate provision of different user experiences to different groups of users of a mobile application are disclosed herein. In at least one implementation, a manifest provided by an application development and optimization platform is received that defines a plurality of user segments and a plurality of feature variants individually associated with the plurality of user segments. The manifest is processed to determine a segment of the plurality of user segments associated with a user of the mobile application along with a feature variant of the plurality of feature variants associated with the segment of the user. Execution of the mobile application is monitored for an occurrence of an event that triggers a default feature of the mobile application, and responsive to the event, the default feature is replaced with the feature variant associated with the segment of the user.

Claims (44)

1. A method to facilitate provision of different user experiences in a mobile application in A/B testing, the method comprising:

receiving, in the A/B testing involving a plurality of instances of the mobile application each installed on a mobile device, a manifest that defines a plurality of user segments and a plurality of feature variants, the manifest originated from an application developer of the application, each feature variant associated with at least one of the user segments, wherein the plurality of user segments comprise categorizations of different groups of users of the mobile application, the mobile application associated with a default feature;

processing the manifest to determine a segment of the plurality of user segments associated with a user of a particular instance of the mobile application along with a feature variant of the plurality of feature variants associated with the segment of the user; and

conducting, based on the manifest, an instance of the A/B testing for the user of the particular instance of the mobile application, the A/B testing tracking performance of the particular instance of the mobile application with respect to the feature variant, conducting the instance of the A/B testing comprising:

monitoring execution of the mobile application for an occurrence of an event at the mobile application,

enabling, responsive to the event, a changed code block instead of a default code block to be executed by the mobile application, the default code block corresponding to the default feature and the changed code block corresponding to the feature variant associated with the segment of the user, the default code block and the changed code block both being part of the application at a time the particular instance of the mobile application is installed on the mobile device associated with the user,

triggering, at the mobile application, the feature variant associated with the segment of the user instead of the default feature by executing the changed code block, and

transmitting data tracking the performance of the particular instance of the mobile application as outputs of the instance of the A/B testing.

2. The method of claim 1 wherein triggering the feature variant comprises replacing a default visual element with a variant visual element associated with the segment of the user.

3. The method of claim 1 wherein the feature variants associated with which user segments are automatically defined based on analysis of test results for the plurality of feature variants over the plurality of user segments.

4. The method of claim 1 wherein the plurality of user segments are defined manually by an application developer associated with the mobile application.

5. The method of claim 1 wherein the event that triggers the default feature comprises a function call.

6. The method of claim 5 wherein triggering the feature variant associated with the segment of the user comprises identifying an original function that invokes the function call and responsively intercepting the function call and executing the feature variant instead of the function call.

7. The method of claim 1 wherein the event that triggers the default feature comprises a user login.

8. One or more non-transitory computer-readable storage media having program instructions stored thereon to facilitate provision of different user experiences in a mobile application in A/B testing, wherein the program instructions, when executed by a computing system, direct the computing system to at least:

receive, in the A/B testing involving a plurality of instances of the mobile application each installed on a mobile device, a manifest that defines a plurality of user segments and a plurality of feature variants, the manifest originated from an application developer of the application, each feature variant associated with at least one of the user segments, wherein the plurality of user segments comprise categorizations of different groups of users of the mobile application, the mobile application associated with a default feature;

process the manifest to determine a segment of the plurality of user segments associated with a user of a particular instance of the mobile application along with a feature variant of the plurality of feature variants associated with the segment of the user; and

conduct, based on the manifest, an instance of the A/B testing for the user of the particular instance of the mobile application, the A/B testing tracking performance of the particular instance of the mobile application with respect to the feature variant, conducting the instance of the A/B testing comprising:

monitoring execution of the mobile application for an occurrence of an event at the mobile application,

enabling, responsive to the event, a changed code block instead of a default code block to be executed by the mobile application, the default code block corresponding to the default feature and the changed code block corresponding to the feature variant associated with the segment of the user, the default code block and the changed code block both being part of the application at a time the particular instance of the mobile application is installed on the mobile device associated with the user,

triggering, at the mobile application, the feature variant associated with the segment of the user instead of the default feature by executing the changed code block, and

transmitting data tracking the performance of the particular instance of the mobile application as outputs of the instance of the A/B testing.

9. The one or more computer-readable storage media of claim 8 wherein the program instructions direct the computing system to trigger the feature variant by directing the computing system to replace a default visual element with a variant visual element associated with the segment of the user.

10. The one or more computer-readable storage media of claim 8 wherein the feature variants associated with which user segments are automatically defined based on analysis of test results for the plurality of feature variants over the plurality of user segments.

11. The one or more computer-readable storage media of claim 8 wherein the plurality of user segments are defined manually by an application developer associated with the mobile application.

12. The one or more computer-readable storage media of claim 8 wherein the event that triggers the default feature comprises a function call.

13. The one or more computer-readable storage media of claim 12 wherein the program instructions direct the computing system to trigger the feature variant associated with the segment of the user by directing the computing system to identify an original function that invokes the function call and responsively intercept the function call and execute the feature variant instead of the function call.

14. The one or more computer-readable storage media of claim 8 wherein the event that triggers the default feature comprises a user login.

15. A computing apparatus comprising:

one or more non-transitory computer-readable storage media;

a processing system operatively coupled with the one or more non-transitory computer-readable storage media; and

a mobile application stored on the one or more non-transitory computer-readable storage media and including an embedded control module comprising program instructions that, when executed by the processing system, direct the processing system to at least:

receive, in the A/B testing involving a plurality of instances of the mobile application each installed on a mobile device, a manifest that defines a plurality of user segments and a plurality of feature variants, the manifest originated from an application developer of the application, each feature variant associated with at least one of the user segments, wherein the plurality of user segments comprise categorizations of different groups of users of the mobile application, the mobile application associated with a default feature;

process the manifest to determine a segment of the plurality of user segments associated with a user of a particular instance of the mobile application along with a feature variant of the plurality of feature variants associated with the segment of the user; and

conduct, based on the manifest, an instance of the A/B testing for the user of the particular instance of the mobile application, the A/B testing tracking performance of the particular instance of the mobile application with respect to the feature variant, conducting the instance of the A/B testing comprising:

monitoring execution of the mobile application for an occurrence of an event at the mobile application,

enabling, responsive to the event, a changed code block instead of a default code block to be executed by the mobile application, the default code block corresponding to the default feature and the changed code block corresponding to the feature variant associated with the segment of the user, the default code block and the changed code block both being part of the application at a time the particular instance of the mobile application is installed on the mobile device associated with the user,

triggering, at the mobile application, the feature variant associated with the segment of the user instead of the default feature by executing the changed code block, and

transmitting data tracking the performance of the particular instance of the mobile application as outputs of the instance of the A/B testing.

16. The computing apparatus of claim 15 wherein the program instructions direct the processing system to trigger the feature variant by directing the processing system to replace a default visual element with a variant visual element associated with the segment of the user.

17. The computing apparatus of claim 15 wherein the feature variants associated with which user segments are automatically defined based on analysis of test results for the plurality of feature variants over the plurality of user segments.

18. The computing apparatus of claim 15 wherein the plurality of user segments are defined manually by an application developer associated with the mobile application.

19. The computing apparatus of claim 15 wherein the event that triggers the default feature comprises a function call.

20. The method of claim 1 wherein the changed code block includes a dynamic variable.

Assignments (6)
SECURITY INTEREST Recorded Jul 1, 2024
From: AIRSHIP GROUP, INC.; APPTIMIZE, LLC
To: RUNWAY GROWTH FINANCE CORP.
Reel/Frame 068099/0779 →
RELEASE OF SECURITY INTEREST Recorded Jun 28, 2024
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: AIRSHIP GROUP, INC.; APPTIMIZE, LLC
Reel/Frame 067965/0545 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME TO ADD A COMMA BETWEEN APPTIMIZE AND LLC PREVIOUSLY RECORDED ON REEL 050612 FRAME 0128. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Feb 9, 2021
From: APPTIMIZE, INC.
To: APPTIMIZE, LLC
Reel/Frame 055278/0689 →
SECURITY INTEREST Recorded Apr 2, 2020
From: URBAN AIRSHIP, INC.; APPTIMIZE, LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052308/0550 →
CHANGE OF NAME Recorded Oct 2, 2019
From: APPTIMIZE, INC.
To: APPTIMIZE LLC
Reel/Frame 050612/0128 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2019
From: DITULLIO, JEFF; REITZFELD, WESLEY
To: APPTIMIZE, INC.
Reel/Frame 050309/0381 →
Continuity (2)
Provisional Application 62492417 · May 1, 2017
Related Publication 20180314621A1 · Nov 1, 2018
Cited By (1)
US 12,455,676