Agile methodologies have been around for almost 20 years, but for many organizations, they are not working. Instead, they are increasing the IT expenditures year over year and slowing the SDLC, not speeding it up. Most organizations are Wagile – “Wannabe Agile” – failing to achieve Agile even after investing heavily into Agile Coaches, DevOps Partners and implementing the textbook team structure of a Scrum Master, a Product Owner backed by a Development Team. In our experience, what most are missing is the role QA must play in an Agile environment for the full cultural shift to take place and the holy grail of speed to market to be achieved.
Based on the State of DevOps survey, “Quality is everyone’s responsibility in an Agile – DevOps driven world”. Many may question then why do we need to invest in quality when we have Test-Driven Development? Yes, quality is everyone’s responsibility, and much rework can be avoided by involving experienced QA experts in the process from the beginning – playing a hyper-critical and strategic role in the success of this framework. While the structure and responsibilities of the QA organization need to change to fit the needs of the Agile world, excluding dedicated QA in the journey is a large cause of the vast number of Wagile companies out there.
“WannabeAgile”, “Waterfallish”, “Agilish”, or “Almost Agile” are the terms we hear when asked about Agile maturity from most CIO’s and CPO’s. So, what are the biggest challenges in this dynamic landscape and how can we address them?
The best way to resolve these challenges is by making a tactical cultural shift in Quality Management. Let go the traditional/Waterfall QA mindset and approach. Instead, embrace the new structure of QA by installing standardization, governance and alignment across various Scrum Teams (Agile Technical Teams).
1. Enterprise Grade TDD (Test Driven Development): The top reason for organizations to be stuck in the Wagile phase, is that different development teams produce unsynchronized code in each iteration, making the functionality testable and deployable only after many iterations were developed. The best way to address this is by having the entire enterprise synchronized in a way that will ensure each iteration produces a testable, deployable unit. This is achieved by implementing the following:
2. Quality Enabler (QE) in the room (on the scrum): Have a realist – a dedicated Quality Advocate for In-Sprint Testing – as a part of the development team who continuously partners with the Product/Business, Development and Operations teams. They would primarily concentrate on helping the team discuss how they are going to test each feature before they build it, how they will design the code for testability and operability, helping every team member learn some basic testing skills and also concentrating on customer end-to-end experience by validating business processes when systems integrate.
3. Quality Management Office (QMO): a governance structure to ensure that quality standards are defined and followed across disparate teams. In addition, the central QMO team holds those roles that require economy of scale and do not make sense to assign to each of the projects individually. Speed is enabled by splitting tasks into small bite sizes, while quality and consistency are ensured by central oversight regarding standards and measurement of results.
4. Test Automation Strategy for Continuous Delivery: a test strategy that uses a build pipeline to automatically ensure correct functioning and health of applications in production-like scenarios. The frequent changes in the business needs, fueled by a continuous test automation strategy, are closely connected with Agile development practices, continuous delivery and DevOps culture.
To summarize, to increase the Agile maturity of your organization – establish Enterprise Grade TDD, have a realist in the room – a Quality Enabler (QE) – build a Quality Management Office (QMO) and implement a Test Automation Strategy for Continuous Delivery. Remove the “W” from “Wagile” and become “Agile” by investing in QA and embracing these changes.