SlideShare a Scribd company logo
A 1986 Movie about a young boy going against the man to win it all in a
BMX trick competition
Rad
RAPID APPLICATION
DEVELOPMENT
joel@mediotype.comBy Joel Hart
definition
 “a software development process that allows usable systems to be built
in as little as 60-90 days, often with some compromises”
 “a software development methodology that uses minimal planning in favor of rapid
prototyping.”
Ressons to use R.A.D.
 Bad Reasons:
 To prevent cost overruns
(RAD needs a team already
disciplined in cost management)
 to prevent runaway schedules
(RAD needs a team already
disciplined in time management)
 Good Reasons:
 to converge early toward a design
acceptable to the customer
and feasible for the developers
 to limit a project's exposure to the
forces of change
 to save development time, possibly
at the expense of economy or
product quality
Principals of R.A.D.
In certain situations, a usable 80% solution can be produced in
20% of the time that would have been required to produce a total
solution.
In certain situations, the business requirements for a system can
be fully satisfied even if some of its operational requirements
are not satisfied.
In certain situations, the acceptability of a system can be
assessed against the agreed minimum useful set of requirements
rather than all requirements.
Problems? With Development Projects?
NEVER!
Problems addressed
With conventional methods, there is a long delay before the
customer gets to see any results.
With conventional methods, development can take so long that
the
customer's business has fundamentally changed by the time the
system is ready for use.
With conventional methods, there is nothing until 100% of the
process is finished, then 100% of the software is delivered.
Iteration must be used in such a way that the development process
converges toward an acceptable business solution.
RAD USES ITERATIVE, EVOLUTIONARY PROTOTYPING
What’s SDLC?
Software Development Lifecycle
R.A.D. SDLC
Development teams must be empowered to make some decisions
traditionally left to management.
Step 1
 JAD (Joint Application Development)
MEETING
High-level end-users and designers meet in a
brainstorming
session to generate a rough list of initial
requirements.
• Developers talk and listen
• Customers talk and listen
"Fitness for a business purpose" must be the criterion for
acceptance of deliverables. – Sun Microsystems
Step 2
 ITERATE UNTIL DONE
Developers build / evolve prototype based on current
requirements.
 Designers review the prototype.
 Customers try out the prototype, evolve their requirements.
 FOCUS GROUP meeting
Customers and developers meet to review product together,
refine requirements, generate change requests.
 Developers listen.
 Customers talk.
 Requirements and change requests are "timeboxed".
 Changes that cannot be accommodated within existing
timeboxes are eliminated.
 If necessary to stay "in the box," secondary requirements
are dropped.
All constituencies that can impact application requirements must
have representation on the development team throughout the
process.
Prototyping must incorporate evolving requirements quickly, in
real time, and gain consensus early.
 Iterations require between 1 day and 3 weeks.
At some stage, exploratory prototypes may evolve
into
operational prototypes.
Focus Group Sessions
last about 2 hours
 are led by an experienced facilitator, who keeps the
group "on focus"
 by having clear goals regarding the kind of
information that needs to be elicited
 by preparing an issue-oriented agenda in advance of
the meeting
 by ensuring that adequate discussion is directed
toward each issue
 by ensuring everyone has an adequate opportunity to
participate
 are followed by a report from the facilitator
Customers, developers and management must accept informal
deliverables.
R.A.D. ! But When ???
 RAD TENDS TO WORK WHEN
The application will be run standalone.
Major use can be made of preexisting class
libraries (APIs).
Performance is not critical.
Product distribution will be narrow (in-house or
vertical
market).
Project scope (macro-schedule) is constrained.
Reliability is not critical.
System can be split into several independent
modules.
The product is aimed at a highly specialized IS
(information
systems) market.
The project has strong micro-schedule
constraints (timeboxes).
The required technology is more than a year
old.
 RAD TENDS TO FAIL WHEN
Application must interoperate with existing
programs.
Few plug-in components are available.
Optimal performance is required.
Product development can't take advantage of
high-end IS tools
(e.g., 4GLs).
Product distribution will be wide (horizontal or
mass market).
RAD becomes QADAD (Quick And Dirty
Application Development).
RAD methods are used to build operating
systems (reliability
target too high for RAD), computer games
(performance target
too high for RAD).
Technical risks are high due to use of
"bleeding" edge
technology.
The product is mission- or life-critical.
The system cannot be modularized (defeats
parallelism).
Huh? It sounds a lot like Agile!
R.A.D. Is Not Agile
10 Reasons R.A.D. != Agile
 Agile embraces the concept of contract first development required for either Object Orientated or Service
