RAD Model

“Rapid Application Development (RAD) is an incremental software development process model that emphasises a very short development cycle [typically 60-90 days].” The RAD model, shown in Fig. 1.5, is a high-speed adaptation of the waterfall model, where the result of each cycle a fully functional system.



RAD is used primarily for information systems applications, the RAD approach encompasses the following phases:

Business modeling

The information flow among business functions is modeled in a way that answers the following questions:
What information drives the business process?
What information is generated?
Who generates it?
Where does the information go?
Who processes it?

Data modeling

The information flow defined as part of the business modeling phase is refined into a set of data objects that are needed to support the business. The characteristics (called attributes) of each object are identified and the relationships between these objects are defined.

Process modeling

The data objects defined in the data-modeling phase are transformed to achieve the information flow necessary to implement a business function. Processing descriptions are created for adding, modifying, deleting, or retrieving a data object.

Application generation

RAD assumes the use of the RAD fourth generation techniques and tools like VB, VC++, Delphi etc rather than creating software using conventional third generation programming languages. The RAD works to reuse existing program components (when possible) or create reusable components (when necessary). In all cases, automated tools are used to facilitate construction of the software.

Testing and turnover

Since the RAD process emphasizes reuse, many of the program components have already been tested. This minimizes the testing and development time.

If a business application can be modularized so that each major function can be completed within the development cycle then it is a candidate for the RAD model. In this case, each team can be assigned a model, which is then integrated to form a whole.



·     For Large (but scalable) projects, RAD requires sufficient resources to create the right number of RAD teams.

·     RAD projects will fail if there is no commitment by the developers or the clients to ‘rapid-fire’ activities necessary to get a system complete in a much abbreviated time frame.

·     If a system cannot be properly modularized, building components for RAD will be problematic

·     RAD is not appropriate when technical risks are high, e.g. this occurs when a new application makes heavy use of new technology.


Copyright © Adrian Als & Charles Greenidge, 2003
This page was last modified: Monday, September 27, 2004