Many people fail when addressing quality, not because of bad intentions, but because they approach quality like a problem with one clear cause instead of a problem with complicated or complex ones.
So here are 9 common quality culture fails and at least one way to deal with them. Let's go!
FAIL #1 - Minimal Testing Breadth
What you'll see/hear: "We don't have time for security/performance/accessibility testing right now.".
How you can handle it: Create awareness of the different flavours of quality risk and how these impact customers and stakeholders.
FAIL #2 - The Team Doesn't Own Quality
What you'll see/hear: "Why didn't you find that bug, dear Tester?".
How you can handle it: Map your path to production and help the team see where they're collectively contributing to, or hindering, testing & quality.
FAIL #3 - Technical Debt Makes Delivery Hard
What you'll see/hear: "No matter how much testing we do, things always break in production".
How you can handle it: Use Meaney & Winter's "Test Test for Testability" exercise to give your system a testability health check.
FAIL #4 - Our Code Quality Isn't Great
What you'll see/hear: "We need to perform more end-to-end tests to prevent bugs escaping to production".
How you can handle it: Use static analysis tools and unit testing lower down the stack, and use their coverage information to guide your exploratory work at the system level.
FAIL #5 - We Don't Know What The Impact Is For Our Customers
What you'll see/hear: "Our Customers are telling us that the app is down.".
How you can handle it: Define success and failure during story refinement and implement ways to monitor those things in production.
FAIL #6 - Poor Quality Practices Manifest Themselves During Testing
What you'll see/hear: "Why is testing taking so long?".
How you can handle it: Remember that map of your path to production? Use that to see the bottlenecks in your process and attack them ruthlessly.
FAIL #7 - Work Is All Features, Features And More Features
What you'll see/hear: "I'm too busy to make the retro".
How you can handle it: Use Skills Mapping to figure out what skills your team has, is missing and wants to learn. Then demonstrate how those skills improve delivery and ensure learning occurs in every iteration/sprint.
FAIL #8 - Delivery Teams Never Interact with Real Customers
What you'll see/hear: "We still don't have any update on the fix you need, dear Customer.".
How you can handle it: Save a portion of the Delivery team's capacity for Customer Success tickets. Enable the Delivery team to communicate directly with the customer.
FAIL #9 - Teams Are Constantly Changing Focus
What you'll see/hear: "Drop everything for project X because we have to deploy Y ASAP!".
How you can handle it: Help the leadership team find a North Star and use that to focus on the right work.