0% found this document useful (0 votes)
54 views17 pages

RAD Model

Rapid Application Development (RAD) is a software development model emphasizing quick delivery through user feedback and prototyping, with minimal upfront planning. It involves iterative processes and user involvement, resulting in fast development but may not suit large systems. The document also discusses advantages and disadvantages of RAD, along with comparisons to other models like Agile and Prototyping.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views17 pages

RAD Model

Rapid Application Development (RAD) is a software development model emphasizing quick delivery through user feedback and prototyping, with minimal upfront planning. It involves iterative processes and user involvement, resulting in fast development but may not suit large systems. The document also discusses advantages and disadvantages of RAD, along with comparisons to other models like Agile and Prototyping.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 17

Rapid Application

Development (RAD)
Model
Rapid Application Development (RAD) is a software development
approach that focuses on quick development and delivery of
applications through frequent user feedback, prototyping, and
minimal upfront planning.

Instead of building the entire system at once, RAD creates multiple


working prototypes and continuously improves them based on user
input until the final product is ready.

Coming up: Evolutionary Models: Prototyping 1


Rapid Application
Development (RAD)
Model

Coming up: Evolutionary Models: Prototyping 2


Key Characteristics of the RAD
Model
Rapid Prototyping: Focuses on creating working models quickly and
refining them through user feedback.

Iterative Process: The product is developed in iterations, with feedback


incorporated at each stage.

Minimal Planning: Less emphasis on planning and more on


development and user involvement.

Component-Based Construction: Uses reusable components wherever


possible.

User Involvement: Continuous user feedback is integral throughout the


development lifecycle.

Coming up: Evolutionary Models: Prototyping 3


Phases of RAD
Requirements Planning
Gather broad requirements with user input.
Establish project scope and constraints.

User Design
Users and developers work together to design and prototype
interfaces.
Heavy focus on user feedback.

Rapid Construction
Coding and system integration take place.
Iterative prototyping is refined into a working system.

Cutover (Implementation)
Final testing, data conversion, and user training.
The system goes live.

Coming up: Evolutionary Models: Prototyping 4


RAD
Advantages

Fast development and delivery.


Flexible to changing requirements.
Continuous user feedback
improves usability.
Encourages reusability of components.

Disadvantages

Not suitable for large, complex systems.


Requires highly skilled developers and designers.
Dependence on strong user involvement.
Poor documentation due to speed.

Coming up: Evolutionary Models: Prototyping 5


Evolutionary Models:
Prototyping
The Prototyping Model is a software
development approach where a
prototype (sample version) of the Quick plan
Quick
system is built first to understand user Communication plan
communication
requirements clearly.
Modeling
The final system is developed after Modeling
Quickdesign
Quick

refining the prototype through user design


feedback.

Deployment
Deployment
Delivery
delivery & Construction
& Feedback
feedback Construction
of
of prototype
prototype

Coming up: Evolutionary Models: The Spiral 6


Prototyping
Requirement Gathering
 Models
→ Basic requirements are collected from users.
→ Not all details are known at this stage.
Quick Design
→ A simple design is created to show the system’s main features.

Build Prototype
→ A working model (mock-up) of the software is developed.

User Evaluation
→ Users test the prototype and give feedback.

Refinement
→ Based on feedback, the prototype is improved.

Coming up: The Unified Process (UP) 7


Advantages
Helps understand unclear or changing
requirements
Encourages early user involvement

Reduces chances of major design mistakes

Quicker feedback and improvement

Disadvantages
Can be time-consuming if repeated too much
Users might confuse prototype with final product
Not suitable for complex or performance-critical
systems

aaza 8
Agile Model
The Agile Model is a software development approach
that focuses on fast delivery, customer collaboration,
and flexibility. It breaks the project into small parts
called iterations or sprints, and each part delivers a
working product.
Key Features of Agile
Development is done in small, manageable cycles
Frequent feedback from users

Welcomes changing requirements

Focus on working software over documentation

9
The Agile Model

Coming up: UP Phases 10


Agile Model
Plan→ Identify requirements, define goals, and plan what features will be
built in the sprint.

Design→ Create a simple, flexible design for the features to be developed.

Develop→ Write code and build the features based on the sprint plan.

Test→ Test the developed features to find and fix bugs or issues.

Deploy→ Release the working software to users or a staging environment.

Coming up: UP Work Products 11


Agile Model

Advantages of Agile Model


•Faster delivery
•Continuous customer feedback
•Flexible to changes
•Improved quality
•High transparency
•Better team collaboration

Disadvantages of Agile Model


•Requires active user involvement
•Hard to predict time and cost
•Not suitable for inexperienced teams

Coming up: UP Work Products 12


UP Work Products
Inception phase

Elaboration phase
Vision document
Init ial use-case model
Init ial project glossary Construction phase
Use-case model
Init ial business case Supplement ary requirement s
Init ial risk assessment . including non-funct ional Design model
Transition phase
Project plan, Analysis model Soft ware component s
phases and it erat ions. Soft ware archit ect ure Int egrat ed soft ware Delivered soft ware increment
Business model, Descript ion. increment Bet a t est report s
if necessary. Execut able archit ect ural Test plan and procedure General user feedback
One or more prot ot ypes prot ot ype.
I nc ept i o
Test cases
n Preliminary design model Support document at ion
Revised risk list user manuals
Project plan including inst allat ion manuals
it erat ion plan descript ion of current
adapt ed workflows increment
milest ones
t echnical work product s
Preliminary user manual

Coming up: Pick a model 13


Pick a model
 Developing software to automatically drive
racecars through a track without crashing. This
has never been attempted before under software
control. The requirements are stable.

 Waterfall, Incremental, Spiral, RAD?

Coming up: Pick a model 14


Pick a model
 Developing software to track the financial
bailout. The software requirements are very
clear. You need to create a system to perform 3
distinct tasks:
 Display where the money went
 Display the amount of money left and how it’s allocated
 Allow people to request funds from a particular subset
of the money
 All functions will interface with each other and the
same underlying database.
 Waterfall, Incremental, Spiral, RAD?
Coming up: Pick a model 15
Pick a model

 Just checking if you were awake

Coming up: Prescriptive Software Models 16


Prescriptive Software Models
 Variations of these models are VERY commonly used today
 If you think about it, they are focused in different areas,
but have many similarities (all do the basic structure --
communication, planning, construction, testing,
deployment, maintenance)
 You will almost definitely do some version of these
processes when you graduate
 If you had never been to CS421, and never learned them,
and then started your own company, you would STILL do
your own version of these processes… they make sense!

Currently these processes are evolving into Agile methods


Lets have a look!
End of presentation 17

You might also like