IP Library Granted Patent US 9,424,068
Granted Patent B2
US 9,424,068 · App. 14/579,932 · Granted Aug 23, 2016

Automatic batching of GUI-based tasks

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,424,068
App. No.
14/579,932
Granted
Aug 23, 2016
Kind
B2
Abstract

Described herein are techniques for automatically batching GUI-based (Graphical User Interface) tasks. The described techniques include automatically determining whether a user is performing batchable tasks in a GUI-based environment. Once detected, the described techniques include predicting the next tasks of a batch based upon those detected batchable tasks. With the described techniques, the user may be asked to verify and/or correct the predicted next tasks. Furthermore, the described techniques may include performing a batch and doing so without user interaction.

Claims (34)

1. A method comprising:

identifying batchable graphical user interface (GUI)-based tasks;

producing a batch of GUI-based tasks based, at least in part, upon the identified batchable GUI-based tasks; and

performing the batch of the GUI-based tasks.

2. A method as recited in claim 1 , wherein the identifying the batchable GUI-based tasks is performed by a user.

3. A method as recited in claim 1 , the identified batchable GUI-based tasks being from at least two GUI-based applications.

4. A method as recited in claim 3 in a GUI-based operating system environment.

5. A method as recited in claim 1 , the performing the batch of the GUI-based tasks comprises visually simulating a user providing input that would cause the GUI-based tasks of the batch to be performed.

6. A method as recited in claim 1 , wherein the identifying the batchable GUI-based tasks comprises identifying tasks performed by a user or identifying tasks to be performed by the user.

7. A system comprising:

a processor;

a memory;

an operating system executed at least in part by the processor, wherein the operating system provides a graphical user interface (GUI)-based environment; and

a batch module stored in the memory and configured to be executed at least in part by the processor to batch GUI-based tasks for execution.

8. A system as recited in claim 7 , wherein the batch module includes a module for automatically batching GUI-based tasks.

9. A system as recited in claim 7 , wherein the batch module is configured to batch GUI-based tasks identified by a user.

10. A system as recited in claim 7 , wherein the batch module is configured to batch GUI-based tasks identified automatically.

11. A system as recited in claim 7 wherein the batch module comprises a GUI-based task identifier configured to record GUI-based tasks performed by a user.

12. A system as recited in claim 7 , wherein the batch module comprises a batchable task confirmer configured to confirm with a user a predicted batch of GUI-based tasks.

13. A system as recited in claim 7 , wherein the batch module comprises a batch performer to perform a batch of GUI-based tasks.

14. A system as recited in claim 13 , wherein the batch performer comprises:

a parameter range determiner configured to determine a range of parameters for a particular GUI-based task within the batch of GUI-based tasks;

an operation target locator configured to locate a target element of a particular GUI-based task within the batch of GUI-based tasks;

a batch generator configured to generate a predicted operation sequence for executing the batch of GUI-based tasks; and

a user-input emulator configured to mimic the appearance of a user controlling an input while executing the batch of GUI-based tasks.

15. A system as recited in claim 14 , wherein the parameter range determiner is configured to determine the range of parameters based on input from a user.

16. A system as recited in claim 14 , wherein the parameter range determiner is configured to determine the range of parameters at least in part by detecting a range based on parameters of previously recorded GUI-based tasks.

17. A method comprising:

identifying as batchable, at least a subset of graphical user interface (GUI)-based tasks that are recorded;

generating a sequence of GUI-based tasks for future execution based, at least in part, on the identified batchable GUI-based tasks;

executing the sequence of GUI-based tasks while visually simulating a user providing input in performing the sequence of GUI-based tasks.

18. A method as recited in claim 17 , further comprising verifying with the user that the generated sequence of GUI-based tasks for future execution represents additional tasks that the user intends to perform.

19. A method as recited in claim 17 , further comprising determining a parameter value for a particular GUI-based task within the sequence of the GUI-based tasks.

20. A method as recited in claim 17 , further comprising recording GUI-based tasks performed by a user within a context of a GUI-based environment.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 29, 2016
From: LIN, QINGWEI; LI, FAN; LI, JIANG
To: MICROSOFT CORPORATION
Reel/Frame 037850/0983 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034819/0001 →