Standard

Exception handling bug hazards in Android : Results from a mining study and an exploratory survey. / Coelho, Roberta; Almeida, Lucas; Gousios, Georgios; van Deursen, Arie; Treude, Christoph.

In: Empirical Software Engineering, Vol. 22, No. 3, 06.2017, p. 1264–1304.

Research output: Scientific - peer-reviewArticle

Harvard

APA

Vancouver

Coelho R, Almeida L, Gousios G, van Deursen A, Treude C. Exception handling bug hazards in Android: Results from a mining study and an exploratory survey. Empirical Software Engineering. 2017 Jun;22(3):1264–1304. Available from, DOI: 10.1007/s10664-016-9443-7

Author

Coelho, Roberta; Almeida, Lucas; Gousios, Georgios; van Deursen, Arie; Treude, Christoph / Exception handling bug hazards in Android : Results from a mining study and an exploratory survey.

In: Empirical Software Engineering, Vol. 22, No. 3, 06.2017, p. 1264–1304.

Research output: Scientific - peer-reviewArticle

BibTeX

@article{e82ac7a2c6e64c73a8bae1b3243673fd,
title = "Exception handling bug hazards in Android: Results from a mining study and an exploratory survey",
keywords = "Android development, Exception handling, Exploratory survey, Repository mining",
author = "Roberta Coelho and Lucas Almeida and Georgios Gousios and {van Deursen}, Arie and Christoph Treude",
year = "2017",
month = "6",
doi = "10.1007/s10664-016-9443-7",
volume = "22",
pages = "1264–1304",
journal = "Empirical Software Engineering",
issn = "1382-3256",
publisher = "Springer Netherlands",
number = "3",

}

RIS

TY - JOUR

T1 - Exception handling bug hazards in Android

T2 - Empirical Software Engineering

AU - Coelho,Roberta

AU - Almeida,Lucas

AU - Gousios,Georgios

AU - van Deursen,Arie

AU - Treude,Christoph

PY - 2017/6

Y1 - 2017/6

N2 - Adequate handling of exceptions has proven difficult for many software engineers. Mobile app developers in particular, have to cope with compatibility, middleware, memory constraints, and battery restrictions. The goal of this paper is to obtain a thorough understanding of common exception handling bug hazards that app developers face. To that end, we first provide a detailed empirical study of over 6,000 Java exception stack traces we extracted from over 600 open source Android projects. Key insights from this study include common causes for system crashes, and common chains of wrappings between checked and unchecked exceptions. Furthermore, we provide a survey with 71 developers involved in at least one of the projects analyzed. The results corroborate the stack trace findings, and indicate that developers are unaware of frequently occurring undocumented exception handling behavior. Overall, the findings of our study call for tool support to help developers understand their own and third party exception handling and wrapping logic.

AB - Adequate handling of exceptions has proven difficult for many software engineers. Mobile app developers in particular, have to cope with compatibility, middleware, memory constraints, and battery restrictions. The goal of this paper is to obtain a thorough understanding of common exception handling bug hazards that app developers face. To that end, we first provide a detailed empirical study of over 6,000 Java exception stack traces we extracted from over 600 open source Android projects. Key insights from this study include common causes for system crashes, and common chains of wrappings between checked and unchecked exceptions. Furthermore, we provide a survey with 71 developers involved in at least one of the projects analyzed. The results corroborate the stack trace findings, and indicate that developers are unaware of frequently occurring undocumented exception handling behavior. Overall, the findings of our study call for tool support to help developers understand their own and third party exception handling and wrapping logic.

KW - Android development

KW - Exception handling

KW - Exploratory survey

KW - Repository mining

UR - http://www.scopus.com/inward/record.url?scp=84982085657&partnerID=8YFLogxK

U2 - 10.1007/s10664-016-9443-7

DO - 10.1007/s10664-016-9443-7

M3 - Article

VL - 22

SP - 1264

EP - 1304

JO - Empirical Software Engineering

JF - Empirical Software Engineering

SN - 1382-3256

IS - 3

ER -

ID: 7226646