Software Test Leadership
Successful leadership in software testing requires clear models and a strong quality culture. The ACT2LEAD model offers an approach for establishing...
The Scaled Agile Framework (SAFe) helps companies to successfully master the agile transformation. However, effective strategies are also needed to implement quality assurance and testing within agile teams. Effective measures include, for example, quality coaching to identify quality gaps in agile teams and the promotion of communication and collaboration within the team to minimize inconsistencies and errors. Even with simple measures, organizations can make their development processes more effective and ensure that software is of high quality.
In this episode, I talk to Andreas Neumeister about quality assurance and testing in the context of SAFe (Scaled Agile Framework). Andreas shares his experiences from agile transformations, emphasizes the importance of quality coaching and describes how quality gaps can be identified in agile teams. A central point of our conversation is improving communication and collaboration between teams to minimize inconsistencies and errors and increase the quality of the software.
"If an epic, a feature or a story cannot be explained within ten minutes in such a way that all critical questions can be clarified in five minutes, then the whole thing goes back because it's simply not ready yet." - Andreas Neumeister
Andreas Neumeister studied business informatics and has over 10 years of experience in software quality assurance. As a director in consulting, he supports customers in developing high-quality products, as a member of the German Testing Board he works together with the GTB to develop the quality standards of tomorrow and as a speaker he shares his experience at trade fairs and events.
An agile approach is now the status quo in software development in many organizations. Software quality plays an important role in this, as it contributes significantly to the success of the software in several areas:
However, agile transformation brings with it specific challenges. One common issue is the quality assurance gaps caused by different responsibilities and communication problems. Agile development teams must learn to clearly define their responsibilities and establish effective communication channels.
The role of quality assurance in agile projects involves not only testing software, but also promoting a shared understanding of quality within the team. Quality assurance must be proactively designed to ensure that all team members - from developers to testers - take responsibility for the quality of the software.
In Agile software development, it is important that all those involved pursue a common goal with regard to software quality and find effective ways of working together based on this.
In the Scrum and SAFe methods, the responsibility for quality differs significantly.
When the Scrum method is used, responsibility for quality lies primarily with the team. Every team member, including developers and testers, contributes to ensuring quality. This is done by:
In contrast, SAFe distributes responsibility for quality across several levels. There are several key roles with different responsibilities:
In SAFe, quality is not only considered within the team, but also in a larger context. The integration of different teams requires a clear understanding of the requirements and effective communication to ensure that everyone is pulling in the same direction. The distribution of responsibilities across multiple levels enables a more comprehensive view of quality assurance throughout the development process.
The coordination of development and testing activities at the feature and epic level plays a crucial role in the SAFe environment. This coordination is necessary to ensure that all team members are on the same page, especially when it comes to complex requirements.
Structured workshops and regular meetings can improve collaboration. Such formats promote the exchange between developers and testers and help to create a common understanding of the project goals.
Quality coaching plays a crucial role in SAFe projects. The tasks and responsibilities are diverse and contribute significantly to quality assurance. But what exactly do quality coaches do?
Quality coaches coordinate the activities between developers and testers to ensure seamless integration of quality assurance measures. This collaboration is essential to avoid misunderstandings and increase efficiency within the project. AI and test automation can also help to automate processes and save resources.
A central task of quality coaches is to promote a positive working relationship between the teams. Workshops and joint testing help to develop a common understanding of requirements and features. These principles are also anchored in the Agile Manifesto.
Quality coaches help to distribute the responsibility for quality not only on the shoulders of the testers, but on those of the entire development team. Effective quality coaching creates an environment where all team members are accountable for product quality. Sharing this responsibility encourages commitment and leads to better results across the SAFe environment.
Efficiency planning plays a crucial role in software development. A comparison between waterfall and agile methods shows significant differences:
These challenges often lead to delays and misunderstandings within the teams. When implementing legacy systems in particular, it becomes clear that the integration of new functions into existing systems is complex and there are often different release cycles between modern microservices and old monoliths, which makes coordination more difficult.
Another key problem is the lack of a uniform understanding of the system architecture. This leads to inefficiencies and increased communication costs.
To overcome these challenges, agile teams need to develop strategies to optimize efficiency planning and manage the integration of legacy systems. The responsibility for this lies not only with individual team members, but requires a joint effort by all those involved. This is where an Agile Coach can provide support by training teams and managers in agility, communication and process optimization.
It is also important to develop an understanding of agility in general. Change management helps to successfully navigate change and accompany it with structured approaches. More information on this can be found in the article Post-agile age.
A shared vision for quality assurance in the SAFe environment helps to ensure that the entire development team takes responsibility for quality. Important aspects of this vision are:
A look into the future shows that quality practices in agile environments will be characterized by continuous improvement. Development teams should be flexible and continuously evaluate and adapt their approaches to quality assurance to meet the challenges of the fast-paced software industry. . Agile provides a framework to meet these challenges creatively and innovatively.
In order to create a positive quality culture within SAFe projects, an environment should be established in which high standards are not only expected, but can also be realistically achieved.
Further information on the role of quality assurance in an agile environment can be found in the book Agile Testing. In the following articles, you can also read how agile development affects testing and which new approaches to quality assurance in agile projects can be implemented.
Quality in the SAFe environment means that software products meet the requirements and expectations of stakeholders. Quality not only influences customer satisfaction, but also the efficiency and effectiveness of agile transformation.
In Scrum, all team members are responsible for the quality of the product, while in SAFe specific roles such as the Release Train Engineer and Quality Coach take on greater responsibility for quality assurance. This leads to a clearer distribution of responsibilities.
Challenges in coordinating development and testing activities at feature/epic level include communication difficulties between different teams, unclear requirements and different priorities, which can lead to delays and quality problems.
A quality coach in the SAFe environment has the task of promoting collaboration between developers and testers, introducing best practices for quality assurance and supporting the team in the continuous improvement of their processes.
Legacy systems can pose significant challenges for efficiency planning in agile environments, as they often involve unclear requirements and require adjustments to existing systems. This can delay progress and require additional resources.
A vision for software quality in the SAFe environment is important for development teams to take a shared responsibility for quality. This requires a shared understanding of quality across different roles and an outlook on future developments in quality practices within agile environments.
Successful leadership in software testing requires clear models and a strong quality culture. The ACT2LEAD model offers an approach for establishing...
Quality coaching is very different from consulting and offers unique benefits for teams. Bastian Baumgartner explains how quality coaching can help...
In this podcast episode, agile testing expert Christian Mercier focuses on quality assurance in agile projects. Key aspects of ensuring software...