OVER VIEW OF SDLC
SOFTWARE DEVELOPMENT LIFE CYCLE
DIFFERENT MODELS OF SDLC 
Waterfall Model 
Iterative Waterfall Model 
Rapid Prototype Model 
Evolutionary model 
Spiral Model 
Fish Model 
V-Shape Model 
RAD Model 
Incremental Model
WATERFALL MODEL
DESCRIPTION: 
 Requirements: defines needed information, function, behavior, 
performance and interfaces 
Design: includes flowcharts, data structures, software 
architecture, interface representations, algorithmic details 
Implementation: source code, data base, user documentation, 
testing.
ADVANTAGES OF WF MODEL 
 easy to understand, easy to use 
 provides structure 
 milestones are clear 
 good for management control (plan, staff, 
track) 
 works well when quality is more important 
than cost or schedule
DISADVANTAGES OF WF MODEL 
 all requirements must be known upfront 
 deliverables created for each phase are 
considered frozen – inhibits flexibility 
 can give a false impression of progress 
 does not reflect problem-solving nature of 
software development , i.e. iterations of 
Phases 
 one big integration at the end 
 little opportunity for customer to preview the 
system (until it may be too late)
ITERATIVE WATERFALL MODEL
DESCRIPTION 
This model 
 attempts to overcome the limitations of original Waterfall 
model by adding an “iterative” loop at the end of the cycle 
allows a return to previous stages and the changes whenever 
required
RAPID PROTOTYPE MODEL 
Requirements Capture 
Quick Design 
Build Prototype 
Customer Evaluation of 
Prototype 
Engineer Final 
Product 
The Rapid 
Prototype Workflow 
Iterate
ADVANTAGES 
 Reduces risk of incorrect user requirements 
 Good where requirements are 
changing/uncommitted 
 Regular visible progress aids management 
 Supports early product marketing
DISADVANTAGES 
 An unstable/badly implemented prototype often 
becomes the final product. 
 Requires extensive customer collaboration 
• Costs customers money 
• Needs committed customers 
• Difficult to finish if customer withdraws 
• May be too customer specific, no broad market
EVOLUTIONARY MODEL 
Development 
Application 
User Validation 
Feed back 
with req. 
User Acceptance 
N 
Y 
App is 
Base Lined 
Initial Reqs.
ADVANTAGES 
 When costumer is evolving the requirements this is suitable 
model
DISADVANTAGES 
 Dead line are not clearly defined 
 Time consuming model 
 Costly model 
 No transparency 
 Project monitoring and maintained is difficult
SPIRAL MODEL
DESCRIPTION OF SPIRAL MODEL 
Key Steps 
 Requirement Planning 
 Risk Analysis 
 Development & Test (Engineering) 
 Customer Evaluation
DESCRIPTION 
 It emphasis more on risk analysis 
 In this model project undergoes each phase repeatedly called 
spiral 
 The planning phase is the base line spiral and each 
subsequent spiral built on spiral model 
 This types model is used in risk analysis project for ex. Space 
Crafts
ADVANTAGES 
 Importance's is placed more in risk analysis 
 Software produced in early stages
DISADVANTAGES 
 Not suitable for small projects 
 IT is very costly 
 Need expertise for this model 
 Time consuming model
FISH MODEL
DESCRIPTION 
 This is a process oriented company's development model. 
 Even though it is a time consuming and expensive model 
One can be rest assured that both verification and validation is 
done parallel by separate teams in each phase of the model. 
 So there are two reports generated by the end of each phase 
one for validation and one for verification. 
 Because all the stages except the last delivery and 
maintenance phase is covered by the two parallel processes the 
structure of this model looks like a skeleton between two 
parallel lines hence the name fish model.
ADVANTAGES 
 As the both verification and validation is when outcome will 
come quality product 
 This strict process results in products of exceptional quality. 
So one of the important objective is achieved.
DISADVANTAGES 
 Time consuming process 
 Costly process
V-MODEL
DESCRIPTION 
 A variant of the Waterfall that emphasizes the: 
(1).verification and 
(2).validation of the product. 
 Testing of the product is planned in parallel with a 
corresponding phase of development 
 Project and Requirements Planning is acceptance testing 
 Specification Analysis is systems testing 
 Overview/ High-Level Design: defines how software functions 
