Companies following Agile development practices intend to test often and have frequent releases. But sometimes, you can’t: For example, if you are part of a large enterprise with complex web applications using for example service-oriented architecture combined with legacy systems. Another problem is that the majority of testing is usually done once features are completed, after SIT (System Integration Test) and UAT (acceptance test). You can almost never test the quality of a system.
Then, the time spending at the end of a cycle testing and bug fixing is going to be bigger than it could have been if you had found and resolved the issues earlier in the Software Lifecycle. Studies shows that it’s a lot more expensive to fix a defect found once it has been released.
The shift left concept brings a concret solution. It tells you what can be done to improve overall quality and at the same time accelerate release cycles. The intention is to bring new services to market faster, drive growth and/or maintain competitive edge.
The goal of this methodology is to shift as much of the testing prior to release (to the left, during construction) and catch errors earlier in the software development lifecycle.
To achieve this:
- Create automated and continuous test through all quality stages
- Have a single version of the truth for the quality of your deliverable
- Create and run automation as a part of the development process
- Ensure governance of your testing end to end.