You are on page 1of 5

What is RAD?

RAD refers to a development life cycle designed to give much faster development and higher quality
systems than the traditional Systems Development Lifecycle (SDLC). It is designed to take advantage
of powerful development software like CASE tools, prototyping tools and code generators. The key
objectives of RAD are: High Speed, High Quality and Low Cost. RAD is a people-centred and
incremental development approach. Active user involvement, as well as collaboration and co-operation
between all stakeholders, is imperative. Testing is integrated throughout the development life cycle so
that the system is tested and reviewed by both developers and users incrementally. A typical RAD life
cycle is composed of the following stages.

Note: If the requirements are obvious, the first two Stages may be combined.
The RAD lifecycle is similar to the traditional Systems Development Lifecycle in some ways. It involves
some of the same steps. However, it is really a compressed version of the traditional approach,
designed to be executed over a very short period of time (for example 3 months).

RAD in SDLC
Mapping between System Development Life Cycle (SDLC) of ITSD and RAD stages is depicted as
follows:

Note: If a combined Feasibility Study (FS)/Systems Analysis & Design (SA&D) is to be conducted, the
Requirements Planning (RP) and User Design (UD) stages will be conducted consecutively. If a SA&D is
to be conducted without a previously conducted FS, the activities in the Requirements Planning (RP)
stage still have to be done when necessary, before starting UD stage.

Essential ingredients of RAD


RAD has four essential ingredients:

Tools

Methodology

People

Management

If any one of these ingredients is inadequate, development will not be high speed.

Tools
The use of powerful CASE tools will provide automation support for systems development through
features such as code generation and automatic consistency checking. CASE tools that generate
prototypes can be used to support an iterative development approach such as RAD, allowing end users
to see the application evolve as it is being built.

Case tools

Methodology

The most effective family of techniques must be formalised and used to deliver the system. A
complete list of tasks is provided to ensure that no essential activity is overlooked, while techniques
are fully documented to ensure that a task is performed in the proper way.

People
The best people must be well-trained in both the methodology and the tools. Small teams that work
consistently well together should be grouped together on assignments.

Management
The project must be managed for speed through the use of techniques such as facilitated Joint
Requirements Planning (JRP) and Joint Application Design (JAD) workshops to extract users'
requirements quickly. Timebox Management is used in Rapid Construction to iteratively deliver the
system to the users.

JRP

JAD

Benefits of RAD
The following benefits can be realised in using RAD:

High quality systems will be delivered because of methodology, tools and user involvement

Business benefits can be realised earlier

Capacity will be utilised to meet a specific and urgent business need

Standards and consistency can be enforced through the use of CASE tools

Build what users need

Correct the software and/or misconceptions as they arise

Shift the design to accommodate new needs and other changes

Resolve bugs early on

In the long run, we will also achieve:

A reduction in the time required to get systems developed

Increased productivity of developers

RAD structural model overview


Structure Component
The structure of RAD is divided into Stages. Each Stage consists of a number of tasks. The following
diagram is a structural model of how RAD tasks are organised:

For each Task, the Structural Model defines clearly the objectives, inputs, outputs, techniques to be
used, roles involved and a list of sub-tasks to be carried out.

Overview of structure
The following diagram shows the Stages and Tasks in RAD:

[click on image for a larger view]


Abstracted from : An Introduction to Rapid Application Development (RAD) The Government of the
Hong Kong Special Administrative Region Ref. No.: G47a Feb 2002 5-1 Version 1.1

When should you use RAD?

When the system being developed is data entry and data display intensive. RAD is not suitable
for computationally intensive programs

When specifications are loosely defined - because RAD includes methods for quickly capturing
user requirements through JRP and JAD sessions.

When the application program is unique to a business - ie not available off the shelf

What to expect in this resource pack

Theory about RAD


This resource provides an overview of RAD concepts and how you can apply the theory to a real
solution.

Example of RAD
This resource provides a simple example of RAD development using several different tools.

Possible CASE tools or RAD tools


This resource provides links to tools that can be used for Rapid Application Development. The resource
does not recommend the use of specific tools.
What you should not expect from this resource

Guidance in using specific tools


This resource provides links to several tools; some of the links include tutorials, however this resource
does not provide guidance on using tools to develop solutions.

Guidance in implementing specific methodologies and techniques


Only one technique is exampled in this resource, however there are many other techniques and tools
available in the market. The specific technique required to develop a solution will be based on the type
of solution required and the tools used to develop the solution.

You might also like