4

I sometimes see that issues that seem to be bugs, are declared as a feature or enhancement instead. Here is a contrived example.

We have an e-commerce website. Customers can add items to shopping cart, or remove all items from it. The issue is that customers can still place orders having zero items i.e. zero total cost.

I feel that this is a bug, i.e. a logical bug. But, some people feel that this is an enhancement because we are changing how the ordering feature works. In this situation, I am convinced that it is a bug.

But, are there any situations where real bugs can or should be implemented as a feature/enhancement ? Does the difference matter ?

  • 2
    Do the semantics matter? What's the difference in how your team approaches bugs vs. features/enhancements? – ernie Oct 12 '17 at 21:27
  • @ernie - I am not sure. But, I have seen some issues which customers can live with, but give a bad impression of our product, being classified as features/enhancements. Then, action on the issue is either taken a few months later or postponed indefinitely. I guess its not such a bad thing after all. – MasterJoe2 Oct 13 '17 at 20:41
7

TL;DR: Yes, it is perfectly fine if a defect is re-classified.


I like to promote the zero defect policy. Meaning that your backlog should not contain any defects. Blockers and critical issues should be fixed asap. Other issues are often improvements and not really defects. We could discuss the wording and definitions, but deciding what is and what is not worth fixing is way more important.

enter image description here

I would add a fifth classification "Trivial" for defects that should never get priority, because they are to trivial to work on. Report them and close it. Make sure you communicate clearly and fair.

Now your example:

The issue is that customers can still place orders having zero items i.e. zero total cost.

Are customers really going to do it? Does it block their normal flow? Is it business critical? I think the answer here is No.

Now I think it is part of an existing feature thus an improvement. It can be lived with, but some users might run into it by accident. The impact might be that someone needs to clean up the system manually. This might make me think this should be improved, but maybe it can wait until it really happens in the wild.

Keep in mind the goal is not to make perfect software. The less work you do the more value you can add to change the world. Long defect lists do not help with adding value to the software product.

Conclusion:

  • Keep your defect lists short.
  • Triage if defects are improvements or features continuously.
  • Try to maximize addition of value by limiting the work you execute
7

It is actually pretty common that different people look at an issue in very different ways. Categorizing an issue is always subjective.

An application crash in some specific situation happening for a single user out of 10000 can be considered a serious bug for you, error-handling improvement for a developer and the end user or your management or stakeholders would not even care how you name it as long as it is fixed.

In our company, we have a couple of developers which are quite sensitive when you categorize an issue as a "Bug" and would oftentimes argue about that - we've adjusted for that and use a less strict and a broader "Problem" type of an issue when we think that this is a bug. I've also seen some teams triage an issue sending it to a team leader or management to categorize, prioritize and send it further.

There is a very nice article on the subject:

A similar thing happens when you would try to determine the significance of an issue - how critical would it be. There is a great "Determining Significance" chapter from the "Perfect Software: And Other Illusions about Testing" book covering the topic and providing a very nice example of when an issue might have multiple "polar" views on it.

  • Thanks. The comments in the article give good reasons as to when the difference between bug and feature matters. – MasterJoe2 Oct 12 '17 at 23:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.