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
- Emphasizes early planning, customer input, and design
- Emphasizes testing as an integral part of the life cycle
Weakness:
- Depends on capturing and freezing requirements early in the life cycle
- Depends on separating requirements from design
- Feedback is only from the testing phase to any previous stage
- Not feasible in some organizations
- Emphasizes products rather than processes
Prototyping Model
Strengths:
- Requirements can be set earlier and more reliably
- Requirements can be communicated more clearly and completely between 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 organization
- The prototype may become the production system
Spiral Model
Strengths:
- It promotes the reuse of existing software in the early stages of development.
- Allows quality objectives to be formulated during development.
- Provides preparation for the 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 Hardwaresoftware 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)
0 Comments