Orientated architecture – RAD did not acknowledge the realities of designing to interfaces, partially because it
preceded the widespread use of these techniques.
 Agile does not allow prototypes – RAD was based on designing prototypes and then reengineering them into
production quality code (or not as was often the case).
 Agile projects logically break down the solution into features – the RAD approach did not do this; instead
developers would focus on delivering all the features of the application by first doing it badly and then improving
on the code base overtime..
 Agile teams are democratic. This means that the whole team has a say in the architecture of the solution, but the
team is still lead by an architect. In contrast, RAD solutions were not based around the concept of a common
architecture and thus individuals worked in silos.
 Agile development team members are self managing. In contrast, RAD teams are managed by a project
manager. Note do not confuse the term management with leadership.
 Agile engineering practices (such as test driven development, and continuous integration) are stringent and
thorough, ensuring that problems in the design or the code base are highlighted and fixed as quickly as
possible, and that the team has the confidence to change the code base without breaking the product. None of
these concepts were used in RAD projects.
 Agile teams focus on team communication and designing as a group. RAD teams tend to work as
individuals, resulting in unmaintainable and poorly designed code.
 Agile teams only demonstrate completed work. RAD teams tend to demonstrate screen mockups, or
prototypes, which lead the product owner to question why they now need to wait another six months for the
completed product.
 Agile teams are based around disciplined individuals that remain continually focused on delivering real software.
RAD teams lack discipline, simply because there was no structure to either the process, architecture or
engineering practices.
 Agile teams are inclusive of testers and analysts and user experience specialists. RAD teams did not traditionally
include non technical team members.
What makes the most sense?
Well what do I do now?
R.A.D. - Rapid Application Development
R.A.D. - Rapid Application Development
R.A.D. - Rapid Application Development

More Related Content

What's hot

Rapid application development model
Rapid application development modelRapid application development model
Rapid application development model
Vaibhav Dash
 
SDLC Models
SDLC ModelsSDLC Models
SDLC Models
akash250690
 
Code Refactoring
Code RefactoringCode Refactoring
RAD Model
RAD ModelRAD Model
RAD Model
MariamKhan120
 
Rapid application development
Rapid application developmentRapid application development
Rapid application development
Lombe Kapaya
 
Software Development Life Cycle Model
Software Development Life Cycle ModelSoftware Development Life Cycle Model
Software Development Life Cycle Model
J.T.A.JONES
 
Iterative model
Iterative modelIterative model
Iterative model
Vaibhav Dash
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
Dina Hanbazazah
 
SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING
Abhinav Shukla
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
Suresh Koujalagi
 
Sdlc models
Sdlc modelsSdlc models
Software Process Models
 Software Process Models  Software Process Models
Software Process Models
MohsinAli773
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
Saravanan Manoharan
 
Spiral model
Spiral modelSpiral model
Spiral model
Noraphyusin
 
JAD - Joint Applications Development
JAD - Joint Applications DevelopmentJAD - Joint Applications Development
JAD - Joint Applications Development
John Crosby
 
Spiral model presentation
Spiral model presentationSpiral model presentation
Spiral model presentation
SayedFarhan110
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
khushboo8093
 
Joint Application Development
Joint Application DevelopmentJoint Application Development
Joint Application Development
svm
 
Waterfall Model PPT in Software Engineering
Waterfall Model PPT in Software EngineeringWaterfall Model PPT in Software Engineering
Waterfall Model PPT in Software Engineering
Raju Sheoran
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
Compare Infobase Limited
 

What's hot (20)

Rapid application development model
Rapid application development modelRapid application development model
Rapid application development model
 
SDLC Models
SDLC ModelsSDLC Models
SDLC Models
 
Code Refactoring
Code RefactoringCode Refactoring
Code Refactoring
 
RAD Model
RAD ModelRAD Model
RAD Model
 
Rapid application development
Rapid application developmentRapid application development
Rapid application development
 
