Identifying features of android apps from execution traces

Qi Xin, Farnaz Behrang, Mattia Fazzini, Alessandro Orso

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Understanding a program and the features it provides is essential for a number of software engineering tasks, including refactoring, debugging, and debloating. Unfortunately, program understanding and feature identification are also extremely challenging and time consuming activities. To support developers when they perform these activities, we propose FEATUREFINDER, an approach that aims to identify and understand the features of a program by analyzing its executions. Specifically, we defined our approach for Android apps, given their widespread use. Given an app, FEATUREFINDER generates traces that capture different properties of the app executions through instrumentation. It then leverages the user events in the trace to split the trace into segments, and clusters these segments based on their characteristics, using a classifier. Each identified cluster indicates a feature exercised in the execution. Finally, FEATUREFINDER suitably labels each identified cluster, so as to provide a human-readable description of the corresponding feature. We performed a case study in which we used FEATUREFINDER to identify features in two executions of the K- 9 MAIL app. In the study, FEATUREFINDER was able to correctly identify 6 of the 11 manually identified features, which we believe is an encouraging result and motivates further research.

Original languageEnglish (US)
Title of host publicationProceedings - 2019 IEEE/ACM 6th International Conference on Mobile Software Engineering and Systems, MOBILESoft 2019
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages35-39
Number of pages5
ISBN (Electronic)9781728133959
DOIs
StatePublished - May 2019
Externally publishedYes
Event6th IEEE/ACM International Conference on Mobile Software Engineering and Systems, MOBILESoft 2019 - Montreal, Canada
Duration: May 25 2019 → …

Publication series

NameProceedings - 2019 IEEE/ACM 6th International Conference on Mobile Software Engineering and Systems, MOBILESoft 2019

Conference

Conference6th IEEE/ACM International Conference on Mobile Software Engineering and Systems, MOBILESoft 2019
CountryCanada
CityMontreal
Period5/25/19 → …

Bibliographical note

Funding Information:
This work was partially supported by NSF, under grants CCF-1161821 and 1563991, DARPA, under contracts FA8650-15-C-7556 and FA8650-16-C-7620, ONR, under contract N00014-17-1-2895, and gifts from Google, IBM Research, and Microsoft Research.

Publisher Copyright:
© 2019 IEEE.

Copyright:
Copyright 2020 Elsevier B.V., All rights reserved.

Keywords

  • feature identification
  • program understanding
  • trace analysis

Fingerprint Dive into the research topics of 'Identifying features of android apps from execution traces'. Together they form a unique fingerprint.

Cite this