Developer (& Tester!) Quality
The part I'm interested in starts about a third of the way down the page. (by the picture of a skyline) A former lecturer of Joel's began gathering statistics regarding the amount of time his students were taking for various pieces of coursework. The statistics and analysis make fascinating reading, especially when you see that the logical conclusion is that "The quality of the work and the amount of time spent are simply uncorrelated". This quite nicely reinforces the fact that throwing additional resource at a project will not help the situation. To quote, "the man month is mythical".
Maybe you could throw more resource at the QA/Testing side of the project? Maybe with contractors. However, every product has a learning curve. For someone to be able to test something, even with the most comprehensive of test scripts, the most controlled of environments, some knowledge of the system being tested is inherently required. Without it you won't get much, if any, value out of additional resource. Obviously this can be alleviated by only hiring the best of the best, maybe by choosing Testers who are:
- Quick on the uptake
- Independent and self-sufficient
But, If you don't have people that fit those criteria, adding more resource will just make the situation worse. Your current people will spend more and more time working with the new team members and overall productivity will plummet. Something that has to be watched for, and managed, very very carefully. Anyone (theoretically) could execute a test script. But a tester who knows and is familiar with the system, can then investigate a defect encountered, diagnose the problem and provide the maximum ammount of information to the development team possible. This has the benefit of providing development with as much information to reproduce the defect as is available. Possibly with additional test cases that came to light from the testers research. Maybe even a proposed fix if the tester is technically minded.
Compare and contrast that to the value of a tester who lacks experience with the system being tested and is merely following a test script. If they don't know the system they're likely to log the defect and then carry on with further scripts, possibly resulting in them wasting time as a defect could impact multiple areas of the system.
Are contractors really adding value to a project? Yes -- if the project is right and you can get sign-off 125% of the contractor resource you need to do the job.
My skillset has matured somewhat since then, which you'll probably see from the posts here. You can read a bit more about me on the about page of the site, or check out some of the other posts on my areas of interest.