当前位置: 首页 > news >正文

17 敏捷开发—Scrum(2)

        从上一篇 「16 敏捷开发实践(1)」中了解了Scrum是一个用于开发和维护复杂产品的框架,是一个增量的、迭代的开发过程。一般由多个Sprint(迭代冲刺)组成,每个Sprint长度一般为2-4周。下面全面介绍Scrumde 角色、流程等。

3个角色

产品所有者(Product Owner)

  • 定义所有产品功能,决定产品发布的内容以及日期。

  • 根据市场变化对需求排列优先顺序。

  • 确保干系人了解待办工作项。

  • 合理调整产品功能和迭代顺序。

  • 认同或者拒绝迭代的交付。

Scrum Master

  • 指导团队完成Scrum的实践。

  • 帮助团队排除遇到的困难,确保团队胜任其工作。

  • 对团队、产品负责人和企业进行 Scrum 流程方面的培训,并从实践中优化调整Scrum流程。

  • 负责安排冲刺规划、每日站会、冲刺评审和冲刺回顾所需的资源。

开发团队(Team)

  • 经典团队拥有 5-7人,成员包含开发、测试、产品、UI。

  • 团队关系在一个迭代中保持固定,且熟练掌握不同的技能。

  • 团队自我组织和管理(自组织,自驱动)。

  • 团队的所有成员互相帮助,以确保成功完成冲刺。

  • 团队预测认为自己在迭代过程中可以完成的工作量(尽量保持迭代长度固定,有助于准确预估)。

3个Scrum 工件

产品待办事项

  • 产品负责人或产品经理需要完成和维护的主要工作列表。

  • 功能、要求、增强功能和修复的动态列表,并用作 Sprint 待办事项的输入。

  • 产品负责人对产品待办事项进行不断反思、重新排定优先级和维护以适应变化。

Sprint 待办事项

  • 开发团队为实现当前冲刺周期而选择的需求或缺陷修复列表

  • 冲刺之前,从产品待办事项中选择要通过冲刺处理的待办项。

  • Sprint 待办事项较为灵活,可以在冲刺期间调整。

  • 保证基本的冲刺目标不能受到影响。

Sprint 迭代目标(增量)

  • 迭代目标即冲刺中可用的最终产品。

  • 冲刺结束团队展示在冲刺期间完成的“增量”。

Scrum研发流程

需求梳理,整理产品待办事项

  • 将收集的工单和反馈过滤后快速转化为需求,整理出产品 Backlog。

  • 需求原型设计、输出相关文档。

  • 对需求进行分级管理,设定需求优先级,指定需求的业务价值

迭代规划

  • 根据需求优先级,将产品待办列表中的需求规划至对应迭代。

  • 在迭代计划会议上,产品负责人按优先级讲解需求,与团队共同进行评审。

  • 确定当前迭代要完成的需求与验收标准达成一致后,形成迭代待办列表。

  • 细化需求,拆分成具体的子任务,方便后续处理和跟踪。

迭代开发

  • 开发人员领取相应的开发任务进行编码实现,完成代码构建、部署等。

缺陷跟踪

  • 测试工程师可根据迭代要完成的需求与验收标准编写测试用例。

  • 未通过用例转换为缺陷,提交给对应的开发人员。

  • 测试与开发共同关注需求的测试情况与缺陷修复进度,让缺陷在开发和测试之间高效流转,推动需求高质量上线。

迭代进度跟踪(每日站立会)

  • 在每日站立会议中,团队对齐迭代进度,尽早识别迭代可能出现的风险点,排除问题。

迭代评审与复盘

  • 迭代完成后,由团队成员对当前迭代的成果进行演示,产品负责人进行成果评判,与其他成员提出反馈建议。

  • 记录迭代中做的好的、做的不好的以及改进建议。

ONES支持的Scrum研发流程场景图

5个会议

待办事项整理会议(Backlog Grooming Meeting)

  • 时间:迭代计划会议开始之前2-3天召开

  • 目的:整理下个迭代的待办事项,解决产品负责人方工作阻碍。

  • 流程:

    • Product Owner建立产品功能列表(Product Backlog),并按优先级排序。

    • Product Owner按照实现顺序描述给在场的团队成员,Scrum Master与在场成员分析并提出疑问。

    • Product Owner现场解答、记录,会后补全不确定地方

    • Scrum Master与架构师分析包含哪些技术任务

    • Scrum Master子任务建立,方便迭代计划会议的时候团队可以更准确地预估任务故事点。

  • 目标:

    • 会议结束时,Product Owner确保在迭代计划会议开始之前团队提出的问题都能被解决

    • 如果团队发现需要加强或是完善的地方,Product Owner还有2-3天的时间可以补强,不浪费迭代计划会议的时间去做这件事情。

