The tester is a member of a Scrum team. This is a different mindset from the traditional views on testers in software development. The agile tester focuses on delivering value instead of on testing. The agile tester is responsible for delivering what the business needs instead of just finding bugs. Most importantly: the agile tester is not responsible for testing!
Recently I published an article on testing in a Scrum team for the Eurostar 2010 newsletters. It’s about the mindset of an Agile tester. This blog post summarizes the core of that article.
To get there, together!
Good interaction is the key to good results. An agile mindset and working in an agile process facilitates a cooperative spirit: “To get there, together !”. To have that ‘Agile Mindset’ means to respect the balance that is presented by the Agile Manifesto and take all decisions you make ( big or small) in the spirit of these principles.
A good Scrum Team feels responsible for the delivery of the desired software on time and according to the agreed quality standards. From a testing perspective some modern test approaches like SmarTEST are designed for ‘agility’ in the testing process. Although SmarTEST has a strong focus on people and interaction, the big change for the tester may still not be fully perceived. Full adaptation of agile principles means that the agile tester is not responsible for testing! How about that?! The team as a whole is responsible for the collective result, which includes testing as one of the steps.
What does this mean for the role of the tester?
For a tester to be truly successful in an agile team he needs to change in four way. These four points describe the heart of the mindset of an agile tester.
- The tester is responsible for delivering what the business needs (not for finding bugs).
- The tester is focussed on delivering business value (not on just writing, executing and reporting tests)
- The tester is a full-time member of the team (not just at the start and end of a sprint)
- The tester is no longer a tester, he's a team member with a talent for testing
Of course this is only the top of the agile testers mindset.
How about independent testing ?
Independent testing in an agile environment doesn't differ much from the more traditional approach. Some of the testing is moved to the team's responsibility. Things like integration testing and user acceptance testing allow the team to learn. They need to learn from executing these tasks themselves so that they can understand their customers and their environment better.
Choose independent testing for cross team testing, regression testing and non functional testing.
The agile tester feels responsible for the whole, is fulltime committed to the result, is focussed on delivering business value and acts like a true member of the team.
Independent testing is still desired. It’s important to leave integration testing and user acceptance testing to the responsibilities of the Team so they can keep on learning from what they deliver.
Not every tester will be able to change his mindset and become team member first and tester second. These testers can provide most value when working in an independent test team.
Finding those really great testers that are able to become part of the Scrum Team is a challenge. Having them in the teams is a critical factor the success of your teams.