Bug vs Feature

How often do you (I assume a developer) trying to make a suit for this small creature? Aren't such "features" just a mistake in software specification? If it's something that is visible just after product is deployed and it's OK from specification point of view:

  • Someone has not predicted errant situation during specification phase
  • OR: your waterfall (yes, it's a linear analysis-project-implementation-test flow!) process is basically not working now

I believe without formal methods you are not able to predict all possible specification inconsistencies before implementation. Even very accurate review process might leave some holes in specification that lead to obvious bugs as a result.

Then usually a customer is forced to:

  • accept extra work that needs to be done to remove a bug to be paid separately (so called "change request", usually pretty expensive at the end of a process)
  • OR: accept "feature" as is

Why? Because he signed specification! He/she wanted to make fixed-price product so contract must be created. Contract is not perfect, so responsibility for validating it is on contracting side, not the contractor. On the other hand we (the software shop side) like "THE SOFTWARE IS SUPPLIED WITH NO WARRANTY" (note the usual caps) that keeps our responsibility far away.

So: how often your software process introduces such "(cre/fe)atures"?

This entry was posted in en and tagged , . Bookmark the permalink.

One Response to Bug vs Feature

  1. Kender says:

    How often? Almost never, really.
    Even with signed contract I hate to be in position of leaving the customers with a product they don't really LOVE in every piece. This is why I tend to invest more time then is contracted to fix those kind of inconsistencies. And I see it as a failure of both sides when I'm forced to leave it like this. And I tell the customer that right away.

    Sometimes it leaves me with tons of extra, unpaid work to do. But I see it as an investment, really. Having the customer feel really WOW about the software they got from me is critical to stay on the market with high rates for my work, much higher then the competition really.

    Sometimes, however, I find a customer willing to sign some additional contract, covering those fixes and the payment for them. And it still leaves the customer in an excited state of mind about my service.

Comments are closed.