Rapid application development is an approach to developing software that seeks to deliver on-time solutions that meet the needs of the customer.
Approaches to RAD vary, but the commonly accepted version of the process encompasses the key elements of:
Although the usage of the term RAD is in decline, these key elements of RAD form the basis of today's leading agile development processes. These new methods build on the promises of RAD, proclaiming to offer accelerated development times, fewer defects, increased customer satisfaction, and a solution for rapidly changing requirements [Boehm, 2003].
The next chapter examines this new breed of software methodologies and looks at the importance of adopting an adaptive approach to software development.
Prototypes don't have to be developed on the computer. They can instead be constructed using a whiteboard and Post-it notes. For anyone interested in learning the techniques surrounding the use of paper-based prototypes, Carolyn Snyder has written a book on the subject, Paper Prototyping: The Fast and Easy Way to Design and Refine User Interfaces [Snyder, 2003].
The Robert L. Glass title, Facts and Fallacies of Software Engineering, observes a few home truths with regard to software reuse and the attitude of software engineers to high-end development tools [Glass, 2002]. Interestingly, Glass notes that few of us use them.