This is the start of a new model for social bug-tracking. It works in complement to the typical in-house bug-tracking lifecycle, integrating external communication.
Draft (v1) below is inspired by Stephen Anderson’s poster on designing user experiences and high doses of homemade chocolate chip cookies.
User + Developer interaction oriented bug model.
This bug lifecycle model focuses on the interaction between users and developers.
Developers ask questions like “what? how? when?” playing Benedict Cumberbatch deducing which set of complex intertwined events led to the problem.
Users provide insights, like “my Sony Droid Maximus Razor 3000 crashes while uploading giant pictures of cats over 3G”. This chat, friendly and curious, aims at unraveling a mystery.
A little secret software companies don’t wants you to know: There are always bugs.
Even when every issue is closed out of issue tracker by a stressed out project manager struggling to ship on time, there are still bugs hiding in the dark, awaiting their 15 minutes of fame.
Programmers spend all day fixing bugs and nurturing new features from a seemingly unending list. So for anything to get done, we require the clarity of order.
Such order can be extruded from user feedback in the form of a prioritized list. Therefore, the positioning stage of a bug’s lifecycle is where we decide when a bug will get fixed.
The Fix Loop
A bug is fixed only when the user agrees. This may require multiple trips through the loop. We go round and round until the problem is solved.
Once the bug-fix has been shipped to the user, the bug’s life-cycle is complete.
The app has been updated on your device. We both have closure. “Thank you for the bug-report.” And “thank you for fixing the bug.” The end. Time to move on. Or is it?
Bugs are a social transaction. They poses hidden value: a meaningful way of engaging with the user, providing them great service, and ultimately justifying the cost of software. Many companies have structured their Open Source software businesses around this idea: freedom in software, value in service.