Beating the Bug: Responding to Tech Failures
Over the years we’ve all seen that the idea behind a software doesn’t guarantee its success. Its fate is very much dependent on how well the overall experience is and whether it’s functioning the way it was supposed to under all circumstances. Software solutions are meant to make life easier as opposed to creating more potholes along the road. So, what we need today is a solution that not only eliminates business risks but also reduces the cost of quality.
Let’s take Google Photos for example. While I am not a photographer, I am quite a vacationist and as we all know holidays today demand proof in the form of photos. As you all know, Google came up with a breakthrough idea that made life easier for photo-hoarders like me by creating a photo-managing software. The USP of this software was its facial recognition tool which was designed to save time that was spent in categorizing photos while uploading them to social media. However, this turned into a nightmarish reality for Google when two African-American men were mistakenly categorized as gorillas by the software. BAM! This went viral, and allegations of racial discrimination floated all over the internet. Soon, however, accusations of downright racism were silenced when it was found that a few white men were mistaken for seals and dogs. Google was quick in fixing the issue. Overnight, if the reports to be believed.
In the recent past, I encountered yet another experience that emphasized on the need of Quality Assurance. My colleague tried to book international airline tickets through a renowned booking portal. He struggled with basic functionality but tried a few times because the promotional offer was great. In the end, he lost patience and booked it through another portal, though he would have preferred not to switch. It made me wonder how many users must have switched to other portals during this period?
So, what might have caused a technology driven company to struggle with the basics? Was it incorrect QA practices? Or the inability to keep up with the release cycles? Or the lack of automation? Whatever the reason may have been, it didn’t just cost the company the failure of a worthwhile product but also got them heaps of negative publicity. All of this, perhaps indirectly leading to a gigantic loss of revenue and a stain on the image they took years to polish.
The reality is, users today expect not just elegant but very sophisticated solutions. They are spoilt for choices. If one solution doesn’t work to their satisfaction, an alternative is always available. The risk of losing a user is very high. Now, sophistication comes only after triumphing over complexity. What seems like a trivial problem could be something very complex to fix. Quick turnaround time in fixing is equally crucial as prevention of such issues.
Let’s look at how we can overcome these unforeseen challenges. Here’s what I’ve seen some fast-moving organizations do to reduce such business risks significantly:
Anticipate failures and prepare the organization for a fast turnaround:
- An ability to understand the problem, reproduce it and to come up with a quick fix is critical for healthy functioning. It is important to ensure that there are no side-effects and a mechanism to roll it out must exist.
- As you can see, there is a lot that goes into this process. Time is a major constraint. The preparedness in regard with the anticipation of failure is what separates good companies from great companies.
- The maturity of your QA processes and automation is yet another critical factor. Right from regression test bucket to risk-based prioritization of test cases to code coverage to Devops pipeline automation- each step plays a vital role.
Build an efficient QA mindset- Think automation right from the requirement stage:
- QA mindset should be instilled in the development and even at requirement definition stage to make Quality Assurance more manageable and meaningful.
- Organizations should promote and drive meaningful partnerships between QA and other teams/functions by tying issues that are detected and reported to customer dissatisfaction or lost revenue.
Build culture of elegance – Elegant products have a lot to do with culture:
- User experience – even in case of failures, defines the overall reaction of the users. Will they be sympathetic or angry?
- Make user experience and its impact an integral part of the QA metrics, in addition to direct impacts like effort, schedule & working functionality.
The deciding factor that makes a product ‘Technological’ or ‘Tech-NO-Logical’ rests in the hands of an organization’s QA mindset. Not only does their work impact revenue, but it also has the power to either build or crumble the brand image. And not forgetting, it can make perfectly sculpted humans look like monkeys and seals too!