IP Library Granted Patent US 9,047,269
Granted Patent B2
US 9,047,269 · App. 11/553,890 · Granted Jun 2, 2015

Modeling interactions with a computer system

Inventors: Eric P. Armstrong (McKinney, TX); Stuart H. Burris, Jr. (Garland, TX); Christopher Raymond Houck (Dallas, TX)
Assignee: Openconnect Systems Incorporated
G06F11/28H04L43/045H04L43/04G06F11/32G06F11/3447G06F11/3476H04L12/2602H04L43/00H04L43/06H04L43/106H04L43/16G06F2201/835G06F2201/87
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,047,269
App. No.
11/553,890
Granted
Jun 2, 2015
Kind
B2
Abstract

In certain embodiments, a method for modeling interactions with a computer system includes collecting interaction information for each of a number of interaction sessions with a computer system, each interaction session being associated with a corresponding agent system and including one or more states and one or more state transitions. The interaction information for an interaction session includes data for the one or more states and the one or more state transitions of the interaction session. The method further includes, for each of the interaction sessions, identifying the one or more states encountered during the interaction session based on the collected interaction information and generating, based on the one or more states encountered during the interaction session, a trace of the interaction session. The method further includes generating, based on the traces of the interaction sessions, a model of the interaction sessions, the model including the traces for each of the interaction sessions.

Claims (79)

1. A method for modeling interactions with a computer system, comprising:

for each of a plurality of interaction sessions with a computer system, each interaction session being associated with a corresponding agent system and comprising one or more states, one or more state transitions, and one or more screens encountered during the interaction session:

collecting interaction information for the interaction session, the interaction information comprising data for the one or more states and the one or more state transitions of the interaction session and screen interaction information, the screen interaction information being associated with the one or more screens encountered during the interaction session;

for each screen encountered during the interaction session:

determining whether a stored instance of the screen already exists, the stored instance of the screen comprising a stored screen object for the screen previously generated for a previous encounter with a screen matching this screen;

if a stored instance of the screen exists, retrieving the stored instance of the screen; and

if a stored instance of the screen does not exist:

generating a unique identifier for the screen; and

storing an instance of the screen indexed by the unique identifier for the screen, the stored instance for the screen comprising a screen object of the screen;

identifying the one or more states encountered during the interaction session based on the collected interaction information, including based on the one or more screens encountered during the interaction session; and

generating, based on the one or more states encountered during the interaction session, a trace of the interaction session; and

generating, based on the traces of the plurality of interaction sessions, a model of the plurality of interaction sessions, the model comprising the traces for each of the plurality of interaction sessions.

2. The method of claim 1 , wherein:

each interaction session comprises one or more actions initiated during the interaction session, each state of the interaction session comprising a screen encountered during the interaction session.

3. The method of claim 1 , wherein the screen interaction information comprises data for one or more of the following:

one or more screens encountered during the interaction session;

data input into a screen using an agent system;

data output into a screen from the computer system; and

one or more action keys engaged during the interaction session.

4. The method of claim 1 , wherein determining whether a stored instance of the screen exists comprises:

determining a unique identifier for the screen;

accessing an index of unique identifiers each associated with a corresponding screen; and

determining whether the unique identifier of the screen matches a unique identifier of a stored instance of a screen to determine whether a stored instance of the screen exists.

5. The method of claim 4 , wherein the determined unique identifier comprises a hash code generated by applying a hashing algorithm to interaction information associated with the screen.

6. The method of claim 1 , wherein the trace of an interaction session reflects each state encountered during the interaction session and any actions requested during the interaction session.

7. The method of claim 1 , wherein the model comprises a statistical finite state machine graph of the plurality of interaction sessions, the statistical finite state machine graph comprising at least a portion of the traces for the interaction sessions.

8. The method of claim 1 , wherein the model further comprises one or more usage statistics for one or more nodes of the statistical finite state machine graph.

9. The method of claim 7 , further comprising displaying at least a portion of the statistical finite state machine graph.

10. The method of claim 1 , wherein the computer system comprises a mainframe computer system.

11. The method of claim 1 , wherein interaction information is collected using a terminal emulation protocol, the terminal emulation protocol comprising one or more of the following:

TN3270;

TN5250 NVT; and

VT220.

12. A system for modeling interactions with a computer system, comprising:

a memory module operable to store, for each of a plurality of interaction sessions with a computer system, each interaction session being associated with a corresponding agent system and comprising one or more states, one or more state transitions, and one or more screens encountered during the interaction session, interaction information for the interaction session, the interaction information comprising data for the one or more states and the one or more state transitions of the interaction session and screen interaction information, the screen interaction information being associated with the one or more screens encountered during the interaction session;

one or more processing units operable to:

for each of the plurality of interaction sessions:

for each screen encountered during the interaction session:

determine whether a stored instance of the screen already exists, the stored instance of the screen comprising a stored screen object for the screen previously generated for a previous encounter with a screen matching this screen;

if a stored instance of the screen exists, retrieve the stored instance of the screen; and

if a stored instance of the screen does not exist:

 generate a unique identifier for the screen; and

 store an instance of the screen indexed by the unique identifier for the screen, the stored instance for the screen comprising a screen object of the screen;

identify the one or more states encountered during the interaction session based on the collected interaction information, including based on the one or more screens encountered during the interaction session; and

generate, based on the one or more states encountered during the interaction session, a trace of the interaction session; and

generate, based on the traces of the plurality of interaction sessions, a model of the plurality of interaction sessions, the model comprising the traces for each of the plurality of interaction sessions.

13. The system of claim 12 , wherein:

each interaction session comprises one or more actions initiated during the interaction session, each state of the interaction session comprising a screen encountered during the interaction session.

14. The system of claim 12 , wherein the screen interaction information comprises data for one or more of the following:

one or more screens encountered during the interaction session;

data input into a screen an agent system;

data output into a screen from the computer system; and

one or more action keys engaged during the interaction session.

15. The system of claim 12 , wherein the one or more processing units are operable to determine whether a stored instance of the screen exists by:

determining a unique identifier for the screen;

accessing an index of unique identifiers each associated with a corresponding screen; and

determining whether the unique identifier of the screen matches a unique identifier of a stored instance of a screen to determine whether a stored instance of the screen exists.

16. The system of claim 15 , wherein the determined unique identifier comprises a hash code generated by applying a hashing algorithm to interaction information associated with the screen.

17. The system of claim 12 , wherein the trace of an interaction session reflects each state encountered during the interaction session and any actions requested during the interaction session.

18. The system of claim 12 , wherein the model comprises a statistical finite state machine graph of the plurality of interaction sessions, the statistical finite state machine graph comprising at least a portion of the traces for the interaction sessions.

19. The system of claim 12 , wherein the model further comprises one or more usage statistics for one or more nodes of the statistical finite state machine graph.

20. The system of claim 19 , wherein the one or more processing units are further operable to display at least a portion of the statistical finite state machine graph.

21. The system of claim 12 , wherein the computer system comprises a mainframe computer system.

22. The system of claim 12 , wherein interaction information is collected using a terminal emulation protocol, the terminal emulation protocol comprising one or more of the following:

TN3270;

TN5250 NVT; and

VT220.

23. Software for modeling interactions with a computer system, the software being embodied in a computer-readable storage medium and when executed operable to:

for each of a plurality of interaction sessions with a computer system, each interaction session being associated with a corresponding agent system and comprising one or more states, one or more state transitions, and one or more screens encountered during the interaction session:

collect interaction information for the interaction session, the interaction information comprising data for the one or more states and the one or more state transitions of the interaction session and screen interaction information, the screen interaction information being associated with the one or more screens encountered during the interaction session;

for each screen encountered during the interaction session:

determine whether a stored instance of the screen already exists, the stored instance of the screen comprising a stored screen object for the screen previously generated for a previous encounter with a screen matching this screen;

if a stored instance of the screen exists, retrieve the stored instance of the screen; and

if a stored instance of the screen does not exist:

generate a unique identifier for the screen; and

store an instance of the screen indexed by the unique identifier for the screen, the stored instance for the screen comprising a screen object of the screen;

identify the one or more states encountered during the interaction session based on the collected interaction information, including based on the one or more screens encountered during the interaction session; and

generate, based on the one or more states encountered during the interaction session, a trace of the interaction session; and

generate, based on the traces of the plurality of interaction sessions, a model of the plurality of interaction sessions, the model comprising the traces for each of the plurality of interaction sessions.

Assignments (6)
MERGER Recorded Jun 2, 2026
From: OPENCONNECT SYSTEMS INCORPORATED
To: ROCKET SOFTWARE, INC.
Reel/Frame 074825/0040 →
RELEASE OF SECURITY INTEREST Recorded Oct 20, 2020
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, LONDON BRANCH
To: OPENCONNECT SYSTEMS INCORPORATED
Reel/Frame 054112/0314 →
SECURITY INTEREST Recorded Aug 1, 2019
From: OPENCONNECT SYSTEMS INCORPORATED
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, LONDON BRANCH
Reel/Frame 049933/0991 →
RELEASE OF SECURITY INTEREST Recorded Aug 1, 2019
From: COMERICA BANK
To: OPENCONNECT SYSTEMS INCORPORATED
Reel/Frame 049935/0328 →
SECURITY INTEREST Recorded Sep 26, 2017
From: OPENCONNECT SYSTEMS INCORPORATED
To: COMERICA BANK
Reel/Frame 043693/0144 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2006
From: ARMSTRONG, ERIC P; BURRIS, STUART H, JR.; HOUCK, CHRISTOPHER RAYMOND
To: OPENCONNECT SYSTEMS INCORPORATED
Reel/Frame 018470/0309 →
Continuity (2)
Provisional Application 60731167 · Oct 28, 2005
Related Publication 20070100994A1 · May 3, 2007