=============================================
产品的动态比任何书面报告更能精确反映项目状态。
=============================================
阶段性完成能提供更多选择。项目团队在每个阶段末尾评估可推出产品并不代表产品非推出不可,不过如果真的有必要,产品可以随时推出,而且将产品完成到待命状态,所需的功能应有尽有。如果你没采用阶段性完成的做法,你就没有这种选择。
4.阶段性完成可降低估计失误
阶段性完成可通过对推出产品各部分功能逐步完成来避开估计错误的问题。与一次对整个项目做出大型评估相比,项目团队可以灵活地分别对几个小版本做小型评估。在每个版本中,项目团队可以从评估中吸取教训,重新校正做法,并改善项目现况,使项目的未来预估更为精确。
5.阶段性完成均衡了弹性与效率
分阶段完成产品让项目团队有精确的时间来决定软件中该更改哪些东西,这些时间来自阶段衔接的空挡。在空挡内决定软件规格的变更,让开发团队不必一直考虑软件改变,却能保证让项目不致遗漏该考虑变更的东西。
阶段性完成的代价从前述所列的好处中,阶段性完成的做法听来似乎毫无缺点,其实则不然。阶段性完成的做法要付出相当代价。因为项目团队需要时间准备各种可推出的软件,在每个阶段重复测试已经测试过的功能,推出软件前进行相关的版本管制工作,提供试用的不同版本软件没预料到的问题的解决方案(如果阶段性完成的软件真的拿出去给人使用),还有规划阶段性发行这种做法的好坏等等,都会提高项目的负担。
其中的某些代价并不真的是额外多出来的它们不过是让本来隐藏在项目末尾的一些成本提早显现出来而已,找出缺陷并修正错误就是这类的隐藏成本。阶段性完成项目的有些工作人员在一开始会抱怨他们把时间都花在修正错误上。实际上他们是在修理早晚都得修理的东西,而且这些在项目中先找出来的错误愈早修正,花费的成本就愈低廉。
其他代价也许是多余的,如对外发出很多不同版本的软件,会增加项目的整体负担和总成本。
===============================================================
阶段性完成并不是万灵丹,不过总合起来,那些额外的负担相对于明显
改善了的状态、质量与时间的匹配、精确预估与降低风险等来说,不过
是一点小小的付出而已。
===============================================================
规划阶段图5-2的阶段性完成流程图说明项目早期活动,如需求分析与构架设计都是连续不断进行的。在投入构架设计的阶段之前先完成大部分需求分析工作,以及在进行细节设计与实作之前先定好整体构架,都是重要的事情。不过实际上,这些活动都是在同时间内重叠进行的,这是不可避免而且必然的事情。图5-3所描绘的,就是这种重叠进行的情形。

从本图中,建立项目团队应该在开始构架设计前先做好大部分需求开发的工作。在开始细节设计以前,应该先完成大致的构架工作。这么做,是由于错误修正的成本会随着时间的延后而提高。80/20比例的规则可以应用到这上头来:在开始进行构架工作前,先完成80%的需求开发工作,而在开始细节设计以前,先完成80%的构架设计。80%并不是随便选定的比例,知识基于一条良好的经验法则:这样可以让团队在明白表示不可能一次把这些工作完全做好时,还能在项目初期先满足大部分需求。
细节设计、程序写作、整合与测试差不多在同一时间内完成,因为阶段性完成的做法会在各阶段中产生设计、实作、整合与测试的小循环。使用文件的撰写会提早进行,因为使用者需求先被开发好了(这在后面的文章会提到),而且这些工作会持续进行,管理与规划也会持续处理。这样的复杂性也许会让人以为这种做法只适用于大型项目,不过实际上几乎任何项目都可以应用这些法则,只是程度上多寡的问题而已。
汇聚人力从人力观点来看,在阶段性完成项目中应有两个阶段。在第一阶段中,项目还在酝酿中,团队正在开发需求和建构构架。在这阶段的整体努力程度一般被认为要低于主要实作阶段。前述项目完成10%~20%后决定要不要继续进行下去就是在这阶段中处理的。这一阶段的工作人员应该是技巧高超的资深开发人员。
第二阶段是阶段性完成时期。在这阶段中,项目团队处理细节设计、软件构件与测试。技巧高超的资深开发人员在这一阶段也扮演重要地位,不过项目也需要质量保证人员、技术文件写作人员和资历较浅的软件开发人员。
在项目后半50%里,你可以看出质量保证、细节设计、程序写作的人员要求保持相对顺畅。在一次做完所有事情的做法中,项目通常得花费更多人力,而且到了项目末期可用人力会变少。阶段性完成的饿项目则在大部分时间里有着较流畅的人力比例,使资金流向、雇用、训练、测试和运算资源的使用跟着流畅起来。
图5-3中所描绘的动态并没有真正显示出各项活动花费了多少时间,图5-4说明了一个项目中的这些活动所需时间的分布情形。[@more@]
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7839396/viewspace-944917/
,如需转载,请注明出处,否则将追究法律责任。