I saw a very small creepy crawly insect inside the house last evening. My roommate caught me as I was squishing the poor guy. “Dog louse,” I told her. I figured it looked just like the dog louse (must’ve been from the neighbor’s dog) that we found in our unit a few days back. Upon inspection, she told me it wasn’t a dog louse. Turns out, I squished it for nothing as it was actually harmless.
This then reminded me of something I saw from work earlier. Turns out a certain project prepared some standard test cases for their web application. Oddly enough, they provided bug priority (Critical, High, …) and bug level classifications (Functional, Usability, User Interface,…) for each of the test cases. They might have just been suggestions but those classifications were intended for bug reports — not for test cases. That’s like estimating the size of shadows you’d cast given your size. Or judging a cookie based on the cookie cutter. Or
Anyway, this is what I was actually reminded of… One of the items included a test case in locking — something like an error ought to be raised if you try to modify a record locked by another user. And the suggested classification for that item: Usability.
I’m no expert but I reckon usability is something that enhances or facilitates the usage of the thing in use. Locking, on the other hand, is not simply about raising an informative / helpful alert to inform users that someone else is modifying the same record. It’s essential to the functionality of an update since it helps ensure that the latest record is being updated granted that there are possibly many users that could be updating the same thing.
Of course, the actual bug classification should still depend on the actual bug found. And for all I know, it could indeed turn out to be a usability bug. I just hope it won’t be a case of mistagging a functional bug as a usability bug, or vice versa; or another case of squishing a poor little non-dog-louse bug for nothing.