XDebloat: towards automated feature-oriented app debloating

Tang, Y. , Zhou, H., Luo, X., Chen, T., Wang, H., Xu, Z. and Cai, Y. (2022) XDebloat: towards automated feature-oriented app debloating. IEEE Transactions on Software Engineering, 48(11), pp. 4501-4520. (doi: 10.1109/TSE.2021.3120213)

Full text not currently available from Enlighten.

Abstract

Existing programming practices for building Android apps mainly follow the “one-size-fits-all” strategy to include lots of functions and adapt to most types of devices. However, this strategy can result in software bloat and many serious issues, such as slow download speed, and large attack surfaces. Existing solutions cannot effectively debloat an app as they either lack flexibility or require human efforts. This work proposes a novel feature-oriented debloating approach and builds a prototype, named XDebloat , to automate this process in a flexible manner. First, We propose three feature location approaches to mine features in an app. XDebloat supports feature location approaches at a fine granularity. It also makes the feature location results editable. Second, XDebloat considers several Android-oriented issues (i.e., callbacks) to perform a more precise analysis. Third, XDebloat supports two major debloating strategies: pruning-based debloating and module-based debloating. We evaluate XDebloat with 200 open-source and 1,000 commercial apps. The results show that XDebloat can successfully remove components from apps or transform apps into on-demand modules within 10 minutes. For the pruning-based debloating strategy, on average, XDebloat can remove 32.1% code from an app. For the module-based debloating strategy, XDebloat can help developers build instant apps or app bundles automatically.

Item Type:Articles
Additional Information:The work of Yutian Tang was supported by Shanghai Pujiang Program under Grant 21PJ1410700 The work of Xiapu Luo was supported by Hong Kong RGC Projects under Grants PolyU15223918 and PolyU15222317. The work of Ting Chen was supported by the National Natural Science Foundation of China under Grant 61872057 and National Key R&D Program of China under Grant 2018YFB0804100. The work of Haoyu Wang was supported by the National Natural Science Foundation of China under Grant 62072046. The work of Zhou Xu was supported by the National Natural Science Foundation of China under Grant 62102054. The work of Yan Cai was supported by the Key Research Program of Frontier Sciences, CAS under Grant ZDBS-LY-7006.
Status:Published
Refereed:Yes
Glasgow Author(s) Enlighten ID:Tang, Dr Yutian
Authors: Tang, Y., Zhou, H., Luo, X., Chen, T., Wang, H., Xu, Z., and Cai, Y.
College/School:College of Science and Engineering > School of Computing Science
Journal Name:IEEE Transactions on Software Engineering
Publisher:IEEE
ISSN:0098-5589
ISSN (Online):1939-3520
Published Online:14 October 2021

University Staff: Request a correction | Enlighten Editors: Update this record