Introduction to Shift-Left in Quality:
This tutorial provides a detailed explanation of the concept of “shift-left in quality” and highlights the distinctions between shift-left in testing and quality.
Recommended IPTV Service Providers
- IPTVGREAT – Rating 4.8/5 ( 600+ Reviews )
- IPTVRESALE – Rating 5/5 ( 200+ Reviews )
- IPTVGANG – Rating 4.7/5 ( 1200+ Reviews )
- IPTVUNLOCK – Rating 5/5 ( 65 Reviews )
- IPTVFOLLOW -Rating 5/5 ( 48 Reviews )
- IPTVTOPS – Rating 5/5 ( 43 Reviews )
We often hear people talking about “Shift-left in Testing.” While many of us understand this concept, let me explain it in simple terms for those who are unfamiliar.
What You Will Learn:
Shift-Left in Testing
Shift-left is an approach to software testing or system testing where testing is performed earlier in the development cycle. In the agile world, teams are encouraged to implement shift-left testing to catch defects early and deliver software quickly to clients.
Recommended Read=> Shift-left Testing Approach
Although many companies adopt the shift-left testing culture, we still encounter numerous defects that slip through our processes. Why does this happen?
This is where Shift-Left of Quality becomes crucial.
Shift-Left of Quality
In my opinion, most of us understand the basic difference between Testing and Quality. Testing involves identifying defects in functionality, while Quality focuses on meeting user requirements, also known as “fit for purpose.”
Please consider the example below:
You can use a screwdriver to hammer a nail, as shown above, but why would you still need a hammer? You could even use a small rock or a screwdriver to pound a nail, but would it meet the user’s requirements? That’s where quality comes into play.
According to a recent survey, 56% of defects are found in requirements and 27% are associated with design. This means 85% of defects are related to requirements and design.
Why do we encounter so many bugs despite having great tools and test strategies in place?
I see “shift-left in testing” as the application of tools, techniques, and strategies to expedite and optimize processes. “Shift-left in quality,” on the other hand, requires the application of common sense. Yes, you heard it right!
This concept is not new; it has existed for a long time in the form of requirements verification. However, how many of us practice it in today’s world? And has quality taken a back seat in this mechanized world of agile and automation? I would argue that it has.
So, what is “Shift-left in quality” in simple terms?
“Shift-left of Quality” is about ensuring that requirements align with the concept of “fit for purpose” during their definition and review.
Below is a list of examples picked from the web:
The above classifications represent the process of requirements validation, which aims to confirm the completeness and correctness of requirements.
Often, non-functional requirements related to performance, security, and load are overlooked.
For example, if a requirement states that a page should load when the user clicks on the register button, it may be considered acceptable from a functionality standpoint. However, should there not be a performance element to consider as well? The requirement should specify the expected page load time.
Now that we understand what constitutes a good requirement, let me ask another question: Why is it so challenging to get requirements right?
How often have stakeholders in your organization signed off on requirements simply because there wasn’t enough time to thoroughly review them?
ISO has a standard for software quality requirements, but in contrast, requirements testing is often neglected, resulting in errors and a significant deterioration in product quality. This needs to change.
How many of us sincerely adhere to the “Definition of Ready” when defining requirements?
I use the word “sincerely” here because that’s what we should be. It’s the starting point for everything. Getting requirements right saves time on solution design and testing. Ultimately, this leads to a substantial reduction in both internal and external failures.
Another problem I’ve noticed is that we often overlook dependencies on other modules or teams while reviewing requirements. This creates unnecessary rework and waste.
Requirements Engineering Process
A requirements engineering process should be in place when stories are added to the backlog before grooming or sprint planning.
The requirements engineering process should encompass the following steps:
Step #1 – Requirements Elicitation
Work with customers to gather domain knowledge about the application and the services the system should provide. Involve stakeholders who will use the product, not just those who purchase it.
Step #2 – Requirements Analysis
Classify requirements into functional and non-functional categories, prioritize them clearly, and document them in detail.
Step #3 – Requirements Validation
Rigorously validate requirements based on the checklist mentioned earlier. Obtain agreement on the scope of requirements from all stakeholders.
Step #4 – Managing Requirements
This step involves managing requirements to prevent scope creep. Analyze how frequently requirements change and why. Determine if the changes are too significant for the team to absorb.
In conclusion, “Shift-Left in Quality” is equally important as “Shift-Left in Testing.”
It’s crucial to acknowledge that time spent validating requirements significantly reduces the number of defects later on. Combining “Shift-Left of Quality” and testing methodologies leads to better products and increased customer satisfaction.
About the author: This article was written by Aditya S., a Senior QA Manager at S&P with over 12 years of experience in Testing and Management.
We hope this tutorial expanded your understanding of the concept of Shift-Left of Quality. If you believe we missed any important information about Shift-Left of Quality, please share your thoughts in the comment section below!