by Jim Dwyer –
Successful customer engagement requires implementing quality features that the patient can leverage during visits coupled with the development and delivery velocity required to drive frequent non-episode updates and visit enhancements for the digital patient engagement platform.
2020 Healthcare – Supporting the Digital Patient Experience
A successful patient engagement app strategy leverages a mobile platform that brings the patient what they need when they need it. The platform must be both highly stable and yet constantly improving, advancing at a velocity comparable to what patients see in other applications on their phone – namely by their experience ordering from Amazon, getting a coffee from Starbucks, and traveling with an airline or hotel company.
This need for both quality AND speed is challenging with traditional methodologies and requires modernization of development and testing methodologies and leveraging automation.
Quality Engineering (QE) is the move from traditional Quality Assurance to a more proactive process than integrates software testing and development and leverages automation.
The Case for Quality and Speed
Successful patient engagement is an uphill battle for the modern healthcare system. The first challenge is simply standing out from the crowd in the mobile application space. As of the fourth quarter of 2019, the following number of apps were available on the Google, Apple, and Windows stores:
- Google – 2.57 million
- Apple – 1.84 million
- Windows – 670,000
And of these many apps, the most popular app category in the Apple store in November 2019 was games with 22.4%! Health and fitness apps are only the eighth most popular category and comprised a mere 3.3% of the Apple store.
At the device level, the average smartphone user has 80 apps on their device. Of these 80, only nine on average are used daily and only 30 are used monthly.
As a result, today’s providers face the “standing out” challenges of a) being in a store with millions of other apps, b) being in only the eighth most popular category, and c) working to create and maintain relevancy with the patient/customer as an app that is used more than the day of a visit.
With these high-level challenges as a backdrop, the patient engagement platform must simultaneously deliver rock-solid core reliability (quality) AND a continuous velocity of enhancements and new features (speed).
Quality Engineering (QE)
QE takes the concepts of quality and testing and validation beyond traditional testing teams and cycles and inserts them into the way product owners, developers and designers think about, develop and deploy software. QE transcends quality control, quality assurance, and testing to apply the benefits of those activities throughout the process of creating and supporting an app or product. In addition, QE applies advanced risk and business value analysis to testing and release management to ensure testing and QA at the appropriate places and of the correct value to avoid spending unnecessary time and money on ‘over-testing’. Finally, QE leverages modern test and deployment automation tools to incorporate QA and feedback as part of a continuous DevOps program.
QA alone cannot match the speed, persistence and thoroughness that Agile DevOps delivery requires (see RCG’s “Modern Quality Engineering for Agile and DevOps Delivery”).
Without implementing QE, development teams will not be successful in meeting the quality and speed requirements for successful patient engagement.
Quality Engineering ensures that quality is embraced early and enhanced at every step and not simply at the end of code development. QE undertakes end-to-end and architectural approaches for comprehensive software quality.
Risk and Business Value Analysis
In traditional QA approaches, testers start with completed requirements and aim to achieve “100% coverage” of all requirements and code paths. This often ends up meaning analyzing every button push on a UI page or exhaustively testing a huge matrix of possible outcomes in any analytical or transactional process. With a true Quality Engineering program in place though, Quality starts even before requirements are defined, looking at the business value and priority for each requirement. Quality Engineers ask questions to help quantify the risks of defects in various elements of a development program to ensure resources and analysis are focused on areas with the most customer impact, and the most business value in financial or reputational terms, and the greatest downside risk in case of defect.
Quality always has a cost. Historically in App Development, and currently in most healthcare areas, the approach is “no cost is too high – we must have 100% success”. But in the world of app development and customer engagement, today that is no longer true. Forget the cost of testing, the time it takes to achieve 100% test coverage means your app will not be available in time to support your customer – they will already have shifted to a competitor with a better experience. A quality engineering team helps product owners, developers and testers ensure that an app can be released in a timely fashion and with a level of quality the minimizes the risk of patient or business-critical defects.
Embedding Quality in the Development Process
Quality engineering helps reduce defects and speed the overall process by reducing or eliminating the separate “System Test”, “Integration Test”, “User Acceptance Test” phases, with their inevitable identification of issues that require a repetition of the development and test cycle for new bug-fixes. Instead, quality engineers work with teams throughout the process, starting with requirements, helping to ensure that the requirements are stated clearly, are understood universally by the team, are prioritized and valued appropriately, and are tracked against appropriately. This work continues through the development cycle, building tests and quality checks into the code creation. This is not the 2010’s buzzword of “test-driven development” – starting coding with tests helps not at all if the tests are not reflective of the requirements and business needs. Instead, quality infused development means that the true needs and priorities of the business and the customers are reflected in the tests and validations that are built in the code.
Even past the code creation phase of a program, quality engineering continues to engage the process. Continuous migration and deployment with built-in smoke tests and regression suites ensures that testing and validations are done on the apps and platforms as the customers will see them, unlike the old “QA environment” that was often out of synch with the development environment and may not even reflect the correct code base and customer use cases. And QE continues when the product is pushed to production and in the hands of the customers. Things like continuous customer feedback programs, interactive A/B (customer subset) testing, and phased roll-outs ensure that the assumptions made by designers and business owners are borne out by real customer experience… and corrects those assumptions when they are wrong.
QE and Process Automation
To develop applications at the velocity required by the market and with the quality required by healthcare, teams using quality engineering also apply new tools and technologies. Among the most valuable of these are Artificial Intelligence (AI) and Robotic Process Automation (RPA).
Successful QA programs have embraced automation for years, with automated regression testing and build/deploy/test suites. Quality Engineering uses the latest tools to extend and enhance that approach. AI helps evaluate code directly, assigning risk and cost values to various code paths and use cases and assisting test teams in focusing efforts to maximize the business value for the least cost. RPA tools allow teams to automate not just regression tests, but all kinds – including integration tests, deployment confirmation, environment validation, and configuration, and release management.
Quality engineers go well beyond the traditional tester’s brief by working with teams across a development program, creating and engineering rapid, automated testing, quality assurance, and verification into the fabric of the team operation.
Quality Has Always Been Critical for Providers – QE Extends It to IT and App Development
The goal to create a custom patient experience and build loyalty is a cornerstone for the modern healthcare enterprise. Forward-thinking providers will look for opportunities to further differentiate the patient experience and better compete in an ever-increasingly competitive marketplace.
They will aggressively build out the customized digital experience patients have wanted for years, offering price transparency coupled with self-service convenience in areas such as scheduling, check-in, and bill payment.
These kinds of initiatives will require the use of Quality Engineering, including new tools like Artificial Intelligence (AI) and Robotic Process Automation (RPA) tools. Unfortunately, many providers are just now looking at developing proofs of concept around these approaches and are yet to look at using them to embed quality within all aspects of the App and product development cycle!
How can we as providers justify the ever-advancing complexity in our patient-facing experience and the use of advanced technologies without investing in the tools and processes to improve app quality?
Winning Patient Engagement
Patient engagement opportunities for improvement include a host of potential functions required to both improve the patient visit and experience.
The strategic goal is to rapidly deploy quality enhancements is to build patient loyalty.
The traditional define-design-develop-test-deploy approaches are too slow to meet the heightened expectations of today’s patients. Immediately implementing Quality Engineering helps organizations win patient engagement with quality AND speed.