Testing is associated with every phase of life cycle
Verification Phase (Step by Step)
Requirement analysis
System design
Example = Design of Building
Architecture design
Example = Design of Floor
Module design
Example = Design of Room
Validation Phase (In the End)
Unit testing
Example = Testing of Room
Integration
Example = Testing of Floor
System
Example = Testing of Building
Acceptance Testing
Client accepts
Steps
Concepts of Operation
Requirement and Architecture
Detailed Design
Integration, Test and Verification
System Verification and Validation
Operation and Maintenance
Advantages
Time Saving
Good understanding of project in the beginning
Every component must be testable
Process can be tracked easily
Proactive defeat tracking
Disadvantages
no feedback so less scope of changes
Risk analysis not done
Not good for big projects or Object-oriented projects
Prototyping Model
Basic
Throwaway model
Customer not clear with idea
Steps
Advantages
Good for technical and requirements risk
Disadvantage
Increase in cost of development
Incremental Model
Basic
Module by Module Working
Good for Large projects
Steps
Advantages
Customer Interaction Maximum
Early Release Product Demand
Flexible to changes
Evolutionary Model
Basic
Combination of Iterative & Incremental model
It first implements a few basic features and deliver to customer, then build next part and deliver it again, and so on until the desired system is fully realized
No long terms plans are made
Also known as "Design a little, Build a little, Test a little, Deploy a little"
Steps
Advantages
Feedback in every phase
Initial operating time is less
It supports changing environment
Risk analysis is better
Better suited for large mission-critical projects
Disadvantage
Not suitable for smaller projects
Highly skilled resources are required
RAD Model
Time and Cost Constraints
User at all levels
Reusability
Spiral Model
Basic
Risk Handling
Radius of spiral = Cost
Angular Dimensions = Progress
Also known as Meta model
Steps
Advantages
Risk Handling
Large projects
Flexible
Customer satisfaction
Disadvantage
Complex
Expensive
Too much risk analysis
Time
Agile Model
Basic
Move Quickly
Steps
Advantages
Frequent delivery
Face to face communication with client
Changes
Time
Disadvantage
Less documentation
Maintenance problem
SCURM Model
Basic
It is one of the most popular agile methodology
Scrum is a lightweight, iterative and incremental framework
Scrum breaks down the development phases into stages or cycles called "sprints"
The development time for each sprint is maximized and dedicated, thereby managing only one sprint at a time
Scrum Team has scrum master and product owner with constant communications on the daily basis
Advantages
Freedom & Adoption
High quality, Low risk product
Reduce development time up to 40%
Scrum customer satisfaction is very important
Reviewing the current sprint before moving to next one