角色 和 职责
产品 负责人
产品 负责人 是 Scrum 团队 和 客户 之间 唯一 的 联系。 产品 负责人 要对 最终 产品 负责, 他们 负有 以下 相应 的 责任。
- 决定要构建哪里些特性。
- 根据业务价值设定特性的优先级。
- 接受或者拒绝“已完成”工作。
作为项目成功的关键干系人,产品负责人必须时刻准备着为团队服务,给他们清晰呈现项目的愿景。所有开发团队成员都应该清楚的知道项目的长期目标,而且都能够及时清楚的了解到变更的详细信息。在制定短期冲刺计划时,产品负责人应首先安丘好要开发什么以及什么时候开始。产品 负责人按照 软件 的 发布 计划 来 选择 特性, 并且 在 产品 积压 工作中 对这 些 特性 设定 优先级。
尽管 产品 负责人 是个 关键 角色, 但是 这 并不 意味着 产品 负责人 在 整个 Scrum 流程 中的 影响 不受约束。 产品 负责人 不能 决定 开发 团队 一个 冲刺 内 需要 完成 的 工作量, 因为 这是 由 开发 团队 自身 的 开发 速度 决定 的。 同样, 产品 负责人 不能 决定 如何 实现 工作 项, 因为 开发 团队 会 从 技术 层面 上 决定 一个 故事 的 详细 实现 方案。 当然, 在 冲刺 的 过程中, 产品 负责人 不能 改动 冲刺 目标, 改变 验收 标准, 或者 增删 故事。 经过 冲刺 计划 会议, 目标 和 承诺 的 故事 已经 选定, 此时 处于 运行 状态 的 冲刺 就是 不可 更改 的 了。 任何 改动 都 必须 等到 下一个 冲刺, 除非 明确 中止 当前 冲刺 或者 整个 项目, 然后 重新 开始。 冲刺 的 这种 不可 破坏性 保证 了 开发 团队 能够 在 整个 冲刺 进行 过程中 心 无 旁 骛 地 朝着 既定 的 目标 努力。 整个 冲刺 期间, 无论 故事 在 进行中 还是 已经 完成, 产品 负责人 都要 经常 去 试用 进行 中的 产品, 看看 特性 的 状态 如何, 或者 给 正在 进行 的 任务 提提 意见。 产品 负责人 多花 点 时间 与 开发 团队 保持 紧密 的 沟通 是 很重 要的, 这样 才可 以及 时 应对 那些 突然 出现 的 意外 和 混乱。 到 冲刺 结束 时, 产品 负责人 不能 简单 地 接受 那些 声明“ 已经 完成” 但却 偏离 了 初始 目标 的 故事, 而是 应该 通过 制定 好的 验收 标准 来 检验 一个 故事 是否 已经 完成 以及 是否 可以 展示。
Scrum 主管
Scrum 主管( Scrum Master, SM) 负责 在 冲刺 进行 过程 中为 团队 隔离 所有 外部 影响, 并且 处理 团队 成员 在 每日 站立 会议上 提到 的 各种 影响 开发 的 障碍。 这样 才可 以 保证 在 冲刺 期间, 整个 开发 团队 能够 高效 地 朝着 当前 的 既定 目标 努力。 产品 负责人 要对 做出 怎样 的 产品 负责, Scrum 主管 则要 对 如何 完成 产品 的 流程 负责。 因此, Scrum 主管 的 职责 就是 确保 整个 团队 按照 既定 的 流程 来 完成 既定 的 产品 目标。 Scrum 主管 能够 主导 对 流程 的 改进( 比如 把 冲刺 周期 从 四周 缩短 到 两周), 但是 他们的 权限 也是 有限 的。 比如 Scrum 主管 只可 以指 导 开发 团队 按照 Scrum 流程 开发, 而 不可以 越俎代庖 地 指定 开发 团队 如何 实现 一个 故事。 作为 流程 负责人, Scrum 主管 要 负责 组织 每日 站立 会议, 他们 要 确保 所有 开发 团队 成员 都 出席会议, 并且 记录 会议纪要 以防 遗漏 某些 行动 项。 不过, 这 并不 代表 着 团队 成员 要在 会议上 给 Scrum 主管 做工 作 汇报, 每个 成员 参加 站立 会议 的 真正 意图 是 为了 让 所有 与会者 都能 大概 了解到 自己的 工作 项 进度 和 状况。