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. 勇气 – 有勇气做出承诺,履行承诺,接受别人的尊重

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3268811.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

[Windows CMD] 查看网络配置 ipconfig

ipconfig 是一个网络命令工具,用于显示所有适配器(网络接口)的 IPv4 和 IPv6 配置信息。这个命令在 Windows 操作系统中非常常用,也存在于其他一些基于 IP 的网络系统中,如 macOS 和 Linux(在这些系统中通常…

Android中广播接收器BroadcastReceiver学习

目录 一 前言二 分类2.1 标准广播2.1.1 动态注册2.1.2 静态注册2.1.3 带权限的标准广播 2.2 有序广播2.3 系统广播 一 前言 BroadcastReceiver是四大组件之一,用于组件间通信,底层是binder机制。注:(贴的代码是Compose写的且不规…

unity2D游戏开发07整合游戏

角色类 设置角色类,在Scripts下新建MonoBehaviours文件夹,并将MovementController拖进去 在MonoBehaviours新建c#脚本,命名为Character,双击打开编辑 编写代码 using System.Collections; using System.Collections.Generic; using UnityEngine;public abstract class Ch…

【QT】QT 窗口(菜单栏、工具栏、状态栏、浮动窗口、对话框)

Qt 窗口是通过 QMainWindow类来实现的。 QMainWindow 是一个为用户提供主窗口程序的类,继承自 QWidget 类,并且提供了⼀个预定义的布局。QMainWindow 包含一个菜单栏(Menu Bar)、多个工具栏(Tool Bars)、…

2024最新Selenium面试题(附带答案),建议收藏备用

一.你在TestNG中使用了哪些注解? TestBeforeSuiteAfterSuiteBeforeTestAfterTestBeforeClassAfterClassBeforeMethodAfterMethod 二.如何从Excel中读取数据? FileInputStream fs new FileInputStream(“excel文件路径”); Workbook wb WorkbookFact…

LLM模型之基于MindSpore通过GPT实现情感分类

前言 # 该案例在 mindnlp 0.3.1 版本完成适配,如果发现案例跑不通,可以指定mindnlp版本,执行!pip install mindnlp0.3.1 !pip install mindnlp !pip install jieba %env HF_ENDPOINThttps://hf-mirror.com 导入对应的包 import osimport m…

目标检测 YOLOv5-7.0 详细调试自制数据集实战

目标检测 YOLOv5-7.0 详细调试&自制数据集实战 一、项目介绍及环境配置(一)项目解读(二)版本选择(三)环境配置 二、如何利用YOLOv5进行预测(detect.py)(一&#xff0…

计算机毕业设计-程序论文-基于 Java 的高校教资报名系统的设计与实现

本系统开发采用技术为JSP、Bootstrap、Ajax、SSM、Java、Tomcat、Maven 此文章为本人亲自指导加编写,禁止任何人抄袭以及各类盈利性传播, 相关的代码部署论文ppt代码讲解答辩指导文件都有可私要 项目源码,请关注❥点赞收藏并私信博主&#x…

Python 高阶语法

前言: 我们通过上篇文章学习了Python的基础语法,接下来我们来学习Python的高阶语法 1.初识对象 在Python中我们可以做到和生活中那样,设计表格、生产表格、填写表格的组织形式的 面向对象包含 3 大主要特性:  封装  继承 …

VitualBox虚拟机重启后配置无法保存,已安装软件变为没有安装

VitualBox虚拟机重启后虚拟机还原为上次开机的状态,安装的安装包配置啥的全部丢失。 按网上的配置了半天也没解决。最终用下面讨巧的办法,即不重启虚拟机。 我们不在重启虚拟机,那我们想关闭虚拟机的时候怎么办呢? 1、按下图所…

LangChain结合LLM做RAG文档搜索

我们知道LLM(大语言模型)的底模是基于已经过期的公开数据训练出来的,对于新的知识或者私有化的数据LLM一般无法作答,此时LLM会出现“幻觉”。针对“幻觉”问题,一般的解决方案是采用RAG做检索增强。 但是我们不可能把…

数据结构 链式存储 +

int DeleteLinkList(LinkList *list, char *name); int ReviseLinkList(LinkList *list, char *name, DATATYPE data); int DestroyLinkList(LinkList *list); int InsertTailLinkList(LinkList *list, DATATYPE data); ​​​​​​​删除 修改​​​​​​​ 销毁 ​​​​​…

PySide(PyQt)的QPropertyAnimation(属性动画)

学不完,根本学不完:(,感觉逐渐陷入了学习深渊。。。 QPropertyAnimation 是 PySide(PyQt) 中一个用于在时间轴上平滑地改变对象属性的类。它常用于制作动画效果,比如移动、缩放或改变透明度等。 基本概念 QPropertyAnimation 是 Qt …

C# 写入SQLServer数据库报错SqlException: 不能将值 NULL 插入列 ‘ID‘

private int id; [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)]//id自增 public int ID { get > id; set > id value; } 将ID属性下的标识规范由否改成是

活动预告|8月3日 Streaming Lakehouse Meetup · Online 与你相约!

随着大数据分析技术的发展,越来越多的企业采用了数据湖架构。基于 Lakehouse 的架构优势,结合 Flink 的 Streaming 实时流处理能力,Flink 推出了新一代的“Streaming Lakehouse”技术。这一技术旨在能够让数据在湖上自由流动,为用…

AI学习记录 - transformer的位置编码的理解

看完肯定懂,可能会更新 一看位置编码公式,感觉很懵逼 懵逼四点:(或者你还有其他不懂的点) 1、为什么使用正弦余弦公式?不可以使用其他公式? 2、为什么奇数位置使用余弦,偶数位置使…

FreeModbus学习——定时器

FreeModbus版本:1.6 协议栈初始化时会初始化定时器: eMBInit → eMBRTUInit → xMBPortTimersInit( ( USHORT ) usTimerT35_50us ) 协议栈使能时会使能定时器: eMBEnable → pvMBFrameStartCur → eMBRTUStart → vMBPortTimersEnable 定时…

基于单片机控制的变压器油压油温故障检测

摘 要 在电力系统的运行中,通过对其核心设备变压器的故障进行检测,以此能够及时、准确的发现变压器的故障,基于单片机控制的变压器油压油温的故障检测的方法,利用压力传感器、温度传感器对变压器的油压、油温进行采集并送入单片机…

day08:订单状态定时处理、来单提醒和客户催单

文章目录 Spring Task介绍cron表达式入门案例 订单状态定时处理需求分析代码开发扩展 WebSocket介绍入门案例特点 来单提醒需求分析和设计代码实现 客户催单需求分析和设计代码实现 Spring Task 介绍 Spring Task 是Spring框架提供的任务调度工具,可以按照约定的时…

Dify 零代码 AI 应用开发:快速入门与实战

一、Dify 介绍 Dify 是一个开源的大语言模型 (LLM) 应用开发平台。它结合了后端即服务 (Backend-as-a-Service) 和 LLMOps (LLMOps) 的概念,使开发人员能够快速构建生产级生成式 AI (Generative AI) 应用。即使是非技术人员也可以参与 AI 应用的定义和数据操作。 …