most preferably in the requirement analysis phase itself and should be performed by skilled testers only and not by developers. Software development life cycle (SDLC) processes involve activities of software requirements, analysis, requirement specification, design, coding, testing, delivery, and maintenance. The testing phase can be used in all of these life cycle phases as an umbrella activity.