Various Life Cycle Models
The way you approach a particular application for testing greatly
depends on the life cycle model it follows. This is because, each life
cycle model places emphasis on different aspects of the software i.e.
certain models provide good scope and time for testing whereas some
others don’t. So, the number of test cases developed, features covered,
time spent on each issue depends on the life cycle model the
application follows.
No matter what the life cycle model is, every application undergoes the same phases described above as its life cycle.
Following are a few software life cycle models, their advantages and disadvantages.
Waterfall Model
Strengths:
•Emphasizes completion of one phase before moving on
•Emphasises early planning, customer input, and design
•Emphasises testing as an integral part of the life cycle •Provides quality gates at each life cycle phase
Weakness:
•Depends on capturing and freezing requirements early in the life cycle
•Depends on separating requirements from design
•Feedback is only from testing phase to any previous stage
•Not feasible in some organizations
•Emphasises products rather than processes
Prototyping Model
Strengths:
•Requirements can be set earlier and more reliably
•Requirements can be communicated more clearly and completelybetween developers and clients
•Requirements and design options can be investigated quickly and with low cost
•More requirements and design faults are caught early
Weakness:
•Requires a prototyping tool and expertise in using it – a cost for the development organisation
•The prototype may become the production system
Spiral Model
Strengths:
•It promotes reuse of existing software in early stages of development
•Allows quality objectives to be formulated during development
•Provides preparation for eventual evolution of the software product
•Eliminates errors and unattractive alternatives early.
•It balances resource expenditure.
•Doesn’t involve separate approaches for software development and software maintenance.
•Provides a viable framework for integrated Hardware-software system development.
Weakness:
•This process needs or usually associated with Rapid Application Development, which is very difficult practically.
•The process is more difficult to manage and needs a very different
approach as opposed to the waterfall model (Waterfall model has
management techniques like GANTT charts to assess)
|