被学员问到:“为什么这个冲刺周期(或者说迭代周期)要固定不变?我理解这个是不是跟着项目拆解迭代任务量跟待办这些相关?遇到快速的一周迭代完成不好吗?”
以下是我结合多年项目管理、研发团队管理经验的理解:
可预测性和稳定性:固定冲刺周期可以提供可预测性和稳定性。团队可以根据过去的经验和数据,准确地估算出在固定时间内可以完成的工作量。这样,团队和利益相关者可以更好地规划和预期项目的进展。
规避压力和焦虑:如果冲刺周期根据任务量进行调整,可能会导致团队在每个冲刺中面临不同的时间压力。这种不确定性和压力可能会影响团队成员的表现,增加他们的焦虑感,并降低工作质量。固定冲刺周期可以让团队在相对稳定的工作节奏中进行工作,减轻压力和焦虑。
提高效率:固定冲刺周期有助于提高团队的效率。通过持续改进和迭代,团队可以更好地规划、评估和执行工作。团队成员可以通过经验和反馈不断学习和成长,逐渐提高工作效率。在固定周期内进行迭代和反馈,有助于团队不断优化工作流程和提高生产力。
适应变化和风险管理:固定冲刺周期使团队更容易适应变化和管理风险。敏捷开发强调快速响应需求变化,并且可以在每个冲刺结束时进行评估和优化。固定周期提供了一个明确的时间框架,使团队能够更好地规划和管理变化,减少项目风险。
如果团队发现在固定周期内无法完成预定的工作量,可以通过迭代过程中的反馈和复盘来分析原因,并进行相应的调整和改进。灵活性是敏捷开发的核心原则之一,因此团队应该根据实际情况和需求灵活地调整冲刺周期。
顺便说一句,从前遇到过某公司的,言之凿凿地说:“我们公司实现了真正的敏捷!我们每天迭代多次,每次迭代都有发版。”
”自从用了敏捷,我们公司开发效率有了飞速提升!原来一周的活儿,现在三天就完成了!”
第一段话,猫哥觉得ta对iteration和release恐怕有什么误解;各个公司对版本控制有不同策略,发版快不代表软件技术含量高或者质量好。比较典型的:Windows系统多久发布一次?
第二段话,猫哥以为国内一直对敏捷有着深深地误解... 敏捷的原文是Agile,表示灵活,强调的是“敏”,不是fast、rapidly... “敏”做到了,返工少了,自然会“捷”。
有些公司借敏捷的名义搞加班,是对敏捷开发本意的弯曲。属于“伪敏捷”。