The Software Testing Life Cycle Is a Loop, Not a Line
Learn with AI
Most diagrams of the software testing life cycle show six boxes in a row: requirement analysis, planning, test design, environment setup, execution and closure. It's a useful vocabulary. It's also a misleading picture. Teams that run testing as a straight line learn about their biggest risks at the end, when changing course costs the most.
I think of the STLC as a loop. Every activity produces information that should reshape the others. The diagram matters less than whether that information gets back to the people making decisions.
What the STLC is, and what it isn't
STLC stands for software testing life cycle.

“STLC” is industry shorthand, not a standard. No standards body defines a six-phase software testing life cycle. That doesn't make the term wrong, but it helps to anchor it to vocabulary that is defined, so teams and vendors mean the same thing.
Two references do that well. The ISTQB Foundation Level syllabus (v4.0.1) names seven test activities: test planning, test monitoring and control, test analysis, test design, test implementation, test execution and test completion. ISO/IEC/IEEE 29119-2 defines test processes at the organizational, management and dynamic levels, and states that they apply to any development lifecycle model. I treat both as a shared language, not a rulebook. They let a tester in Atlanta and a tester in Ho Chi Minh City describe the same work in the same words.
Here's how the familiar STLC labels map to that vocabulary, and the question each activity should answer:
| Common STLC label | ISTQB activity | Question it answers | Typical output |
|---|---|---|---|
| Requirement analysis | Test analysis | What could go wrong, and how much would it matter? | Risk list, open questions, test conditions, and traceability to requirements |
| Test planning | Test planning | How much testing is enough, given our risks and constraints? | Test plan with scope, approach and entry and exit criteria |
| Test case development | Test design and implementation | What evidence will tell us whether a risk is real? | Test cases, test data and exploratory charters |
| Environment setup | Test implementation | Can we observe the product in conditions close to real use? | A ready environment and a build that passes smoke checks |
| Test execution | Test execution | What did we learn, and what surprised us? | Results, defect reports and new questions |
| Test cycle closure | Test completion | What do we know, what don't we know, and what should we keep? | Test summary report, lessons learned, and a decision on which tests to keep, retire or automate |
| (Usually missing) | Test monitoring and control | Is our plan still right, given what we're learning? | Updated risk list and plan adjustments |
The last row is the one most STLC guides leave out. Monitoring and control is what turns a line into a loop.
Why the loop matters
A test plan is a hypothesis about where the risk is. Execution tests that hypothesis. When an exploratory session uncovers a data-handling problem nobody anticipated, the right move is to update the risk list, re-plan and design new tests. Finishing the scripted ones first and filing the surprise for next release is the wrong move.
This is where the difference between testing and checking earns its place. James Bach and Michael Bolton define checking as “the mechanistic process of verifying propositions about the product.” Testing is broader: evaluating a product by learning about it through exploring and experimenting. Scripted test cases are checks. They confirm what you already expected. Testing is how you find what you didn't expect, and that discovery is what feeds the loop.
A healthy STLC has both. Checks protect known behavior cheaply and repeatably. Testing finds new risk. Each cycle should move some of what testing discovered into checks, so people stay free to keep exploring.
Let risk set the depth
Risk should decide how much effort each activity gets. ISTQB states plainly that exhaustive testing is impossible, so every team is already choosing what not to test. The only question is whether they choose on purpose.
During analysis, I use a coverage heuristic to make sure the risk list isn't just a restatement of the requirements. The SFDIPOT mnemonic from James Bach's Heuristic Test Strategy Model, explained well by Michael Bolton, asks about a product's Structure, Function, Data, Interfaces, Platform, Operations and Time. It's a prompt for questions. A login story looks simple until you ask about Time (session expiry, clock skew) and Operations (what users actually do when they forget a password).
Entry and exit criteria that drive decisions
Entry and exit criteria are often written as paperwork: “test plan approved,” “all test cases executed.” Criteria like these describe activity, not knowledge. Better criteria name the information a decision needs.
| Activity | Weak criterion | Stronger criterion |
|---|---|---|
| Test analysis (entry) | Requirements document signed off | Acceptance criteria exist for the risky behaviors, and open questions are logged |
| Test execution (entry) | Environment available | Build is deployed, smoke checks pass, and test data reflects realistic volume |
| Test execution (exit) | 100% of test cases executed | Every high-risk area has evidence; open defects are triaged with a ship/no-ship view |
| Test completion (exit) | Test summary report issued | Stakeholders know what was tested, what wasn't, and the residual risk they're accepting |
Testing rarely finishes. It stops, when the people who own the release judge they know enough to decide. Good exit criteria make that judgment explicit instead of hiding it behind a pass rate.
The STLC in Waterfall, Agile and DevOps
In a Waterfall project the activities run closest to the diagram: analysis and planning early, execution after the build is complete. That is where the loop is hardest to see, because feedback from execution arrives late and re-planning is expensive. Teams in this setting get the most from reviewing requirements early and from explicit monitoring and control checkpoints during execution.
In a two-week sprint, or a pipeline that deploys daily, the same seven activities still happen. They're just compressed and repeated per story, per change, sometimes per commit. Analysis happens in refinement, when testers ask “how would we know this works?” before code exists. Monitoring and control happens at standup and in the pipeline dashboard. Completion happens at the sprint review, when the team decides which new checks to keep.
The risk in fast delivery isn't skipping phases. It's letting the automated, repeatable parts of testing crowd out analysis and exploration, because those don't show up on a burndown chart.
STLC vs. SDLC
The software development life cycle (SDLC) covers everything from idea to retirement: designing, building, deploying and maintaining a product. The STLC is the testing slice of that work. It overlaps the SDLC rather than following it, because testing can start as soon as requirements exist, often before any code does.
| Dimension | STLC | SDLC |
|---|---|---|
| Scope | Testing activities that tell the team whether the product is ready | Designing, building, deploying and maintaining the product |
| Starts | When requirements exist, often before any code | With a business need or idea |
| Ends | When the people who own the release judge they know enough to decide | When the product is retired or replaced |
| Who is involved | Testers, QA leads and automation engineers | Developers, designers, product owners, QA and DevOps |
| Typical outputs | Test plan, test cases, results, defect reports and a test summary | Requirements, designs, code, deployment plans and user documentation |
| Role in quality | Produces the evidence about quality | Builds the product, with testing as one of its activities |
Common mistakes
- Measuring phase completion instead of knowledge. “Execution 90% complete” says nothing about remaining risk.
- Treating closure as a report. Closure is where you decide which tests to keep, retire or automate. Otherwise the suite grows forever and the signal gets weaker.
- Starting test analysis after development. Questions asked before coding are cheap. ISTQB's “early testing saves time and money” principle exists for a reason.
Where Katalon fits
Katalon True Platform can hold the evidence that keeps the loop connected. It keeps plans, manual and automated test results, and reporting in one place, so monitoring and control works from current data rather than status meetings. Its Requirement Analyzer agent can help draft test ideas from requirements. A tool can't decide which risks your business cares about or when you know enough to ship. That judgment belongs to your team, and the STLC exists to inform it.
|
FAQs
What is the software testing life cycle (STLC)?
STLC stands for software testing life cycle. It is industry shorthand for the testing activities a team runs to learn whether a product is ready to release, not a formal standard. The ISTQB Foundation Level syllabus names seven test activities, and ISO/IEC/IEEE 29119-2 defines the test processes behind them.
What are the phases of the STLC?
The common labels are requirement analysis, test planning, test case development, environment setup, test execution and test cycle closure. They map to ISTQB’s seven activities: test planning, test monitoring and control, test analysis, test design, test implementation, test execution and test completion. Monitoring and control is the one most guides leave out.
Why is the STLC a loop rather than a line?
Every activity produces information that should reshape the others. When execution or exploratory testing uncovers a risk nobody anticipated, the team should update the risk list, re-plan and design new tests, not finish the scripted ones first. Test monitoring and control is what turns the line into a loop.
What is the difference between testing and checking?
Checking is the mechanistic process of verifying propositions about the product, and scripted test cases are checks. Testing is broader: evaluating a product by learning about it through exploring and experimenting. A healthy STLC has both.
What are good entry and exit criteria for testing?
Good criteria name the information a decision needs, not just completed activity. “Every high-risk area has evidence and open defects are triaged with a ship/no-ship view” is stronger than “100% of test cases executed.”
How does the STLC work in Waterfall, Agile and DevOps?
In Waterfall the activities run closest to the familiar diagram, so feedback from execution arrives late and re-planning is expensive. In Agile and DevOps the same seven activities still happen, compressed and repeated per story, per change or per commit.
How is the STLC different from the SDLC?
The SDLC covers everything from idea to retirement: designing, building, deploying and maintaining a product. The STLC is the testing slice of that work, and it can start as soon as requirements exist, often before any code does.
