It’s okay to release known bugs!
There’s been a longtime discussion over whether to release versions of software with known bugs, particularly since the take off of Agile Development. Features and bug fixes are released incrementally, often on a weekly or fortnightly basis. An issue we faced recently (when user acceptance testing discovered additional bugs that weren’t caused by the release itself), was finding a balance between:
- A client’s desire to stamp out all bugs for a release
- The satisfaction of the production environment’s user base, who were increasingly becoming frustrated over a lack of fixes to the bugs they were encountering
Here’s my reasons for why it can be beneficial to push out releases for a subset of bug fixes, instead of postponing your release in order to try to stamp out all bugs known to mankind.
Keep your users as happy as possible in the short term
- The longer a bug is known to the user base, the more grating the bug can get to the users. Although this depends on a few factors:
- The bug’s level of impact
- Whether there’s a temporary workaround for the user, and the effort involved in enacting the workaround
- Prevent the bug’s affected user base from expanding, as more users come across that bug. Releasing a fix to that bug sooner will stop an ever expanding user base from becoming frustrated with the issue
- Don’t risk losing users to trying to fix everything in one go. This is particularly a concern if the project’s funding depends on user satisfaction, user retention or project effectiveness
Release creep and newly uncovered bugs
- When a release contains several bug fixes, user acceptance testing might uncover additional bugs. If these aren’t necessarily caused by the latest release, or the bug affects an older feature, there’s no reason to postpone the release. Otherwise the release will never be ready for production, and then we have to coin a new term reminiscent of Scope Creep!
- Remember the objectives of your release. You may need to give your client an outline of work done in the new release, to remind them the release’s objectives and the benefits to rolling it out as soon as possible
- Let’s not make Release creep a term
- Please lets not make Release creep a term
Remember the release’s objectives
Focus on the release’s objectives, why a release is occurring, and the benefits of the Agile Development methodology:
- Higher impact bugs can be addressed quicker
- The project’s effectiveness improves at a faster rate
- Users benefit from the bug fixes sooner
- Users (and higher ups) can see quicker, gradual improvements to the system, leaving a better impression of the project