Software Testing is Selfish (and That’s A Good Thing)
By Peter Mate, Planit Canada President
“With great power comes great responsibility.” – Spiderman
If you’ve ever set up a software to meet your business needs, you know the satisfaction you feel when you get to the point that things just work. Great! Give yourself a high five, celebrate – but don’t turn the page and move on forever. The same goes for when you drive your new car off the lot. Feels good! But you know that if you omit the oil changes, you’re setting yourself up for disaster down the road.
The simpler and more limited the tool, the simpler the maintenance, typically. The maintenance that hand saw requires is no comparison to a CNC, but the CNC generates far more dollars for the shop.
The more capabilities the software has, the more you can make it work the way you want it to. Once you do this, you’re using the software differently than the next shop that might be using the exact same software but has set it up differently. Multiply this by thousands or millions of users with the same software – but with different setups, hardware, networks, languages… the list goes on. This capacity to adapt your software to your specific processes is a powerful advantage that feeds into what makes your business different from the next shop, but it also becomes something that needs to be managed.
When new versions of the software are released, everyone’s experience might be a little, or a lot, different. It takes some digging and testing in order to find what’s working and what’s not. It takes some learning to understand the new features and possibilities. It might seem tempting to skip it and continue using the version that’s humming along nicely, but this plan is not sustainable. At some point, you realize you’ve been left behind and then end up with an urgent and significant hurdle to tackle if you want to catch up.
So maybe just wait for others to test out the new version and try and hop on board later when most of the kinks have been worked out, right? Might not be the best strategy. The best time to start testing is when the new version is released. This is the time to find things that are not working well with your particular setup. This is the time when fixing these issues is fresh in the developers minds and they are available to fix them. If you rely on others to test, then there might be issues that do not affect others but that do affect your setup.
The testing phase is not volunteer work you’re doing for the sake of the software company, but rather it’s a way to get a head start with the software developer and ensure the issues that might arise in your particular setup are not overlooked. Testing ensures your issues get attention so that you can transition to the new version with as much ease and success as possible.
There typically is a lot of testing that’s done before the release of a new version, but the testing that happens in the marketplace cannot be replicated in-house. In our businesses is where the rubber hits the road. This is where the software gets exposed to all the different scenarios and this is when the squeaky wheels get the grease. Just like the continuous learning on software never ends, neither should refining it to better suit your shop – and that includes keeping up with the newer versions.
Read 5 tips for migrating to CABINET VISION 2021 here to learn more about testing without disrupting production.