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.

The Latest

December 14, 2017

Around one in five business leaders indicating that their software budget had increased 50 percent or more over the past three years to support digital transformation projects. However, the increased software development investment has not translated to greater security budgets or awareness of the security risks insecure software introduces: only 50 percent of business leaders surveyed understand the risk that vulnerable software poses to their business, according to Securing the Digital Economy, a report from Veracode ...

December 13, 2017

Metrics-oriented thinking is key to continuous improvement – and a core tenant of any agile or DevOps philosophy. Metrics are factual and once agreed upon, these facts are used to drive discussions and methods. They also allow for a collaborative effort to execute decisions that contribute towards business outcomes ...

December 11, 2017

The benefits of DevOps are potentially enormous, but simply identifying the benefits is not enough. A faster time to market may be a good customer story, but with no directly measurable monetary return, the value of DevOps can still be questioned at board level. Businesses want more than promises if they are to sign off on financial decisions: they need to know the Return on Investment (ROI) as well, with facts and figures that demonstrate what they will gain ...

December 07, 2017

Modern businesses are migrating to a cloud-based model for hosting sensitive data to reap the benefits of agility and cost savings as well as to keep pace with customer demand. Cloud-Native methodologies such as DevSecOps, continuous delivery, containers and micro-services are essential building blocks in the digital business revolution. However, moving information and technologies from hardware to software poses a security concern – translating to a top challenge for both IT and the C-level, as applications built on top of micro-services and containers in a Cloud-Native environment utilize a wide variety of secrets for their proper functioning ...

December 06, 2017

There was a time in cybersecurity strategy when most IT leaders considered perimeter and endpoint guards like antivirus and authentication controls to be the sum of network protection. But as attacks continue to increase in frequency and sophistication, leaders and DevOps teams have been focusing on the role of backup and disaster recovery in mounting a strong defense ...

December 04, 2017

In this blog I will summarize and share with you some wisdom about the biggest problem – okay, problems – in the field of software testing right now. While this is not an exhaustive list, these four bad habits have emerged as the predominant themes ...

December 01, 2017

The majority of testers – 63 percent – are responsible for both API and UI testing, according to the State of Testing 2017 Survey conducted by SmartBear Software. With the growth of methodologies like Agile and DevOps, testing teams have been shrinking and the line between roles increasingly blending ...

November 29, 2017

Companies today face a digital dilemma. How can they understand and discern if their approach to transforming their company to meet today's digital consumer is the right one? ...

November 27, 2017

It has been argued that Dev and Ops teams should work more closely together for some time. For many, the benefits of a closer relationship are clear, and the debate has moved on from if to how, but for lots of companies there are several types of walls to tear down ...

Share this