关于固定价格项目的思考

来源:互联网 发布:淘宝助理上传图片失败 编辑:程序博客网 时间:2024/04/28 15:57

谈到固定价格项目,我想很多人都会深感头痛。尤其是我们这些做外包的公司,一旦有客户想以固定价格的方式来做,很多时候会被认为不是太“好”的客户。而固定价格项目又是如此之多,以致于我们不得不长期忍受这种痛苦。

先来谈谈什么是固定价格项目。

固定价格项目是这样的一种项目:

  • 项目开始时供应商与客户对要交付的结果达成一致
  • 供应商与客户就完成项目所需的费用(价格)、时间达成一致
  • 在项目合同中对达成一致的交付结果和价格进行约定

这看起来是多么好的事情啊:双方都很清楚期待的结果,费用和时间,只要按部就班去做不就可以了吗?甚至供应商和客户都不需要更多的沟通了。

真的是这样吗?

作为专业的软件公司,我们早已认识到这是一种天真的想法!但是对于许多客户(就我的观察,应当是多数客户),这仍然是他们期待的软件项目进行的方式。

客户为什么要这样?研究者们已经总结出不少理由:

  • 为了有效地将投资风险转移给供应商
  • 为了选择具有最高投资回报的项目
  • 为了促使供应商进行准确的估算并给出一个可靠的项目计划
  • 为了在不同的供应商之间进行选择。客户通常会发出RFP,要求参与竞标的供应商给出解决方案和估算
  • 为了支持年度预算
  • 为了掩盖一些费用支出
  • 为了对规模可能较大的项目感觉上比较放心
  • 受传统软件工程理论的影响
  • 为了符合组织定义的规范

这些理由都是合理的。如果我是客户,为了达到这些好处,我也会"期待"供应商给出估算,期望他们把项目的费用固定下来。

那固定价格项目有什么不合理之处吗?研究者们也找到了不少证据:

  • 尽管软件工程界已经总结出一些估算模型,但是这些模型本身存在缺陷,甚至是不小的缺陷
  • 历史数据说明多数软件项目最初的估算都过于乐观,项目最终的费用常常接近最初估算的2倍甚至更多
  • 软件估算模型很多时候难以在实践中应用
  • 估算所依赖的历史数据本身并不准确
  • 预先估算导致预先准备详尽的需求,而实际上需求总是会在项目过程中发生很多变化,因此这其实是一种浪费;而敏捷方法并不需要预先准备详尽的需求
  • 在费用和范围都“固定”的情况下供应商通常会选择严格的变更控制过程,这实际上也增加了成本,造成了浪费;而敏捷方法天生就不惧怕变更,能够以低成本的方式来应对变更
  • 过渡精确的估算需要花费大量的时间和费用,有时相对于项目的总费用并不值得

除了上面这些证据,我也总结出另外的一些如下:

  • 固定价格项目通常会造成客户与供应商之间关系紧张,不利于建立长期的合作关系
  • 由于目标是完成合同规定的结果,开发团队不会主动对实现的软件提出更好的建议,因为那不会为团队带来任何好处
  • 由于目标是完成合同规定的结果,开发团队会倾向于减少与客户的沟通以防带来更多的工作量,因此更容易导致所做的软件不是客户所期望的结果。如果因此而导致返工,那首先需要双方对项目状态和最终结果进行谈判,另外还需要大量的工作来更正错误。而实际上,在客户亲眼看到可执行的软件之前,他们并不能完全准确地知道自己不想要或想要什么
  • 如果供应商不负责任,他可以在一开始为了争取到项目给一个很低的估算,然后在项目进行中通过变更控制来弥补其成本上的损失以便盈利。实际上最终的项目成本会高出实际成本,而不是客户一开始期待的低成本
  • 由于项目开始前通常都需要客户预付一部分费用,因此不负责任的供应商完全可以拿了这部分费用而将项目一再拖延。最终的结果很可能是双方不欢而散,重要的是客户的损失已经无法弥补
  • 有些供应商有现成的解决方案,这是他们能够提供所谓固定价格项目的优势所在。他们只需要稍作定制就可以实现客户的软件。这种情况下,由于客户只是得到一个源代码的拷贝,而原本的框架代码仍然留在供应商一方,因此客户将失去知识产权

作为负责任的供应商,我们希望客户能够在他们的预算内得到期待的软件,更期望我们能够与客户建立长期的、互信的、双赢的合作伙伴关系。就目前的软件工程实践而言,敏捷开发为我们实现这样一种目标提供了良好的支持。对于一部分客户,他们是敏捷专家,不需要我们的任何说服就可以朝着这个目标努力。对于另一部分客户,他们在固定价格与敏捷之间犹豫,通过适当的说服他们最终还是走向了敏捷。对于其他客户,也许是他们还没有意识到敏捷的好处,也许是出于上述的某种原因,无论我们如何沟通,他们最终还是选择了固定价格项目。

多数客户还是坚定地选择了固定价格的合作方式。在当前经济不景气的大环境下,我似乎看到这样的客户比以前更多了。客户为了追求低成本,不负责任的供应商为了追求利益不择手段,最终导致许多本来可以提供更好服务的供应商无法最终赢得项目。我们努力地让这些客户去尝试我们的服务,但许多时候并不奏效。

恶性竞争仍然在继续,客户仍然没有觉醒,我们依旧在忍受痛苦!这就是我们的生存境地!

是敏捷的失败吗?是我们没有强大得做得像IBM一样吗?是我们不会推销自己吗?

期待答案!

    原创粉丝点击