fulfill the design is integration test 
 Detailed Design: develop algorithms for each architectural 
component is unit test 
code
ADVANTAGES 
 emphasize planning for verification and validation of the 
product in early stages of product development 
 each deliverable must be testable 
 project management can track progress by milestones 
 easy to use
DISADVANTAGES 
Does not 
 easily handle concurrent events 
 easily handle dynamic changes in requirements 
 contain risk analysis activities 
 Time consuming model 
 Costly model
RAD MODEL
DESCRIPTION 
The phases in the rapid application development (RAD) model are: 
Business modeling: The information flow is identified between various 
business functions. 
Data modeling: Information gathered from business modeling is used to 
define data objects that are needed for the business. 
Process modeling: Data objects defined in data modeling are converted to 
achieve the business information flow to achieve some specific business 
objective. Description are identified and created for CRUD of data objects. 
Application generation: Automated tools are used to convert process models 
into code and the actual system. 
Testing and turnover: Test new components and all the interfaces.
ADVANTAGES 
 Reduced development time. 
 Increases reusability of components 
 Quick initial reviews occur 
 Encourages customer feedback 
 Integration from very beginning solves a lot of integration 
issues.
DISADVANTAGES 
 Depends on strong team and individual performances for 
identifying business requirements. 
 Only system that can be modularized can be built using 
RAD 
 Requires highly skilled developers/designers. 
 High dependency on modeling skills 
 Inapplicable to cheaper projects as cost of modeling and 
automated code generation is very high.
INCREMENTAL MODEL 
 Construct a partial implementation of a total system 
 Then slowly add increased functionality 
 The incremental model prioritizes requirements of the system 
and then implements them in groups 
 Each subsequent release of the system adds function to the 
previous release, until all designed functionality has been 
implemented
ADVANTAGES 
 develop high-risk or major functions first 
 each release delivers an operational product 
 customer can respond to each build 
 uses “divide and conquer” breakdown of tasks 
 initial product delivery is faster 
 customers get important functionality early 
 risk of changing requirements (at the very end) is reduced
DISADVANTAGES 
 requires very thoughtful planning and design 
 requires early definition of a complete and fully functional 
system to allow for the definition of increments 
 well-defined module interfaces are required (some will be 
developed long before others) – to allow for a graceful increment
Veeru sdlc ppt
Veeru sdlc ppt

