Execution
In some Olympic events, 100% precision and accuracy with no room for error means winning the medal(See Cruel Olympic false start rule).
For other events, there is a little leeway.
For instance, in tennis, during the serve, a player is given two chances to get the ball in to the right part of the opponent’s court to start the point.
In some of the track and field events, the individual has multiple tries to get his/her best score; like shot put.
Although Olympic golf doesn’t allow a mulligan, this is another sport that, in casual settings, gives you another try.
Is perfection the best expectation during the Sitecore project development?
Bugs and Testing
So, here I am attempting to make a case for expecting and seeing bugs while you, as a client, are performing user acceptance testing of the functionality.
First, there’s the psychological element … if you don’t come across any bugs while testing the initial pieces of functionality, complacency and routine inevitably sets in while checking the remaining work and bugs can be missed.
I once worked with a quality assurance person who would high-five himself and exclaim “In your face!” when he found a bug. I more or less embraced his proclamations as it challenged me to be a better coder.
An ancient 90’s wall poster, “Pobody’s Nerfect” pops in my head while on this topic. There are studies declaring that software should have no more than 15-50 bugs per 1000 lines of code. Bugs are inevitable and reporting them accurately in the bug defect tracker of choice is important. Guidelines or training should be provided showing to how to properly (and thoroughly) log a bug.
There are a multitude of reasons why a bug occurs. One common source is related to the requirements documentation. The bug can be a result of the analyst not documenting a requirement thoroughly or a developer misinterpreting the requirements.
There’s also the client-missed requirements which are often considered bugs but may be more appropriately labeled as a Feature Request not yet defined or scoped.
While the bug count should be minimized during user acceptance testing, expect to give some mulligans and second serves.