Crowd-Sourced GUI Automation Script Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Non-expert users face difficulties in performing computer tasks due to inadequate technical support and the inefficiency of existing automation tools, which often require expert programming and are slow to cover a wide range of user issues.

Innovation Solution

A system that enables lay users to collaborate in automating computer tasks by recording and aggregating graphical user interface (GUI) actions, filtering out mistakes, and using crowd-sourced translations to create a database of automated solutions adaptable to various user configurations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If expert-based automation scripts are hand-written to automate computer tasks, then task automation capability is improved, but the speed of covering new tasks and the cost of development deteriorate

Engineering Contradiction:
Improvetask automation capabilityVSAvoidspeed of covering new tasks
Core Design Contradiction:
Extent of automationVSProductivity

Solution Approach 1:

The system records and copies the actual GUI actions performed by users to create automation scripts. Instead of hand-writing scripts, the system observes and replicates user interactions with the computer interface, automatically generating executable action sequences that can be stored and replayed for task automation.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system enables users to contribute their own task solutions by recording their GUI actions. Each user's successful task completion automatically generates an automation script that benefits the community, allowing the system to self-populate with automation capabilities without requiring expert programmers for each new task.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If multiple user GUI traces are aggregated to build a comprehensive solution database, then task coverage is improved, but the complexity of filtering mistakes and redundancies worsens

Engineering Contradiction:
Improvetask coverageVSAvoidcomplexity of filtering processes
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system uses feedback from multiple user executions to identify and filter out mistakes and redundancies. By analyzing patterns across numerous GUI traces, the system determines which actions are consistent and necessary versus which are errors or unnecessary steps, automatically refining the solution database through iterative feedback from user interactions.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system merges multiple GUI traces from different users into a consolidated solution. By combining and comparing action sequences from various users attempting the same task, the system creates a unified, optimized script that incorporates the essential steps while eliminating user-specific variations and errors.

Inventive Principle:
Principle #5Merging (Combining)

3Ease of operation

If automated solutions are provided that require minimal user input, then ease of operation is improved, but the ability to handle user-specific configurations deteriorates

Engineering Contradiction:
Improveuser input requirementVSAvoidhandling user-specific configurations
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The automated scripts perform preliminary actions automatically, executing standard task steps without requiring user input. The system pre-configures and executes routine operations based on recorded GUI traces, handling common scenarios automatically while leaving only exceptional or user-specific steps requiring manual intervention.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The automation system is designed to be dynamic, adapting its behavior based on the specific user context and configuration. The scripts can adjust their execution path and parameters according to detected system states, allowing them to handle user-specific configurations while maintaining ease of operation through automatic adaptation rather than manual customization.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9189254B2Translating text to, merging, and optimizing graphical user interface tasks
Publication Date: 2015.11.17 MASSACHUSETTS INST OF TECH
  • US9189254B2 patent drawing
  • US9189254B2 patent drawing
  • US9189254B2 patent drawing

AI summary

A system and method that enables a plurality of lay users to collaborate on automating computer tasks is disclosed. In one embodiment, the system automatically performs these tasks, rather than just documenting how to perform them. The system allows a database of solutions to be built for every important computer task. A key characteristic of this system is that users contribute to this database by simply performing the task. The system records the graphical user interface (GUI) actions as the user performs the task. It aggregates GUI traces from multiple users into a canonical sequence of GUI actions parameterized by user-environment that will successfully accomplish the task on a variety of different configurations. A classifier is used to predict which steps are likely to be misinterpreted and requests human intervention to properly perform them. This process can be done iteratively until the translation is believed to be correct.