迭代计划会议(Sprint Planning Meeting)

  • 时间:每个迭代第一天召开,时长控制在1-2小时内。

  • 目的:选择本次迭代的Backlog和估算本次迭代的工作量。

  • 流程:

    • 产品负责人逐条讲解最重要的产品功能,开发团队共同估算Backlog所需工作量,直到本迭代工作量达到饱和。

    • 产品负责人参与讨论并回答和需求相关的问题,但不干扰估算结果。

    • 认领任务(或由组长协商分发),独立或与别人一起完成任务;

每日站会(Daily Meeting)

  • 时长控制:10-15分钟

  • 内容:

    • 昨天工作内容

    • 今天工作内容

    • 遇到的困难,有没有找到解决方案,是否需要队友帮忙。

评审会(Retrospective Meeting)

  • 时间:开发完成测试环境后。

  • 小组向产品负责人展示迭代工作结果,产品负责人验收给出评价和反馈。

回顾会(Review Meeting)

  • 时间:迭代评审演示会结束后。

  • 内容:

    • 总结哪些事情做得好、哪些事情做得不好。

    • 改进方案。

备注:

  • 产品负责人可能会在当前迭代开始后就着手准备下个迭代的「待办事项整理」,边整理边插空去跟Scrum Master或团队成员沟通完成这些工作,省去待办事项整理会议(Backlog Grooming Meeting)。

  • 迭代计划会议(Sprint Planning Meeting)上可以进行技术方案的确定以及Scrum Master子任务建立。

    • 技术难度较大时,将技术调研、技术实现需求加入当前迭代并进行预估。调整其他需求优先级。

  • 一般评审会(Retrospective Meeting)和回顾会(Review Meeting)在迭代结束的最后一天先后开,评审结束就进行回顾总结,时长控制在1-2小时。

5个价值观

  1. 承诺 – 愿意对目标做出承诺

  2. 专注 – 把你的心思和能力都用到你承诺的工作上去

  3. 开放 – Scrum 把项目中的一切开放给每个人看

  4. 尊重 – 每个人都有他独特的背景和经验

  5. 勇气 – 有勇气做出承诺,履行承诺,接受别人的尊重

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 微信小程序根据动态权限展示tabbar
  • ChatGPT:@JSONField 有什么用
  • 【LeetCode】字母异位词分组
  • [Meachines] [Easy] Blocky Jar包反编译
  • 【HarmonyOS】应用推送使用个推SDK如何实现?
  • MySQL面试篇章—MySQL锁机制
  • 【C++ —— 认识哈希和unordered_set、unordered_map的介绍及模拟】
  • 【学习笔记】Redis学习笔记——第17章 集群
  • Mojo简介
  • 打卡第22天------回溯算法
  • 深度学习系列70:模型部署torchserve
  • python 裁剪图片
  • 《梁宁产品思维30讲》是一门深入剖析产品思维、产品认知框架的课程
  • Windows11和Win10如何彻底永久关闭Windows defender
  • MySQL可重复读的隔离机制下是否彻底解决了幻读?
  • 4个实用的微服务测试策略
  • css布局,左右固定中间自适应实现
  • Docker容器管理
  • Java比较器对数组,集合排序
  • js
  • k个最大的数及变种小结
  • Netty+SpringBoot+FastDFS+Html5实现聊天App(六)
  • nfs客户端进程变D,延伸linux的lock
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • Redis的resp协议
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • Tornado学习笔记(1)
  • 阿里研究院入选中国企业智库系统影响力榜
  • 笨办法学C 练习34:动态数组
  • 搞机器学习要哪些技能
  • 码农张的Bug人生 - 见面之礼
  • 排序算法学习笔记
  • 新书推荐|Windows黑客编程技术详解
  • 一份游戏开发学习路线
  • 责任链模式的两种实现
  • # linux 中使用 visudo 命令,怎么保存退出?
  • #define 用法
  • #数据结构 笔记一
  • (10)ATF MMU转换表
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (精确度,召回率,真阳性,假阳性)ACC、敏感性、特异性等 ROC指标
  • (免费领源码)Java#ssm#MySQL 创意商城03663-计算机毕业设计项目选题推荐
  • (七)c52学习之旅-中断
  • (三)Kafka离线安装 - ZooKeeper开机自启
  • (一)kafka实战——kafka源码编译启动
  • (轉貼) 2008 Altera 亞洲創新大賽 台灣學生成果傲視全球 [照片花絮] (SOC) (News)
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • ***通过什么方式***网吧
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .net 中viewstate的原理和使用
  • .NET8 动态添加定时任务(CRON Expression, Whatever)
  • .NET业务框架的构建
  • /bin/bash^M: bad interpreter: No such file or directory
  • [ Linux ] git工具的基本使用(仓库的构建,提交)
  • [ 网络通信基础 ]——网络的传输介质(双绞线,光纤,标准,线序)