There's an app for that, but it doesn't work. Diagnosing Mobile Applications in the Wild.

There are a lot of applications that run on

modern mobile operating systems. Inevitably, some of these

applications fail in the hands of users. Diagnosing a failure

to identify the culprit, or merely reproducing that failure in

the lab is difficult. To get insight into this problem, we interviewed

developers of five mobile applications and analyzed

hundreds of trouble tickets. We find that support for diagnosing

unexpected application behavior is lacking across major

mobile platforms. Even when developers implement heavyweight

logging during controlled trials, they do not discover

many dependencies that are then stressed in the wild. They

are also not well-equipped to understand how to monitor the

large number of dependencies without impacting the phone’s

limited resources such as CPU and battery. Based on these

findings, we argue for three fundamental changes to failure

reporting on mobile phones. The first is spatial spreading,

which exploits the large number of phones in the field by

spreading the monitoring work across them. The second is

statistical inference, which builds a conditional distribution

model between application behavior and its dependencies in

the presence of partial information. The third is adaptive sampling,

which dynamically varies what each phone monitors,

to adapt to both the varying population of phones and what is

being learned about each failure. We propose a system called

MobiBug that combines these three techniques to simplify the

task of diagnosing mobile applications.

PDF file

In  HotNets IX

Publisher  Association for Computing Machinery, Inc.
Copyright © 2007 by the Association for Computing Machinery, Inc. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Publications Dept, ACM Inc., fax +1 (212) 869-0481, or The definitive version of this paper can be found at ACM’s Digital Library --


> Publications > There's an app for that, but it doesn't work. Diagnosing Mobile Applications in the Wild.