Visual Programming
Rapid Application Development (RAD)
Waterfall (Vs RAD)
Longer Time More Documentation Larger Teams More Internal development (Less outsourcing) Less Flexibility in changing path/scope
Prototyping
What is a prototype? - A model with certain appearances and behaviors to the finished product, while lacking in some of the features
Prototyping
Initial Analysis Define objectives
Specify
Prototyping completed
Evaluate
Construct
Prototyping
What is a prototype ? 1. Throwaway prototyping 2. Evolutionary prototyping
Throwaway Prototyping
Build prototype Evaluate and decide changes Discard (throwaway) prototype Build new (more) improved prototype Continue the above process till a Complete version satisfying all / most of the requirements is built
6
Evolutionary Prototyping
Build prototype Evaluate and decide changes Modify the prototype into a new (more) improved prototype Continue the above process till a Complete version satisfying all / most of the requirements is built
7
Prototyping (vs. RAD)
Discuss (Which of the two types of prototyping are most similar to RAD?) (Why is the other type not like RAD?)
Incremental Development
The Spiral Model
Incremental Development (Vs RAD)
Four phases :1.
2.
3. 4.
Inception determined scope and purpose of the project Elaboration-requirement capture and determine structure of the system Construction building the software (s/w) Transition - installation
10
The Unified Software Development Process
Four phases:1. Inception-determine scope and purpose of project 2. Elaboration-requirement capture and determine structure of the system 3. Construction build s/w 4. Transition - installation
11
RAD - Introduction
RAD is a software development process allowing the user to build a usable system within a short period of time
12
Reasons to use RAD
Discuss
1.
Good reasons Bad Reasons
2.
(RAD Prerequisites good time mgt. skill, good
cost mgt. skill)
13
Main Features of RAD
Timeboxing (the most critical feature) Quality (very critical cannot avoid)
Also important in all other methodologies Iterate (Repeat) until done
Iterative evolutionary prototyping
Hybrid Teams about 6 people
Developers, Fulltime users, others.
14
Main Features of RAD
JRP Joint Requirement Planning JAD Joint Application Development
15
RAD Constraints
Fitness for Business Purpose Informal Deliverables
Paper prototypes rather than informal deliverables
Less than 6 months
16
When RAD works / Fails
RAD works better when :
RAD fails when :
Application Standalone Performance and Reliability - Not critical Project Scope Constrained
Application interoperate with other programs Products Mass market No high-end IS tools Product is Life or Time critical
17