Home > Articles > Software Development & Management

Why XP Teams Need Testers

  • PrintPrint
  • Share ThisShare This
  • DiscussDiscuss

This chapter is from the book

Breaking away from the traditional role of a tester, XP testers also deal with quality assurance and quality control issues. Discover why these extreme testers are invaluable to an XP project.

Much of the published material on Extreme Programming is aimed at programmers, customers, and managers. Some purists may argue that a tester role is unnecessary in XP projects: customers can write the acceptance tests and programmers can automate them. This can work, and certainly some successful XP projects don't have testers.

We believe, however, that more XP teams can be successful by doing a better job of defining, automating, and running acceptance tests when someone is focused on that role and that this focus helps in other areas as well. If you don't like to think of someone in the tester "role" on an XP project (because the only true roles defined in XP are programmer and customer), think of having a programmer with a "tester focus."

We'll illustrate this point with a true story about a remodeling project Lisa recently experienced, but first let's define what we mean by the term "tester."

Definition of Tester

By the term tester, we mean a person who not only develops and runs tests but has quality assurance and development skills as well. Testers spend a portion of their time actually testing, but they also help customers write stories, and they define acceptance tests and take the lead in automating them.

We're combining what would traditionally be described as both quality assurance and quality control activities. The classical distinction between these two is that quality assurance (QA) aims to avoid the introduction of defects in the first place, and quality control (QC) aims to detect defects that have already been introduced. QA is process oriented; QC is product oriented.

While this distinction is useful for manufacturing, it's less so for software, and our experience has been that either activity alone is generally useless. In any case, XP tries not to overly classify people, because to do so implies that they alone are responsible for coding, testing, analysis, and so on, when XP is all about integrating these activities.

If you're used to thinking of a "test developer," "quality analyst," or "software quality engineer," please mentally substitute your own term for ours. We're using "tester" mostly because it's short, but also because it's an instantly recognized term among software teams. Usually followed by "Oh—them."

  • Share ThisShare This
  • Save To Your Account
Testing Extreme Programming

This chapter is from the book

Testing Extreme Programming

Learn MoreAdd To Cart

Discussions

comments powered by Disqus

Related Resources

#TuesdayTrivia: Spotlight on WP7 (Win a copy of Sams Teach Yourself Windows Phone 7 Application Development)
By on May 2, 2012Comments
These days, what CAN'T a smartphone do? Microsoft is putting their own spin on things to help you experience "life in motion" when using your device. Instead of containing static application icons, the re-imagined Start screen features live Tiles showing real-time content updates.

April Trivia #1: Test Like a Pro (Win How Google Tests Software)
By on April 2, 2012Comments

Even "Nooglers" (new Google employees) ask it as soon as they walk out of orientation: How does Google test software? Here's your chance to get the inside scoop.

March Trivia #1: Let there be light! (Win Microsoft Visual Studio LightSwitch Unleashed)
By on March 13, 2012Comments
Want a simplified self-service tool to help you build business applications for the desktop and beyond? Microsoft programmers… meet Visual Studio LightSwitch.

See All Related Blogs