Agile Tips

#68-Shift left - Conclusions

Scott L. Bain

This week I will wrap up the notion of Shift Left, and introduce the next topic for this podcast.

Shift Left - Conclusions 

When I first heard the term “Shift Left”, I assumed that it meant to detect and correct defects in a product as early as possible. That seemed in concert with the whole notion of Test-Driven-Development, which is something I have believed in for some time now, and so I felt that I had a good grasp of what Shift Left was getting at. 

However, just as Test-Driven-Development is only tangentially about testing, Shift Left is only tangentially about the detection of defects. What I mean by tangential is that these policies do help to prevent defects and to detect them early with tests, but they do much more than that. 

Test-Driven-Development is really about the creation of a specification of behavior that is accurate, precise, and complete before the work to create the product has been done.  Such a specification will be shared, if the process is collaborative, and can be validated at any point in the future because the tests it produces are executable against the system both now and in the future. 

Shift Left, which is nominally about detecting defects as early as possible in the development process, actually accomplishes a separation of concerns that improves the intellectual process that drives product development overall.

In the planning phase where analysis of requirements is conducted, Shift Left promotes the notion of collaborative analysis through such tools as commonality-variability analysis and acceptance testing. Prior to the adoption of shift left in many organizations, I had found resistance to the notion of acceptance testing by those who did not consider themselves to be experts in testing. Also, product owners and project managers did not seem to understand that domain and product analysis were critical parts of their jobs, and something they had valuable expertise in. Shift Left told them otherwise. 

When designing and then ultimately implementing a solution, which is typically done by developers, the notion of analysis and testing seemed similarly outside of their purview. This dissuaded those creating the product from asking critical questions about it like:

  • Why are we doing it this way?
  • Why does the business want this? 
  • What other options exist?


… and so forth. They were encouraged to see these questions as above their pay grade, which is a big mistake. It's one of the major reasons that skilled developers create beautiful systems that have very little business value because they are essentially the wrong product.   Shift Left elicits those questions from the outset.

Before Shift Left, in many organizations that I have consulted with, those that integrate and ultimately test the system saw the development effort as a source of frustration and an overwhelming workload. Now, in those same organizations, the integrators and testers see the development team as a source of useful unit tests, and as collaborators right from the outset. 

Marketing and salespeople have traditionally felt the burden of trying to communicate about and sell products that were poorly defined, poorly documented, and not quite right for most of their customer base. Shift Left fundamentally alters this relationship to be one, again, of collaboration and communication. It gives the sense that everyone is pulling in the same direction, has the same goals, and contributes to the success of everyone on the team. 

Finally, and ultimately, the proof is in the pudding. Shift Left produces better products, products that serve our customers better, and allow them to serve their customers better. It is an example of how attention to quality contributes fundamentally to our culture, our economy, and the sense of purpose in our lives. 

Shift Left and Test-Driven-Development represent an acknowledgment of the value of collaboration and communication among the human beings that create products. But where will artificial intelligence fit into this picture? That's the next topic that I want to address.

See you next week!