Teamwork is a fundamental principle in Agile development. Agile emphasizes the whole-team approach consisting of developers, testers, and business representatives working together. The following are team organizational and behavioral best practices in Scrum teams:de in the team, how to organize themselves and how to divide their work. There could be teams with only developers (also doing all their needed testing), only one tester, or two or more dedicated testers. It is an advantage having two or more testers as they can work more efficiently together in so called “pair testing”.
- Cross-functional: The team works efficiently together on the test strategy, test planning, test specification, test execution, test evaluation, and test results reporting.
- Self-organizing: The team may consist only of programmers, but, as noted in Section 2.1.5, ideally there would be one, two, or more testers. It is an advantage to have two or more testers, as they can do pair testing.
- Collocated: Testers sit together with the programmers and the product owner.
- Collaborative: Testers collaborate with their team members, other teams, the stakeholders, the product owner, and the scrum master.
- Empowered: Technical decisions regarding design and testing are made by the team as a whole (programmers, testers, and scrum master), in collaboration with the product owner and other teams if needed.
- Committed: The tester is committed to question and evaluate the product's behavior and characteristics, with respect to the expectations and needs of the customers and users.
- Transparent: Programming and testing progress is visible on the Agile task board (see Section 2.2.1).
- Credible: The tester must ensure the credibility of the strategy for testing, its implementation, and execution, otherwise the stakeholders will not trust the test results. This is often done by providing information to the stakeholders about the testing process.
- Open to feedback: Feedback is an important aspect of being successful in any project, especially in Agile projects. Retrospectives allow teams to learn from successes and from failures.
- Resilient: Testing must be able to respond to change, like all other activities in Agile projects.
These best practices maximize the likelihood of successful testing in Scrum projects.
The text above is a sample from the upcoming Agile Tester Extension that will be released in early 2014. Please note that Agile Tester Extension is in its Beta phase, which means that its content may change. Visit www.istqb.org to get latest information.