  The reliability of mobile devices is a challenge for vendors, since the
mobile software stack has significantly grown in complexity. In this paper, we
study how to assess the impact of faults on the quality of user experience in
the Android mobile OS through fault injection. We first address the problem of
identifying a realistic fault model for the Android OS, by providing to
developers a set of lightweight and systematic guidelines for fault modeling.
Then, we present an extensible fault injection tool (AndroFIT) to apply such
fault model on actual, commercial Android devices. Finally, we present a large
fault injection experimentation on three Android products from major vendors,
and point out several reliability issues and opportunities for improving the
Android OS.
