Get a Free Trial
Creating, executing, and maintaining reliable tests has never been easier.
The transition from quality assurance to quality engineering is similar - and often intertwined - with the shift to agile and DevOps practices. Like DevOps, quality engineering is a cultural and procedural shift supported by technology that allows software development organizations to build better products more reliably and at a faster pace. But while DevOps focuses on improving adaptability and collaboration, quality engineering is centered around improving software quality through data-driven software testing, accelerating and expanding testing with test automation, as well as creating a culture of quality.
Mabl’s 2021 State of Testing in DevOps Report discovered that the most common DevOps adoption obstacle was the slow pace of change. Though many agile and DevOps projects start out with a great deal of fanfare and enthusiasm, the realities of transforming the entire software development process eventually stall momentum and leave many teams in the early/middle stages of adoption. The teams that managed to navigate these organizational obstacles, however, shed some light on how to best sustain DevOps momentum. The report found that the most mature DevOps organizations practiced the core tenets of quality engineering, such as democratized software testing, streamlined collaboration between QA and developers, and high test coverage.
Building Quality Engineering into the Software Development Lifecycle
Whether a company is just starting to plan their agile and DevOps transition or has already adopted key agile practices, incorporating quality engineering into their DevOps roadmap can support a better software development process and ultimately a better product. The most impactful place to start: the sprint cycle.
The Benefits of Quality Sprint Planning
Creating a quality-centered sprint cycle is a much easier task than planning a typical long-term transformation because sprint cycles are designed to happen quickly, often just a few weeks. They also have built-in planning and review discussions, which give QE teams the opportunity to reflect on what software testing worked (and didn’t work) during the sprint with the larger development team. As time goes on, QA leaders can track software testing and quality engineering improvement across sprint cycles to build better practices, showcase progress to company management, and contribute to agile and DevOps adoption.
Making the Case for Quality Engineering in Sprint Planning
Unfortunately, most software development teams don’t consider quality engineering when planning their sprint cycles, making it hard for QA professionals to successfully advocate for change. But data speaks louder than words, and every stakeholder in the sprint planning process has goals that can be supported by better quality practices. Data points that QA can use to make their case include:
- Amount of unplanned work: Every sprint plan includes some latitude for unexpected work, whether it’s reworking a bug that takes longer than expected or a story point that takes more time than originally planned. But when software development teams routinely have sprints with large amounts of unplanned work, it could be a sign that testing is taking place too late in the development cycle.
- Number of tickets created: Issue management platforms like Jira are invaluable tools for improving collaboration during the software development process, but they can also provide useful insights into the effectiveness of the current sprint planning process. Unusually high or consistently increasing ticket volumes can be an indication that a team’s existing software testing strategy is too concentrated within the DevOps pipeline or that the QA and development are struggling to collaborate on resolving defects.
- Goals versus accomplishments: When unplanned work, a high volume of tickets, or other obstacles start to overwhelm a sprint, a software development team will begin falling short of their goals, potentially delaying a planned release. When gaps emerge between sprint goals and sprint accomplishments, QE leaders have the opportunity to make their case for a quality-centered sprint planning process.
Best Practices for Integrating QE into a Sprint
Once a quality team has identified gaps in their sprint results, they’re able to make a case for improving quality engineering practices to the product managers and development managers leading sprint planning. Though every team has different goals, challenges, and dynamics, there are best practices that are widely adaptable for most teams, regardless of their size or DevOps maturity.
- Ensemble programming: Pairing software testers with software engineers during the sprint cycle addresses both DevOps and quality engineering goals by enabling direct collaboration at the earliest stages of software development. When QA and engineering work side-by-side, rather than in separate stages, a significant work silo is eliminated and both team members are able to ask questions, challenge each other, and build a shared understanding of the code base. Ensemble programming supports teams that frequently find themselves circling the same defect for extended periods of time, which leads to unplanned work and reduces productivity during sprint cycles.
- Shift left and shift right testing: Teams struggling with an overabundance of Jira tickets or large amounts of unplanned work may need to reconsider when they test their code during sprint cycles. The mabl Testing in DevOps Report found a strong connection between DevOps maturity, the ability to quickly resolve defects, and a culture of quality, where software testing happens early and often in the software development lifecycle. By shifting testing further across the development process, teams are better able to identify and correct bugs, reducing the amount of unplanned rework needed during a sprint cycle.
Creating a Culture of Quality, One Sprint at a Time
The systemic changes needed for a successful DevOps and quality engineering adoption require long term focus and effort across a company, which can be hard to sustain for a full transition. But when incremental process improvements are made at the sprint cycle level, it becomes a much more manageable process. Armed with the right data, quality teams can prepare themselves to lead the quality engineering journey as well as support DevOps adoption.
Set your quality-centered sprints up for success with low-code test automation designed for agile and DevOps teams. Start your free 14-day trial with mabl today!