Automatically distilling storyboard with rich features for Android apps

Before developing a new mobile app, the development team usually endeavors painstaking efforts to review many existing apps with similar purposes. The review process is crucial in the sense that it reduces market risks and provides inspirations for app development. However, manual exploration of hun...

Full description

Saved in:
Bibliographic Details
Main Authors: Chen, Sen, Fan, Lingling, Chen, Chunyang, Liu, Yang
Other Authors: School of Computer Science and Engineering
Format: Article
Language:English
Published: 2022
Subjects:
Online Access:https://hdl.handle.net/10356/162613
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-162613
record_format dspace
spelling sg-ntu-dr.10356-1626132022-11-01T03:57:05Z Automatically distilling storyboard with rich features for Android apps Chen, Sen Fan, Lingling Chen, Chunyang Liu, Yang School of Computer Science and Engineering Engineering::Computer science and engineering Android Apps App Review Before developing a new mobile app, the development team usually endeavors painstaking efforts to review many existing apps with similar purposes. The review process is crucial in the sense that it reduces market risks and provides inspirations for app development. However, manual exploration of hundreds of existing apps by different roles (e.g., product manager, UI/UX designer, developer, and tester) can be ineffective. For example, it is difficult to completely explore all the functionalities of the app from different aspects including design, implementation, and testing in a short period of time. However, existing reverse engineering tools only provide basic features such as AndroidManifest.xml and Java source files for users. Following the conception of storyboard in movie production, we propose a system, named StoryDistiller, to automatically generate the storyboards for Android apps with rich features through reverse engineering, and assist different roles to review and analyze apps effectively and efficiently. Specifically, we (1) propose a hybrid method to extract a relatively complete Activity transition graph (ATG), that is, it first extracts the ATG of Android apps through static analysis method first, and further leverages dynamic component exploration to augment ATG; (2) extract the required inter-component communication (ICC) data of each target Activity by leveraging static data-flow analysis and renders UI pages dynamically by using app instrumentation together with the extracted required ICC data; (3) obtain rich features including comprehensive ATG with rendered UI pages, semantic activity names, corresponding logic and layout code, etc. (4) implement the storyboard visualization as a web service with the rendered UI pages and the corresponding rich features. Our experiments unveil that StoryDistiller is effective and indeed useful to assist app exploration and review. We also conduct a comprehensive comparison study to demonstrate better performance over IC3, Gator, Stoat, and StoryDroid. This work was partially supported by the National Science Foundation of China (No. 62102284, 62102197). 2022-11-01T03:57:05Z 2022-11-01T03:57:05Z 2022 Journal Article Chen, S., Fan, L., Chen, C. & Liu, Y. (2022). Automatically distilling storyboard with rich features for Android apps. IEEE Transactions On Software Engineering, 1-17. https://dx.doi.org/10.1109/TSE.2022.3159548 0098-5589 https://hdl.handle.net/10356/162613 10.1109/TSE.2022.3159548 2-s2.0-85126511499 1 17 en IEEE Transactions on Software Engineering © 2021 IEEE. All rights reserved.
institution Nanyang Technological University
building NTU Library
continent Asia
country Singapore
Singapore
content_provider NTU Library
collection DR-NTU
language English
topic Engineering::Computer science and engineering
Android Apps
App Review
spellingShingle Engineering::Computer science and engineering
Android Apps
App Review
Chen, Sen
Fan, Lingling
Chen, Chunyang
Liu, Yang
Automatically distilling storyboard with rich features for Android apps
description Before developing a new mobile app, the development team usually endeavors painstaking efforts to review many existing apps with similar purposes. The review process is crucial in the sense that it reduces market risks and provides inspirations for app development. However, manual exploration of hundreds of existing apps by different roles (e.g., product manager, UI/UX designer, developer, and tester) can be ineffective. For example, it is difficult to completely explore all the functionalities of the app from different aspects including design, implementation, and testing in a short period of time. However, existing reverse engineering tools only provide basic features such as AndroidManifest.xml and Java source files for users. Following the conception of storyboard in movie production, we propose a system, named StoryDistiller, to automatically generate the storyboards for Android apps with rich features through reverse engineering, and assist different roles to review and analyze apps effectively and efficiently. Specifically, we (1) propose a hybrid method to extract a relatively complete Activity transition graph (ATG), that is, it first extracts the ATG of Android apps through static analysis method first, and further leverages dynamic component exploration to augment ATG; (2) extract the required inter-component communication (ICC) data of each target Activity by leveraging static data-flow analysis and renders UI pages dynamically by using app instrumentation together with the extracted required ICC data; (3) obtain rich features including comprehensive ATG with rendered UI pages, semantic activity names, corresponding logic and layout code, etc. (4) implement the storyboard visualization as a web service with the rendered UI pages and the corresponding rich features. Our experiments unveil that StoryDistiller is effective and indeed useful to assist app exploration and review. We also conduct a comprehensive comparison study to demonstrate better performance over IC3, Gator, Stoat, and StoryDroid.
author2 School of Computer Science and Engineering
author_facet School of Computer Science and Engineering
Chen, Sen
Fan, Lingling
Chen, Chunyang
Liu, Yang
format Article
author Chen, Sen
Fan, Lingling
Chen, Chunyang
Liu, Yang
author_sort Chen, Sen
title Automatically distilling storyboard with rich features for Android apps
title_short Automatically distilling storyboard with rich features for Android apps
title_full Automatically distilling storyboard with rich features for Android apps
title_fullStr Automatically distilling storyboard with rich features for Android apps
title_full_unstemmed Automatically distilling storyboard with rich features for Android apps
title_sort automatically distilling storyboard with rich features for android apps
publishDate 2022
url https://hdl.handle.net/10356/162613
_version_ 1749179216988995584