游戏项目中的迭代开发

发表于:2007-04-28来源:作者:点击数: 标签:迭代开发项目游戏中的
文章是同事翻译的,英国读 项目管理 回来的老大^_^我稍加整理,文中提到的RWPP实际上是一种 软件工程 的方法,类似于传统软件工程中的迭代式 开发 ,但文中提到的理论比传统的方法具体并且实用了不少,而且非常适合以创新为目的的 游戏 开发。很多人问我,国

文章是同事翻译的,英国读项目管理回来的老大^_^我稍加整理,文中提到的RWPP实际上是一种软件工程的方法,类似于传统软件工程中的迭代式开发,但文中提到的理论比传统的方法具体并且实用了不少,而且非常适合以创新为目的的游戏开发。很多人问我,国产游戏为什么比欧美,日本的游戏差,从我被老美打击的经历来看。主要有两点,首先是他们对开发基础的重视,比如说数学,3维理论等,研究得相当深入;另外一个就是软件工程,我们中国的开发人员一直说游戏不需要软件工程,实际上老外对软件工程的要求简直到了令人咋舌的地步。

Rolling Wave Project Planning (RWPP) 是一种阶段重复式的项目开发手段,适用于新产品开发,信息系统和其他技术开发领域。对于创新性的工作,它是一种极好的,正规的开发手段。如果应用得当,RWPP将会把严谨的进程和灵活性平衡的很好。它适用于生命周期属于渐进式的项目。(螺旋形,原形进化等等)

项目执行中的差距

在很多的组织中,项目计划和执行过程结合的不是很好。过去的两年里,我问过千余位项目从业者“为什么项目会失败”并且收集数据。表一列出了关于项目计划,执行和控制(PMBOK中提到的项目管理过程中的三个)方面的一些主题并且提出了项目执行中的差距。

计划过程相当于一个过滤器,将复杂的,动态的,充满风险的“开放式”的组织环境系统转换成“闭合式”的项目系统。项目计划必须要在提供一个架构的同时,保持一定的灵活性,特别是那种含有开创性工作的项目,在很多情况下,这类项目的执行很难得出精确的答案或者指定具体的计划。我们需要一种“感知并回馈”的方法来应对变化和突然出现的变革。在这种环境中,项目计划必须在项目目标和实施能力(现有的资源和知识)上做一个平衡。


计划过程假设和开创性项目

在选择RWPP策略之前,项目计划组应该首先考虑到组织的climate和基本的计划过程假设。项目计划人可以能有很多假设,或者被组织行为所影响而建立某些假设。一般来说,这些假设有。

l         假设一:解决问题的最好方法就是把问题分解成小问题去处理

l         假设二:计划和执行是分开来的项目功能

l         假设三:未来是不可预测的;计划将会指导行动的过程

l         假设四:项目是简单的(深层次的调查发现,表一中所列出的差距很多情况像是因为项目计划者作了过于简单的假设)

这些假设就导致了一个直线型的,一步一步地问题解决方式。当然,有很多项目是紧凑的,定义很好的,并且是有规可循的(因此,以上这些假设是可行的)。但是,如果这些假设都不成立,那么项目经理就应该考虑一下使用RWPP。

开创性的工作有一个很大的特点就是探索,随着项目的逐步成型,需求就会一步一步地出现并且发展。例如,在建设-展示-评估-修改这种循环中,会有很多的努力会用在制作原形或者DEMO中来确定客户的需求。早期的,精确的项目定义很难应用到创新性项目中。

RWPP式工作分解结构策略

工作分解结构(WBS)对于项目管理来说绝对是一个最基本的技巧,它能为所有的计划和执行活动提供一个架构。一个失败的WBS将会破坏所有的项目计划,执行和控制工作。项目范围管理,或者说WBS的最终目标就是抓住项目需要且仅仅需要的所有工作。

WBS并不是一个进度,并且在项目组开始制定项目时间轴之前就应该被制定出来了。WBS只是一个工作的等级关系,并没有任何关于工作包之间关系的信息。WBS是项目进度制定,风险管理,成本估算和其他项目管理所涉及到的工作的一个输入信息。

