Part 3: The influence of Machine Learning
The influence and impact of Machine Learning and eventually Artificial Intelligence will be the single biggest global technological phenomenon we will experience in our lifetime. This will completely transform our lives to a point where they will be radically and irrevocably altered and become incomparable to our lives today. Some people refer to it as ‘Singularity’.
The influence of Machine Learning cannot be overstated. It’s a critical component of IoT, smart cities and autonomous transport. It will underpin all future technology-based advancement. This is the next key step in the evolution of automation and autonomous systems. This will become the basis for smart homes and cities and the introduction of autonomous transport.
Impact on Testing
Emerging roles such as Data Scientist and Data Engineer will become more prevalent and the skills will be a blend of mathematics, statistical analysis and knowledge of database interrogation and scripting languages. These will be combined to assess, categorise, validate and present findings and recommendations on the data. These will be augmented by industry knowledge and business strategy awareness to help inform on key trends and decisions. Those with advanced programming skills may become involved in using machine-learning algorithms to increase the efficiency of the data analysis and pattern identification. This may extend to creating new algorithms to solve data-related business problems and building new tools and frameworks to automate this work.
Machine Learning and Robotic Process Automation will become the foundation for an autonomous systems landscape where there is very little human intervention. Automation will run our lives. Test engineers will need to design and build the test automation to validate the Machine Learning algorithms.
Manual testing of basic business functions will disappear and intelligent automation will consume this role. Manual testing does not completely disappear, but will instead focus on complex transactions and on the human or user-centric elements such as usability and accessibility, putting themselves into the shoes of the customer. To achieve this, testers will do more testing with Augmented and Virtual Reality and will have to become familiar with new test approaches for embedded software and wearables. Test engineers will be testing using sensors which won’t have a user interface of their own, resulting in a return to emulation software to interact and validate the sensors.
The combined impact
Combining the impact of IoT, Big Data and Machine Learning will result in a divergence of skills (one path focusing on engineering and the other on user-centric).
At the same time, these key influencers will trigger a convergence of focus for testing; physical and digital merging, process and automation, hardware and software, user and system resulting in test engineers working more closely with their non-engineer counterparts. Instead of test engineers working separately to automate functional tests previously created by manual testers, they will work together to create behaviour-driven test automation combining their programming skills with usability and accessibility perspectives.
The increase in complexity will drive up the technical and engineering skill sets that are required. Test engineers will deal with greater diversity, more integration and interoperability than they have experienced to date. At the same time, the increased importance of customer/user experience will see user-centric skills grow in demand.
The fundamentals of Testing – why, what and how
Why we test
The fundamental reasons why we test – such as risk mitigation, fit for purpose, legal and compliance, health and safety critical, great customer experience, secure and reliable, confirming business objectives – will continue to be important.
What we test
The things we test will continue to change. However the rate of change will accelerate rapidly and the scope of change will radically expand and diversify.
How we test
In line with the ever-changing scope and pace of change, we will see the focus of how we test also change. The approach, technology and the tools we use to assist us will also continually evolve to keep up. Testers will have to be highly adaptable. Testers will have to learn to experiment with all kinds of tools and technologies in order to put ourselves in the minds and bodies of customers and users.
The ‘human’ experience becomes the key focus. Understanding and testing to mitigate negative impacts on our personal lives replaces the testing of system functions as these will be done through automation. Gathering anecdotal and empirical evidence of how users feel about a product or service will be the core for improving or redesigning solutions. This will see test engineers working very closely with user-centric testers to ensure a balanced perspective on fast, efficient integrated functions that deliver a rich and fulfilling user experience. Test engineers will evolve to developing test engineered solutions, taking them closer to a development type of role.
To mitigate the risks and ensure things are fit for purpose and provide a rich customer experience, we’ll step outside of the world of systems and applications and extend our skills with User Stories, Customer Journey and Empathy Mapping, Usability, Accessibility, User Research and Safety Critical using technologies like Augmented and Virtual Reality, Holographic Technology, Wearables, Sensors and Embedded Software to execute human experience-focused tests.
New solutions will be designed and developed based on human behaviour and through the evolution and influence of IoT, Big Data and Machine Learning. The boundaries between the physical and digital worlds will disappear resulting in us becoming an integral part of the system.
Every action we take and every decision we make will be captured and eventually automated. The evolution of testing will result in a profound shift, extending from the professional to the personal fabric of our lives. Testers will not become obsolete. In fact, the opposite is true. More specialist roles will be established and test engineering will move closer to development and non-engineers will focus on the human-centric experience.
The future of IT will be defined by its focus on improving customer service and delivering a fully integrated and automated user experience. The result being that automation will run our lives. The future of testing has never looked so diverse and exciting. The following diagrams provide a glimpse into the new skills and roles as a result of these three influences…
I’ve only touched on three key influencers and described a significant amount of complexity, impact and change. Just imagine how big the impact and change will be from all many other influencers on the world of IT and Testing!