Improving Web Automation Tools through UI Context and Demonstration
dc.contributor.author | Krosnick, Rebecca | |
dc.date.accessioned | 2024-05-22T17:23:47Z | |
dc.date.available | 2024-05-22T17:23:47Z | |
dc.date.issued | 2024 | |
dc.date.submitted | 2024 | |
dc.identifier.uri | https://hdl.handle.net/2027.42/193304 | |
dc.description.abstract | User interface (UI) automation allows people to perform UI tasks programmatically and can be helpful for computer or smartphone tasks that are tedious, repetitive, or inaccessible. UI automation works by programmatically mimicking a user's interactions on a UI, for example clicking a button or typing into a text field. Traditionally people create UI automation macros by writing code, which requires programming expertise and familiarity with UI technologies. Researchers have explored direct manipulation interfaces and programming-by-demonstration (PBD) to make creating UI automation more accessible for people with less programming experience. With PBD, the user provides demonstrations of how they want their program to behave in a small set of scenarios, and the system then infers a generalized program. Since demonstrations are inherently ambiguous, a key challenge of PBD is in correctly inferring the user's intent and effectively communicating those inferences back to the user. In this thesis, I address important challenges in authoring UI automation macros by leveraging user-provided demonstrations and parameters, and structural patterns in the UI to infer generalized automation; and in understanding UI automation macros by (a) highlighting selected elements on the target UI, (b) visualizing high-level behavior through sequences of actions and UIs visited, (c) visualizing generalizations through color-coding UI elements and grouping corresponding UIs, and (d) providing feedback on validity and uniqueness of element selection logic. First, I conducted two studies observing how programmers write automation code. One of the key challenges participants experienced was in identifying appropriate UI element selection logic. Next, I designed two programming-by-demonstration systems, ParamMacros and ScrapeViz, that enable users to create automation macros without writing code. Users provide demonstrations of what UI elements they want to click or scrape, and then these systems leverage structural patterns in the website DOM to identify patterns and infer generalized automation. ParamMacros supports parameterized macros (powered by user-provided parameters) while ScrapeViz supports distributed hierarchical web scraping macros. ScrapeViz also provides visual tools to help users understand automation behavior in the context of the page source and across different UI pages. This thesis contributes learnings about the challenges users face in creating UI automation macros, and no-code authoring tools and visual understanding tools which have the promise to make UI automation more accessible to a wider audience. | |
dc.language.iso | en_US | |
dc.subject | web automation | |
dc.subject | programming by demonstration | |
dc.subject | user interfaces | |
dc.subject | end-user programming | |
dc.subject | human-computer interaction | |
dc.title | Improving Web Automation Tools through UI Context and Demonstration | |
dc.type | Thesis | |
dc.description.thesisdegreename | PhD | |
dc.description.thesisdegreediscipline | Computer Science & Engineering | |
dc.description.thesisdegreegrantor | University of Michigan, Horace H. Rackham School of Graduate Studies | |
dc.contributor.committeemember | Oney, Steve | |
dc.contributor.committeemember | Seifert, Colleen M | |
dc.contributor.committeemember | Glassman, Elena | |
dc.contributor.committeemember | Guo, Anhong | |
dc.contributor.committeemember | Wang, Xinyu | |
dc.subject.hlbsecondlevel | Computer Science | |
dc.subject.hlbsecondlevel | Information and Library Science | |
dc.subject.hlbtoplevel | Engineering | |
dc.subject.hlbtoplevel | Social Sciences | |
dc.contributor.affiliationumcampus | Ann Arbor | |
dc.description.bitstreamurl | http://deepblue.lib.umich.edu/bitstream/2027.42/193304/1/rkros_1.pdf | |
dc.identifier.doi | https://dx.doi.org/10.7302/22949 | |
dc.identifier.orcid | 0000-0002-8427-3895 | |
dc.identifier.name-orcid | Krosnick, Rebecca; 0000-0002-8427-3895 | en_US |
dc.working.doi | 10.7302/22949 | en |
dc.owningcollname | Dissertations and Theses (Ph.D. and Master's) |
Files in this item
Remediation of Harmful Language
The University of Michigan Library aims to describe library materials in a way that respects the people and communities who create, use, and are represented in our collections. Report harmful or offensive language in catalog records, finding aids, or elsewhere in our collections anonymously through our metadata feedback form. More information at Remediation of Harmful Language.
Accessibility
If you are unable to use this file in its current format, please select the Contact Us link and we can modify it to make it more accessible to you.