Why should we test in the design phase? How should we go about it?

Melissa Fisher
2 min readFeb 17, 2024

--

Recently I reflected on how to explain to someone else about why software testers need to be involved in the design phase and secondly, if they are involved in the design phase, how should they go about it? I’ve done some googling and learned from others, but I haven’t found quite what I’m looking for.

I’ve written a lot of things on my blog about getting involved early and also, taken note of lots of things in the testing community around testing requirements. What about testing in the design phase? I have seen that yes, we should be included there and test the ideas, but why?

The easiest way I can explain is that rubbish can be dumped into a river at any point. If you are just sitting at a hut watching the river flow past looking for rubbish, then you see it at one point, where you are sitting. Not actually where the problem got thrown into the river. See Previous blog post on sitting in a hut and assessing the river. So you should test in the design phase to see if any problems are getting chucked in at that stage.

In the design phase what we are doing is testing the concept. The shape that an idea is forming into.

Here are some questions I have formulated.

  • How easy can we implement the design? Thinking about speed and costing. You should ask this question as sometimes they create a design that does not consider how long (speed) or how much (cost). There might be a simpler design that saves time/money.
  • Is the design <enter a characteristic, such as secure, performance, accessible, usable, resilient etc>? You should ask this question as sometimes they do not think about characteristics, such as security, early enough e.g. data needs to be encrypted between two systems. They should think about this before even a line of code is written!
  • Is the design feasible? e.g. do we have what we need to develop it? Does the tech exist? You should ask this question as sometimes they do not think about how they will develop. e.g. people with the right skillset, or technology.
  • Does the design create technical debt? You should ask this question as sometimes the design creates technical debt meaning that they take short cuts that could possibly make it harder to maintain in the future.

What questions would you use to help others test in the design phase? What problems have you found in the design phase? Paste in comments below :)

--

--

Melissa Fisher

Thinking outside the box and disrupting people's thinking.