敏捷开发之时间盒
什么是时间盒
时间盒是指针对某件事或某个目标,给定一个固定的可用时间,这个时间不能缩小也不能放大。时间盒一般情况下是一个比较短的时间,例如几小时或者几天,人们需要在这个给定的时间内尽全力去达成目标。
项目管理过程中时间盒是用来剔除不确定性的一个工具,与传统的项目管理理念(计划驱动结果)相反,敏捷项目管理是基于Time box中应得到的结果来驱动计划定制与更新的。
为什么使用时间盒
专注(focus) 心理学认为安排结束日期为一周之后,比在一个月之后造成的专注效果会更好。时间盒被视为是帕金森定律(Parkinson’s Law)的一剂良药:“如何开展工作?只要有效地填满完成前的这段时间。”
提升互信 无论是迭代,还是整个项目,时间盒的另一个价值来自通过频繁达成小的目标来让团队与外部干系人建立信心。
降低复杂度 通过为期两周的时间盒迭代,团队承担的是可管理的复杂度,做他们力所能及的工作。数据表明,低复杂度的步骤能够提高生产率。
尽早促成难度大的决策和权衡 在一个Scrum项目中,受限于双周的迭代时间盒,在迭代计划会议上,团队和PO都将非常认真地考虑哪些工作纳入迭代中,哪些推迟。由于每两周就要向客户演示系统,因而制定迭代目标和优先级时就不会含糊不清,利益相关人也会被迫尽早严肃地考虑优先级。
更好的过程控制 时间盒是一个以时间盒结束点的决定为标记的短期投资。它使得项目在走得过深而不受控之前,让风险得到更多的最小化机会。
尽早失败或交付价值 由于时间短,它可以更快的反映失败或更早提供价值。更早提供价值,也就意味着生产出了有用的东西。更快的反映失败可以使你更快地知道你是否能达到目标,满足需求,换句话说,如果你不知道何去何从,你可以更快地回到起点,尝试其它的途径。
使用步骤
时间盒的定义可以被总结为以下三步:
计划(Plan)、执行(Do)和复查(Review)
1、计划(Plan) 这包括对时间盒的预期产出达成一致,花费多少能达到目标(时间盒的长度、对于技能的要求、预算等),以及度量成功的标准是什么。作为一个指导原则,一般来说,这一步大约需要时间盒的10%-15%。
2、执行(DO) 这意味着做实际的工作去完成目标,生产计划中的预期产出。这一步大约点时间盒的70%。
3、复查(Review) 这一步包括总结学到了什么,建议或决定下一个时间盒向哪个方向走。
应坚持的原则
最后我们总结一下时间盒使用过程中应该坚持的原则:
固定可用时间长度,固定的结束日期
时间盒内的资源保持稳定
时间盒从来不应作为绩效考核手段
要有定期同步
要有明确的目标和稳定的范围,减少范围的变动比例
每个时间盒结束后都有反馈与改进