Quality in Agile is about continuous improvement. To encourage and give focus to this improvement mindset we introduced the Agile Quality Improvement (AQI) Framework. This framework starts from Business drivers, translated to IT-Goals and organized by key areas. Crucial here is the balance between the individual teams and the supporting organization. These two need to be on the same level. In other words. When you have high mature self-organizing teams, the supporting organization should allow more autonomy and responsibility on team-level. When you have newly formed teams with lower level of self-organization the supporting organization should provide more guidance and support towards the team.
Business drivers and IT Goals
When looking at the VOICE model we see that quality is related to business value. This business value is related to the business drivers of an organization.
Examples of business drivers can be: grow your business or do more with less.
These business drivers translate to IT goals, often the IT goals are a balance between:
- Building the right thing, fit for use and bringing the value end-users need
- Building it right, is it technically correct, safe and reliable
- Building it fast, delivering within the desired time to market
When improving it is advised to first identify which IT Goal has priority at that moment. In this way the improvement can focus on achieving this specific goal and adequate metrics can be collected.
Within the AQI Framework four Quality Values are distinguished that fully support and follow the built-in quality principles:
- Optimized Customer Experience focuses on delivering optimal business value. Using and applying feedback from end-users. In this way, a team or organization is enabled to deliver the right products and services. Intensive interaction with the (end) customers is a precondition for this.
- Controlled Quality is aimed at gaining insight into quality in a short-cycle, high-speed development process. Within Agile teams, this happens in the retrospective, in SAFe® this also happens during the Inspect & Adapt stages across the different teams.
- Continuous Testing is the early and continuous measurement of quality indicators throughout the entire delivery process. This can take the form of tests, but there are also various other quality measures to be taken.
- Quality as Culture means that everyone, both inside and outside the team, is aware of quality and actively contributes to it. Quality is a shared responsibility both within a team and between teams.
Making these values part of the engineering culture of the organization is part of Quality Engineering at scale. This helps to fully integrate Quality Engineering within the product lifecycle instead of only implementing reactive measures late in the process.
To apply effective quality Engineering at scale the AQI Framework offers a set of key areas which should be addressed on team and supporting organization level. The QA & testing topics help to fill in these key areas. The six key areas are:
- QA & Testing having the tools and knowledge within the teams for effective Quality Engineering
- Automation enabling cross-functional behavior and fast feedback
- Infrastructure needs to fit the demands and requirements of both team and organization
- Quality as Culture have specific focus on increasing Quality awareness and everyone understanding their part in delivering quality products
- Governance clear processes, guidelines and responsibilities increase transparency and sharing information within the organization
- Transparency have insight in progress, quality and costs at all time both at team level as well as at organization level.
For these key areas there is no “one size fits all” solution. Tailoring this to your specific context and organization means learning and experimenting but also reuse good practices adopted by other organizations. Achieving this needs commitment and perseverance for a longer period of time.
Challenges in scaled Agile
Working with multiple teams on various components and product increases complexity. Adopting a scaling approach helps in dealing with this complexity. In the complex scaled environment, we want teams to contribute together to the IT-goals. The main QA challenges we identify in this situation are:
- Lack of knowledge sharing between teams.
- Ensuring end-to-end quality