敏捷減少了正在進行項目所需的前期規劃,因此您可以更快地為用戶開始創建有價值的產品和服務。但是,敏捷新手的組織經常會擔心如何使團隊的輸出可預測。Velocity是衡量敏捷團隊進度的一個很好的指標。在這篇文章中,我將解釋如何測量速度以及如何使用它來幫助計劃發布。我還要指出它作為預測工具的局限性。
什麼是速度?
簡單來說,速度是團隊在一定時間內完成的工作量。與我在上一篇文章中談到的燃盡圖一樣,速度可以用人 - 小時,任務數,故事點或用於估算工作的任何其他計量單位來衡量。
例如,在KanBan中,團隊處理持續的傳入任務流,這些任務的大小大致相同。在這裡,您可以通過標記為在一天內完成的任務數量來測量速度。通過在一周內平均這些每日速度,您可以估計團隊在更長的時間內能夠完成多少工作。
在這裡,我將關注速度如何在Scrum中起作用。這是一個傾向於用於數字項目的框架,這些項目可以實現明確的發布計劃。Scrum團隊的速度是衝刺中完成的故事點數(或人 - 小時等)。
如何測量速度
讓我們想像一個假設的團隊,並給他們一個適當的學徒風格的名稱。
Team Ignition計劃在他們的第一個衝刺賽中解決41個故事點。他們完成了28個故事點,並將13個故事點翻到了下一個衝刺點。所以他們的速度是28。
請注意,我們沒有計算任何部分完成的工作對團隊的速度。只有標記為“完成的任務"才算在內,即使在任務中只剩下一小部分工作要做。
這告訴我們Ignition的生產力是什麼?到目前為止並不多。我們知道該團隊沒有達到他們在衝刺中完成多少工作的目標。但是我們並不確定它們下降了多遠(我們不知道完成任務的時間有多接近)。
在一個衝刺中,速度不是用於進行預測的非常有用的度量。(但它確實讓團隊了解他們在單個衝刺中可以承諾的工作量。)讓我們跟踪他們進一步衝刺的進度。
點火在他們的第一個衝刺中獲得了28個故事點,第二個衝刺時達到36個,第三個衝刺時達到28個,第四個中有30個。所以它們的平均速度是30.5
這個平均值只有四次沖刺,比我們在一次沖刺後的快照更有用。很容易想像,如果積壓已經估計的用戶故事,我們可以使用此速度進行預測。我們可以預測團隊能夠以多快的速度完成所有工作。我們可以對即將發布的版本中我們能夠提供的功能進行有根據的猜測。
如何使用速度
關於使用速度來衡量生產力和做出預測,最重要的一點是要謹慎使用。
速度是對團隊表現的一目了然的衡量標準。但它並不包含您做出非常好的預測所需的所有上下文信息。為此,產品所有者,ScrumMaster和發布經理需要將他們聰明的老頭放在一起,深入了解細節。
Velocity最適合持久穩定的團隊,他們擁有豐富的工作(和估算)經驗。如果團隊中的人員頻繁更換,或者長時間缺席,那麼速度就沒那麼有意義了。如果您的產品積壓缺少用戶故事(在足夠長的時間範圍內,肯定會是這樣),情況也是如此。
對產品的未來缺乏確定性可能會令人擔憂,但這也是敏捷的好處之一。它使您能夠快速響應不斷變化的客戶需求,並在盡可能短的交付週期內將反饋結合到您的產品和服務中。它可以提前幾個月補償無法詳細規劃您的版本。
請記住:速度是一種預測工具,而不是目的本身。
References
Scrum Artifacts
- What are Scrum Artifacts?
- Definition of Done vs Acceptance Criteria
- What is Definition of Ready in Scrum?
- How to Write a Sprint Goal?
- What is Product Backlog in Scrum? Who Responsible for It?
- How to Refine Product Backlog?
- What is Sprint Backlog in Scrum?
- How to Prioritize Product Backlog Using MoSCoW Method
- How to Prioritize Product Backlog Using 100 Points Methods?
- What is a Sprint Goal in Scrum?
- What is Burndown Chart in Scrum?
- What is the Role-Feature-Reason Template?
- Sprint Increment vs Potential Shippable Product vs MVP vs MMP
- Write SMART Goals & INVEST for User Stories
- What is DEEP in Product Backlog?
- How to Write Product Vision for Scrum Project?
- How to Use Scrum Board for Agile Development?
- Who Create Product Backlog Items or User Stories in Scrum?
- What is Agile Estimation?
- What is Story Point in Agile? How to Estimate a User Story?
相关推荐
1. 敏捷团队中, Velocity(速度)低于预期时的处理方式 在敏捷开发中,Velocity是指团队在一个 Sprint 中完成的工作量。若 Velocity 低于预期,敏捷团队成员应该管理沟通,以重置相应团队成员和干系人的期望(选项...
Velocity和Freemarker模板技术比较 模板技术在现代软件开发中扮演着重要角色,而在目前最流行的两种模板技术中, Velocity 和 Freemarker 独占鳌头。在 WebWork2 中,我们可以随意选择使用 Freemarker 或 Velocity ...
总的来说,**FreeMarker**在功能性和灵活性方面优于**Velocity**,尤其是在处理复杂逻辑和大规模项目时表现更佳。然而,如果项目的复杂度不高,或者对性能有特别要求,那么**Velocity**也是一个不错的选择。最终选择...
标题“velocity和freemarker的比较”涉及到的是两个在Java Web开发中常用的模板引擎——Velocity和FreeMarker。它们都是用于将静态模板与动态数据结合,生成HTML或其他类型的文本输出,常用于MVC(模型-视图-控制器...
Velocity以其简洁、易读的语法和强大的功能,深受开发者喜爱。它将业务逻辑与表现层分离,使得开发者可以专注于页面布局,而无需关心数据的处理细节。 NVelocity是.NET平台上对Velocity的实现,它为.NET开发者提供...
在开发过程中,可以参考Velocity的官方文档,了解详细用法和最佳实践,同时利用`velocity-tools-2.0`中的工具提高开发效率。对于新手,建议先从基础的Velocity模板语言开始学习,然后逐渐熟悉并掌握Velocity Tools的...
【 Velocity 插件详解】 Velocity 是一款基于 Java 的模板引擎,它被广泛应用于 Web 开发中,特别是作为 Apache Struts 和 Spring MVC 框架的一...在实际开发中,开发者应该充分利用这些工具,以提升开发质量和效率。
Velocity的主要优点在于其简单易用和高度可扩展性,使得开发者能够将业务逻辑与表现层分离,提高代码的可读性和维护性。以下是关于这三个JAR文件的详细知识点: 1. **velocity-1.5.jar**: 这是Velocity的1.5版本...
1. **代码提示和自动完成**:在编写Velocity模板时,插件会提供模板指令、变量和方法的自动补全,有助于减少错误并提高开发速度。 2. **语法高亮和错误检查**:插件能够对Velocity模板进行语法高亮显示,同时实时...
在使用VelocitySite-2.0.8之前,你需要确保你的Eclipse环境已经正确安装了Java开发工具(JDT)和Web开发工具(WTP),这样才能充分利用插件提供的所有功能。安装插件通常可以通过Eclipse的"Help" -> "Install New ...
这本书深入探讨了Velocity的核心概念和技术,旨在帮助读者充分利用Velocity进行模板设计和页面渲染。 1. **Velocity模板语言(VTL)基础** - VTL是Velocity的核心,它是一种简单但功能强大的模板语言,允许开发者...
Velocity是一个强大的模板引擎,常用于...这不仅能确保模板引擎的正常工作,还能利用各种工具和库提高开发效率和代码质量。了解和掌握这些jar包的功能和用途,将使你在使用Velocity进行动态内容生成时更加得心应手。
最后,`reyuan.txt`可能是关于雷诺数(Reynolds Number)的文本文件,这是衡量流体惯性力和粘性力之间关系的无量纲数,对于判断流动是否从层流转变为湍流至关重要。 在实际应用中,开发和使用UDF需要对流体力学有深入...
5. **性能**:Velocity在执行速度上表现出色,因为它在编译时就生成了Java字节码,从而提高了运行效率。 **依赖关系:** 在"velocity-1.7"中,除了主jar包外,可能还包括了其必要的依赖库,以确保所有功能正常运行...
2. **代码提示**: 在编写Velocity模板时,插件会提供自动补全功能,包括Velocity指令、变量和宏等,提高编码速度。 3. **错误检查**: 插件可以实时检查模板中的语法错误和逻辑错误,并在问题出现时在编辑器中显示...
`velocity-1.6.2.jar`是Velocity的核心库文件,包含了Velocity的所有核心类和接口。这个版本的Velocity支持Java 5及以上的环境,并提供了许多功能,如: 1. **模板引擎**:Velocity提供了一个强大的模板引擎,允许...
下面我们将详细探讨在Velocity中如何进行空值和空字符串的判断。 ### 1. 判断Velocity变量是否为null #### 方法一:`#ifnull()` 或 `#ifnotnull()` 这两个指令属于Velocity Tools的扩展,如果你的项目中引入了...
- **高效性能**:Velocity在编译模板后生成Java源码,然后由JVM执行,这使得其运行速度快且资源消耗低。 - **可扩展性**:Velocity Tools和其他扩展可以增加更多功能,如国际化、表单处理等。 然而,需要注意的是,...