项目开始
您可以在“项目开始”初始阶段安排项目的基本资源。
主题内容
计划会议
迭代开发
项目是范围驱动型项目还是日期驱动型项目?
计划项目资源
确定角色和职责
确定交流计划
确定利益干系人
制定项目计划大纲
评审项目计划
获取项目承诺
计划会议
在早期项目阶段,若干利益干系人和行业专家应齐聚一堂,共同商讨项目和制定产品计划。 应根据项目性质和复杂程度及其可交付产品选择利益干系人。
会议可能需要数天或数星期才能完成,具体取决于项目的规模及其复杂程度。
迭代开发
风险管理中的一项重要技术是以迭代(通常为 4-6 个星期)形式计划项目。 迭代计划是关于项目团队将开发和测试的功能的列表。 各功能分别指定用户通过使用该产品将能执行的任务或任务的改进变化形式。 每次迭代结束时将演示所计划的功能。 在某些迭代结束时,将发布完成了一部分的产品,以供一组有限用户试用。
从这些演示和试用中获得的反馈用来对计划进行评审。
在安排产品计划时,要将首要的用户方案和系统主要组件安排在早期阶段执行,即便只是以简单方式执行亦可。
在大多数项目中,最重大的风险之一在于错误理解要求。 不仅开发团队可能会错误理解要求,最终用户和利益干系人也可能会错误理解要求。 他们可能会发现,很难想像出新系统的安装会对其业务活动造成怎样的影响。
此外,业务环境还可能在项目生存期内发生变化,从而导致产品要求也发生相应变化。
迭代过程确保可以在项目结束之前融入演示产品时发现的任何要求调整,而不会带来大量返工的成本。
另一个重大风险是错误估计开发成本。 致力于全新领域(也可能是全新平台)的开发人员可能很难在项目前事先准确估计开发成本。 某些情况下,可能很难确定特定实现策略是否会有效实施。 但是,通过在每次迭代结束时评审计划,团队可以考虑前期迭代的体验。 这就是为什么一个好的产品计划要在早期阶段安排每个主要组件的部分工作的原因之一。
项目是范围驱动型项目还是日期驱动型项目?
某些项目要求在交付之前所有要求都必须能正常发挥作用。 此类项目在软件环境中极为罕见。 在现实世界中,修建桥梁可能算得上这样的项目。 修建了一半的桥墩毫无用处。 另一方面,已完成一半但规划得当的软件项目应该可以部署并供一组有限用户使用。 然后可以通过多次升级以增量方式完成此项目。
首先,确定您的项目是否真正由范围驱动。 如果是,您必须等待确定最终日期,直到您具备详细估计和详细计划为止。 您将为此付出代价。 计划开销会相应增加,为应变估计错误而安排的富余时间将进一步推迟交付日期,从而增加成本。 因此,在确定项目由范围驱动之前,请务必确保您有十足的把握。 此类项目在复杂的系统工程环境中出现的可能性比在纯软件产品或服务情况中出现的可能性更高。
大多数软件项目都可以以增量方式交付,因此都由日期驱动。 例如,如果某个计算机游戏将在美国假期期间发布,则必须在 10 月准备就绪。 如果无法在 10 月交付,这将严重影响万圣节和圣诞节之间的销售额,并且如果计划延迟两个月,您将错失两次良机。
计划项目资源
在为项目配备人员时,可以按所需交付日期来推算。 在讨论人员需求数量时,可以参照以前的项目的历史数据,以便配备充足的资源。
在了解人员要求之后,如有必要,请绘制项目组织结构图以明确项目团队结构、资源级别和地理位置分布。 将所有人员信息保存到项目门户网站。
确定角色和职责
描述各项目角色及其职责,并将其发布在项目计划中。 各项目参与人员应了解其在项目中的角色和职责。
确定交流计划
确定项目交流计划至关重要。 交流方式有助于管理项目的协调成本。 应确定与会人员、召开会议的频率、交流方式以及如何上报任何一次会议中普通与会者无法解决的问题,这一点非常重要。
良好的交流计划的目标是:确保项目协调活动尽可能顺利进行,避免因交流错误而浪费精力。
应将交流计划发布到项目门户网站,并根据需要进行维护。 交流计划是面向所有人员的有用工具,对新成员尤其有用。 它有助于团队成员了解大型团队如何运作,如何为不同目的采用不同方式与不同团队成员正确交流,从而完成任务。
确定利益干系人
确定所有相关项目利益干系人。 除核心团队成员以外,该列表还应包括与项目的成功实施或产品投入服务后可能产生的影响相关的业务人员和技术人员。 这些利益干系人可能是软件工程活动的上游或下游人员。
制定项目计划大纲
绘制首个项目计划的草图版本,可在开发开始后修改此草图版本。 此版本的用途在于有助于与项目发起人共同商讨资源和时间表。 它应概述主要功能及其估计交付日期。 有关更多信息,请参见规划项目 (CMMI)。
评审项目计划
在项目门户网站上发布项目计划大纲。 虽然此计划中已纳入了大量工作,但是此高级计划仍应推迟许多详细计划决策。 此推迟行为是有意的。 现在囊括太多详细信息将在以后造成浪费。
如果要求尚不确定,则仅对这些要求进行大致计划,并推迟制定细节内容,直到可获取更多信息为止。 制定获取此信息的计划。
安排与所有利益干系人召开评审会议。 面对面会议始终是此类活动的最佳方式。 请务必安排足够的时间,以便进行全面评审和听取反对意见。
获取项目承诺
既然已就项目计划与项目利益干系人达成一致,请获取每一利益干系人批准该项目计划的承诺。
收集承诺,并在项目门户网站中存档详细信息。
其他资源
有关更多信息,请参见以下 Web 资源:
A Practical Guide to Feature Driven Development(功能驱动开发实践指南),Stephen R. Palmer 和 John Malcolm Felsing;Prentice Hall PTR,2002 年。
The IT Measurement Compendium: Estimating and Benchmarking Success with Functional Size Measurement(IT 评估纲要:使用功能规模评估进行成功估计和标准检查),Manfred Bundschuh 和 Carol Dekkers;Springer,2008 年。