RWPP的一个核心的前提就是在WBS的高层级使用时间段结构。并且在每一个时间段结束后,项目组开始制定下一时间段的工作计划。

表二说明了如何将工作进化的分解成工作包的。在RWPP中,计划者将用连续的计划编制波来实行精心细化的不连续的计划编制范围。


RWPP方法的应用

应用RWPP之前,项目必须进行一些基本工作,例如项目宪章(立项),项目概况。我列出了实行RWPP的程序并将在下边进行进一步讲解:

1.         从产品和项目生命周期的角度来评估开发策略

2.         制定time buckets

3.         高层估算

4.         细化第一层WBS

5.         基准线

6.         实施第一部分

7.         对下一部分重新计划

第一步——研究产品和产品开发策略的本质。评估生命周期策略和组织约束(例如受委托的方法)。评估Rolling Wave的优缺点,是否是最好的解决方法。

第二步——制定计划可视距离的标准,包括可视距离的数量,每一组的时间。我们也把这个计划分组称之为“time bucket”。类似的,你可以思考一下架船在未知海域内行驶。你的可视距离在二十英里左右,但是你认为对岸在九十到一百一十英里之间。你应该停船,并且依据可视距离重新确定你的航线至少五次。也就是将实际总距离被可视距离除。

第三步——根据你现有的知识和现在正确的假设,制定高层级的对于各个计划可视距离的成本和资源评估。不要试图在细节上钻牛角尖,也不要尝试从底层向上评估。那么你的团队就会深陷到细节的泥沼里。我会在后边纤细介绍“大块概况”

第四步——这一步将作为一个并行的计划会议进行实施。项目参与人为第一个项目计划可视距离制定一个个人的工作包计划,“从底层向上”。这部分包括评估工期,资源和成本。同时,用“从上层向下”的方法确定将会在以后的计划可视距离中出现的工作。在开创性的项目中,需求是日益增多,日益详细的。为了下一个可视距离的计划重新编制而评估一个工作包并且定日期。记住,工作包会在创造价值的同时消耗时间和资源。作为重新规划工作包的可交付成果,就是一个不断更新的RWPP计划。计划人能够修改日期和可交付任务之间的关系,或者检察现在项目完成的情况。

第五步——和你的项目执行人,赞助商,用户,项目经理和其他项目参与人一起为项目计划制定基准线。 这个制定基准线的过程需要包括事先的风险分析。修正三角制约(时间,资源,项目范围)并建立管理上的预案。

第六步——对第一部分的计划进行实施,并且完成重新编制计划的工作。

第七步——评估执行中的经验、教训,为下一个可视距离重新编制计划。

时间和成本的基准线有时候是很精确的,工作范围的基准线(WBS)是会变化的,并且反映不断增加的细节工作。

项目团队需要重复这个重新编制计划并执行这一循环。

大块概况和承诺的维护

分解目标和工作是项目计划的基础。有时候概况会很好的描绘出问题所在,但是有时候概况只能模糊的反映出技术或解决方案。在RWPP中,很重要的一点就是对概况进行大块划分并且进行管理。可视化模型,严谨的需求陈述,还有项目相关人的参与是几个重要的手段。

维持能量和热情也是项目管理很重要的一个任务。RWPP参与性的本质在这里也会发挥作用,因为这里会有一个在大的层面上对阶段工作成果的强调。

在一个案例中,我有五个项目组接受了一个表面上不可能完成的目标,并且将概况按两个月大块划分,与集中到最终目标不同,集中精力完成一些中间目标。这种简化会帮助项目组避免被动的玩世不恭的态度。

完成RWPP大约需要多长时间?

我看到过很多团队建立并开始实施RWPP在一个很短的时间内,比如一天,这样并不好,因为计划的质量和可行性是和你在计划编制时付出的努力成正比的。后续的计划编制一般会耗费几小时到几天。

另外项目在编制计划时候要按比例投入一定的努力在风险,复杂性和创新性上。

