The New Model for Testing in the Modern Software Factory
The New Model for Testing Calls for a Shift in Thinking
Paul Gerrard, test consultant and founder of Gerrard Consulting, introduced The New Model for Testing, describing how we should be thinking differently about software testing in this new world of the Modern Software Factory. And how we should shift left requirements engineering and design to address the damaging impact of defects and rework stemming from ambiguous or incomplete requirements. More specifically, Paul cites that this new model for testing calls for “attempting to identify the distinct thought processes involved in exploring sources of knowledge and the system under test and to scope, design and select meaningful and valuable tests of systems.”
Testing is mostly a thinking activity
Understanding the underlying thought process of testing, the logic behind requirements engineering and modeling, and why or how the thought processes used by testers and developers are almost the same – are all important cognitive aspects of testing overall.
So, what we need is a new model for testing, which is not complicated by the logistics of testing and therefore is independent of any tools, documentation, processes (Agile, Waterfall, DevOps) and the business you work in.
Requirements Engineering and Modeling
Test teams work with models all the time. These models or “sources of knowledge” from users include interviews, requirements, user stories and so on. Developers more specifically, include architecture diagrams, flowcharts and others. Testers build test models that are used to inform testing and can be refined as we learn more about the system under test. Testers often make multiple models to test different aspects of a system. Models can be adjusted as we learn more from new facts about the system we’re testing. In the image (below) you can see how this all this thinking comes together starting from sources of knowledge on the left to application of tests and reporting of outcomes on the right.
You may also want to read Paul’s paper, Models at Heart, where he sets out the fundamental role that requirements engineering and modeling plays in testing. Paul makes a distinction between the quality of the model and the quality of the knowledge of the user’s desired functionality. Even with unambiguous models, the quality of software still ultimately depends on what ‘goes in’. If incomplete or incorrect knowledge goes into the model, testing will suffer and software at variance with the user’s desired experience will come out.
Getting Started with Requirements Engineering and Modeling
Championing the New Model of Testing, we have teamed up with Paul Gerrard to produce a series of videos to help users to understand how requirements engineering and modeling can help them shift left testing. Watch this video (below) to see more about The new Model for Testing.
To try CA Agile Requirements Designer for yourself, please download the free 30-day trial.