Software testing is a crucial part of the software development environment. Amongst the software life cycle processes, it plays a key role in the development process and in the verification process.
The development process goes like this: requirements analysis, architectural design, detailed design, coding, unit testing, installation and finally acceptance support. This last activity is usually executed by a developper with the acquirer because most teams can’t afford to have a separate testing staff to do the verification process properly.
After reading Ben Craigo’s article, I have good arguments to make the management invest more resources in the software testing effort.
- 80% of our software development cost is spent correcting bugs
- the later a bug is discovered, the more expensive it is to correct
- you can’t trust the developper to detect each of the bugs he causes
- there are no ways to code without bugs
- software testing requires skills and methods
And they have their own reasons not to follow my advice. 😦
- this isn’t our corporate culture
- some guys would be hard to convince
- moreover, the testing team will know that the development team makes some errors, that would make them feel bad
I can’t think of other good reasons, well maybe they don’t want to write down what they want so there is no way to specify the tests without a software prototype which is wanted as soon as possible to be thoroughly criticized. 😉