Software Development Life Cycle Model
Software Development Life Cycle ModelSoftware Development Life Cycle Model
Software Development Life Cycle Model
 
Iterative model
Iterative modelIterative model
Iterative model
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
 
Spiral model
Spiral modelSpiral model
Spiral model
 
JAD - Joint Applications Development
JAD - Joint Applications DevelopmentJAD - Joint Applications Development
JAD - Joint Applications Development
 
Spiral model presentation
Spiral model presentationSpiral model presentation
Spiral model presentation
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
Joint Application Development
Joint Application DevelopmentJoint Application Development
Joint Application Development
 
Waterfall Model PPT in Software Engineering
Waterfall Model PPT in Software EngineeringWaterfall Model PPT in Software Engineering
Waterfall Model PPT in Software Engineering
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 

Viewers also liked

Rad model
Rad modelRad model
Rad model
Sneha Chopra
 
RAD Model & Prototyping Of Software Engineering
RAD Model & Prototyping Of Software EngineeringRAD Model & Prototyping Of Software Engineering
RAD Model & Prototyping Of Software Engineering
Umeed Charity
 
Rapid Application Development Simplified
Rapid Application Development SimplifiedRapid Application Development Simplified
Rapid Application Development Simplified
Sanjay Patel
 
Rapid Application Development [RaD]
Rapid Application Development [RaD]Rapid Application Development [RaD]
Rapid Application Development [RaD]
Nick Harewood
 
Prototype model
Prototype modelPrototype model
Prototype model
shuisharma
 
Software Development Model - Waterfall, RAD & Agile
Software Development Model - Waterfall, RAD & AgileSoftware Development Model - Waterfall, RAD & Agile
Software Development Model - Waterfall, RAD & Agile
Fakrudin Abu Bakar
 
Incremental model presentation
Incremental model presentationIncremental model presentation
Incremental model presentation
Niat Murad
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
BHARGAV VISANI
 
Incremental model
Incremental modelIncremental model
Incremental model
Sajid Ali Laghari
 
PROTOTYPING
PROTOTYPINGPROTOTYPING
PROTOTYPING
Rajesh kavathekar
 
Spiral model explanation
Spiral model  explanationSpiral model  explanation
Spiral model explanation
Umar Farooq
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Jesse Manalansan
 
Waterfall model ppt final
Waterfall model ppt  finalWaterfall model ppt  final
Waterfall model ppt final
shiva krishna
 
Wpm lecture#2
Wpm lecture#2Wpm lecture#2
Wpm lecture#2
Seda Yalçın
 
Kelompok 8 rapid application development (rad)
Kelompok 8   rapid application development (rad)Kelompok 8   rapid application development (rad)
Kelompok 8 rapid application development (rad)Yudha Arif Budiman
 
Spiral model
Spiral modelSpiral model
Spiral model
rewa_monami
 
Prototype Model
Prototype ModelPrototype Model
Prototype Model
khushi kalaria
 
Prototype model
Prototype modelPrototype model
Prototype model
sadhana8
 
Incremental
IncrementalIncremental
Incremental
Waed Shagareen
 
Rapid Apllication Development RAD Rekayasa Perangkat Lunak RPL
Rapid Apllication Development RAD Rekayasa Perangkat Lunak RPLRapid Apllication Development RAD Rekayasa Perangkat Lunak RPL
Rapid Apllication Development RAD Rekayasa Perangkat Lunak RPL
Rumah Studio
 

Viewers also liked (20)

Rad model
Rad modelRad model
Rad model
 
RAD Model & Prototyping Of Software Engineering
RAD Model & Prototyping Of Software EngineeringRAD Model & Prototyping Of Software Engineering
RAD Model & Prototyping Of Software Engineering
 
Rapid Application Development Simplified
Rapid Application Development SimplifiedRapid Application Development Simplified
Rapid Application Development Simplified
 
Rapid Application Development [RaD]
Rapid Application Development [RaD]Rapid Application Development [RaD]
Rapid Application Development [RaD]
 
Prototype model
Prototype modelPrototype model
Prototype model
 
Software Development Model - Waterfall, RAD & Agile
Software Development Model - Waterfall, RAD & AgileSoftware Development Model - Waterfall, RAD & Agile
Software Development Model - Waterfall, RAD & Agile
 
