When testing, there are specific project phases, these are all very well-known and well documented. However, software testing is not a single activity per se, but a concatenation of planned activities that need to be executed, along with the software development activities to ensure that a product is delivered to cost and time, without any errors. The following article aims to explain how testing fits within the life cycle of a project and the benefits of early testing and shifting left the quality as early as possible in the software testing life cycle. The following provides a high-level overview as how to plan your testing activities.
STLC - Software Testing Life Cycle, simply put, refers to a testing process regardless of which testing methodology you use (Agile, Scrum or Waterfall etc.), each process will have specific steps to be executed in a predefined sequence, thus ensuring that both the entry and exit criteria have been met through each stage of a project.
In the STLC process, every activity and testing task is carried out in a planned way, regardless of whether you are in a short sprint or a large waterfall project. Each project phase will naturally have different goals and deliverables but the principals of each objectives remains the same – delivering software that is bug-free and meets the Users requirements.
Within each project, there will be a level of detail that naturally alters dependant on the testing methodology, but the key features of the STLC will remain the same whether written into a formal document or scribbled on a post-it note. Here are the key (and not limited too) features of the STLC: