Professional Documents
Culture Documents
Models/Approaches
Dr.G.Annapoorani
18
• Examples
– Waterfall model
– Incremental/Iterative model
– Spiral model
2
19
Scenario 1
Customer has provided you all the requirements and has assured
that there will not be any change in the requirements. He expects the
deliverables from you at every stage of development. You have
carried out a similar project earlier and you are sure that the project
could be executed systematically.
3
20
Scenario 2
Customer wants you to start developing the software for a remote
controlled electronic toy. Customer is not sure of all requirements of
the product. She has provided you an initial set of requirements with
which she wants to have a feel of the product. She has informed you
that few more requirements will be provided later.
4
21
Scenario 3
Customer and the development team foresee many risks at every
stage of software development. At each stage of development there
are alternatives and you have to make right decisions. You and
customer are in agreement that the project is not fixed budget project.
5
22
Customer wants you to start developing the software for a remote • Complete requirements
controlled electronic toy. Customer is not sure of all requirements of the unavailable
product. She has provided you an initial set of requirements with which • Start development with a set
she wants to have a feel of the product. She has informed you that few of requirements
2 more requirements will be provided later • Initial feel of the product Incremental
expected
Customer and the development team foresee many risks at every stage • Many risks are expected
of software development. At each stage of development there are • There are alternatives at each
alternatives and you have to make right decisions. You and customer stage
3 are in agreement that the project is not fixed budget project • Not fixed budget project Spiral
6
23
Waterfall Model
System Engineering
Requirement Analysis
Design
Coding
Testing
Deployment
7
24
Waterfall Model
System Engineering
• Define scope
• Understand processes
• What needs to be automated and how soon
Deliverables
• User requirements
8
Waterfall Model
System Engineering
Requirement Analysis
• Focus on what needs to be automated
• Understand functional and non-functional
requirements
Deliverables
• Software Requirement Specification (SRS)
• Acceptance test plan and
• System test plan
9
26
Waterfall Model
System Engineering
Requirement Analysis
Design
• Blueprint of the software
• Structure and behavior of theCmooddni ugles
• High level design Testing
Deliverables
• Detailed design
• Integration test plan and
• Unit test plan
10
27
Waterfall Model
System Engineering
Requirement Analysis
Design
Coding
Deliverables 11
• Unit tested code
Waterfall Model
Design
Coding
Testing
Deliverables
• Integrated and
12
• System tested software
Waterfall Model
Coding
Testing
Deployment
• Assemble
• Install
• End-user Training and
• Sign-off
Deliverables 13
• User manual
30
Incremental Model
Assign Design
Define
Requirements System
Requirements
to Increments Architecture
Develop
Validate Integrate Validate
System
Increment Increment System
Increment
Final System
14
31
Engineer Plan
• Develop the code • Resource planning
• Unit testing • Coding schedule
15
32
Summarizing Models
16
33
Scenario 2 - Revisited
• Customer wants you to start developing the software for a remote controlled electronic toy.
Customer is not sure of all requirements of the product. She has provided you an initial set of
requirements with which she wants to have a feel of the product. She has informed you that few
more requirements will be provided later.
• Observations
18
35
RAD Approach
Why RAD Approach ?
• Tight deadlines
• High Pressure from Customer
• Quick time to Market
19
36
Agile Approach
• Supports development for frequently changing system requirements
20
37
Requirements List
Priority 1 Priority 2 Priority 3 Priority 4
Analysis
Design
Code
Test
Production
21
38
SDLC Phases
• Requirements Development
• Design
• Construction
• Testing
22