推荐的敏捷开发团队有下列角色定义:
客户或客户代理,负责定义需求,及需求的优先级别,并验收完成的用户故事。
项目经理,负责将完整的系统交付给客户。
业务分析师,(经常会同时担任客户代理的角色), 责任是保证需求和相应的验收标准被完全记录到用户故事中。
开发人员,责任是交付代码,满足用户故事上定义的验收标准。
测试人员,责任是保证验收测试可以执行,并通过。另外,测试人员也有责任保证系统的总体质量。
在进行敏捷实践时,也可以考虑以下角色:
敏捷教练,是拥有丰富经验的敏捷实践者,责任是帮助项目组采用敏捷实践。敏捷教练也可以同时担任迭代经理的角色。敏捷项目鼓励组员之间互相学习,如果在开发团队,业务分析团队和测试团队中都有敏捷教练, 对技术转型的成功非常关键。
构建负责人,通常是由对构建环境,持续集成有经验的开发人员担任。
迭代经理,跟踪项目组的生产效率,辅助迭代的平稳运行。
技术负责人,通常由资深的开发人员担任,责任是保证在项目组内,对技术问题的一致认识。技术负责人也要和设计师紧密协作,一方面,向团队传递设计目标,另一方面,及时为设计师提供关于实现问题的反馈。