Imagine two companies. Let’s call them Company Y and Company Z.
They’re both XaaS startups that sell a similar product using a subscription model. After three years in business, they’ve tripled in size, and they’re each experiencing the same customer demand. Several board meetings bring them to the same conclusion: it’s time to roll out a new product and make some updates to the their billing system to bring the subscription model for their old products into line with the new product offering.
In January, Company Y hires a large consulting firm to handle their billing transformation. The consulting firm takes over a wing of their office with 15 engineers and pulls in 10 of their employees to work full-time on the transformation.
At the same time, Company Z hires a smaller consulting firm, who brings in three software developers and asks to have access to their full staff on sporadic occasions throughout the transformation process.
By the end of March, Company Y’s transformation is fully underway. The office is bustling everyday with communications between the consulting staff and Company Y’s team members. They’ve transferred all the customers over from the legacy billing system and are testing the new business scenarios one by one to make sure everything’s working correctly.
And what’s happening with Company Z?
Well, Company Z launched their new product in mid-March and has already grown their sales to triple digits.
Why was Company Z’s go-to-market time so much faster than Company Y’s?
One word: Automation.
Software automation can do for XaaS and SaaS businesses what the industrial revolution did for manufacturers. And that’s not an exaggeration.
Company Y and Company Z started their projects in much the same way. For each end-to-end flow, there were multiple use cases that fed into both companies’ desired business outcomes. Once the new software was developed, the Quality Assurance teams manually executed the use cases against the software several times to make sure they got the desired business outcome.
But then, instead of manually testing each use case again and again whenever they made other changes to the system, Company Z’s consulting firm used automated regression testing. For instance, if they were validating the creation of an order, they would enter the data they used to create the order into another software program and then execute a script for that program to submit the order whenever they asked.
By automating each execution with those little bits of code, they spent half the time that Company Y’s consultant did and required less of the company’s staff time. They also charged less because they had fewer employees to pay.
But weren’t their results less accurate because they weren’t individually testing each use case?
Automation means better testing, not less testing.
As any software developer knows, making a change to one area of a system often has unintended consequences elsewhere. Updating the pricing of one product could inadvertently impact the ability of the ordering system to include that product in its contract because of a limit that was placed somewhere else.
If you don’t test, you may never see the problem. And manual testing has long been the standard QA practice. Certainly manual testing is better than no testing—any business wants a system that consistently creates the desired business outcomes.
But with recent advances in technology, manual testing on its own—not as a precursor to automated testing—is a time-consuming vestige of the past. And it’s not without drawbacks. Automation allows a team to reset the system and test as many times as necessary without adding costly time to the project.
Familiarity with a particular method may sound enticing, but companies that embrace automation innovate faster. They go to market faster. They scale faster.
And they do it for less money and with greater accuracy.
Take a second and bring to mind the standard project management triangle. The basic wisdom is that you can have it fast, you can have it cheap, or you can have it good.
Well, automation blows up the triangle.
By automating execution, companies get faster software transformations, less expensive transformations, and more accurate transformations.
Win. Win. Win.