Incremental model presentation
Incremental model presentationIncremental model presentation
Incremental model presentation
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
Incremental model
Incremental modelIncremental model
Incremental model
 
PROTOTYPING
PROTOTYPINGPROTOTYPING
PROTOTYPING
 
Spiral model explanation
Spiral model  explanationSpiral model  explanation
Spiral model explanation
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Waterfall model ppt final
Waterfall model ppt  finalWaterfall model ppt  final
Waterfall model ppt final
 
Wpm lecture#2
Wpm lecture#2Wpm lecture#2
Wpm lecture#2
 
Kelompok 8 rapid application development (rad)
Kelompok 8   rapid application development (rad)Kelompok 8   rapid application development (rad)
Kelompok 8 rapid application development (rad)
 
Spiral model
Spiral modelSpiral model
Spiral model
 
Prototype Model
Prototype ModelPrototype Model
Prototype Model
 
Prototype model
Prototype modelPrototype model
Prototype model
 
Incremental
IncrementalIncremental
Incremental
 
Rapid Apllication Development RAD Rekayasa Perangkat Lunak RPL
Rapid Apllication Development RAD Rekayasa Perangkat Lunak RPLRapid Apllication Development RAD Rekayasa Perangkat Lunak RPL
Rapid Apllication Development RAD Rekayasa Perangkat Lunak RPL
 

Similar to R.A.D. - Rapid Application Development

rad.pptx
rad.pptxrad.pptx
rad.pptx
shumPanwar
 
What is rad model
What is rad modelWhat is rad model
What is rad model
rjasad
 
What is Rapid Application Development
What is Rapid Application DevelopmentWhat is Rapid Application Development
What is Rapid Application Development
OutSystems
 
System Development
System DevelopmentSystem Development
System Development
intuitiv.de
 
What is jad_session
What is jad_sessionWhat is jad_session
What is jad_session
madmoneydallas
 
What Is Rapid Application Development? Everything To Know
What Is Rapid Application Development? Everything To KnowWhat Is Rapid Application Development? Everything To Know
What Is Rapid Application Development? Everything To Know
Polyxer Systems
 
Software Development Life Cycle Part II
Software Development Life Cycle Part IISoftware Development Life Cycle Part II
Software Development Life Cycle Part II
Compare Infobase Limited
 
What Is Rapid Application Development Everything To Know
What Is Rapid Application Development Everything To KnowWhat Is Rapid Application Development Everything To Know
What Is Rapid Application Development Everything To Know
Polyxer Systems
 
Iterative and Incremental Development (RAD)
Iterative  and Incremental Development (RAD)Iterative  and Incremental Development (RAD)
Iterative and Incremental Development (RAD)
Roshan Karunarathna
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
Saqib Raza
 
Agile Dev. II
Agile Dev. IIAgile Dev. II
Agile Dev. II
People Strategists
 
Software Development Life Cycle.
Software Development Life Cycle.Software Development Life Cycle.
Software Development Life Cycle.
mailrenuka
 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashed
livgeni
 
Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle models
Wasif Khan
 
Yii Framework in the RAD context + Mashup demo built on YII
Yii Framework in the RAD context + Mashup demo built on YIIYii Framework in the RAD context + Mashup demo built on YII
Yii Framework in the RAD context + Mashup demo built on YII
George-Leonard Chetreanu
 
List of Software Development Model and Methods
List of Software Development Model and MethodsList of Software Development Model and Methods
List of Software Development Model and Methods
Riant Soft
 
Plagiarism Report SDLC 1.pdf
Plagiarism Report SDLC 1.pdfPlagiarism Report SDLC 1.pdf
Plagiarism Report SDLC 1.pdf
OmethSanchitha
 
Different Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsDifferent Methodologies Used By Programming Teams
Different Methodologies Used By Programming Teams
Nicole Gomez
 
A Basic Introduction to Creating a Software Requirements Specification
A Basic Introduction to Creating a Software Requirements SpecificationA Basic Introduction to Creating a Software Requirements Specification
A Basic Introduction to Creating a Software Requirements Specification
QuekelsBaro
 
Software Development Process (SDP).pdf
Software Development Process (SDP).pdfSoftware Development Process (SDP).pdf
Software Development Process (SDP).pdf
SagarBhusal17
 

Similar to R.A.D. - Rapid Application Development (20)

