0% found this document useful (0 votes)
84 views3 pages

Software Process Models for Developers

Rapid Application Development (RAD) is an agile process that relies on prototyping and iterative development to get early feedback. It is characterized by iterative user testing and reuse of software components to reduce time to deliver applications. The RAD process includes business modeling, data modeling, process modeling, application modeling, and testing. Agile development breaks projects into short iterations like sprints to deliver working functionality early. This allows adjusting requirements versus long waterfall cycles.

Uploaded by

pemom29928
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
84 views3 pages

Software Process Models for Developers

Rapid Application Development (RAD) is an agile process that relies on prototyping and iterative development to get early feedback. It is characterized by iterative user testing and reuse of software components to reduce time to deliver applications. The RAD process includes business modeling, data modeling, process modeling, application modeling, and testing. Agile development breaks projects into short iterations like sprints to deliver working functionality early. This allows adjusting requirements versus long waterfall cycles.

Uploaded by

pemom29928
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Software Project Management (KOE-068)

UNIT-2 (Lecture-2)
Software Process Models: Rapid Application Development & Agile Method

Rapid Application Development (RAD) Model


Rapid Application Development model relies on prototyping and rapid cycles of iterative
development to speed up development and elicit early feedback from business users. After each
iteration, developers can refine and validate the features with stakeholders. RAD model is also
characterized by reiterative user testing and the re-use of software components. Hence, RAD has
been instrumental in reducing the friction points in delivering successful enterprise applications.
Wave Maker makes use of the RAD model to provide a Rapid Application Development
platform to create web and mobile applications. The following diagram depicts Wave Maker
RAD platform architecture, based on the MVC (Model-View- Controller) pattern. Open
standards, easy customization and rapid prototyping are central to the platform.

Phases in RAD Model:


Business Modeling
Data Modeling
Process Modeling
Application Modeling
Testing and Turnover
Business Modeling: In this phase of development business model should be designed based on
the information available from different business activities. Before start the development there
should be a complete picture of business process functionality.
Data Modeling: Once the business modeling phase over and all the business analysis completed,
all the required and necessary data based on business analysis are identified in data modeling
phase.
Process Modeling: All the data identified in data modeling phase are planned to process or
implement the identified data to achieve the business functionality flow. In this phase all the data
modification process is defined.

RAVIKANT NIRALA Page 1


Software Project Management (KOE-068)

Application Modeling: In this phase application id developed and coding completed. With help
of automation tools all data implemented and processed to work as real time.
Testing and turnover: All the testing activates are performed to test the developed application.
Advantages of RAD Model:
Fast application development and delivery.
Least testing activity required.
Visualization of progress.
Less resource required.
Review by the client from the very beginning of development so very less chance to miss
the requirements.
Very flexible if any changes required.
Cost effective.
Good for small projects.
Disadvantages of RAD Model:
High skilled resources required.
On each development phase client’s feedback required.
Automated code generation is very costly.
Difficult to manage.
Not a good process for long term and big projects.

Agile Software Development Method


Agile software development methodology refers as “ability to move quickly and easily”
In traditional software development methodologies like Waterfall model, a project can
take several months or years to complete and the customer may not get to see the end
product until the completion of the project.
At a high level, non-Agile projects allocate extensive periods of time for Requirements
gathering, design, development, testing and UAT, before finally deploying the project.
In contrast to this, Agile projects have Sprints or iterations which are shorter in duration
(Sprints/iterations can vary from 2 weeks to 2 months) during which pre-determined
features are developed and delivered.
Agile projects can have one or more iterations and deliver the complete product at the
end of the final iteration.
Example: Google is working on project to come up with a competing product for MS Word, that
provides all the features provided by MS Word and any other features requested by the
marketing team. The final product needs to be ready in 10 months of time.
In the Agile methodology, each project is broken up into several ‘Iterations’.
All Iterations should be of the same time duration (between 2 to 8 weeks).
At the end of each iteration, a working product should be delivered.

RAVIKANT NIRALA Page 2


Software Project Management (KOE-068)

In simple terms, in the Agile approach the project will be broken up into 10 releases
(assuming each iteration is set to last 4 weeks).
Rather than spending 1.5 months on requirements gathering, in Agile software
development, the team will decide the basic core features that are required in the product
and decide which of these features can be developed in the first iteration.
Any remaining features that cannot be delivered in the first iteration will be taken up in
the next iteration or subsequent iterations, based on priority.
At the end of the first iterations, the team will deliver a working software with the
features that were finalized for that iteration.

RAVIKANT NIRALA Page 3

You might also like