How to convince business executives to invest in automated testing?
Many business executives might see automated testing as just an "overhead" cost, that's money wasted, not worthy of investment. How to convince them?
📢 My next Live Q&A Session is next Wednesday 19th March 17:00. Only Paid Members can join:
If you’re a Free Member, you can upgrade to attend the Live Q&A:
Jason posted this crucial question:
What's the best way to explain to software teams the importance of testing and software pipelines? Most business executives I've work with only see it in terms of extra money that isn't worth the investment
Is testing just an optional overhead?
Business Executives might see automated testing as the “cherry on top“… and we can eat a sundae without the cherry. The cherry is thus an optional cost.
It’s similar to when you’re ordering lunch. You must eat the main meal, whereas dessert is optional - you can survive without it.
Speak their language → Money
When you’re speaking to business executives, everything needs to be framed in terms of money. They don’t care about clean code, elegance, Uncle Bob, etc…
Manual Deployment is more expensive.
Manual Deployment has lower upfront cost, but it has high recurring cost. The high recurring cost comes due to the need to deploy the system one or more times to UAT environment and also to Production environment per Sprint.
Automated Deployment does have a higher upfront cost (to setup the Pipeline). However, it has lower recurring cost - it executes deployments automatically without human involvement, and only occasionally requires some maintenance (e.g. if need to update the Pipeline).
Manual Testing is more expensive.
Manual Testing has lower upfront cost, the QA Engineers don’t need to write automated tests and developers don’t need to write any automated tests either. The problem is the high recurring (maintenance) cost of regression testing. Over time, as the product grows, the manual regression test suite grows, takes longer and longer to execute. This makes the cost of change very expensive due to the cost of manual regression testing.
QA Engineers have to waste more time on manual regression testing. The company has to hire more and more QA Engineers to perform the repetitive time-consuming work.
Developers have to waste more time on debugging. They might spend > 30% of their time debugging. Ultimately, developers end up spending more Sprint time solving Bug Fixes rather than implementing User Stories. The company has to hire more and more Software Developers to keep up with feature delivery.
Automated Testing has higher upfront cost - for each functionality, we have to write automated tests. However, the benefit is low recurring cost - it’s zero cost to re-run the tests. This means, as the regression test suite grows, the cost of execution those tests remains zero. Automated tests do have some small maintenance cost - sometimes the tests need to be updated - but that’s a low cost (assuming the automated tests are effectively written).
What’s the cost of automated vs manual testing?
So now, let’s look at the options
Coding + Manual Deployment + Manual Testing (MOST EXPENSIVE)
Coding + Automated Deployment + Manual Testing
Coding + Automated Deployment + Automated Testing (LEAST EXPENSIVE)
Business approved budget. Now what?
So let’s say you successfully convinced business executives regarding automation. They’ve given you time & resources to implement the Pipeline & Automated Testing.
You’re excited… but… it could all go wrong!
If Automated Testing is NOT done effectively, then you will not achieve the promised ROI! Instead, you’ll get low ROI. Bad Automated Tests are worse (than Manual Tests); don’t provide us with regression bug protection, and are overly expensive to maintain. Business executives will then be frustrated why their money got wasted!
That’s exactly why I made the TDD in Legacy Code series, which helps you effectively introduce Automated Testing & TDD, in such a way that business will see the impact - producing a test suite that protects you against regression bugs and has low maintenance cost.
📢 My next Live Q&A Session is next Wednesday 19th March 17:00. Premium members will be able to join & watch the replay:
Another hidden cost of manual testing - slower feedback loops. Automated tests give instant feedback, while manual testing delays decisions!
Washing hands was met with sttong resistance https://en.wikipedia.org/wiki/Semmelweis_reflex?wprov=sfla1