Roles in Extreme Programming (XP)


Within Extreme Programming practices, there are set roles. From Project Managers to Programmers each has a defined part to play within the team. One of those roles is that of the Tracker. In loose terms, the Tracker is likened to a Line Manager in a factory and has a similar position to play.

The Tracker also acts as a liaison between the Project Manager, Customer, and Programmers. He Tracks the progress of the project and passes on information to all involved to ensure the project, and the stories within it, are all on track.

What does the Tracker track?

There are three elements to the tracking role and him, or she needs to provide a record of how these three elements are working. They are tracking the release, following the iteration and putting code forward for testing.

Following the release – this is primarily working with the customer, who always has the final say, to ensure the release time is on track. Each project, or defined story, will have a set time. The tracker will make sure there are few deviations from that release time.

Tracking the iteration

This takes the Release Tracking and breaks it down further. Here the Tracker will determine how many stories are to be completed and, like with the Release Tracking, will ensure they are completed within a given iteration.

Tracking testing for acceptance

At the end of each iteration, the code will be put forward for trial to determine whether it will be accepted. It is the role of the Tracker to facilitate this.

To keep control of these three elements, the Tracker role is broken down further and he, or she, will be called on to do the following:

Rules and Regulations

Lay down the rules of the given stories and the project. Regulations given by the customer will the determine each tale. The Tracker passes on these rules to the programmers.

Customer Management

Liaise with the customer as to the progress of each iteration and each testing. The customer may also bring in new ideas to the Project Manager, and these will be passed to the Tracker.

Code Quality

Track all progress and correct any wanderings from the set goal. Often he, or she may be called on to get their hands dirty and refactor code themselves.

Facilitate Meetings

The Tracker will also be called on to organize meetings with Project Managers, Customers, and Programmers.


The Tracker will also offer feedback on how the project and stories are developing.

Maintain the Plan

As part of the role, the Tracker will ensure that the plan is working toward future releases.

The Tracker role is an essential position within Extreme Programming. Though not required to be a programmer, their purpose is to be a hands-on manager, working with a programmer to ensure the project is completed satisfactorily.