3 Best Practices for Maintaining Quality in the Proliferation of Software
March 20, 2017

Greg Law
Undo

It has been said before and will be said again – software is truly eating the world. In the quest for survival, every company is becoming a software company. However, with the prevalence of software comes an increased number of software bugs, which impacts on software quality. Monitoring and understanding what software is really doing, and maintaining good levels of software quality is therefore increasingly important to software vendors today. Even a minor bug is capable of shutting down whole systems, and there is a real risk that development cycle pressure competes with quality assurance best practices.

Having the right tools and tactics in place is therefore key to managing the proliferation of software without sacrificing quality to ensure that software vendors are not exposed to potentially catastrophic failures.

Best Practice 1: Know Exactly What Your Software Did and When It Did It

As software becomes increasingly complex, involving more lines of code and becoming mission-critical to everyday operations, developers need to have an understanding of what their software is doing at all times.

The ability to see precisely what went wrong and when can provide developers with some much needed peace of mind. This can be achieved via capturing a program's execution in a recording, which can be subsequently replayed and analyzed to see exactly what the software did before it failed.

Having an exact replica of your program's execution, whether in test or production, offers developers the ability to track down hard to isolate bugs that impact software quality. In QA, having a recording of why a test failed allows developers to go back in time to any instruction in the program's history and view contents of any location in memory and in any register, making it significantly easier to find the root cause of the failure.

Best Practice 2: Act on the Problem

With the ability to generate recordings in place, the next step is ensuring the intel is routinely inspected. By allocating review time into a developer's every day workflow, even when there are no issues under review, software quality becomes ingrained in the fabric of the enterprise. With the right tools in place and the personnel on board, software monitoring moves from something enterprises know they need to have, to a smart business investment that guarantees the utmost software quality.

Best Practice 3: Commit to the Customer

It is important to remember that software quality is important for your customer, as it affects how they view the company and can make or break customer loyalty, which is why companies such as SAP spend much time and resource on making sure their code is the highest standard it can be. Unresolved software issues can be potentially catastrophic for a business and can negatively impact the customer experience, creating problems for a software vendor's reputation and the bottom line.

Viewing software quality as not just a developer issue but as a customer issue should bump it up to the top of priority lists and allow it to be recognized as crucial to giving businesses a competitive advantage. Quality assurance tools such as the ability to record a program's execution that fit seamlessly into already existing workflows are a great way to make monitoring a natural part of the landscape.

Dr. Greg Law is CEO and Co-Founder of Undo.

Share this

Industry News

February 20, 2025

GitLab announced the general availability of GitLab Duo Self-Hosted.

February 20, 2025

Tigera announced the introduction of several new innovations to Calico, including a new Ingress Gateway capability for Calico Cloud and Calico Enterprise, and the launch of Calico Dashboards.

February 20, 2025

Copado introduced three AI-powered DevOps apps for Slack.

February 20, 2025

Gearset announced that it now supports Salesforce's Agentforce.

February 19, 2025

Sonar announced the acquisition of AutoCodeRover, an autonomous AI agent platform for software development.

February 19, 2025

Faros AI announced a collaboration with Microsoft to deliver its AI-powered platform for optimizing engineering workflows on Azure.

February 19, 2025

Apollo GraphQL announced the general availability of Apollo Connectors for REST APIs and new GraphOS platform enhancements — giving enterprises a faster, more efficient way to execute their API strategies.

February 18, 2025

Check Point® Software Technologies Ltd.(link is external) announced that its Check Point CloudGuard solution has been recognized as a Leader across three key GigaOm Radar reports: Application & API Security, Cloud Network Security, and Cloud Workload Security.

February 13, 2025

LaunchDarkly announced the private preview of Warehouse Native Experimentation, its Snowflake Native App, to offer Data Warehouse Native Experimentation.

February 13, 2025

SingleStore announced the launch of SingleStore Flow, a no-code solution designed to greatly simplify data migration and Change Data Capture (CDC).

February 13, 2025

ActiveState launched its Vulnerability Management as a Service (VMaas) offering to help organizations manage open source and accelerate secure software delivery.

February 12, 2025

Genkit for Node.js is now at version 1.0 and ready for production use.

February 12, 2025

JFrog signed a strategic collaboration agreement (SCA) with Amazon Web Services (AWS).

February 12, 2025

mabl launched of two new innovations, mabl Tools for Playwright and mabl GenAI Test Creation, expanding testing capabilities beyond the bounds of traditional QA teams.

February 11, 2025

Check Point® Software Technologies Ltd.(link is external) announced a strategic partnership with leading cloud security provider Wiz to address the growing challenges enterprises face securing hybrid cloud environments.