Automated Reporting of GUI Design Violations for Mobile Apps
arXiv:1802.04732 · doi:10.1145/3180155.3180246
Abstract
The inception of a mobile app often takes form of a mock-up of the Graphical User Interface (GUI), represented as a static image delineating the proper layout and style of GUI widgets that satisfy requirements. Following this initial mock-up, the design artifacts are then handed off to developers whose goal is to accurately implement these GUIs and the desired functionality in code. Given the sizable abstraction gap between mock-ups and code, developers often introduce mistakes related to the GUI that can negatively impact an app's success in highly competitive marketplaces. Moreover, such mistakes are common in the evolutionary context of rapidly changing apps. This leads to the time-consuming and laborious task of design teams verifying that each screen of an app was implemented according to intended design specifications. This paper introduces a novel, automated approach for verifying whether the GUI of a mobile app was implemented according to its intended design. Our approach resolves GUI-related information from both implemented apps and mock-ups and uses computer vision techniques to identify common errors in the implementations of mobile GUIs. We implemented this approach for Android in a tool called GVT and carried out both a controlled empirical evaluation with open-source apps as well as an industrial evaluation with designers and developers from Huawei. The results show that GVT solves an important, difficult, and highly practical problem with remarkable efficiency and accuracy and is both useful and scalable from the point of view of industrial designers and developers. The tool is currently used by over one-thousand industrial designers and developers at Huawei to improve the quality of their mobile apps.
arXiv comment11 pages, Accepted to the 40th International Conference on Software Engineering (ICSE'18)
References in corpus (2)
Cited by in corpus (18)
- Object Detection for Graphical User Interface: Old Fashioned or Deep Learning or a Combination?
- Wireframe-Based UI Design Search Through Image Autoencoder
- Owl Eyes: Spotting UI Display Issues via Visual Understanding
- Nighthawk: Fully Automated Localizing UI Display Issues via Visual Understanding
- AMOGA: A Static-Dynamic Model Generation Strategy for Mobile Apps Testing
- Auto-Icon+: An Automated End-to-End Code Generation Tool for Icon Designs in UI Development
- The Metamorphosis: Automatic Detection of Scaling Issues for Mobile Apps
- MotorEase: Automated Detection of Motor Impairment Accessibility Issues in Mobile App UIs
- Boosting GUI Prototyping with Diffusion Models
- GUing: A Mobile GUI Search Engine using a Vision-Language Model
- An Empirical Investigation into the Use of Image Captioning for Automated Software Documentation
- StoryDroid: Automated Generation of Storyboard for Android Apps
- EGFE: End-to-end Grouping of Fragmented Elements in UI Designs with Multimodal Learning
- DesignRepair: Dual-Stream Design Guideline-Aware Frontend Repair with Large Language Models
- Overcoming Language Dichotomies: Toward Effective Program Comprehension for Mobile App Development
- Interaction2Code: Benchmarking MLLM-based Interactive Webpage Code Generation from Interactive Prototyping
- Automating Software Development for Mobile Computing Platforms (Doctoral Symposium)
- GUIComp: A GUI Design Assistant with Real-Time, Multi-Faceted Feedback