欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

一次迭代式开发的研究:开始真正的工作

程序员文章站 2022-03-02 18:29:49
...
我们经过以上一系列的分析,工作量评估与优先级评估,制订出一个迭代式的项目计划,再经过一系统用户确认与公司评审以后,终于可以开始我们真正的开发工作。

其实,迭代式开发的执行过程,也就是制作和不断去关注与评估项目进度表的过程。因此,当项目进入执行开发过程时,项目经理应当首先制作项目进度表。现在我们看看项目进度表长得啥样儿。

在一个项目进度表中,首先被纵向划分为三个区域:未开始任务区、正在进行任务区和已完成任务区,当然还可以增加其它区域,如下阶段完成任务区,以及工作进度、费用成本的统计图等。

同时,项目进度表又被横向地划分为数个区域,每个区域就是一个迭代期。在项目初始的状态下,所有的功能以及从中分解出来的工作,按照项目计划被分配到了对应的迭代期、未开始任务的区域。

另外,另一个统计表对整个开发进度的监控比较重要,它被称作Burn-Down Table(暂时翻译为剩余工作量统计表吧)。这个统计表的横轴是项目进行的时间,纵轴是剩余的工作量。项目开始时,横轴应当是0,而纵轴,按照项目计划,应当是该项目的总工作量。每完成一项工作,就减去该项工作的工作量,直到所有工作完成,纵轴为0。如果项目是正常而平稳地进行的,整个统计表就应当是一个平滑下降的直线,直到最后在计划交付时间(Deadline)结束,这跟直线被称作基准线,但它是理想的、实际情况往往不会是这样的。在整个项目的每天都记录下当天的剩余工作量,那么这个表就呈现出一副实际工作进度曲线图。当项目因各方面原因被延后时,该曲线就会高于基准线;当项目因进展顺利而超前时,该曲线就会低于基准线。所以Burn-Down Table可以为项目经理及其成员随时掌握项目进度,及时调整项目偏差,提供方便。

当项目进入第一个迭代期时,项目经理将第一个迭代期的功能及其任务描述清楚,填入到正在进行任务区,同时不要忘记填写各项任务的负责人。众所周知,迭代开发的每个迭代期分为需求分析、设计、开发、测试几个部分,但在这个表中监控的内容可详可简。如果希望更精细化管理,可以将每个任务再分解为需求分析、设计、开发、测试几个部分分别进行监控;如果项目不是非常复杂则不用划分如此精细,可以划分为开发与测试,或者不划分开。每天早上,项目成员召开一个简短的例会,或者通过其它方式,向项目经理汇报各项任务的工作进度。项目经理收集各项任务的工作进度,在这张表中详细记录下来。如果一项任务全部完成,则将其放置到已完成任务区域,再将其它刚刚开始的任务放置到正在进行任务区。最后,项目经理计算项目剩余工作量,并将其填写到Burn-Down Table中。

记得极限编程(XP)的其中一项重要的思想就是及时发现项目进行过程中的进度偏差,并及时进行纠正,而Burn-Down Table的使用正是体现了这种思想。通过整理和绘制Burn-Down Table,为项目经理及其成员提供了一个清晰的可视化图表,表明项目当前的进度是超前还是延后。如果是超前,项目组可以进行更多的检查与测试,进一步保证项目质量;如果是延后,则不得不通过赶工、加班等方式,加快进度。

一次迭代式开发的研究:软件开发的风险
一次迭代式开发的研究:什么是迭代式开发
一次迭代式开发的研究:怎样进行迭代式开发
一次迭代式开发的研究:迭代开发从这里开始
一次迭代式开发的研究:准确的工作量评估
一次迭代式开发的研究:功能的优先级评估
一次迭代式开发的研究:一个迭代式项目计划
一次迭代式开发的研究:开始真正的工作
一次迭代式开发的研究:从容应对需求变更
一次迭代式开发的研究:需求变更的关键步骤
一次迭代式开发的研究:Where you are
(续)