
RAD has become something of a dirty word in the industry. That's not really a failure of the process, in my opinion - rather the implementation. How do I justify that?
The problem is, not uncommonly, one of evangelism. RAD was promoted as the solution to all ills in software development, which it most certainly is not.
The RAD approach works only if the project, and more importantly, project sponsorship within the organisation(s), are committed to the approach. It's all too easy for management to pay lip service to the RAD approach, but not truly buy in.
There are many different development techniques, which I won't go into here - if you want a first class explanation, read "Rapid Development", by Steve McConnell. I don't agree with everything he has to say - but almost. He is the closest thing I have ever seen to a true industry guru.
RAD relies on timeboxing. Fixed delivery points in time - what can vary is the actual deliverables. In order to make that work, each timebox must plan to deliver according to the "Moscow Principle" :
M - Must have
S - Should have
C - Could have
W - Would like
The development team, along with the ambassador users ( a fully empowered user, entitled to make decisions on behalf of the client ), must have the freedom to drop functionality as needed, in order to make that timebox.
Why is the timebox so important? Stick to that, and you have transparency of development. The users get to see something new regularly - preferably at least weekly. That retains their interest and buy in, and enables users to flag up errors in design or usability early on, whilst it still has relatively low impact.
This is where things go wrong - companies set themselves up to fail, and my one and only failure to deliver a software project, was when I didn't see that the project was doomed from the beginning. RAD was not the right approach in that project ; a more conventional waterfall or even a tiered development model would have worked better, although I'm not sure the company wasn't committed to sabotaging itself.
If you are considering a RAD based approach, I strongly recommend you hire a development lead with hands on experience with the approach. Consider whether it fits with your company profile and management reporting.
Specific questions? Give us a call. Our advice is often free, and could save you a lot of money, and a failed project.
<<Back