探索阶段的内容包括执行工作、管理工作量、按计划交付产品功能;团队与客户、产品经理和其他利益相关方互相交流。
1) 迭代计划
迭代计划是执行工作和监督工作的基础。制订迭代计划涉及以下活动:
(1) 确定已知的风险对迭代计划的影响;
(2) 确定进度目标;
(3) 为每次迭代编制主题;
(4) 将故事卡片分派给每次迭代,必要时平衡价值、风险、资源和依赖关系;
(5) 结合故事卡片布局、完整的发布计划总结该计划;
(6) 运用权衡矩阵,必要时调整完成的计划。
迭代计划的初步构建发生在推测阶段,全面计划发布之后就开始为下一次迭代制订详细的计划。团队从发布计划中摘出每一个迭代计划,重新估计工作量,必要时调整这次迭代计划中的故事。
整个项目团队(包括产品经理、产品专员、客户、开发人员、测试人员、迭代经理和项目领导)应该全部参与迭代计划会议,迭代计划会议所需的时间基于项目的类型和迭代的长度。为期一周的迭代计划会议大约为1个小时,以此类推。
敏捷计划的宗旨就是匹配能力与计划。敏捷团队应使用初期的开发速度来初步测量迭代能力,再对任务进行研究并估计。随着开发团队学习敏捷的能力提高,还可以再调整能力。
确定迭代长度是迭代计划中另一项重要内容,设定迭代长度需要考虑发布时间范围、探索系数、准备和评审时间、学习需要以及测试时间等因素。通常,发布时间范围越长,迭代时间也就越长。例如,12个月的项目可能使用4周时间迭代,而3个月的项目可能使用2周时间迭代。另外,各个迭代时长要保持一致。迭代时长不同会打乱团队的开发节奏,也不利于估计工作。
2) 工作管理(www.daowen.com)
工作管理旨在让团队成员自己管理必要的日常任务,以便在每次迭代结束时交付故事。这是敏捷管理的特色:鼓励并依靠自我管理。
制订迭代计划时,团队成员确定交付计划所需的任务并签约承担哪些任务。这些任务不由项目经理分配。每个工作日的早上,敏捷团队应举行每日例会,监督工作量。会议内容包括:标注已完工事项,发现困难或障碍,提出需要迭代经理介入的事项以及当天要做的工作。每日例会的目的是讨论进展,计划当天的工作。
图21-6 燃尽图
此外,敏捷团队需要使用图21-6所示的任务燃尽图来表明每天完成的迭代任务数,以此监督进度。燃尽图一般用于展示整个团队的任务完成程度,如果用于个人可能会打击自我管理的积极性。
3) 持续集成
持续的集成可保证产品功能在开发期间尽早、经常性的组合成一个整体,从而减少以后无法组合造成的高成本和测试负担。产品集成的频率低,会导致后期发生问题而影响开发工作,发现和修正这些问题的难度也会增大。
集成的过程需要不断的测试,不断严格的测试可确保产品在整个开发过程保持较高的质量。如果在生命周期晚期再进行测试,产品则很难进行改进。因此,软件开发过程中持续地进行测试十分重要。
此外,开发团队还应适时对产品进行内部重构。重构指更新产品的内部组建,但重构不会改变实际功能。新技术、新想法会随项目的发展而出现,使用新技术、新想法重构产品能使产品适应未来市场的要求,因此非常重要。
4) 团队管理
管理项目团队是执行阶段中重要的工作,合理的管理能够使团队高效地完成项目目标。
敏捷项目团队管理相比传统团队管理有很多特点。首先,敏捷项目经理应开发团队成员个人的能力,而不是限制他们的工作。敏捷项目较为依赖个人能力,工作计划没有限制个人的工作范围。因此,敏捷项目经理应为他们提供宽松的和集中于项目的工作环境。
创建合作的团队。群体的支持有助于个人能力的发挥,这种支持包括思想层面和技术层面。共享知识和经验会加快问题的解决,观点的交流会产生更优化的设计。
团队的节奏需要保持一致。敏捷项目中的迭代过程和评审过程节奏不同,会使项目团队感到难以适应,需要管理者为团队在两种节奏之间找到平衡。保持团队节奏一致体现的是另一类项目管理。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。