View
3.882
Download
2
Embed Size (px)
DESCRIPTION
Citation preview
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 Only the 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.