Taming Fragmentation-Induced Compatibility Issues in Android Applications

PhD Thesis Proposal Defence


Title: "Taming Fragmentation-Induced Compatibility Issues in Android 
Applications"

by

Miss Lili WEI


Abstract:

Android ecosystem is heavily fragmented. The numerous combinations of 
different device models and operating system versions make it impossible 
for Android app developers to exhaustively test their apps. As a result, 
various compatibility issues arise, causing poor user experience.

Such fragmentation-induced compatibility issues (FIC issues) have been 
well-recognized as a prominent problem in Android app development. 
However, little is known on the characteristics of these FIC issues and no 
mature tools exist to help developers quickly diagnose and fix these 
issues. To bridge the gap, we conducted an empirical study on 220 
real-world compatibility issues collected from five popular open-source 
Android apps. We further interviewed Android practitioners and conducted 
an online survey to gain insights from their real practices. Our study 
characterized the the symptoms, root causes, and triggering contexts of 
the FIC issues, investigated common practices to handle the FIC issues, 
and disclosed that these issues and their patches exhibit common patterns. 
With these findings, we proposed a technique, FicFinder, to automatically 
detect compatibility issues in Android apps. FicFinder has been evaluated 
to be effective in detecting fragmentation-induced compatibility issues 
with high precision and satisfactory recall.

An important input required by FicFinder is the FIC issue patterns that 
capture specific Android APIs as well as their associated context by which 
compatibility issues can be triggered. We denote such FIC issue patterns 
as API-context pairs. In the initial version of FicFinder, the API-context 
pairs were manually extracted from our empirical study dataset. Manually 
extracting FIC issue patterns can be expensive. In addition, API-context 
pairs can eventually get outdated since FIC issues are evolving as new 
Android versions and devices are released. To address this problem, we 
developed a novel framework, Pivot, that combines program analysis and 
data mining techniques to automatically learn API-context pairs from large 
corpora of popular Android apps. Specifically, Pivot takes an Android app 
corpora as input and outputs a list of API-context pairs ranked by their 
likelihood of capturing real FIC issues. With the learned API-context 
pairs, we can further transfer knowledge learned from existing Android 
apps to automatically detect potential FIC issues using FicFinder. This 
can significantly reduce the search space for FIC issues and benefit 
Android development community. To evaluate Pivot, we measured the 
precision of the learned API-context pairs and leverage them to detect 
previously-unknown compatibility issues in open-source Android apps.


Date:			Thursday, 31 January 2019

Time:                  	4:00pm - 6:00pm

Venue:                  Room 5566
                         (lifts 27/28)

Committee Members:	Prof. Shing-Chi Cheung (Supervisor)
 			Dr. Charles Zhang (Chairperson)
 			Dr. Tao Wang
 			Dr. Raymond Wong


**** ALL are Welcome ****