Write a Blog >>
ICSE 2020
Wed 24 June - Thu 16 July 2020
Tue 7 Jul 2020 15:24 - 15:32 at Goguryeo - A2-Testing and Debugging 1 Chair(s): Na Meng

Logging is a common practice in software engineering. Prior research has investigated the characteristics of logging practices in system software (e.g., web servers or databases) as well as desktop applications. However, despite the popularity of mobile apps, little is known about their logging practices. In this paper, we sought to study logging practices in mobile apps. In particular, we conduct a case study on 1,444 open source Android apps in the F-Droid repository. Through a quantitative study, we find that although mobile app logging is less pervasive than server and desktop applications, logging is leveraged in almost all studied apps. However, we find that there exist considerable differences between the logging practices of mobile apps and the logging practices in server and desktop applications observed by prior studies. In order to further understand such differences, we conduct a firehouse email interview and a qualitative annotation on the rationale of using logs in mobile app development. By comparing the logging level of each logging statement with developers’ rationale of using the logs, we find that all too often (35.4%), the chosen logging level and the rationale are inconsistent. Such inconsistency may prevent the useful runtime information to be recorded or may generate unnecessary logs that may cause performance overhead. Finally, to understand the magnitude of such performance overhead, we conduct a performance evaluation between generating all the logs and not generating any logs in eight mobile apps. In general, we observe a statistically significant performance overhead based on various performance metrics (response time, CPU and battery consumption). In addition, we find that if the performance overhead of logging is significantly observed in an app, disabling the unnecessary logs indeed provides a statistically significant performance improvement. Our results show the need for a systematic guidance and automated tool support to assist in mobile logging practices.

Tue 7 Jul

Displayed time zone: (UTC) Coordinated Universal Time change

15:00 - 16:00
15:00
12m
Talk
Studying the Use of Java Logging Utilities in the WildTechnical
Technical Papers
Boyuan Chen York University, Zhen Ming (Jack) Jiang York University
Authorizer link Pre-print
15:12
12m
Talk
Causal Testing: Understanding Defects' Root CausesACM SIGSOFT Distinguished Artifact AwardsArtifact ReusableTechnicalArtifact Available
Technical Papers
Brittany Johnson University of Massachusetts Amherst, Yuriy Brun University of Massachusetts Amherst, Alexandra Meliou University of Massachusetts Amherst
Link to publication DOI Pre-print Media Attached
15:24
8m
Talk
Studying the Characteristics of Logging Practices in Mobile Apps: A Case Study on F-Droid.J1
Journal First
Yi Zeng Concordia University, Jinfu Chen Concordia University, Canada, Weiyi Shang Concordia University, Tse-Hsun (Peter) Chen Concordia University
Authorizer link Pre-print
15:32
6m
Talk
Automatically Predicting Bug Severity Early in the Development ProcessNIER
New Ideas and Emerging Results
Jude Arokiam Ontario Tech University, Jeremy Bradbury Ontario Tech University
15:38
8m
Talk
A Survey on Adaptive Random TestingJ1
Journal First
Rubing Huang Jiangsu University, Weifeng Sun Jiangsu University, Yinyin Xu Jiangsu University, Haibo Chen Jiangsu University, Dave Towey University of Nottingham Ningbo China, Xin Xia Monash University
15:46
12m
Talk
Code Level Model-Checking in the Software Development WorkflowArtifact ReusableArtifact AvailableSEIP
Software Engineering in Practice
Nathan Chong Amazon, Byron Cook Amazon, Konstantinos Kallas University of Pennsylvania, Kareem Khazem Amazon, Felipe R. Monteiro Amazon, Daniel Schwartz-Narbonne Amazon, n.n., Serdar Tasiran Amazon, n.n., Michael Tautschnig Amazon Web Services, Mark R. Tuttle Amazon
Pre-print Media Attached