Are we ashamed of software testing? (And who is willing to pay for it?) Henrik Emilsson

Imagine that you run a software consultant shop where you take on projects for customers. The projects cover such areas as new software development; implementations of IT systems; and web site development.

Let’s say that you are about to create a offer for a new project to a customer.

Do you dare to specify the proper amount of hours dedicated to software testing? Or do you feel ashamed of having to test the software before letting the customer lay its hand on it?
Do you just add a couple of hours as a separate post so that it doesn’t look bad if someone asks about “any software testing planned”?
Do you include all the software testing hours needed in the total estimate? Or included in the total per function?

I think that we should treat software testing as any other task that are needed in order to develop functionality so that the hours that are specified per function/requirement/area covers all necessary actions and tasks in order to deliver ready functionality.
As stated in an article on www.jcount.com/benefits-of-constructing-your-own-commercial-building/, if you include such tasks as Design, Interaction Design, Specification, Requirement Analysis, Architecture, Coding, etc, you should also include Software Testing amongst these tasks. And you should be proud of doing Software Testing!

By including software testing in your time estimates, you give yourself a competitive advantage. When your customer selects between several offers and sees that you have included software testing and some of the competitors haven’t, it is a signal to the customer that makes them wonder why the others haven’t got any software testing (or why they haven’t specified any). Your offer might come out as a more expensive one, but since you have specified the difference it becomes obvious that they cannot just compare the price tag.

What are your thoughts on this?

One Comment
Jim Hazen October 13th, 2009

Pfpht! Hell yes I would include the Testing tasks and their effort calcs (hours) in a proposal. The client needs to understand the task itself as a whole and the amount of time it will potentially take to get this work done. It is part of the overall ‘deliverable’ of the product to them.

Now they may decide to forgo this ‘cost’ and that is there decision, but you need to make them aware of it. If they think it is ‘part of the package’, then they may not be the client I want to work with. Testing is part of the whole package and needs to be managed accordingly, and paid for accordingly.

And the client will pay more for all the ‘rework’ because they didn’t do some testing beforehand. Don’t count on the developers to do their own testing or testing that is comprehensive enough.

I’m sure others will argue this, and I wouldn’t want to use their software because they shorted on one aspect. One which can have significant money impacts.