rad.pptx
rad.pptxrad.pptx
rad.pptx
 
What is rad model
What is rad modelWhat is rad model
What is rad model
 
What is Rapid Application Development
What is Rapid Application DevelopmentWhat is Rapid Application Development
What is Rapid Application Development
 
System Development
System DevelopmentSystem Development
System Development
 
What is jad_session
What is jad_sessionWhat is jad_session
What is jad_session
 
What Is Rapid Application Development? Everything To Know
What Is Rapid Application Development? Everything To KnowWhat Is Rapid Application Development? Everything To Know
What Is Rapid Application Development? Everything To Know
 
Software Development Life Cycle Part II
Software Development Life Cycle Part IISoftware Development Life Cycle Part II
Software Development Life Cycle Part II
 
What Is Rapid Application Development Everything To Know
What Is Rapid Application Development Everything To KnowWhat Is Rapid Application Development Everything To Know
What Is Rapid Application Development Everything To Know
 
Iterative and Incremental Development (RAD)
Iterative  and Incremental Development (RAD)Iterative  and Incremental Development (RAD)
Iterative and Incremental Development (RAD)
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Agile Dev. II
Agile Dev. IIAgile Dev. II
Agile Dev. II
 
Software Development Life Cycle.
Software Development Life Cycle.Software Development Life Cycle.
Software Development Life Cycle.
 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashed
 
Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle models
 
Yii Framework in the RAD context + Mashup demo built on YII
Yii Framework in the RAD context + Mashup demo built on YIIYii Framework in the RAD context + Mashup demo built on YII
Yii Framework in the RAD context + Mashup demo built on YII
 
List of Software Development Model and Methods
List of Software Development Model and MethodsList of Software Development Model and Methods
List of Software Development Model and Methods
 
Plagiarism Report SDLC 1.pdf
Plagiarism Report SDLC 1.pdfPlagiarism Report SDLC 1.pdf
Plagiarism Report SDLC 1.pdf
 
Different Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsDifferent Methodologies Used By Programming Teams
Different Methodologies Used By Programming Teams
 
A Basic Introduction to Creating a Software Requirements Specification
A Basic Introduction to Creating a Software Requirements SpecificationA Basic Introduction to Creating a Software Requirements Specification
A Basic Introduction to Creating a Software Requirements Specification
 
Software Development Process (SDP).pdf
Software Development Process (SDP).pdfSoftware Development Process (SDP).pdf
Software Development Process (SDP).pdf
 

Recently uploaded

Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 

Recently uploaded (20)

Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 