Veeru sdlc ppt

  • 1.
  • 2.
  • 3.
    DIFFERENT MODELS OFSDLC Waterfall Model Iterative Waterfall Model Rapid Prototype Model Evolutionary model Spiral Model Fish Model V-Shape Model RAD Model Incremental Model
  • 4.
  • 5.
    DESCRIPTION:  Requirements:defines needed information, function, behavior, performance and interfaces Design: includes flowcharts, data structures, software architecture, interface representations, algorithmic details Implementation: source code, data base, user documentation, testing.
  • 6.
    ADVANTAGES OF WFMODEL  easy to understand, easy to use  provides structure  milestones are clear  good for management control (plan, staff, track)  works well when quality is more important than cost or schedule
  • 7.
    DISADVANTAGES OF WFMODEL  all requirements must be known upfront  deliverables created for each phase are considered frozen – inhibits flexibility  can give a false impression of progress  does not reflect problem-solving nature of software development , i.e. iterations of Phases  one big integration at the end  little opportunity for customer to preview the system (until it may be too late)
  • 8.
  • 9.
    DESCRIPTION This model  attempts to overcome the limitations of original Waterfall model by adding an “iterative” loop at the end of the cycle allows a return to previous stages and the changes whenever required
  • 10.
    RAPID PROTOTYPE MODEL Requirements Capture Quick Design Build Prototype Customer Evaluation of Prototype Engineer Final Product The Rapid Prototype Workflow Iterate
  • 11.
    ADVANTAGES  Reducesrisk of incorrect user requirements  Good where requirements are changing/uncommitted  Regular visible progress aids management  Supports early product marketing
  • 12.
    DISADVANTAGES  Anunstable/badly implemented prototype often becomes the final product.  Requires extensive customer collaboration • Costs customers money • Needs committed customers • Difficult to finish if customer withdraws • May be too customer specific, no broad market
  • 13.
    EVOLUTIONARY MODEL Development Application User Validation Feed back with req. User Acceptance N Y App is Base Lined Initial Reqs.
  • 14.
    ADVANTAGES  Whencostumer is evolving the requirements this is suitable model
  • 15.
    DISADVANTAGES  Deadline are not clearly defined  Time consuming model  Costly model  No transparency  Project monitoring and maintained is difficult
  • 16.
  • 17.
    DESCRIPTION OF SPIRALMODEL Key Steps  Requirement Planning  Risk Analysis  Development & Test (Engineering)  Customer Evaluation
  • 18.
    DESCRIPTION  Itemphasis more on risk analysis  In this model project undergoes each phase repeatedly called spiral  The planning phase is the base line spiral and each subsequent spiral built on spiral model  This types model is used in risk analysis project for ex. Space Crafts
  • 19.
    ADVANTAGES  Importance'sis placed more in risk analysis  Software produced in early stages
  • 20.
    DISADVANTAGES  Notsuitable for small projects  IT is very costly  Need expertise for this model  Time consuming model
  • 21.
  • 22.
    DESCRIPTION  Thisis a process oriented company's development model.  Even though it is a time consuming and expensive model One can be rest assured that both verification and validation is done parallel by separate teams in each phase of the model.  So there are two reports generated by the end of each phase one for validation and one for verification.  Because all the stages except the last delivery and maintenance phase is covered by the two parallel processes the structure of this model looks like a skeleton between two parallel lines hence the name fish model.
  • 23.
    ADVANTAGES  Asthe both verification and validation is when outcome will come quality product  This strict process results in products of exceptional quality. So one of the important objective is achieved.
  • 24.
    DISADVANTAGES  Timeconsuming process  Costly process
  • 25.
  • 26.
    DESCRIPTION  Avariant of the Waterfall that emphasizes the: (1).verification and (2).validation of the product.  Testing of the product is planned in parallel with a corresponding phase of development  Project and Requirements Planning is acceptance testing  Specification Analysis is systems testing  Overview/ High-Level Design: defines how software functions fulfill the design is integration test  Detailed Design: develop algorithms for each architectural component is unit test code
  • 27.
    ADVANTAGES  emphasizeplanning for verification and validation of the product in early stages of product development  each deliverable must be testable  project management can track progress by milestones  easy to use
  • 28.
    DISADVANTAGES Does not  easily handle concurrent events  easily handle dynamic changes in requirements  contain risk analysis activities  Time consuming model  Costly model
  • 29.
  • 30.
    DESCRIPTION The phasesin the rapid application development (RAD) model are: Business modeling: The information flow is identified between various business functions. Data modeling: Information gathered from business modeling is used to define data objects that are needed for the business. Process modeling: Data objects defined in data modeling are converted to achieve the business information flow to achieve some specific business objective. Description are identified and created for CRUD of data objects. Application generation: Automated tools are used to convert process models into code and the actual system. Testing and turnover: Test new components and all the interfaces.
  • 31.
    ADVANTAGES  Reduceddevelopment time.  Increases reusability of components  Quick initial reviews occur  Encourages customer feedback  Integration from very beginning solves a lot of integration issues.
  • 32.
    DISADVANTAGES  Dependson strong team and individual performances for identifying business requirements.  Only system that can be modularized can be built using RAD  Requires highly skilled developers/designers.  High dependency on modeling skills  Inapplicable to cheaper projects as cost of modeling and automated code generation is very high.
  • 33.
    INCREMENTAL MODEL Construct a partial implementation of a total system  Then slowly add increased functionality  The incremental model prioritizes requirements of the system and then implements them in groups  Each subsequent release of the system adds function to the previous release, until all designed functionality has been implemented
  • 34.
    ADVANTAGES  develophigh-risk or major functions first  each release delivers an operational product  customer can respond to each build  uses “divide and conquer” breakdown of tasks  initial product delivery is faster  customers get important functionality early  risk of changing requirements (at the very end) is reduced
  • 35.
    DISADVANTAGES  requiresvery thoughtful planning and design  requires early definition of a complete and fully functional system to allow for the definition of increments  well-defined module interfaces are required (some will be developed long before others) – to allow for a graceful increment