RAD stands for Rapid Application Development – but it is not necessarily efficient development. A book I highly recommend on this is called “Rapid Development” by Steve McConnell that does wonders for explaining various distinctions. It also explains some aspects of where he feels Quality Assurance comes into play. Basically, however, rapid application development is just a process (or, actually, a group of possible processes) for doing development-related tasks in a more rapid fashion to keep up with fast-paced schedules. It is hard to give a categorical definition because the whole point of RAD is to establish processes that allow developers to do their work quicker and get the support they need from the organization in order to do it. To that end, RAD can be different things to different organizations.
As far as where Quality Assurance goes in relation to this in my opinion, however, is the same place it goes even when you are not talking about rapid development or you are talking about any other particular model. QA looks at the whole process from the requirements phase on down to the release of the product, usually by assuring that certain processes are being adhered to. As far as the strict quality testing role, a testing life cycle should be married to the development life cycle and it is up to QA to establish processes such that this can happen in an efficient manner. This means that testing is concerned not just with exectuable portions of the development life cycle, but the non-executable ones as well.
Jeff, as always you've given a wonderful definition of what RAD should be.
I'm hoping that your words are ready by all project managers, business analysts and project teams out there.
What I've run across more than once are project teams from directors to coders who create their own definiton of RAD, that when more closely examined actually boils down to, "slam it in", "fix and ship" etc. No doc, no testing, no plan, no training and the timeline is simply "ASAP".
Anyone else run into this? How do you educate the teams on the proper methodologies of a true RAD project?