| Application Development refers to the
developing of programming applications and differs from programming
itself in that it has a higher level of responsibility, including for
requirement capturing and testing. Rapid Application Development
was a response to non-agile processes developed in the 1970s, such as
the Waterfall model. The problem with previous methodologies was that
applications took so long to build that requirements had changed
before the system was complete, often resulting in unusable systems.
Starting with the ideas of Barry Boehm and Scott Shultz, James Martin
developed the Rapid Application Development approach during the 1980s
at IBM and finally formalised it by publishing a book in 1991.
Advantages and disadvantages
Rapid Application Development systems commonly have these advantages:
increased speed of development and increased quality. The speed
increases can be achieved using a variety of methods including, rapid
prototyping, virtualization of system related routines, the use of
CASE tools and other techniques. Quality, as defined by RAD, is both
the degree to which a delivered application meets the needs of users
as well as the degree to which a delivered system has low maintenance
costs. RAD increases quality through the involvement of the user in
the analysis and design stages. Some systems also deliver advantages
of interoperability, extensibility, and portability.
Early RAD systems had two primary disadvantages: reduced Scalability,
and reduced features. Reduced scalability occurs because a RAD
developed application starts as a prototype and evolves into a
finished application. Reduced features occur due to time boxing, where
features are pushed to later versions in order to finish a release in
a short amount of time. |
|
|