Finding causes from reports.
WHAT A CRASH REPORT CONTAINS
A stack trace Device model and operating system version Application version Available memory and storage Sometimes, the sequence of events before it
WHAT TO ADD YOURSELF
Breadcrumbs: a record of what the user was doing.
WHY
A stack trace without context frequently does not explain the cause.
WHAT TO PRIORITISE
Crashes affecting the most users Crashes appearing after a release Crashes on launch
WHY LAUNCH CRASHES FIRST
The user cannot use the application at all, and cannot even reach a fix.
WHAT TO CHECK FOR PATTERNS
One device model One operating system version One country or language Low memory or low storage
WHY LANGUAGE
Translated text of unexpected length, and formatting differences, cause real crashes.
WHAT TO KEEP
The mapping file for each release, so obfuscated traces can be read.
WHAT TO DO WITHOUT ONE
Very little. The trace is unreadable.
WHAT TO REPRODUCE
The conditions, on a matching device.
WHAT TO ADD AFTER FIXING
A test preventing its return.