IP Library Granted Patent US 9,317,392
Granted Patent B2
US 9,317,392 · App. 14/051,341 · Granted Apr 19, 2016

Methods and automated systems for testing, optimization, and analysis that preserve continuity in identities and status of users who access remote information from different contexts

Inventors: Paul Lawbaugh (Hillsboro, OR); David Everly (Portland, OR)
Assignee: WEBTRENDS, INC.
G06F11/3438G06F9/4443G06F11/3644H04L41/0253H04L43/50H04L67/00H04L67/22
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 9,317,392
App. No.
14/051,341
Granted
Apr 19, 2016
Kind
B2
Abstract

The current document is directed to automated electronic testing, optimization, and/or analysis systems that collect sufficient data from instrumentation, maintain sufficient user status, and provide sufficient communications between instrumentation and testing, optimization, and/or analysis systems in order to follow, reconstruct, and record temporal threads of user activity that span multiple user contexts. In one implementation, JSON-encoded information is collected through instrumentation and supplemented by testing, optimization, and/or analysis systems in order to provide many different types of information about remote-information-accessing users and the device and program contexts from which they access remote information. In addition, instrumentation can provide context-transition alerts to the testing, optimization, and/or analysis systems to facilitate the ability of testing, optimization, and/or analysis systems maintain user-thread continuity over context transitions and the testing, optimization, and/or analysis system and provide JSON-encoded information back to instrumentation.

Claims (24)

1. A system comprising:

one or more processors;

one or more data-storage devices;

a data-collection subsystem that receives and processes messages sent from instrumentation contained in remote web-page encodings, remote applications, and other remote instrumented entities which sends transition event messages to the system prior to execution of instructions or system calls that result in a change of computational context; and

computer instructions, stored in one or more of the one or more data-storage devices, that, when executed by one or more of the one or more processors, control the system to process a next message received and processed by the data-collection subsystem by:

receiving the processed message from the data-collection subsystem;

when the processed message is sent by instrumentation in a computational context from which another message of a current user thread was sent, using message user-related information contained within the processed message, including computational-context-associated user-related information, to determine a user associated with the message;

when the processed message is sent by instrumentation in a computational context different from one or more computational contexts from which other messages of a current user thread were sent, using message user-related information contained within the processed message other than computational-context-associated user-related information, to determine a user associated with the message; and

associated the determined user with the processed message.

2. The system of claim 1 wherein the system uses transition event messages to facilitate identification of users associated with messages.

3. A method carried out in a testing-service, analysis-service, or other service system having one or more processors, one or more data-storage devices, and a data-collection subsystem that receives and processes messages sent from instrumentation contained in remote web-page encodings, remote applications, and other remote instrumented entities, the method comprising:

for each next processed message received from the data-collection subsystem,

extracting user-related information from the processed message;

attempting to identify a user associated with the processed message so that the user can be identified even when computational-context-associated user-related information is not available either in the user-related information extracted from the processed message or in user-related information associated with already identified users by

for each user in a list of current users,

comparing user-related information associated with the user to the user-related information extracted from the processed message to generate a score reflective of the probability that the user is the user associated with the processed message, and

when the score indicates a higher probability than previously considered users in the list of current users, selecting the user as the user associated with the processed message;

when the score generated with respect to the selected user is greater than a threshold score,

identifying the selected user as the user associated with the processed message; and

when the user associated with the processed message is identified, associating a user identifier for the identified user with the processed message.

4. The method of claim 3

wherein instrumentation contained in remote web-page encodings, remote applications, and other remote instrumented entities sends transition event messages to the service system prior to execution of instructions or system calls that result in a change of computational context;

wherein, when the user associated with a processed transition event message received by the service system from the data-collection subsystem is identified, marking the user as “in transition;” and

wherein, during comparison of user-related information associated with a currently considered user to the user-related information extracted from the processed message to generate a score reflective of the probability that the currently considered user is the user associated with the processed message, when the currently considered user is marked as “in transition” and the processed message is compatible with a first message sent from a new or resumed computational context, the score is changed to reflect a higher probability that the currently considered user is the user associated with the processed message.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2018
From: ORACLE AMERICA, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 048174/0956 →
RELEASE OF SECURITY INTEREST Recorded Oct 14, 2018
From: SILICON VALLEY BANK
To: WEBTRENDS, INC.
Reel/Frame 047224/0165 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT APPL. NO. 7185085 PREVIOUSLY RECORDED AT REEL: 042775 FRAME: 0589. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 29, 2018
From: WEBTRENDS INC.
To: ORACLE AMERICA, INC.
Reel/Frame 046491/0477 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 12, 2017
From: WEBTRENDS INC.
To: ORACLE AMERICA, INC.
Reel/Frame 042775/0589 →
ADDENDUM TO INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 2, 2016
From: WEBTRENDS INC.
To: SILICON VALLEY BANK
Reel/Frame 038864/0908 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2013
From: LAWBAUGH, PAUL; EVERLY, DAVID
To: WEBTRENDS INC
Reel/Frame 031862/0696 →
Continuity (2)
Provisional Application 61712107 · Oct 10, 2012
Related Publication 20140189714A1 · Jul 3, 2014