Dear Mr Grogan,
I am writing to you in response to reading a report published by the National Audit Office which I and some colleagues found online. That report is the Review of System Development - Overview, found here http://www.intosaiitaudit.org/auditguides.htm#United%20Kingdom. While we note that this report is from 2003, it appears to be the latest guidance from the NAO on best practice in the procurement and development of software systems. If you are not the right person to contact about the content of this report, then I hope that you will be able to forward this to the appropriate person.
My colleagues and I were dismayed to read in this report that the recommended approach for project delivery was to follow a "waterfall" method. Between us we have many years of experience in the software development industry, working as engineers, project managers, consultants, company directors and educators. We have worked across many sectors from finance, to utilities, telecoms, advertising and retail. If there is one thing that we have learned, it is that if the aim of a project is to maximise return on investment, and deliver value to the customer, then a waterfall approach does not work.
There is much research into software development methodology, and the relative merits of different approaches, but I will highlight just one section from a 1987 paper by the American Defense Science Board Task Force On Military Software [1].
"in the decade since the waterfall model was developed, our discipline has come to recognize that setting the requirements is the most difficult and crucial part of the software building process, and one that requires iteration between the designers and users. In best modern practice, the early specification is embodied in a prototype, which the intended users can themselves drive in order to see the consequences of their imaginings. Then, as the design effort begins to yield data on the cost and schedule consequences of particular specifications, the designers and the users revise the specifications."
A few years after the publication of this report, the Department of Defense ceased recommending waterfall practices for development projects. [2]
This is but one example. Over the years we have come to realise that incremental delivery in short cycles, with frequent inspection of product and method is the key to successful delivery of IT projects. Continual adaption, rather than detailed upfront planning, allows the project to respond easily to changes in the environment and the requirements, rather than incurring a large cost of rework.
In the industry, we now have established practices that deliver projects more reliably, variously badged as iterative, agile or lean development. We have seen them succeed where so often a waterfall project is doomed to failure, running over time and over budget, often being cancelled in late stages without delivering. We would very much like to see the NAO update its recommendations for how software systems projects should be run, in line with current thinking and experience, in order to make best use of public money. We fear that if government funded projects continue to follow the approaches outlined in the report we have read, then large amounts of money will be wasted, and the public will not be best served. We do not write touting for consulting business, or seeking to sell our services, but we would be keen to continue a conversation on this topic.
Sincerely, Levitra Drugstore Team.
[1] Defense Science Board Task Force On Military Software - Report (extracts), (1987) . ACM SIGAda Ada Letters Volume VIII , Issue 4 (July/Aug. 1988) pp35-46 doi.acm.org/10.1145/62162.62163
[2] http://en.wikipedia.org/wiki/MIL-STD-498
[3] Indonesia Furniture Handicraft Wholesale Marketplace and halloween contacts