Of the various emerging trends in the 21st century that impact businesses, digitalization is projected to have one of the most profound and lasting impacts. Software systems are built with an entirely new philosophy of ‘enhancing user experiences’ in contrast to the erstwhile objective of automating business operations. This radical change in the IT vision and mission has led to re-inventing decades-old practices of how IT systems are designed, developed, and tested before they see the light of the day.
The realities of digitalization have been made possible by the amalgamation of various technologies used to be referred as SMAC—Social, Mobility, Analytics, and Cloud. These constituted the emerging set of technologies not so long ago, but interestingly this very definition has been undergoing rapid change every couple of years in the recent past with the emergence of IOT, Big Data, AI/ML, and of course the proliferation of BOTS.
Highlighted below is a view on the critical elements of a quality engineering strategy, required to comprehensively test the various functional and non-functional risks in digital transformation initiatives.
Characterizing Digital Transformation Initiatives
Before designing the test strategy for a digital implementation, it is critical to understand the characteristics of a digital transformation initiative and quality ‘risks’ to design a holistic test approach that helps minimize defect leakage and ensure end user experience.
- Multi-channel user engagement – Applications are designed for both Web and Mobile devices, with the ability to initiate and complete a business transaction seamlessly across channels (online, in-store, curb-side etc.)
- Personalization – Individual customer preferences are analyzed using historical user data and social media interactions to create and render personalized content to end users
- User experience – Design thinking plays a vital role in implementing a user-centric design to applications and products, resulting in a much easier and intuitive application usage for both able and disabled users
- Non-functional risks – Have gained all the more prominence with increasing usage of mobile devices, on the move, from remote locations and in varying network conditions
- Agility – Going to market early by launching a minimum viable product and then enhancing the product features iteratively is a fundamental practice adopted in digital implementations
Imperatives of a Holistic Digital Assurance Strategy
The entire function of ensuring production and user readiness for a digital system has undergone a paradigm shift already and will continue to evolve rapidly in the years to come. Digital Assurance needs to focus on Experience, Content, Usability, Accessibility, and Compatibility.
- The primary objective of testing digital implementations has changed from validating expected results to assuring human experiences. End-to-end tests are designed based on user journeys rather than limiting to business requirements.
- The entire lifecycle of content needs to be validated, from how the content is created and personalized, to whether the content rights are appropriately managed and whether the content is compatible with the various devices, OS, browsers etc.
- A broader range of non-functional quality risks have emerged, warranting increased focus on non-functional testing beyond just system performance. User experience is truly validated when the usability is measured in terms of satisfaction quotient and ensuring the system is accessible by differently-abled users.
- Creating and managing test data becomes all the more complex when testing intelligent apps which require vast and varied sets of training/sampling/reference data to ensure the systems are trained and tested at the same time for real world scenarios
- Time to market imperatives of digital programs necessitate a continuous engineering-driven testing strategy than the conventional assurance focus. Besides shifting left, test strategies should equally shift right into the production environment analyzing production incidents and real user monitoring data to draw insights to fine tune the test scenarios. Traditional test automation approach covering only regression test cases is passé. Rather Automate First as a strategy can eliminate manual testing tasks to reduce test cycle times and maximize test coverage within the Sprint.
- Test environments include an added dimension of various devices with realistic network conditions, simulating user behavior and device access patterns.
To implement all these key testing practices for digitalization initiatives, the traditional application and system test skill sets will not suffice. Quality ‘engineers’ with development expertise and a testing mindset is essential to successfully drive Digital Assurance programs.
This is just the beginning of ‘Industry 4.0’ and the future will be more exciting than ever with virtually every transaction in our daily lives across retail, banking, healthcare et al becoming a ‘smart/intelligent’ experience, with the advent of AR/VR, Robotics, BlockChain, 3D printing, and so on.