Communicating Test Status, Progress and Product Quality in Agile Methodology

Agile teams have to produce working software at the end of iteration. There are lot of simple tools and techniques in place by which agile teams can monitor the status of iteration. Different tools and techniques available for Agile teams to record their status are:

  • Daily standup, it is a daily planning meeting; this meeting is not be exactly meant to update daily status
  • Various soft dashboards.
  • Sprint Burndown charts.
  • Big visible task boards at the team location.
  • Wiki portal where everyone can update the daily progress.
  • Lastly, emails in simple language that everyone can understand.

Agile teams may also use tools like Rally, Version One, Jira etc to know the status of the sprint or release. These tools generate great metrics where several inferences can be drawn. The testers can also generate update the tools on automation status and testing progress for the current sprint.

Sprint Burndown Chart

Agile team use burn down charts to track progress in every iteration. The burn down always gives the “To Do” work in the current iteration. It may not focus on what was accomplished. A burn down chart can also be measured for sprints to track scope versus story points. The image of daily burn down is shown in Figure below.

The task board serves as a visual representation of the agile team, including development and testing. There are story cards on the left to do and development and testing tasks shown in progress. There may be columns of “To do”, “In Progress” and “Done” states in the task board. We can use multiple color Post-it’s to make the task board attractive.

 

Sprint Burn Down Charts

Figure : Sprint Daily Burndown chart

It is recommended that the whole team do their daily standup before the task board and give their standup update. The team can move the tasks back and forth, if the team feels that they are in the wrong place. Any tasks including testing tasks are moving as per the expectations. The team can take a collective decision to address them by pairing up. There can be various testing tasks related to automation, test plans, test strategy, exploratory and manual tests in that task board.

The daily standup includes all agile team members, where each team member is supposed to give update on the three questions.

  • What did I do yesterday that helped the Development Team meet the Sprint Goal?
  • What will I do today to help the Development Team meet the Sprint Goal?
  • Do I see any impediment that prevents me or the Development Team from meeting the Sprint Goal?

The ScrumMaster will make a note of any impediments and that come in the way and tries to address them offline. Few examples of impediments that may come up during standup are

  • Server outage due to which cannot move forward in the development.
  • A tester local database instance got corrupted due to which the data base is not working
  • A problem that is related to accessing the third party database.

In order to improve the overall quality of the product that is being developed, agile teams take lot of informal feedback from the Product Owner. The teams may also initiate a customer feedback survey to capture the voice of the customer. They can also use several other metrics, the defect density, the test coverage percentage, the number of team members per story, the regression test results and code churn. Metrics must be carefully measured, since the management get what they measure

For example:

  • If the management sets velocity targets to the team, the team may inflate story points of all stories
  • If the management sets 100% utilization, the team may mark up the hours and show more than 100% utilization, but no value delivered to the customer.