Introduction

This document presents a generalized framework of Roles and Responsibilities for an Agile project, which includes three roles: the Customer, the Implementor and the Facilitator. These three roles summarized in the following diagram, and are defined in the next section.

Note: This document is released under the creative commons attribution 2.5 license. This license lets others distribute, remix, tweak, and build upon your work, even commercially, as long as they credit you for the original creation. This is the most accommodating of licenses offered, in terms of what others can do with your works licensed under Attribution. The full text of the license can be read here:

Roles and Responsibilities

Role / Definition / Responsibilities
Customer / The customer is the business representative that controls the definition and prioritization of Stories (Product Backlog Items) and has a detailed understanding of the business. In many cases, the Customer is also responsible for the project budget and/or the business case. / The Customer:
1.Ensures that the product backlog is prioritized by maximum business value.
2.Defines Stories (Product Backlog Items) that are concise and accurate enough for Implementors to lists tasks and estimates.
3.Defines Acceptance Criteria so that Implementors know when they are “Done”.
4.Is available to the team to provide guidance and receivingfeedback as quickly and accurately as possible.
Implementor / An Implementor is anyone who accepts and completes a Story (an item from the product backlog). This may involve the creation, testing and/or maintenance of a software product. / The Implementor:
1.Ensures that project standards and guidelines are followed so that the product is of a high quality.
2.Ensures that the simplest possible solution that meets the business needs is constructed.
3.Ensures that the Customer is provided with accurate estimates.
4.Communicates clearly and concisely with the Customer so that he can prioritize the product backlog appropriately.
5.Communicates clearly and concisely any impediments with the Facilitator, so that they may be addressed in a timely manner.
Facilitator / The Facilitator is someone who manages the process of creating the software, and although they are committed (a Scrum "Pig") they are not directly responsible for writing code or prioritizing the requirements. Rather, the Facilitator helps the Customer describe the business problems, remove developer impediments, support the testers request for test coverage tools etc. / The Facilitator:
1.Ensures that the team is fully functional and productive
2.Enables close cooperation across all roles and functions and removes barriers
3.Shields the team from external interferences
4.Ensures that the process is followed. Invites to daily scrum, iteration review and planning meetings
5.Enables Communication between teams and across team boundaries
6.Mentors Apprentice Facilitators (ScrumMasters, Iteration Managers etc)

Kane Mar (Creative Commons – Attribution 2.5)