FILO: FIx-LOcus Recommendation for Problems Caused by Android Framework Upgrade
Marco Mobilio, Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

TL;DR
FILO is a technique that helps developers identify the specific methods in Android apps that need modification after OS upgrades, based on analyzing a single failing execution, thus easing debugging of compatibility issues.
Contribution
This paper introduces FILO, a novel method for recommending code fixes for Android app compatibility problems caused by OS upgrades, using minimal execution data.
Findings
FILO accurately identifies faulty methods in Android apps.
FILO efficiently analyzes a single failing execution.
FILO aids developers in debugging compatibility issues.
Abstract
Dealing with the evolution of operating systems is challenging for developers of mobile apps, who have to deal with frequent upgrades that often include backward incompatible changes of the underlying API framework. As a consequence of framework upgrades, apps may show misbehaviours and unexpected crashes once executed within an evolved environment. Identifying the portion of the app that must be modified to correctly execute on a newly released operating system can be challenging. Although incompatibilities are visibile at the level of the interactions between the app and its execution environment, the actual methods to be changed are often located in classes that do not directly interact with any external element. To facilitate debugging activities for problems introduced by backward incompatible upgrades of the operating system, this paper presents FILO, a technique that can…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Software Engineering Research · Software Testing and Debugging Techniques
