“工作软件是进度的主要衡量标准。”“Working software is the primary measure of progress.”
衡量软件开发项目的进展可能是困难和有问题的。传统的方法是将一个项目分解为任务,并跟踪这些任务的完成百分比,以此来衡量进度;但是,这可能会产生很大的误导,因为通常任务列表不完整,并且完成水平通常需要一些主观判断,这很难做出,而且往往不准确。
测试是这方面的另一个因素,在过去,整个开发过程和测试过程可能是连续的。结果是,即使软件的开发看起来是完整的,但在测试和验证它是完整的之前,您不知道它到底有多完整。敏捷方法强调在开发软件时更同时地进行测试。敏捷中有一个概念叫做“完成的定义”,你会经常听到。团队应该清楚地定义“完成”的含义,这通常意味着软件已经过测试并被用户接受。在其他环境中,done 的定义可能会更加模糊,并受到解释的影响。如果您没有明确定义“完成”,则任何对完成百分比的估计都可能是可疑的。
更准确的进度度量方法是将一个软件项目分解为多个功能块,其中每个软件块都有一个明确的“完成”定义,并且可以向用户演示以获得反馈和接受。
更多推薦的 scrum 文章
Scrum 的基本功 - 集合中英文版本 (Scrum 事件)
Scrum 的基本功 - 集合中英文版本 (Scrum 工件)
Scrum 的基本功 - 集合中英文版本 (角色和責任篇)
Scrum 的基本功 - 集合中英文版本 (基礎篇)