Shift Left Testing – What does it mean?
By: Matt Angerer
Who would have imagined that Beyoncé Knowles, one of the world’s most recognized artists, could speak directly to software quality professionals with her #1 hit “Irreplaceable.” On my drive to a client site this morning in Denver, Colorado – Beyonce’s hit song came across my radio station. The first thing I heard when I flipped it on the R&B station was her belting the lyrics, “to the left, to the left!” Suddenly, it hit me. Everyone keeps telling us that we have to “shift left” to lower costs, reduce defects, and improve software quality. The problem is that people keep talking, but nobody provides the fundamental tactics of accomplishing just that – shifting to the left.
Far too frequently, software testing is one of the last matters addressed in the development lifecycle. This approach can result in any number of issues, including increased development costs, failure to deliver software on time, and business losses when software quality fails to meet necessary standards. As a software quality professional, you already know it costs 50x more to fix a defect if its allowed into your production environment.
Shifting left essentially means moving testing to the left in the software delivery lifecycle. Rather than conducting testing at the end of the delivery lifecycle, which has traditionally been the case, testing is instead conducted during the early stages. In a nutshell, you iteratively test smaller samples of your code base, further upstream. By testing early and often, a shift left can help to prevent a number of different issues that arise when testing is conducted later in the development lifecycle.
Eliminating Developmental Problems with Shift-Left Testing
One of the most common problems is that design defects and architectural issues cannot be identified without a tremendous amount of effort. With shift-left testing, it becomes possible to maximize resources by uncovering such defects as early in the development process as possible. So, how do you do it? Here are 3 tips:
- Introduce a level of “static testing” into your requirements management process. Ronald Regan also had a 1-liner that solidifies the need for static testing further upstream: “trust, but verify.” Never allow your requirements to move into the design phase without another set of eyes reviewing every aspect of that requirement to ensure its validity.
- Consider using Business Process Modeling tools from platforms like HP ALM. Why? Well, some people are visual and others like to read. If you’re gleaning anything worthwhile from this article, it’s obvious you like to read. Others would rather look at boxes with lines. From those boxes, they could click to create a requirement and then click again to create a test case shell. Advanced business process modeling tools help appease all sorts of intellects within your organization!
- Don’t discount the value of virtualization tools like HP Service Virtualization. Paired tightly with HP ALM and HP UFT, this tool can help you simulate end-to-end partner testing much earlier in the lifecycle. I have been on too many projects where end-to-end trading partner testing was scheduled towards the very end of UAT – about a month before go-live. Through service virtualization, you have the ability to simulate end point and test out those IDOCs if you’re an SAP practitioner. Service Virtualization tools can also handle transaction types like XML messages, EDI, SOAP messages, etc. The key is to award someone on your team with the “Emerging Technology” cap. It’s their responsibility to identify products on the market that will help you shift left.
Late testing also results in having less time to repair defects uncovered in the process. By the time such issues are identified, there is so much pressure to go ahead and release the product that repairing defects may be postponed until a newer version is released. While on the surface this might sound like a good idea, it typically results in a tremendous amount of debt. I am sure you’ve heard of “technical debt”, right? This scenario epitomizes that phrase.
Shift Left from the Start
Shift left testing can help accelerate the attention given to project quality from the beginning. As a result, the ability to uncover defects is increased significantly. When defects are caught earlier in the design and development process, they are much easier and less expensive to fix. Over time, this innovative approach to testing can also help save untold hours of re-work, making it possible to stick closer to budget estimates and timelines.
We encourage you to identify an individual on your team whose responsibility is to analyze and recommend emerging technologies that enable you to continually shift left. Instead of labeling the testing phase of a project as the “fix phase”, you can truly begin to realize the cost-savings of shifting left.
Shifting left should be your focus in 2015. If you need a little motivation, run a quick Google search for Beyonce’s song, “Irreplaceable.” Who knows, the beat may inspire an innovative approach that you can apply to deliver the results that matter.
ResultsPositive, award winning HP Partner of the Year for Sales Growth (2014), Customer Support (2013), PPM (2010, 2011, 2012), and Executive Scorecard (2012), was founded in 2004. ResultsPositive is a leader in IT Software consulting delivering Project & Portfolio Management, Application Transformation, Business Intelligence, Mobility, Application Lifecycle Management, IT Service Management, Business Service Management, Healthcare Transformation, & Cloud and Automation solutions across the entire HP IT Performance Suite for medium sized and Fortune 500 companies. As both an HP Platinum Partner and HP ASMP-S Support Provider, ResultsPositive has the experience, support, and training necessary to turn your complex IT processes into tangible business solutions.
For more information about our testing services, visit: