There are many life cycle models used to develop software
projects. Some of them are Waterfall model, V-model, RAD (Rapid Application
Development), DSDM (Dynamic System Development Method), Spiral Model,
Prototyping and etc.
RAD (Rapid Application Development)
What is RAD (Rapid
(Rapid Application Development) model is the software developing model that the
functions are developed in parallel. In other words, they divide the project
into smaller segments and the segments are developed as if they are mini
mainly focuses on the prototype building. The codes for the software are mainly
developed by the automated code generators.
The RAD is
developed in 1991 by James Martin. And it is one of the most popular
development life cycles.
There are five steps in RAD. They are –
Testing and turnover
Step 1: Business
Business modeling is the first
step of the RAD. In this step, the information needed for developing the
software is collected from the various fields and resources. After that, the
business function are identified and combined to make a useful description of
how the information will be used. The users come and preview the information
collected and agree on project scope and the requirements. The JAD (Joint
Application Development) meeting is done in this step.
Step 2: Data Modeling
The information collected in the
first step are analyzed and converted to the data objects. The data objects are
the information that are grouped in different groups that will be later used in
the software development. And the relationships between these groups are
defined. Each group with the same data information are analyzed and a clear
description is given to every group.
Step 3: Process
objects in the step 2 (data modeling) are converted to useful information to
use in the software development. In this step, changes, removing and
modifications of the data objects are done and more data objects can also be
Step 4: Application
This step is
where the information and the data objects are generated to codes with the
automation tools. And the data models are turned into the prototypes.in this
step too. The prototypes are created because they will be used to test in the
Step 5: Testing and
The testing of the interfaces
and components are done in this step. The prototypes created are tested and the data
models are tested one by one. The good point is that the components are already
tested in the previous steps so there is hardly no big problems.
When to use RAD model?
should be used in the following conditions.
When there is not much time limit and need to
deliver the project in 2 or 3 months.
When there will be many changes to the prototype
model throughout the software developing.
When the requirements for the business is
perfect and there is many knowledge about business system.
When the budget is high and can afford to use
the automated code generators.
When there are enough developers and designers
to develop (quickly)
Advantages of using
The advantages of using the RAD
model is as follows.
The working system is divided into small
segments so the work rate is done quickly.
The user communication is in the important part
so there is always feedbacks from the customers and can avoid the errors and misunderstandings
in software developing.
The codes for the RAD model can be reusable so
it saves time.
The JAD meeting is done in the first step and
all the functions are defined so there are hardly errors in the further steps.
All requirements are not needed in one time, the
software development can be done even if there is little requirements about the
system. (But that requirement must be perfect)
The disadvantages of using the
RAD software is as follows.
It needs a lot of developers and designers since
the projects have to be finished in little time.
Also needs the great skilled developers and
designers to finish projects quickly.
Expensive to use the automated codes
After the JAD meeting, the requirements cannot
be fixed anymore.
The time limit is very little so if the user
wants to change something, it cannot be done.
The user must be the one who can attend all the
DSDM (Dynamic Systems
What is DSDM?
is a software development framework that develops the system dynamically. And
it is largely based on the rapid application development (RAD). Because it’s
original purpose is to provide some controls in RAD method. Later, it became a
project management and solution consignment rather than software development. In
DSDM, meeting the requirements is more important than writing technical codes.
five-phrases in DSDM. They are –
Functional Model iteration
Design and Build Iteration
Step 1: Feasibility
In the first step, the
developing team researches the project and define the problems. They define
questions for the project, constraints like time and resources for the project The
developing team need to check if the application is suitable with the RAD
(Rapid Application Development) method or not. If the application doesn’t suitable
with RAD, another way is needed to be developed. If the RAD is justified with
the system, the development continues.
Step 2: Business
In this step, the business
requirements are identified. The requirements are questions like if the project
is possible to develop? Who are the end-users? What is the best plan to
develop? Which techniques should the developers use to develop the application?
And the architecture structure of the project is constructed. The application
that the developers developed is checked if it is designed using RAD and if
they are maintainable, because the users might make changes along the software
Step 3: Functional
In step 3, the functional
prototypes of the application is created. The functional prototype defines what
and how the application should be implemented.
Step 4: Design and
In step 4, the design of the
application is made, and coding is done based on that design. After developing
the codes, they are reviewed to check if they meet the customers’ requirements.
This is the final stage in this
method. In this stage, the end-users who will be using the application are
instructed to know the working system of the application. If the user doesn’t
like the system or they are not satisfied with the result, the development must
start from the step 4 where designing and coding will be carried out.
9 Principles of DSDM
There are 9 core principles in
DSDM. They are
Active user involvement – the users must be free
at the times when the meetings will occur. And the users involving in the
projects reduce the errors in development.
Authorization of the team – the developers and
the users are to given authority to make decisions based on requirements.
Frequent Delivery – to make sure that the errors
are detected quickly so they are be repaired fast.
Iterative development – accepts the user
feedbacks and use them for further development. The parts of the developed
system are shown to the users to get frequent feedback.
Unstable requirements – the users’ requirements
are always changing and the developers must deal with it and have to move steps
back if necessary. This may consume more time and more budget for the company.
20% / 80% rule – make the developing plans easy
to understand both by users and the developers. And use tracking, and reporting
tools if necessary.
Important requirements are defined at high level
– the high-level requirements are defined at the start of the project.
Requirement is more important – user requirements
are more important than the technical code writing.
Team working is important – the business
requirements need team working between the developers and the stakeholders to