Thursday, July 17, 2003


Source: Wayne Allen's Weblog http://weblogs.asp.net/wallen/posts/10182.aspx via [WebLogs @ ASP.NET]

Agile QA: Customer Advocate.

One of the roles we have defined in our agile process is the "Customer Advocate". This is a distinct role from Customer or Customer Proxy in that the advocate is looking after the customer's needs from a quality perspective. The need for an advocate is seen in many agile implementations. The usual symptoms are a customer that needs to do their "real" job or where the customer needs assistance writing appropiate stories and acceptance tests. The advocate him/herself may or may not have any specific domain knowledge.

There are four primary activities the advocate participates in:

  • Story development
  • Release/Iteration planning
  • Acceptance testing
  • End game

Story Development
The advocate works with the customer to ensure the stories are as clear as possible (from the point of view of the developer and the customer) so that they can be more easily turned into working code. This includes clarifying ambiguity, ensuring non-functional/indirect requirements are captured and making sure the acceptance tests are specified. Since typically the advocate has quality assurance background they are well suited to these tasks.

Release and Iteration Planning
The advocate helps facilitate the iteration planning by substituting for the customer when he/she is not available. Answering developer questions with more technical specifics when needed and ensuring that non-present stakeholders are well represented.

Acceptance Testing
The advocate takes over the responsibility of executing the tests on behalf of the customers. They will also develop additional tests to run as the code is developed to ensure the story stays true to its original intent. The advocate also can represent the customer when technical questions about the story arise. Ultimately the customer will rely on the advocates advice when trying to assess the completeness of a story.

End Game
The end game is where the customer, advocate and developers finalize the stories as complete, assess the readiness of the release to production, develop risk assessments and assist in measuring the quality of the product once placed in production and pronounce it ready for consumption.

I want to express many thanks to Dal Marsters for his help in developing this role.

[WebLogs @ ASP.NET]
7:56:31 AM    trackback []     Articulate []