大多数的项目参与人会很习惯反复,“从来没有时间来计划,但是有时间返工”。编制计划经常会表现为压倒性的困难,RWPP能够为那些因为计划编制的困难而逃避编制计划的人提供一个简单的出发点。一个好的项目计划是付出最少的努力来保证组织最大的需要。

在似是而非中掌握RWPP

当精确的管理制约和不精确的数据同时存在时,人们会感觉到很不舒服(无论是个人还是集体)。在大多数案例中,我发现这种不舒服可以追溯为对过失的恐惧,和稍微有点不切实际的预期一个“正确”的计划是可能的。项目经理必须对维持项目计划编制中的规范负责。因为人们的不满和企业的惯性很容易创造出一种跳过重新编制并直接进行即兴式的实施当中。

有很多项目或者企业的计划是似是而非的。这种似是而非是达成“是”的必要条件。比如,量子物理认为能量和物质在亚原子层级上是相同。在组织中,人们必须有个人身份和团队身份。两个主要的似是而非的论点将在下辩论述,其余的会在表三中列出来。


l         方法(过程)VS结果——我们的项目团队需要完成一个结果,但是要达成一个长期的,稳固的结果必须要经历一个不断重复的过程。如果项目本身只有过程,那么这个项目其实没有完成任何工作。反之,如果项目本身只有结果,那么就会出现即兴式的实施,一个不稳定的结果,和建立在个人英雄主义上的组织文化。

l         知识(探索)VS任务(解决问题)——在技术领域这是一个比较普遍存在的问题,并且经常导致科学家和工程师之间的冲突。项目引入可以进度化的工作“任务”,但是开创性的项目必须要包含进攫取知识的概念(“你不能够为一项技术性的突破制定进度”)

要想完全的掌握RWPP,必须要能够理解这些似是而非的论点。一个帮助理解这种似是而非的论点的方法是画象限法,像表4那样。他取似是而非的论点的两极,并将两极的优势和劣势结合起来。箭头指明了管理这种似是而非涉及到的利害关系的先后顺序。一个“改革者”应该学会这种方法来在过程和结果中取得一个平衡。


现在,很多组织已经开始使用“项目管理办公室”。在很多案例中,那些办公室会强硬的期望他们有“正确”的方法,并期望其他人顺从。你经常会发现这种“方法论政策”并不是RWPP。他们更重视官僚的系统和程序上的控制。要想RWPP起作用,在过程中相互信任是达到一个好结果的本质。

在企业层级上更有活力的计划编制——平衡企业计划

项目实现企业战略的一个工具。通过一个又一个的项目,组织来寻找并达到他们既定的目标,但是机会经常会从单个的项目成面升级到企业层面。计划编制会促进组织内部的交流过程并使攫取支持成为可能。

RWPP就像一个“策略的泵”,会将机会推向企业的高层并让他们注意到。企业经常会在具体的项目身上发现很多机会。这个论调也从“民主的计划”支持了同时期的战略领导思想。

RWPP手段和很多企业的财务上的分配,还有预算编制过程是一致的。举例来说,有些企业使用five-quarter rolling wave的投资方式。

RWPP还和项目开发中phase-gate方法相一致,会为项目投资组合提供一个缓冲或出口。这一方法认定计划和环境不适静态的,而是根据客观实际时刻变化着的。

总结:在多变的环境下保持平衡

计划编制和执行技巧是项目经理资格的核心。合格的项目经理会从多方面对策略进行评估,并且去一个平衡点作为行动的标准。RWPP比传统的线性计划编制方法有很多优势,能够广泛的适用于创新型的工作。

在一个多变的环境中,项目经理必须要制定一个灵活的政策来回应动态的环境。就像浪潮冲刷沙滩一样,RWPP会推动风险和机会,创造价值和杠杆作用。它是动态的,鼓励适应性的,灵活的计划和执行。对创新性项目和那些主体范围经常变化的项目。潮流从来都不会完完全全的“是”或完完全全的“非”;他们有似是而非的特点。RWPP能够帮助项目经理提供一个灵活的方式来进行项目计划编制

原文转自:http://www.ltesting.net