True Shift Left on Quality
Most organizations aim to shift left on quality to improve delivery velocity. However, the concept of shifting left on quality is often misunderstood. Many people equate it solely with increasing unit test coverage or integration tests. While this is partially true, there are many other aspects that need to be considered for a comprehensive shift left on quality.
In this article, I will discuss the true meaning of shifting left on quality and how it can be achieved throughout the SDLC process.
Current Approach
In the real world, the typical process involves getting the requirements, designing the system, building the system, and then maintaining the quality of the system.
To achieve a true shift left on quality, you should consider the following approach to ensure quality at each step.
1. Maintaining Quality During the Requirement Phase
Requirement gathering is one of the first phases of the SDLC. Many people do not prioritize quality at this step, but it’s essential to start maintaining the quality of software early. Here’s how:
a. Involve Developers and QA Engineers
b. Develop Strategy Documents
2. Maintaining Quality During the Design Phase
Most QA engineers or testers do not participate in the design phase, which is not ideal. QA engineers should be involved and review the design to ensure they understand it fully. As part of the design review, they should validate the following:
a. Architecture Diagram
b. Sequence Diagrams and Other Diagrams
c. UX Design (Figma or Other Tools)
领英推荐
d. API Specifications
3. Maintaining Quality During the Build Phase
At this stage, the software development process begins. The following should be taken care of:
a. Code Coverage
b. Integration Tests
c. Selenium and API Validation Scripts
d. Static and Dynamic Scans
e. Execution Time for UI Tests
f. Performance Tests
4. Maintaining Quality During the Release Phase
At this final phase of the SDLC, the minimum necessary tests should be run and should not take more than 5 minutes to execute. Only end-to-end tests should be executed at this stage.
5. Maintaining Quality After the Release Phase
Quality remains important even after the software is in production. For more details on maintaining quality post-release, watch my previous article on this topic.
By following these steps, you can achieve a true shift left on quality, ensuring that quality is maintained at every phase of the SDLC process.
Test Automation | SDET | QA Engineer | DevOps | SRE #OpenToWork
7 个月You raise some valid points in your article. In the shift-left culture, where quality is a shared responsibility among all engineering team members, organizations that involve QA engineers in every phase of software development will achieve superior results. By working closely together and implementing the approaches you’ve mentioned, they can ensure the delivery of high-quality products. I’ve seen that first hand. ????