Extreme Programming (XP)

XP Roles

by Bjorn W.

When working with others on a project of any kind and size, it’s only natural to break that project into tasks to make that big project more manageable, with different team members handling those specific tasks. Naturally, it’s optimal that team members should communicate with each other on individual progress in some way, as one person’s role and responsibilities affect the others.

It’s not very different from XP. In fact, this model of teamwork is part of how XP works best, keeping XP values of customer satisfaction as the focal point of each software version release. In an ideal situation, the roles of an XP team help keep everything running as smoothly as possible

Here is a look at the more common Extreme Programming roles you might hear about:

Tracker

This person is usually assigned to talk to each programmer once or twice per week, ask how that person is progressing and listens to the answer. If progress seems to be slowing, the tracker may suggest some sort of action, from a CRC meeting, talking to the Customer, or perhaps talking to another programmer or even the team Coach.

Customer

This particular role may or may not be filled by an “end-user,” but their function here is key. A Customer will be the one to write User Stories, decide on questions of the stories, and will likely have job titles such as “Analyst,” “Planner,” or perhaps even “Designer.”

Programmer / Developer

There will, of course, be more than one programmer on a team, but those who fill this role are the ones to listen to the user stories, define tasks based on the stories and give an estimate on how long tasks will take, along with performing Unit Tests on their code.

Coach

This person’s function is often manifold, because of the different “sub-roles” a Coach has to take on. They are often considered the “Chief Architect” of a project because their job is not only to see a grand vision for a project, but to also possibly mentor less experienced team members and decide a methodology for a project, among other activities.

Tester

While Programmers run their own individual tests, a Tester’s role is a bit more general, in that they run functional tests, chart the results and note when test results start declining.

Manager

This role falls somewhere in the middle between Coach and Tracker, concerning overall responsibilities. The person filling this role is usually the one to schedule and attend team meetings, assures the agreed-upon meeting process is followed and makes a note of the results of the meeting, which are then handed off to the Tracker.

Doomsayer

It’s often debated if this is an actual role or merely a personality trait, thus the quotation marks, but there is little doubt that having such a person on an XP team can be worthwhile, especially if the person in question also has the ability to be tactful, even while seeing the pitfalls ahead and warning the team. This can be something of a “wild card” role, in that any other person on the team can be a “Doomsayer.”

Much like XP itself, there is a clearly defined logic to Extreme Programming roles. Since there is no specific end product, but instead updates to software with each interaction with a customer, the function of an XP team is, ideally, smooth. Each person performs their assigned tasks and tests, reports to the appropriate people of the results, listens to the Customer, taking action where needed, another member calling meetings, and so on.


How to deal with compromises when implementing Scrum?

How to deal with compromises when implementing Scrum?

Using scrum can actually be the best decision which you could make for the organization as it has many advantages for everyone. It is a practical framework which guides you about all the things you...

by Pete R.
Ensure quality in your user stories - the INVEST-Principle

Ensure quality in your user stories - the INVEST-Principle

The INVEST principle allows teams to work effectively on a good user story. To understand INVEST better, one has first to understand what the mnemonic stands for.

by Pete R.
Estimation in the agile world done right! How to play Planning Poker®?

Estimation in the agile world done right! How to play Planning Poker®?

Planning Poker® is one of the tools used in Agile. The reason why it is useful is that it helps the team, decide how many of the points are allocated to a specific story or task. It helps mitigate...

by Pete R.
5 Tips for Dealing with Uncooperative Team Members in Scrum

5 Tips for Dealing with Uncooperative Team Members in Scrum

It is normal to come across people at the workplace that can make your job more complicated than it actually has to be. These kinds of people are disrespectful, harmful or merely unwilling to behave...

by Pete R.
Does Scrum Alone Stand for Agile?

Does Scrum Alone Stand for Agile?

Is Scrum the only technique in Agile? Many people consider Scrum a single method of Agile. Long gone are days when Scrum and Agile were used interchangeably. Nowadays, many people know about the...

by Pete R.
Changes That Occurs When Moving from Waterfall to Scrum

Changes That Occurs When Moving from Waterfall to Scrum

Are you thinking about the changes that occur when a company shifts of Scrum? In today's advanced world, the previous approaches for software development are unviable. Though waterfall practice is...

by Pete R.
Hey Scrum! Where has the test phase gone?

Hey Scrum! Where has the test phase gone?

If one is looking for a methodology to manage programmers, then scrum is their best bet. If one wants to tests cases, they need to give Scrum a try.

by Pete R.
Best Ways to Track Time in Scrum

Best Ways to Track Time in Scrum

Without a doubt, time tracking is one of the many things that a software developer doesn't enjoy. It is perceived that keeping track of time is wasteful and restricting. This is because the time...

by Pete R.
What is the Nokia Scrum Test?

What is the Nokia Scrum Test?

Over a decade ago a man named Bas Vodde introduced a simple test that was able to assess the level of agile adoption and Scrum at the Nokia-Siemens Finland. The test was conducted on almost ten agile...

by Pete R.
Top Signs That Your Organization Is Not Ready for Agile

Top Signs That Your Organization Is Not Ready for Agile

Are you thinking of implementing Agile in your company? Do you think your company is ready for Agile? In the software development industry, everyone is talking about the benefits of Agile...

by Pete R.
Scrum Estimations vs. Request for Accuracy

Scrum Estimations vs. Request for Accuracy

Estimation is something significant when it comes to getting the tasks completed. However, there are cases where an estimate turns out to be wrong during the process. When you start working on a...

by Pete R.
Scrum - your burn down-chart looks strange? These techniques will help you to improve

Scrum - your burn down-chart looks strange? These techniques will help you to improve

Scrum burndown charts might not always seem like the ideal charts that one would want and sometimes, the charts might appear more terrifying than one might have thought. Some people might try to...

by Pete R.