TUTCRIS - Tampereen teknillinen yliopisto

TUTCRIS

Prioritizing corrective maintenance activities for android applications: An industrial case study on android crash reports

Tutkimustuotosvertaisarvioitu

Yksityiskohdat

AlkuperäiskieliEnglanti
OtsikkoSoftware Quality
AlaotsikkoMethods and Tools for Better Software and Systems - 10th International Conference, SWQD 2018, Proceedings
KustantajaSpringer-Verlag Berlin Heidelberg
Sivut133-143
Sivumäärä11
ISBN (painettu)9783319714394
DOI - pysyväislinkit
TilaJulkaistu - tammikuuta 2018
OKM-julkaisutyyppiA4 Artikkeli konferenssijulkaisussa
TapahtumaINTERNATIONAL CONFERENCE ON SOFTWARE QUALITY -
Kesto: 1 tammikuuta 1900 → …

Julkaisusarja

NimiLecture Notes in Business Information Processing
Vuosikerta302
ISSN (painettu)1865-1348

Conference

ConferenceINTERNATIONAL CONFERENCE ON SOFTWARE QUALITY
Ajanjakso1/01/00 → …

Tiivistelmä

Context: Unhandled code exceptions are often the cause of a drop in the number of users. In the highly competitive market of Android apps, users commonly stop using applications when they find some problem generated by unhandled exceptions. This is often reflected in a negative comment in the Google Play Store and developers are usually not able to reproduce the issue reported by the end users because of a lack of information. Objective: In this work, we present an industrial case study aimed at prioritizing the removal of bugs related to uncaught exceptions. Therefore, we (1) analyzed crash reports of an Android application developed by a public transportation company, (2) classified uncaught exceptions that caused the crashes; (3) prioritized the exceptions according to their impact on users. Results: The analysis of the exceptions showed that seven exceptions generated 70% of the overall errors and that it was possible to solve more than 50% of the exceptions-related issues by fixing just six Java classes. Moreover, as a side result, we discovered that the exceptions were highly correlated with two code smells, namely “Spaghetti Code” and “Swiss Army Knife”. The results of this study helped the company understand how to better focus their limited maintenance effort. Additionally, the adopted process can be beneficial for any Android developer in understanding how to prioritize the maintenance effort.