The Development of finalized version of software involves series of activities. These activities are mainly:
Project Planning
Analysis
Design
Coding
Testing
Coding
Implementation
Maintenance
Testing is one of important phase of software development life cycle. After development of software a set of activities are required to make the software suitable to use by the end user. A collection of time management books teaches you to take control of your time. Thus software testing techniques enter the picture to achieve the goal of providing error free software to the customers. Testing is phase in software development life cycle that comes into scene after the Coding and before maintenance. Testing is required to check the working of modules of software or software as a whole. Software testing is a critical element in software quality assurance and represents the ultimate review of specification, design and code generation. Generally organizations expend 30 to 40% of total project effort on testing. In case of human rated software like flight control, nuclear reactor monitoring etc. can cost 3 to 5 times as much as altogether software engineering steps combined.