R.A.D. - Rapid Application Development

  • 1. A 1986 Movie about a young boy going against the man to win it all in a BMX trick competition Rad
  • 3. definition  “a software development process that allows usable systems to be built in as little as 60-90 days, often with some compromises”  “a software development methodology that uses minimal planning in favor of rapid prototyping.”
  • 4. Ressons to use R.A.D.  Bad Reasons:  To prevent cost overruns (RAD needs a team already disciplined in cost management)  to prevent runaway schedules (RAD needs a team already disciplined in time management)  Good Reasons:  to converge early toward a design acceptable to the customer and feasible for the developers  to limit a project's exposure to the forces of change  to save development time, possibly at the expense of economy or product quality
  • 5. Principals of R.A.D. In certain situations, a usable 80% solution can be produced in 20% of the time that would have been required to produce a total solution. In certain situations, the business requirements for a system can be fully satisfied even if some of its operational requirements are not satisfied. In certain situations, the acceptability of a system can be assessed against the agreed minimum useful set of requirements rather than all requirements.
  • 6. Problems? With Development Projects? NEVER! Problems addressed
  • 7. With conventional methods, there is a long delay before the customer gets to see any results.
  • 8. With conventional methods, development can take so long that the customer's business has fundamentally changed by the time the system is ready for use.
  • 9. With conventional methods, there is nothing until 100% of the process is finished, then 100% of the software is delivered. Iteration must be used in such a way that the development process converges toward an acceptable business solution.
  • 10. RAD USES ITERATIVE, EVOLUTIONARY PROTOTYPING
  • 11. What’s SDLC? Software Development Lifecycle R.A.D. SDLC Development teams must be empowered to make some decisions traditionally left to management.
  • 12. Step 1  JAD (Joint Application Development) MEETING High-level end-users and designers meet in a brainstorming session to generate a rough list of initial requirements. • Developers talk and listen • Customers talk and listen "Fitness for a business purpose" must be the criterion for acceptance of deliverables. – Sun Microsystems
  • 13. Step 2  ITERATE UNTIL DONE Developers build / evolve prototype based on current requirements.  Designers review the prototype.  Customers try out the prototype, evolve their requirements.  FOCUS GROUP meeting Customers and developers meet to review product together, refine requirements, generate change requests.  Developers listen.  Customers talk.  Requirements and change requests are "timeboxed".  Changes that cannot be accommodated within existing timeboxes are eliminated.  If necessary to stay "in the box," secondary requirements are dropped. All constituencies that can impact application requirements must have representation on the development team throughout the process.
  • 14. Prototyping must incorporate evolving requirements quickly, in real time, and gain consensus early.  Iterations require between 1 day and 3 weeks. At some stage, exploratory prototypes may evolve into operational prototypes. Focus Group Sessions last about 2 hours  are led by an experienced facilitator, who keeps the group "on focus"  by having clear goals regarding the kind of information that needs to be elicited  by preparing an issue-oriented agenda in advance of the meeting  by ensuring that adequate discussion is directed toward each issue  by ensuring everyone has an adequate opportunity to participate  are followed by a report from the facilitator Customers, developers and management must accept informal deliverables.
  • 15. R.A.D. ! But When ???  RAD TENDS TO WORK WHEN The application will be run standalone. Major use can be made of preexisting class libraries (APIs). Performance is not critical. Product distribution will be narrow (in-house or vertical market). Project scope (macro-schedule) is constrained. Reliability is not critical. System can be split into several independent modules. The product is aimed at a highly specialized IS (information systems) market. The project has strong micro-schedule constraints (timeboxes). The required technology is more than a year old.  RAD TENDS TO FAIL WHEN Application must interoperate with existing programs. Few plug-in components are available. Optimal performance is required. Product development can't take advantage of high-end IS tools (e.g., 4GLs). Product distribution will be wide (horizontal or mass market). RAD becomes QADAD (Quick And Dirty Application Development). RAD methods are used to build operating systems (reliability target too high for RAD), computer games (performance target too high for RAD). Technical risks are high due to use of "bleeding" edge technology. The product is mission- or life-critical. The system cannot be modularized (defeats parallelism).
  • 16.
  • 17. Huh? It sounds a lot like Agile! R.A.D. Is Not Agile
  • 18. 10 Reasons R.A.D. != Agile  Agile embraces the concept of contract first development required for either Object Orientated or Service Orientated architecture – RAD did not acknowledge the realities of designing to interfaces, partially because it preceded the widespread use of these techniques.  Agile does not allow prototypes – RAD was based on designing prototypes and then reengineering them into production quality code (or not as was often the case).  Agile projects logically break down the solution into features – the RAD approach did not do this; instead developers would focus on delivering all the features of the application by first doing it badly and then improving on the code base overtime..  Agile teams are democratic. This means that the whole team has a say in the architecture of the solution, but the team is still lead by an architect. In contrast, RAD solutions were not based around the concept of a common architecture and thus individuals worked in silos.  Agile development team members are self managing. In contrast, RAD teams are managed by a project manager. Note do not confuse the term management with leadership.  Agile engineering practices (such as test driven development, and continuous integration) are stringent and thorough, ensuring that problems in the design or the code base are highlighted and fixed as quickly as possible, and that the team has the confidence to change the code base without breaking the product. None of these concepts were used in RAD projects.  Agile teams focus on team communication and designing as a group. RAD teams tend to work as individuals, resulting in unmaintainable and poorly designed code.  Agile teams only demonstrate completed work. RAD teams tend to demonstrate screen mockups, or prototypes, which lead the product owner to question why they now need to wait another six months for the completed product.  Agile teams are based around disciplined individuals that remain continually focused on delivering real software. RAD teams lack discipline, simply because there was no structure to either the process, architecture or engineering practices.  Agile teams are inclusive of testers and analysts and user experience specialists. RAD teams did not traditionally include non technical team members.
  • 19. What makes the most sense?
  • 20. Well what do I do now?

Editor's Notes

  1. Jad = Joint Application Development meeting