Micro Focus is now part of OpenText. Learn more >

You are here

You are here

Why software development needs to shift up (not left or right)

public://pictures/egghs.jpg
Michael Giacometti Director of Technical Services, Eggplant
 

Over the last decade, QA has moved from the periphery to become a priority for every business that produces software and apps. This focus has sparked much debate about whether development and testing should shift left or right. But both of these approaches fail to take into account how a customer uses the product. It's time for a new shift.

It is critical that teams now focus on their customers and on meeting their expectations and needs. For example, a banking app may meet all QA criteria, but if it requires customers to continually add in their account details before they can access their account, they will quickly lose patience, stop using the app, and move to a competitor.

Shift-left argues for testing earlier in the lifecycle, while shift-right is about moving closer to production and testing, and monitoring applications. Incorporating these techniques can help save significant time and money and increase project efficiency. Both are great if you are concerned only with releasing flawless software quickly; however, that is now considered the norm by your customers.

Today's customers expect software that satisfies their physical, mental, and emotional needs. As such, software development is no longer simply about meeting established QA and IT metrics. Rather, it's about engaging with customers with the dual goals of delighting them and positively affecting business outcomes in the process.

Doing this requires that your testing shift up, focusing on understanding and meeting customer needs. To do this, test teams must embrace AI-driven testing.

Shift-up is about the relationship between how your business performs and how your customer interacts with your business. This is where test teams need to focus their efforts, rather than just focusing on code compliance.

Why we need to shift up

The digital world is rapidly changing the way organizations and customers interact with each other. Today, people no longer adapt to technologies—the expectation is that the technology will adapt to the individual.

These dynamics, coupled with the always-on mentality, mean that you must rethink how you define and deliver QA in a digital world. In addition to understanding the customer's needs, you must know if the organization building the application wants a transactional or ongoing relationship with the customer.

These requirements cannot be solved by shifting left or shifting right. For example, neither takes into account the mental state or physical abilities of different types of people. Not everyone can perform the same tasks easily or in the exact manner that the software requires.

The shift-up mantra

The premise behind shift-up is simple: Listen, advocate, and account for your customer. Put simply, it's about thinking of yourself as a customer. By shifting up, you ensure that your software and apps truly meet customer and business expectations, and avoid production failures.

Shifting up is about looking up from your focus on getting further left in the IT value chain, or on shifting right and getting the application to production faster. Of course, defects, test automation, test coverage, and quality gates are still important, but shifting up requires that companies look at people, process, and tools from a fresh perspective.

You can find tools that validate against UI standards. There are companies that find people with a specific target demographic and have them test against an application, pre-release. However, neither of these approaches simulates actual user behavior in the field. For that, you need to integrate machine learning, AI, and cognitive computing into the mix.

The ability to simulate real user interactions, behaviors, and emotions is critical. Not only does this help organizations build appealing software, but it also helps move QA to the boardroom—where new strategies can be simulated to determine if changes will create the desired business outcome.

AI-driven testing: The key to shifting up

Automation has fundamentally changed the enterprise, and established test management tools should be buried once and for all. With traditional test automation tools, there is always a gap between what is tested, what needs to be tested, and what is considered done.

The introduction of DevOps and CI/CD resulted in the test management tool adding an unnecessary layer of complexity that slowed down the release process.

Testing in our hyper-connected digital world necessitates that teams cover a vast number of permutations and technologies while budgets remain stagnant. This is where AI-driven testing takes center stage. AI in QA is like a test manager on steroids who can analyze internal and external factors, choose the test cases that are the most relevant to those factors, and execute them exponentially faster than any human.

The AI-testing engine is the foundation out of which supporting tools—including automated testing tools, test data management tools, defect tracking tools, and user monitoring tools—can be continually and seamlessly integrated.

The benefits of deploying AI-driven testing

Here are some reasons to incorporate AI testing tools into your shop:

  • They build on established QA norms and best practices, rather than starting from scratch.
  • These tools are device-agnostic and can test cross-platform, cross-browser, and cross-technology to provide a seamless end-to-end testing experience.
  • They leverage traditional testing key performance indicators such as requirements, test, and defect coverage, and combine them with external factors to test precisely how your customer will use the product, rather than merely checking that the code works.
  • An AI engine can rapidly identify the riskiest parts of your application, assemble automated test cases to exercise them, and report the pass or fail of such actions much faster than can any human or legacy automation technology.

The AI engine works with your software and applications to ensure that you not only have an acceptable level of quality, but that your product will delight your customer. The ability to integrate AI with technologies and platforms is what makes shift-up possible. Without AI you simply can't shift up.

The shift-up difference

Many organizations with which we have worked have already recognized the need to shift up and rethink their test strategies. Below is an example of a current client, a major publishing company responsible for multiple print and digital publications delivered to subscribers around the world, that has benefited from a shift-up approach.

A major publishing company responsible for multiple print and digital publications delivered to subscribers around the world needed a new approach to QA. It wanted to offer self-service features to its readers, as well as customize offers based on reading habits and locales. The system needed to be elastic enough to quickly and seamlessly add new offerings.

This required a way to test builds with new and updated security features—alongside performance testing of the site and digital content access—in a non-invasive manner. By deploying an AI-driven test engine, the company increased test execution by 300% and conducted long-term testing across multiple platforms, channels, and technologies. Optimizing the site resulted in improvements in revenue and in customer acquisition and retention.

As this example underscores, there are significant and immediate benefits from adopting a shift-up QA strategy.

Shifting up is not a fad, but an essential approach that will help ensure that software delights your customers. Software that functions correctly and is designed according to the best technical and business requirements can still negatively affect revenue, branding, and competitive position.

By adopting a shift-up mindset and embracing AI-driven testing on top of a solid QA foundation, you will support the needs of both the customer and the business—thereby delivering a competitive advantage. Remember, the customer is right—every one of them.

Read more articles about: App Dev & TestingTesting