How can Quality Engineering help with digital transformation?

Long read

According to a recent study, 92 percent of consumers would stop a relationship with a company after three negative customer service experiences. This means that even if a customer had a sincere connection with a company, they wouldn’t continue that relationship if customer service wasn’t up to par.

Most customers interact with companies digitally, leading more and more companies to develop complete digital transformations to meet consumer needs. Specifically, customers expect more than ever before when interacting with companies digitally. Consumers want quality apps, they want them rolled out quickly, and they want them to be functional on an ever-increasing number of platforms and versions.

Traditionally, developers have tried to account for customer experience (CX) by testing apps on a huge array of operating systems, devices, and platforms. However, this isn’t the most efficient way to ensure an app’s functionality. Instead, Quality Engineering (QE) focuses on developing quality throughout the entire development process.

How does this differ from the traditional software development models?

Previous Iterations of Quality Engineering

In older models, the focus on the quality of the product typically takes place after the software has already been completed. During the designing, prototyping, and building stages, quality is, at best, not focused on, or, at worst, ignored.

The problem with this method is, of course, that it’s much more difficult – or even impossible – to account for quality so long after the fact. By integrating QE into all stages of development, testing isn’t the only time when changes can be made to a product.

In streamlining a digital transformation, focusing on QE at all stages of development can ensure a more consistently-functional product.

According to the Gartner report, ensuring the quality of Solutions or Features developed is one of the main challenges in global organizations.

Top Challenges in global organizations

Here are our five tips to meet customers’ expectations through business transformations:

1. Understand the unique vision of the business owner.

There is no one-size-fits-all standard for QE. This is, of course, because no business is the same as any other. Each one has different objectives, as well as unique metrics for determining CX. So, in order to ensure QE in a digital transformation, companies need to first identify both the objectives of the transformation, as well as the measures used for identifying CX.

2. Identify the performance metrics that are most representative of CX.

After understanding what a company is looking for in a digital transformation, QE teams should run a variety of tests, including security, accessibility, functional, and non-functional tests. All of these tests provide more accurate information about how changes in business goals correlate with CX.

Further, QE teams would be wise to develop metrics that measure CX in comparison to similar apps on the market. For example, what CX factors would make an end-user choose a particular app over another? Specifically, these metrics can continue monitoring CX on a company’s digital environment, while also keeping abreast of customer expectations and app development in the industry at large.

3. Test throughout the entire development pipeline.

In QE, all the stages of development and deployment should be broken into their component parts. Specifically, this is necessary so that testing can take place at multiple development points where problems may arise. From there, development teams can identify where to remedy issues before they continue building, as this continued build simply exacerbates the problem.

4. Create automation techniques in communication with other teams.

Automation can continue providing relevant information about behavioral data and consumer responses. Specifically, user inflow, time spent, bounce rates, and other types of automatically-collected information can be connected to conversion rates and other relevant CX statistics.

At the same time, the QE team should be able to 1) collaborate with the development team to write code that integrates with frameworks, development tools, and technologies, and 2) scale QE across different environments.

One of the examples of how it can be done is Salecto case study. Salecto Aps is a Danish company that deals with e-commerce and webshop development. Salecto turned to Ciklum to prepare a solution to guarantee flawless performance of the Salecto platform during high loads on Black Friday and other holiday peaks. Implementation of client-side performance testing enabled identification of bottlenecks (HTML/CSS/JS/Images/Rendering/Cache, etc.).

Performance testing framework (server- and client-side) was implemented and integrated into CI on the Client’s infrastructure. This enables running of load tests independently from the performance services provider.

“The optimizations helped us improve the general performance of our platform, and it helped us ensure Zero-downtime during the busiest day of the year, Black Friday. The work further helped us to ensure a zero-downtime Christmas sale for all our customers”, said Daniel Skov Jacobsen, CTO at Salecto Aps.

5. Develop plans for code revision and incident reporting.

As mentioned before, QE teams should have plans in place for fixing bugs and shifting processes from the start of a digital transformation. Specifically, the team should be able to understand the code well enough to make suggestions and should be able to rewrite code errors themselves. The question should be: If there is a critical issue at a certain point, what changes should be made to correct it?

At the same time, the QE team shouldn’t be responsible for correcting every issue they may discover. Instead, they need to have strong relationships with other teams that can correct errors. To this end, QE teams should be able to write careful incident reports that give other teams enough information to correct problems.

Continuous Engineering approach for Metro Markets

At its most basic, QE in digital transformations creates checks and balances in the design process throughout development, rather than after the fact. These processes ensure a smoother roll-out, as well as making sure that time isn’t wasted backtracking to make spur-of-the-moment fixes.

Written by Oleksandr Maidaniuk, Quality Engineering Director at Ciklum