SOFTWARE LIFECYCLE
MODELS AND
COMPARISON
Introduction
What is Software Lifecycle?
 Series of stages in the development of

  software
 Often used in Software Engineering

 E.g. analysis, designs, implementation, tests,

  maintenance
Software Lifecycle Models
   Waterfall Model
   Prototype Model
   Spiral Model
   Agile Model
Waterfall Model
   Simplest software model
   Sequential design process
   Clear project objectives
    Stable project requirements.
   Concrete and clear approach to software
    development
   Amount of resources required is very minimal
    i.e. cheaper
Waterfall Model
   Strengths of Waterfall Model
     Minimizes   planning overhead since it can be done
      up front.
     Structure minimizes wasted effort, so it works well
      for technically weak or inexperienced staff.
Waterfall Model
   Weaknesses of Waterfall Model
     Inflexible

     Onlythe final phase produces a non
      documentation deliverable
     Backing up to address mistakes is difficult.
Prototype Model
   Overcomes limitations of Waterfall model
   Prototype is made which is further modified as
    per the requirement of the customer
Prototype Model
   Strengths of Prototype Model
     Early  functionality.
     Provides a process to perfect the requirements
      definition.
     Provides risk control.

     Documentation focuses on the end product not
      the evolution of the product.
Prototype Model
   Weaknesses of Prototype Model
     Less  applicable to existing systems than to new,
      original development.
     Bad reputation among conservatives as a "quick
      and dirty" method.
     Suffers from bad documentation

     Sometimes produces a system with poor
      performance.
     Tendency for difficult problems to be pushed to
      the future so that the initial promise of the
      prototype is not met by subsequent products
      plans.
Spiral Model
   combines elements of both design and
    protoypein-stages
Agile Model
   It is an enhanced development software, not a
    alternative option.
   It is a distinct software development method.
   Its an iterative method.
Agile Model
   Advantages
       Agile by definition would naturally refer to
        something which is quick and easy to do.
       They are test-driven software development.
       It provides advice for how to be effective as a
        modeler.
Agile Model
   Disadvantages
     Difficult
              to apply where there are large team
      members.
     May increase the complexity of the system as
      scope of the system may expand beyond original
      plan.
     It does not define detailed procedures for how to
      create a given type of model.

Software life cycle comparison

  • 1.
  • 2.
    Introduction What is SoftwareLifecycle?  Series of stages in the development of software  Often used in Software Engineering  E.g. analysis, designs, implementation, tests, maintenance
  • 3.
    Software Lifecycle Models  Waterfall Model  Prototype Model  Spiral Model  Agile Model
  • 4.
    Waterfall Model  Simplest software model  Sequential design process  Clear project objectives  Stable project requirements.  Concrete and clear approach to software development  Amount of resources required is very minimal i.e. cheaper
  • 5.
    Waterfall Model  Strengths of Waterfall Model  Minimizes planning overhead since it can be done up front.  Structure minimizes wasted effort, so it works well for technically weak or inexperienced staff.
  • 6.
    Waterfall Model  Weaknesses of Waterfall Model  Inflexible  Onlythe final phase produces a non documentation deliverable  Backing up to address mistakes is difficult.
  • 7.
    Prototype Model  Overcomes limitations of Waterfall model  Prototype is made which is further modified as per the requirement of the customer
  • 8.
    Prototype Model  Strengths of Prototype Model  Early functionality.  Provides a process to perfect the requirements definition.  Provides risk control.  Documentation focuses on the end product not the evolution of the product.
  • 9.
    Prototype Model  Weaknesses of Prototype Model  Less applicable to existing systems than to new, original development.  Bad reputation among conservatives as a "quick and dirty" method.  Suffers from bad documentation  Sometimes produces a system with poor performance.  Tendency for difficult problems to be pushed to the future so that the initial promise of the prototype is not met by subsequent products plans.
  • 10.
    Spiral Model  combines elements of both design and protoypein-stages
  • 11.
    Agile Model  It is an enhanced development software, not a alternative option.  It is a distinct software development method.  Its an iterative method.
  • 12.
    Agile Model  Advantages  Agile by definition would naturally refer to something which is quick and easy to do.  They are test-driven software development.  It provides advice for how to be effective as a modeler.
  • 13.
    Agile Model  Disadvantages  Difficult to apply where there are large team members.  May increase the complexity of the system as scope of the system may expand beyond original plan.  It does not define detailed procedures for how to create a given type of model.