Shiftleft Testing

Software Development Life Cycle with ShiftLeft

Many of you are aware of the above Software Development Life Cycle and you can see that things are moving from left to right. As you can understand the testing phase comes late in the life cycle.

Why do we need to test early?

  • blocker; when you test late in the life cycle, testing becomes a blocker.
  • bugs; catching bugs late in the cycle is costly.
  • quality; yes, by testing late you are compromising the quality.
  • maintenance; due to late and last minute changes, maintenance is going to be costly.

What is happening?

I have personally seen in many places that testing is underestimated and always looked up at last. This eventually costs the organisation and the client dissatisfaction. Organisations mostly look to start with development activities and only when they have an MVP or a working product start to think about testing. But it is too late!

How to inject testing at all stages?

Testing in all stages

It is easier to say than done. Lets take each stage,

  • Requirements gathering; this is the earliest opportunity to get to know the customer profiles and the features we are going to develop. from a quality perspective someone has to work with business to understand the requirements better(by examples). Well you can catch the issues at this stage too!
  • Design; this is when the architects and developers worktogether to design the system or service. engaging at this stage helps the QA person to understand & challenge the design and also inject the culutre of testability.
  • Development; now the developers started writing the code. We can follow TDD like practice to ensure the requirements are met with quality.
  • Deployment; and finally we can ensure the quality is met at the operations which is one the least looked at area from the quality perspective.

So, how good will look like?

The above is one example of how good will looks like. As you can see the testing is done at each and every stage to ensure high quality and avoids testing becomes a blocker. Through all these checks, we will be able to catch the issues early in the cycle where the cost to fix issue is cheaper and eventually it leads to better quality & a happy customer!

Leave a comment