Block 01
Prevention
- Problem
- The most expensive defects are born in ambiguous stories, before a single line of code exists.
- Outcome
- Stories with verifiable criteria and an acceptance plan per story before the sprint starts.
Integral Methodology
The quality methodology at UPEX: a single line of work from the requirement to the operation, instead of the STLC as a separate phase at the end.
The three phases
// In the ecosystem
Galaxy teaches it, the services division implements it, and Satellite connects people trained in it.
Stories with verifiable criteria and an acceptance plan per story before the sprint starts.
Feedback to the developer before the pull request, with real evidence and bugs prioritized by risk.
Reliable regression in CI: only what proved its value gets documented and automated, and it runs on every pull request.
Production feeds the strategy: real metrics decide what to observe, what to test and what to improve in the next cycle.
02Four blocks
Four blocks, each with the problem it tackles and the outcome it leaves. They are the same four maturity levels used later to decide how far to go.
Block 01
Block 02
Block 03
Block 04
How far to go
The IQL defines what to observe and what to improve; the maturity level defines how far to implement Late Game; the concrete targets are defined by each product.
03The loop
The cycle is a loop, not a row. Production feeds the next cycle's analysis through a named mechanism, the error budget and the escape rate, not through good intentions: if no number loops back to step 1, the last step is an ending, not a return.
Integrated Quality Lifecycle
The method's stages grouped by moment of the cycle, the SDLC events around them, and the three loop-back arrows a linear model can't draw: the defect, the NO-GO and production feeding the next analysis.
Before the sprint
Shift-Left
Early-Game
Inside the sprint
Planning · Execution · Reporting
Early-Game
Close and release
Documentation · Automation · Regression
Early-Game · Mid-Game · Late-Game
Production
Observation
Late-Game
04Principles
Principles and invariants of the IQL: what doesn't change even when the stack, the tracker or the client changes. Each one points to the steps that carry it out.
What the IQL contributes isn't inventing Shift-Left, Risk-Based, CI or observability: it's the choreography. Understand → plan → explore → learn → prioritize by risk and ROI → document only what deserves to live → automate what deserves automation → integrate it into CI → observe production → feed the next cycle.
Execute first, document later doesn't mean testing without a plan: before the sprint, the analysis, the FTP and the ATP already exist. Testing happens against that plan, and only with real evidence does the team decide which scenarios deserve to become persistent regression cases. That way, case repositories written in advance that nobody maintains never get born.
Everything gets prioritized by risk: which stories get explored first, which quality attributes apply to each one, and which cases get documented. Nothing enters the suite out of habit.
A case gets persisted and automated only if its regression value was demonstrated; the ROI verdict (Candidate, MANUAL, Deferred) gets decided in step 4 and stamped in step 6. The suite gets maintained under the same criterion.
The QA Analyst's work doesn't end in a folder of cases: it produces candidates that feed directly into the QA Automation Engineer's cycle. That seam between the TMLC and the TALC is the I in Integrated.
Every step leaves a named artifact and a transition in the tracker: MTP, FTP, STP/STR, ATP/ATS/ATR and the ATC. The gates are the transitions; without an artifact there is no next step.
Step 2 isn't a QA activity: it's the sync point with the SDLC, the period when development builds while QA works in parallel. It's counted among the 15 so the cycle stays readable, and it gets drawn differently.
The IQL doesn't replace the STLC: it absorbs it. It's a Software Quality Engineering operating model that integrates the STLC's activities within the SDLC and extends them all the way to production.
The IQL defines what to observe and what to improve; the maturity level defines how far to implement Late Game; the concrete targets are defined by each product.
Agent executes. Evidence proves. Human owns the decision.
The agent executes the skills, the evidence proves every conclusion, and the person decides: what gets prioritized, what gets automated, what gets approved.
Whoever verifies is not whoever executed. The work an agent produces gets reviewed by another, in a clean context and against the original artifact: the ROI verdicts against the ATR, the code against the approved plan. An executor that audits itself only confirms its own reading.
The agent gets measured too. Every stage has its golden set (a reference ATP, a reference ROI verdict, a reference failure classification) and its evals: without that, "Evidence proves" proves the product and not the executor, and there is no way to justify raising its autonomy.
The cycle is a loop, not a row. Production feeds the next cycle's analysis through a named mechanism, the error budget and the escape rate, not through good intentions: if no number loops back to step 1, the last step is an ending, not a return.
The I in Integrated is three seams, in this order: the one that makes the method agentic, the one that stitches the two cycles together, and the one that fits the STLC inside the SDLC.
01
The agent executes, the evidence proves, and the person decides. The three pieces are stitched together in every stage by its contract: what the agent does, what the person signs, and what evidence the gate demands. Without this seam the method would have agents, but it wouldn't be agentic.
02
The QA Analyst's work doesn't end in a folder of cases: it produces candidates that feed directly into the QA Automation Engineer's cycle, and the ROI gate decides which ones make it through. It's the method's original seam.
03
The IQL doesn't replace the STLC: it absorbs it, integrates its activities within the SDLC and extends them all the way to production. Step 2 is where the two lines sync up.
05The stages
The stage is what gets executed and gated: it has a name, never a number. Each one declares what the agent does, what the person signs, what evidence it demands and with how much autonomy. The steps stay inside, as its breakdown.
Before the sprint
Inside the sprint
Close and release
Production
Before the sprint
The story gets analyzed before a single line of code exists, in batch and without creating a single entity in the TMS. Out comes the ATP in the story's own field, and out come the questions the team can still answer cheaply.
Agentic contract
Autonomy
2 on a 0-5 scale
Separate verifier
not needed
Comes out of here
Jira transitions
Understand the requirements: the Epic analysis and each Story's analysis happen BEFORE the sprint, and the story's ATP comes out of that, living pre-sprint ONLY in the `acceptance_test_plan` field (no Test Plan item yet). The FTP item is not born here: it is created or refined inside /sprint-testing, when the Epic context is loaded, already in sprint. The FTP is a living document: written once per epic and refined throughout it, because the team learns with every story it delivers. And a story is never analysed alone: its siblings in the same epic are analysed too (the ones already built, the ones in development and the ones merely defined), because that full picture of the feature is what makes the ATPs better.
Deliverable
ATP (Acceptance Test Plan) per Story, pre-sprint in the story's field + FTP (Feature Test Plan) per Epic, whose item gets created when the sprint opens
Inside the sprint
Already in sprint, the story's plan becomes items: first the ATS, then the ATP, then the ATR. Coverage is built on two axes, and the ATR doesn't exist without a declared environment.
Agentic contract
Autonomy
2 on a 0-5 scale
Separate verifier
not needed
Comes out of here
Understand the requirements: the Epic analysis and each Story's analysis happen BEFORE the sprint, and the story's ATP comes out of that, living pre-sprint ONLY in the `acceptance_test_plan` field (no Test Plan item yet). The FTP item is not born here: it is created or refined inside /sprint-testing, when the Epic context is loaded, already in sprint. The FTP is a living document: written once per epic and refined throughout it, because the team learns with every story it delivers. And a story is never analysed alone: its siblings in the same epic are analysed too (the ones already built, the ones in development and the ones merely defined), because that full picture of the feature is what makes the ATPs better.
Deliverable
ATP (Acceptance Test Plan) per Story, pre-sprint in the story's field + FTP (Feature Test Plan) per Epic, whose item gets created when the sprint opens
Inside the sprint
Two moves, in this order: the smoke validates the environment, the Trifuerza validates the feature. Whatever shows up outside the plan feeds back into the set, it doesn't get discarded.
Agentic contract
Autonomy
3 on a 0-5 scale
Separate verifier
not needed
Comes out of here
Jira transitions
Validate the US in two moves and in this order: first the Go/No-Go smoke test, which validates the ENVIRONMENT, and only then the Trifuerza exploration (UI · API · DB), which validates the FEATURE by running what the ATP and the FTP planned. Skipping the smoke test is the classic anti-pattern. Findings are reported on the spot: defect reporting is not a separate step, it lives inside the exploration. Before filing, the finding must be CLASSIFIED (Bug, Defect or Improvement), and the classification follows the life stage of the FEATURE, not the environment where it showed up. Every finding is documented with clear, reproducible information.
Deliverable
US approved or bugs reported in Jira, with the story's ATR (Acceptance Test Results) as the execution record. The Feature altitude has no execution of its own: the FTP gets consumed as context and produces no results.
Inside the sprint
The run becomes a record: the ATR gets filled in, the QA comment tells what happened, and the links get verified in their own direction. Without that, the story doesn't get signed off.
Agentic contract
Autonomy
2 on a 0-5 scale
Separate verifier
not needed
Comes out of here
Jira transitions
Validate the US in two moves and in this order: first the Go/No-Go smoke test, which validates the ENVIRONMENT, and only then the Trifuerza exploration (UI · API · DB), which validates the FEATURE by running what the ATP and the FTP planned. Skipping the smoke test is the classic anti-pattern. Findings are reported on the spot: defect reporting is not a separate step, it lives inside the exploration. Before filing, the finding must be CLASSIFIED (Bug, Defect or Improvement), and the classification follows the life stage of the FEATURE, not the environment where it showed up. Every finding is documented with clear, reproducible information.
Deliverable
US approved or bugs reported in Jira, with the story's ATR (Acceptance Test Results) as the execution record. The Feature altitude has no execution of its own: the FTP gets consumed as context and produces no results.
Close and release
The ROI gate: over behavior already validated, each scenario gets exactly one verdict, and only the ones that proved regression value get persisted. Most have to fall into Deferred.
Agentic contract
Autonomy
2 on a 0-5 scale
Separate verifier
recommendedVerified by:second-agent
Comes out of here
Jira transitions
Decide which ATP scenarios deserve a persistent Test Case (TC) in the TMS and which stay exploratory. The decision runs AFTER executing and reporting: the persistent regression set is decided on ROI, never assumed at planning time.
Deliverable
Refined ATP, with an ROI verdict per scenario
Formalise in the TMS the Test Cases (TC) of every scenario with a Candidate or Manual verdict. The verb changes with the modality: in `jira-native` those TCs are CREATED here (a native Test issue is already documentation, so it waits for the ROI gate); in `jira-xray` (UPEX's own instance) the Tests exist from Planning and here they are ENRICHED and PROMOTED: rich Gherkin, `regression-candidate` label, the feature's Test Set and the Regression Test Plan. It is asynchronous on purpose: documentation happens AFTER executing and reporting, never before.
Deliverable
Backlog of high-value TCs in the TMS (native Jira or Xray), grouped in the story's ATS (Acceptance Test Set) and ready to be automated with Playwright
Review the freshly documented TCs to determine which ones are automated with Playwright and which stay in manual regression
Deliverable
TCs approved for automation (Candidate verdict) or marked as Manual
Close and release
Only Candidates get in. First the plan, then the code, and three verifiers green before the pull request. It's the only stage with mandatory separate verification.
Agentic contract
Autonomy
2 → 3 ceiling within the approved plan
Separate verifier
requiredVerified by:pr-review-leadjudgment-day
Comes out of here
Jira transitions
Implement the candidate TCs in code with Playwright, on the KATA architecture. Every method carries the @atc('PROJ-101') decorator, which ties it to its case in Jira: the decorator names the code representation of that same ATC, not a different object.
Deliverable
Cases implemented in the automation repo, with a PR created
Validate the automated ATCs with Playwright in the Continuous Integration pipeline
Deliverable
Stable ATCs in CI with no flakiness, with traceability reports
Open a Pull Request for review and approval of the ATCs automated with Playwright
Deliverable
PR merged, ATCs integrated into CI/CD
Close and release
The suite runs and every failure gets classified: none stays as "it broke". From there comes the release verdict and the sprint's STR.
Agentic contract
Autonomy
3 on a 0-5 scale
Separate verifier
not needed
Comes out of here
Keep the application stable for release and keep it that way after deployment. The sprint's regression is planned in the STP and its execution is recorded in the STR.
Deliverable
US deployed to production with confidence + the sprint's STR (Sprint Test Results)
Production
Production as the source of the strategy. It doesn't have a skill yet: its operating unit is the agentic routine, and that's why the stage is declared panorama until one exists.
Agentic contract
Autonomy
3 on a 0-5 scale
Separate verifier
not applicable yet
Comes out of here
Roll new functionality out to a small percentage of users to monitor behaviour
Deliverable
Safe validation with minimal risk
Test different versions of a feature to optimise the user experience
Deliverable
Decisions based on real user data
Monitor the real experience of users in production to spot performance problems
Deliverable
Full visibility into real UX
Introduce controlled failures in production to validate the resilience of the system
Deliverable
Resilient system with validated recovery
Analyse user feedback and production metrics to feed the next Early-Game cycle
Deliverable
Continuous product improvement
06Jira
The real states of the workflow. Bug, Defect and Improvement are three different work types that SHARE the UPEX BUG/DEFECT LIFE CYCLE workflow: Bug if the feature is already live above Staging, Defect if it is still pre-release (the normal outcome of sprint testing), and Improvement if the behavior does not violate any acceptance criterion. Classifying before filing is mandatory. Watch for three names that are ambiguous by design: Candidate and MANUAL are both TC states and step 4 ROI verdicts; Deferred is both an ROI verdict and a terminal Bug state. The verdict and the state are not the same thing even though they share a name.
Branches
Branches
Branches
Source: `.agents/jira-workflows.json` from the `agentic-qa-boilerplate` boilerplate (the instance's real configuration, with state and transition ids). Where a SKILL.md contradicts that JSON, the JSON wins.
The plan, the set and the run aren't loose documents in a folder: they're linked issues on the story itself, and they show up where Jira really puts them, in the linked issues block, below the acceptance criteria. This is what a story in test looks like, with its ATP, its ATS and its ATR named with the ladder's grammar.
The seven tabs are navigable: the two boards with their grouped columns, the story with its Xray coverage panel, and the four cards for the plan, the run, the case and the defect, seen from the inside. The coverage panel's toggle switches off the ATS link and shows what happens then.
Sprint#7 · UPEX Coin Sandbox: stories and defects
To start 2
Backlog · Open
Notify the deposit by email
The balance doesn't update when the deposit has decimals
Refinement 2
Shift-Left QA · Estimation
Export movements to CSV
Define daily withdrawal limits
Development 3
Ready For Dev · In Progress · In Review
Edit the wallet alias
Withdraw balance to a bank account
The history loses the filter when paginating
Testing 2
Ready For QA · In Test
Confirm the deposit with two-factor
Register a deposit in my wallet
Close 2
QA Approved · Ready For Release · Deployed to Production · Closed
View the movement history
Sign in with email
Diverted 2
BLOCKED · ABORTED · Deferred · Duplicated · Enhancement · Cannot Reproduce · REJECTED
Lock the wallet after failed attempts
The amount accepts more than two decimals
07Modalities
When a Test Case becomes a TMS work item. It changes with the tool, not with the methodology. The stages named here, Planning and Documentation, are stages of the method, not IQL steps: Documentation contains steps 4 and 5. Since stages are named instead of numbered, the collision that used to require this clarification no longer exists.
UPEX's instance works in Jira + Xray (jira-xray). jira-native is the factory default: it's the fallback when Xray isn't configured (`tms_cli: null`). It isn't a declaration from the boilerplate: the modality gets resolved by probing.
In Planning only outlines come out inside the ATP. A native Test issue already IS documentation, so it waits for the 'regression-worthy' gate in Documentation, which runs after executing and reporting.
Steps where the work changes
Cases get created and run in Planning, because in Xray the Test issue is the unit of execution. In Documentation the regression-worthy ones get promoted to the regression Test Plan and the rest stays as a sprint artifact.
Steps where the work changes
08Artifacts
UPEX's planning ladder: product → feature → sprint → story. The first token of the name encodes the altitude.
The axiom
Plan and results are distinguished by the first token: P = Plan, R = Results
The grammar of the name
{ACRONYM}: {scope-id}: {descriptor}
A name that follows the grammar reads without opening the issue: the acronym says the altitude and whether it is a plan or a run, the scope says what it refers to, and the descriptor says what it is about.
Test Management
The three paths by which a test case resolves up to its story, which one fills the coverage panel and which one reads as uncovered even though the link exists.
09Architecture
Komponent Action Test Architecture
The IQL's agentic architecture, isomorphic to KATA. The Agentic Quality Engineer operates two architectures with the same shape: one over the product under test and another over its own agent system, and audits both with the same rigor. The isomorphism wasn't designed: it was verified on disk, correspondence by correspondence.
The formula
KATA (Komponent Action Test Architecture) is the name of the architecture, not the inventory of its layers. The real layers are four — TestContext, Base (ApiBase / UiBase), Domain components and Fixtures — plus an optional intermediate layer, Steps, for reusable precondition chains. The dependency goes in one direction only: each layer uses only the ones below it, never the other way around. Test files consume the Fixtures: they aren't a layer.
Decision level: RECOMMENDEDThe traceability decorator: REQUIRED
Test Automation
The IQL steps that the QA Automation Engineer drives, and the layers of the KATA architecture they get implemented on, with the optional middle layer in its place and the test file where it belongs: consuming, not as one more layer.
10The cycles
TMLC and TALC are UPEX's pedagogical names, not the boilerplate's live pipeline: there the work is organized into the method's stages, each with its own owning skill. Map: TMLC 1st ↔ Shift-Left and Planning · TMLC 2nd ↔ Execution and Reporting · TMLC 3rd and 4th ↔ Documentation (Prioritize and Document phases) · TALC 1st ↔ the Documentation/Automation boundary · TALC 2nd, 3rd and 4th ↔ Automation. Added to those two pedagogical names are the cycles that ARE real state machines of the instance: the SDC (the story's journey) and the BLC (the finding's), read from .agents/jira-workflows.json of the agentic-qa-boilerplate boilerplate (the instance's real configuration, synced from Jira Cloud); and the PLC, the production cycle, declared empty until the skill that runs it exists.
Test Manual Life Cycle
Test Automation Life Cycle
Story Development Cycle · UPEX Feature (US) Workflow
The story's journey end to end. The IQL doesn't invent it: it follows it. The Shift-Left stage lives between Backlog and Estimation, Execution and Reporting between In Test and QA Approved, and the BLOCKED branch is the return path the linear model doesn't express.
Applies tostory
Read fromagentic-qa-boilerplate boilerplate's .agents/jira-workflows.json (the instance's real configuration, synced from Jira Cloud)
Bug Life Cycle · UPEX BUG/DEFECT LIFE CYCLE
The finding's journey, shared by the three work types: Bug if the feature is already live above Staging, Defect if it's still pre-release, and Improvement if it doesn't violate any acceptance criterion. Classifying before filing is mandatory.
Applies tobugdefectimprovement
Read fromagentic-qa-boilerplate boilerplate's .agents/jira-workflows.json (the instance's real configuration, synced from Jira Cloud)
Production Lifecycle
The cycle of what happens after release: signal, item, decision, return to analysis. It's declared here so the model doesn't pretend it doesn't exist, and it's declared empty so nobody sells it before the skill that runs it exists. Its stage is Observation.
Declared and still empty
Sprint Testing
The three stages of /sprint-testing and the exact planning order, where the ATS gets created before the plan and before the run.
The IQL defines a symbiosis between two specialized roles that work asynchronously and in parallel.
11The STLC inside
The classic linear STLC treats testing as a stage with a start and an end: you plan, design the cases, execute them and close the cycle. The IQL doesn't erase those activities, it absorbs them: it spreads them across the whole development cycle and extends them all the way to production.
Classic STLC · IQL
Three lanes over the same SDLC timeline. The classic STLC starts once the code already exists; the IQL starts at the requirement and inverts the order of the two steps that define the method.
«The IQL doesn't replace the STLC: it absorbs it. It's a Software Quality Engineering operating model that integrates the STLC's activities within the SDLC and extends them all the way to production.»
UPEX's IQL methodology
None of these is a UPEX invention. What the IQL contributes is the order: which one applies at which phase, with what deliverable and who runs it.
Move quality activities earlier in the development cycle
Involve QA from the start to catch defects sooner and cut rework, before a single line of code exists to break. In the IQL this is not left to intention: the story carries the «[QA] Shift-Left Review» subtask, opened when refinement starts and closed when it is delivered, and QA writes the story's Acceptance Test Plan.
12The three phases
The three phases of the Integrated Quality Lifecycle, with their steps, their leading role and their underlying question.
Phase 1 · Prevention · Steps 1-4
«Let's build it right from the start»
QA Analyst
Go to Early-GamePhase 2 · Detection · Steps 5-9
«Does the software meet the requirements?»
QA Automation Engineer
Go to Mid-GamePhase 3 · Observation · Steps 10-15
«How does it behave in the real world?»
QA + DevOps
Go to Late-Game13The Trifuerza
The Trifuerza (formerly called Tridente): the exploration model of the Execution stage, the three layers walked to validate a feature, UI · API · DB. It is also the minimum knowledge UPEX requires of a QA.
ui
E2E / Frontend Testing
Tests that validate the full flow starting from the UI
api
API Testing / Backend
Tests at the business logic level
db
Database Testing
Tests of the data layer
14Where to learn
The Integrated Quality Lifecycle gets implemented through the ATLAS Model, UPEX's pedagogical framework.
The phases, activities and strategic quality management goals.
The pedagogical structure, the tools and the progression of competencies.
A professional with an integral methodology and solid technical competencies.
Pedagogical framework
A structured learning system that combines theory, practice and mentoring to train QAs who master the full Integrated Quality Lifecycle.
Explore the ATLAS ModelReading the method is enough to understand it. Operating it takes a Jira with real stories, a TMS with cases someone actually runs, and a repository where the pull request gets reviewed by someone else.
interactive course
Seven modules with quizzes and a Jira simulator where you train the first two TMLC stages. Free, no paid account needed.
Start the courseIQL Steps 1-7
Shift-Left + Sprint Testing · Primer contacto con Automation (clase puente)
See Dojo Saga 1IQL Steps 7-15
Test Automation · Regression + Observability
See Dojo Saga 2full program
Both sagas back to back, on a real project with Jira, the TMS and the real repository.
See the programBecome the QA that companies need: one who understands and applies quality management across the whole life cycle of the software.
The IQL is practiced end to end in the DOJO Program, with Jira, the TMS and the real repository.