CH - 2 Overview of Software Testing
CH - 2 Overview of Software Testing
Fig. SDLC
Preliminary
Investigation
Maintenance Analysis
Implementation Design
Testing Coding
Basic System Development Life Cycle
Following are the phases
1) Preliminary Investigation
• Request clarification
• Feasibility study – identify whether request is feasible
• Carry out by small group of people
• Typically have following types
• Economically
• Technically
• operationally
Basic System Development Life Cycle
• Request approval
• Approved by management
• After that cost, priority, completion time, and personnel requirements are
estimated
Basic System Development Life Cycle
2) Determination of requirement (Analysis)
• Analyst works with employees and managers to understand facts
• Find out facts about existing system, takes opinion of experts.
• Analyze the information which is collected.
• Defines project goals into defined functions and operation of the intended application.
• Analyzes end-user information needs.
3) Design
• Describes desired features and operations in detail, including screen layouts, business rules,
process diagrams, pseudo code and other documentation.
4) Development
• The real code is written here.
5) Testing - checks for errors, bugs and interoperability by using different methods.
Basic System Development Life Cycle
• Limitations
• Interaction with user is limited
• The analytical tools like flowcharts, programs are focus more with physical aspects
than logical aspects
• It is difficult to change or maintain specification
• Complete software development is only viewed at the end.
• Changes at the ends are very difficult to incorporate, almost impossible.
Different approaches and models for system development
Waterfall Model:-
• Waterfall model sometimes called classic life-cycle.
• It is introduced in 1970 by W. W. Royce
• it is oldest paradigm of software development of SE.
• A systematic sequential approach to software development that begins with customer specification
of requirements and progresses through planning, modeling, construction and deployment and
sometimes on-going support of the completed software.
Different approaches and models for system
development
• Phases in waterfall model
1) Requirements – project initiation and requirement gathering
2) Design – analysis and design
3) Implementation - coding
4) Verification – testing
5) Deployment-delivery
6) Maintenance-support and feedback
Waterfall Model
Waterfall model
• Unlike the other process models that end when software is delivered, spiral model
can be adapted throughout life of software.
• First cycle represent “the concept development project” which starts at the core and
continues for multiple iterations around the cycle.
• Next, “new product development project” starts.
• At the end spiral might be used to represent “product enhancement project”.
• So used in large scale projects.
• Where customer better understand and react to risks at each evolutionary level.
Spiral model
• Advantages
1. Faster software production through involvement of the relevant stakeholders
2. Cheaper software via rework and maintenance reduction.
21
Introduction - Testing Concept