University of California, Davis
Application Development Methodology
Rapid Application Development (RAD)
Characteristics of the RAD Development
Path
Rapid development has all the features required of a modem application
development methodology:
- Rapid development techniques produce results very quickly, without
sacrificing high-quality design and implementation.
- Rapid development techniques enable programs to be modified quickly,
avoiding the high cost and long waiting times associated with traditional
maintenance.
- Rapid development techniques make it possible to catch all syntax and
internal semantic errors automatically, and provide maximum assistance
in catching external semantic errors.
- Systems created using rapid development techniques are of high quality;
that is, they meet true user needs as effectively as possible at the time
the system is cut over.
- To ensure that delivered systems meet true user needs, the rapid development
path does not freeze specifications at the end of User Design and then
make users wait many months for system delivery. The time between User
Design and delivery is kept as short as possible, and users may modify
screens and transactions during the Construction stage if necessary.
- Rapid development techniques encourage and aid creative thinking about
possible system functions.
- The debugging of hand-written code is slow and expensive and does not
catch all errors. Rapid development replaces the error-prone process of
hand writing code with automated code generation that produces bug-free
code.
- In addition to being error-prone, hand programming is slow and clumsy.
Rapid development avoids these problems by making maximum use of code generators.
- Rapid development harnesses the knowledge of users, responds flexibly
to their needs, and allows them to check every stage of a system's evolution.
- Rapid development techniques allow users to employ their own query
and update languages, report generators, decision support languages, and
specification languages.
- Rapid development formally involves high-level users in the development
cycle, encouraging these users to identify business needs clearly and to
consider how new systems could improve the business.
- Rapid development incorporates overview planning, which is essential
for streamlining procedures in complex organizations.
- Rapid development includes the automation of data modeling, which,
in combination with other techniques, ensures a stable database that will
be a cornerstone of the new system.
- Rapid development incorporates fast languages that make it possible
for users to extract new information from databases immediately upon the
request of management.
- Rapid development includes object-oriented planning and design, which
maximize the reusability of data structures, procedures, components, templates,
and designs used to generate code. Using rapid development techniques,
high-quality applications or shells can also be designed for reusability.
- In the rapid development path, systems can be divided into easily comprehensible
modules. Developers can make changes to individual modules and can rigorously
trace the effects of such changes on other modules.
- Rapid development provides a formal, rigorous, computerized technique
to ensure that separately developed systems and modules operate together
correctly.
- Rapid development techniques automate change control so that the consequences
of any change are revealed automatically and the complete set of consequential
corrections is represented in the library.
- The rapid development methodology permits the evolution of ever more
powerful mechanisms, each one built with lower-level mechanisms. Mechanisms
are designed to be reusable.
- Rapid development techniques produce systems that can be added to,
in a rigorously controlled fashion, by different people in different places
at different times. As a result, the comprehensiveness and capabilities
of such systems continually expand.
- Rapid development includes storage of all systems information in a
repository that is on line to the development tools. The repository mechanisms
enforce integrity and consistency in all of the stored information.
- Rapid development techniques produce an ever-growing library of reusable
systems objects and components, and ensure that all developers know about
these and are able to use them.
- Rapid development permits the use of an expert system to guide practitioners
and to help them find and use reusable components.
- Rapid development uses tools that work together, avoiding manual bridges
that can introduce errors. The tools use common syntax and graphics whenever
possible.
- Rapid development permits enterprises to conduct ongoing measurement
of the effectiveness of their systems development efforts.
- The rapid development methodology can be represented in a computer,
enabling it to grow and evolve and to be linked with computerized tools.
- The tasks and techniques of rapid development are fun to use, making
developers' jobs as enjoyable and creative as possible.
Next : Stages
Previous : Fundamentals
of Rapid Development
Section Overview : Methodology
Overview : Table of Contents
This page was last built on April 18, 1997.