Alone or exploring quickly: use the Multi-Symptom Selector. Pick your pain points, check the symptoms that sound familiar, and get results in under two minutes.
Team session or retrospective: use the Team Health Check. Work through delivery areas together and discuss which statements apply.
Start from your pain points. The selector narrows to relevant symptoms and finds the anti-patterns driving them.
Start with what hurts, then drill into specifics. The selector finds anti-patterns driving multiple symptoms at once.
1 Pain points
2 Symptoms
3 Results
What problems does your team experience? Pick up to three.
0 of 3 selected
Check everything that sounds familiar. Higher-impact symptoms are listed first.
High impact
Medium
Low
0 selected
2 - Team Health Check
Work through each delivery area and check every statement that describes your team. The worksheet surfaces the anti-patterns to tackle first.
This worksheet is designed for a team to use together - in a retrospective, a planning session,
or an initial CD assessment. Work through each delivery area and check every statement that
describes your current situation. The results show which practices to address first.
Work through each delivery area. Check every statement that describes your team. Then click Show Results.
Deployment and Release
How your team ships software to production
Testing Practice
How your team validates that software works before shipping
Code Integration
How your team merges and integrates code changes
Pipeline and Automation
How code moves from commit to running in production
Visibility and Monitoring
How your team knows what is happening in production
Team Dynamics
How your team collaborates, shares ownership, and improves
Planning and Work Management
How your team plans, sizes, and tracks delivery work
0 checked
3 - Symptoms for Developers
Dysfunction symptoms grouped by the friction developers and tech leads experience - from daily coding pain to team-level delivery patterns.
These are the symptoms you experience while writing, testing, and shipping code. Some you feel
personally. Others you see as patterns across the team. If something on this list sounds
familiar, follow the link to find what is causing it and how to fix it.
Pushing code and getting feedback
Pipelines Take Too Long - You push a change, then wait 30 minutes or more to find out if it passed. Pipeline duration limits how often the team can integrate.
Feedback Takes Hours Instead of Minutes - You do not learn whether a change works until long after you wrote it. Developers batch changes to avoid the wait.
Tests Randomly Pass or Fail - You click rerun without investigating because flaky failures are so common. The team ignores failures by default, which masks real regressions.
Refactoring Breaks Tests - You rename a method or restructure a class and 15 tests fail, even though the behavior is correct. Technical debt accumulates because cleanup is too expensive.
Test Suite Is Too Slow to Run - Running tests locally is so slow that you skip it and push to CI instead, trading fast feedback for a longer loop.
High Coverage but Tests Miss Defects - Coverage is above 80% but bugs still make it to production. The tests check that code runs, not that it works correctly.
Everything Started, Nothing Finished - The board is full of in-progress items but the done column is empty. The team is busy but throughput is low.
Work Items Take Days or Weeks to Complete - Cycle time is long and unpredictable. Items sit in progress for days because they are too large or blocked by dependencies.
Deploying and releasing
The Team Is Afraid to Deploy - Deployments are treated as high-risk events requiring full-team attention. The team deploys less often, which makes each deployment larger and riskier.
See Learning Paths for a structured reading sequence if you want a guided path through diagnosis and fixes.
4 - Symptoms for Agile Coaches
Dysfunction symptoms that surface in team process, collaboration, and integration workflows - the areas where coaching has the most leverage.
These are the symptoms you see in retrospectives, stand-ups, and planning sessions. They show up
as process friction, collaboration breakdowns, and integration pain. If something on this list
sounds familiar, follow the link to find what is causing it and how to fix it.
Work is stuck or invisible
Everything Started, Nothing Finished - The board is full of in-progress items but the done column is empty. The team is busy but throughput is low.
Work Items Take Days or Weeks to Complete - Cycle time is long and unpredictable. Items sit in progress for days because they are too large or blocked by dependencies.
Retrospectives Produce No Real Change - Action items are generated but never acted on. The team has stopped believing retrospectives lead to improvement.
See Learning Paths for a structured reading sequence through diagnosis and fixes.
5 - Symptoms for Managers
Dysfunction symptoms grouped by business impact - unpredictable delivery, quality, and team health.
These are the symptoms that show up in sprint reviews, quarterly planning, and 1-on-1s. They
manifest as missed commitments, quality problems, and retention risk.
Unpredictable delivery
Everything Started, Nothing Finished - The team reports progress on many items but finishes few. Sprint commitments are routinely missed because work that seemed “almost done” stalls.
Releases Are Infrequent and Painful - The organization can only ship quarterly because each release requires weeks of stabilization. Business opportunities are lost to lead time.
Staging Passes but Production Fails - The team followed the process - tests passed, staging looked good - but production still broke. The process gives false confidence.
High Coverage but Tests Miss Defects - The team reports strong test coverage numbers, but defects keep reaching production. The metric is not measuring what it appears to measure.
Multiple Services Must Be Deployed Together - Deploying requires coordination across teams and services. This creates scheduling dependencies and increases the cost of every change.
Merge Freezes Before Deployments - Development stops before each release so the team can stabilize. This idle time is invisible but costly.
The Team Is Afraid to Deploy - Deployments are treated as risky events. The team prefers to batch and delay rather than ship frequently, which amplifies risk.
Releases Depend on One Person - A single release manager creates a bus-factor risk and a bottleneck on every deployment.
Team Burnout and Unsustainable Pace - Process friction, on-call burden, and deployment stress are wearing the team down. Attrition risk is high.
Merging Is Painful and Time-Consuming - Developers spend significant time resolving merge conflicts instead of building features. This is invisible overhead that slows delivery.
It Works on My Machine - Environment inconsistency means developers waste time debugging problems that only appear in certain environments. This is preventable friction.
See Learning Paths for a structured path from diagnosis to building a case for change.
What to do next
If these symptoms sound familiar, these resources can help you build a case for change and
find a starting point:
Phase 0: Assess - Map your value stream, take baseline measurements, and identify your top constraints.
DORA Recommended Practices - The research-backed capabilities that predict delivery performance. Use this to connect symptoms to organizational capabilities.
Metrics Reference - Definitions for the metrics used throughout this guide, including the four DORA metrics.