Testing
BLOG
QUALITY ENGINEERING & TESTING

How Model Based Testing Benefits the End-user

What Do Clients and End-users Want?

To get to the bottom of why Model Based Testing is so important, we need to first look at what our clients and their personnel, the enterprise app end-users, are looking for. Their primary concerns are that the app is intuitive and easy to use; doesn’t contain frustrating glitches that slow them down and makes them miserable; enables them to be more productive; supports multiple platforms; and delivers a measurable ROI. If we trace these qualities back to their origin, they all start and end with fast, efficient testing throughout the SDLC.

Why Do We Need Model Based Testing?

Hanging around waiting for test data is one of the biggest causes of wasted time for testers. Another major challenge is the creation of ambiguous Requirements that lack sufficient detail or are frequently being changed late in the day and stored in a static format that can’t be updated automatically or integrated in real time. This leads to poor quality tests cases, delays test design and results in sub-par code. In this instance, testing is therefore not being performed in alignment with development, so its harder to determine test and automation coverage. Bugs are either found late in the cycle, when making changes is way more expensive, or worse, more bugs are going into live and into the hands of the end-user.  

This ad hoc “spray and pray” approach paints a pretty chaotic picture doesn’t it? What we really want is a more paint by numbers approach, rather than the melting chaos of a Salvador Dali. Thankfully Model Based Testing will go a long way to solving these issues and keeping our end-users happy!

How Does Model Based Testing Work?

Model based testing, models system requirements and expected behaviour to enable the automatic generation and acceleration of test procedures with a single model being capable of generating multiple test cases.  It enables developers and testers to work together to prioritise, strategise and predict what is essential to test and when, as testing everything in the given time frame isn’t feasible. In this way it also aids communication and collaboration in Agile cross-functional teams. Models can take the form of, for example. flow diagrams, decision tables and classification trees. The level of automation they bring means we can do more, with less, more quickly, saving both time and costs. It increases flexibility, reduces test suite maintenance and builds in quality at every stage of the SDLC.

Harder, Better, Faster, Stronger

Yes, it’s a Daft Punk lyric, but it’ very applicable to the discussion at hand!

Of course, there are challenges with Model Based Testing in that it requires a lot of upfront work in order to save time and costs, later down the line, across multiple projects and portfolios. It also requires significant upskilling with a steep learning curve and you need developers who understand testing and vice versa. It is also challenging to build a model that all those involved across the SDLC understand.

That said, the benefits to end-users far outweigh the initial challenges. By reinforcing the concept that QA should be built in from discovery onwards, it enables earliest bug detection in design and spec meaning fewer bugs in development and live. The increased automation frees up testers to do other mission critical work and means that better software gets into the hands of the end-user faster. It also simplifies testing and makes it more accurate and, all of these factors make testing a more enjoyable career choice! We all know that happier workers are more productive, and Model Based Testing adds value all the way through the development chain from the testers and developers making the software, to the clients and their teams who are using it on a daily basis.

  • Sogeti UK
    Sogeti UK
    Make an enquiry
    0330 588 8000