固定价格之外,软件开发还有没有更合适的合作方式?

很多企业一开始都会倾向固定价格

在软件开发合作里,很多企业一开始都会倾向固定价格。

这很容易理解。

项目要花多少钱、做哪些内容、什么时候交付,最好一开始就写清楚。这样便于内部审批,也便于控制预算。对客户来说,固定价格看起来更稳妥,风险也更容易被提前锁住。

所以,我们并不认为固定价格本身有什么问题。

在一些边界清晰、需求稳定、交付物明确的项目里,固定价格当然可以是一种合理的合作方式。双方先把范围说清楚,再按约定推进,这种合作并没有问题。

真正的问题在于,并不是所有软件项目都适合这样做。

软件项目最难的地方,往往不是报价

很多软件项目在开始时,并没有想象中那么清楚。

客户可能知道自己想解决什么问题,但还不能确定最终应该做成什么样;

业务部门可能提出了需求,但这些需求还需要在开发过程中被验证;

项目开始前大家都觉得清楚的东西,真正做起来以后,可能会发现还有很多细节没有想明白。

这并不是谁的问题。

软件开发和购买一个标准化产品不同。很多时候,客户也是在项目推进中,才逐渐看清自己真正需要什么。

所以,真正需要讨论的,不是固定价格好不好,而是这个项目是否真的能在一开始被定义清楚。

如果答案是否定的,那么用一种假设“一切都已经确定”的合作方式去推进项目,后面就很容易遇到问题。

需求变化,不一定是坏事

在很多项目里,需求变化经常被看成一种麻烦。

但从软件开发的真实过程来看,变化并不一定是异常。很多时候,它就是项目本身的一部分。

业务会变,市场会变,客户内部的优先级会变,用户真正使用之后也会带来新的反馈。技术实现过程中,团队也可能发现原来的方案并不是最合适的。

这些变化不是项目失败的标志。相反,它们往往说明项目正在接近真实问题。

如果一个软件项目需要探索、验证和迭代,那么需求在过程中变化,就是很正常的事情。问题不在于变化会不会发生,而在于合作方式能不能容纳变化。

如果合作方式不允许调整,那么变化就会变成冲突。

如果合作方式能够及时调整,变化反而可能帮助项目走向更正确的方向。

固定价格容易把变化变成博弈

固定价格模式最大的挑战,是它天然要求双方在项目开始前尽量把范围锁定。

为了报价,供应商需要知道要做什么;

为了审批,客户也需要知道要花多少钱。

于是双方会在前期尽可能把需求写清楚,把范围列完整,把交付物定义出来。

这件事本身没有问题。

问题在于,文档写得很细,并不等于真实理解已经足够准确。

当项目推进后,新情况出现了,新判断产生了,新需求被提出了,合作就很容易进入另一种状态:

这算不算原来的范围?

要不要增加费用?

时间要不要顺延?

这次调整是谁的责任?

是继续按合同做,还是按新的业务判断调整?

慢慢地,双方的注意力就可能从“怎样把事情做对”,转向“这件事算不算变更”。

这就是固定价格在变化型项目里容易带来的问题:它并不会消灭不确定性,只是把不确定性从产品和业务讨论,转移成了合同和范围讨论。

最后被牺牲的,往往是真正的业务价值

当合作开始围绕范围和变更反复拉扯时,真正被牺牲的,往往是业务价值。

对供应商来说,如果价格已经固定,就会天然更关注如何控制投入、守住范围、避免超出成本。

对客户来说,如果每一次变化都意味着重新评估、重新报价、重新审批,也会更倾向于压缩调整,尽量让项目按原计划走完。但软件项目真正重要的,不是按原计划走完,而是最后有没有解决真实问题。

有些功能按需求文档做出来了,但上线后并不好用;

有些系统按合同范围交付了,但业务团队并没有真正用起来;

有些项目按期验收了,但客户后续仍然需要不断补救和调整。从合同角度看,它可能完成了。

但从价值角度看,它未必成功。这也是为什么,软件开发不能只看“有没有按约交付”,更要看“有没有持续创造价值”。

更合适的合作方式,应该允许项目回到真实问题

面对需求持续变化的软件项目,真正需要的可能不是更死的约束,而是一种更适合变化的合作方式。

这种方式并不是说项目可以没有边界,也不是说客户只能被动接受变化。相反,它更强调几个更实际的问题:

当前最重要的问题是什么?

这段时间的投入是否值得?

优先级是否需要调整?

团队是否真正理解了业务?

客户是否看得见项目正在往哪里走?

也就是说,合作的重点不应该只是守住一开始写下来的范围,而应该是在项目推进过程中,持续判断什么更有价值。

如果项目本身是变化的,合作方式也应该能够适应变化。否则,越是想用固定方式控制风险,越可能在真正需要调整的时候变得僵硬。

固定价格之外,确实还有别的答案

固定价格不是不能用。

它适合那些边界清晰、需求稳定、变化较少、交付标准明确的项目。

但如果一个项目本身就处在变化之中,需要边做边验证、边推进边调整,那么更重要的,可能不是一开始把价格锁得多死,而是找到一种更能容纳变化、同时又不失控的合作方式。

对这类项目来说,软件合作真正要解决的,不只是“怎么签合同”,而是:

如何在变化中保持方向?

如何让投入始终围绕价值?

如何让团队持续理解业务?

如何让客户看得见进展,也能及时调整优先级?

所以,固定价格之外,软件开发确实还有更合适的合作方式。

不是因为固定价格不好,而是因为很多软件项目,从一开始就不应该被当成一个完全确定的采购任务。

它更像一个持续理解问题、持续验证判断、持续创造价值的过程。

而合作方式,也应该为这个过程服务。

什么是 Shinetech Way?

Shinetech Way 是盛安德在长期软件开发合作中形成的方法论,记录我们如何理解客户需求、组织开发团队、管理项目变化,并通过透明协作和持续迭代为客户创造软件价值。

相关内容:

软件开发不养大型团队,“超级程序员+AI”赋能顶配开发能力

以前做个系统动辄拉一二十号人,周期按月算,钱按百万烧。现在真没这个必要了。但别被”AI会写代码”忽悠瘸了,它能写片段,写不了需求拆解和架构。写出来的东西对不对、稳不稳,还得懂行的人盯着。门槛不是降了,是更吃真本事了。这波”精兵+AI”确实比堆人靠谱。

AI 实验室 Shinetech Way 25 阅读

我们如何从领域驱动开发当中获益–王德水

领域驱动设计,遇见你之前 我们公司推行和实践敏捷已经很多年了,SCRUM已经成功应用于大部分项目,得益与业界敏捷开发大师以及国内很多优秀工程师的分享和宣传,我们使用了很多优秀的软件开发实践,比如测试驱动开发(TDD),行为驱动开发(BDD), 持续集成(CI)等等为我们带来了很多收益。由于我们公司以……

Shinetech Way 技术趋势 敏捷实践 1895 阅读

如何选择靠谱的软件外包公司

在信息化建设中,随着IT与业务进一步融合, IT成为推动业务转型、管理变革的重要力量。很多企业在10几年前购买的软件产品,已经无法适应日益变化的业务需求,需要根据企业自身业务模式进行定制化开发,以助力企业发展及业务转型。 传统企业通常没有专业的软件开发团队,组建IT团队的成本比较高,后续IT人才维护……

经验分享 5239 阅读

Mind Matter项目分享——设计不仅仅是设计

Mind Matter软件旨在促进企业的战略发展,并帮助推动战略的实践。其核心业务是开发下一代战略软件和服务。与各种类型和规模的企业组织合作,共同定义、设计和执行战略。 目前开发的软件作为一款简单精巧的协助工具,帮助用户定义、设计、讨论、决策和交付发展战略。 Mind Matter项目自2017年9……

Shinetech Way 敏捷实践 1923 阅读

跟客户面对面确认需求是一种什么样的体验?

Matthew是个澳洲客户,前期有过很长时间的沟通和推进,我们对业务和项目需求目标大概了解了。但是针对第一个要发布的版本,要做成具体什么样的产品还是两眼一抹黑。故此,客户来我们办公室两周,专门讨论具体细节。期望经过两周的密集讨论,我们能有若干产出: 想想都挺多事情的。当然,理想都是很丰满的……过程不……

经验分享 1551 阅读

善用工具——成就高效沟通协作的团队

《敏捷软件开发宣言》  我们一直在实践中探寻更好的软件开发方法,身体力行的同时也帮助他人。由此我们建立了如下价值观: 个体和互动 高于 流程和工具  工作的软件 高于 详尽的文档  客户合作 高于 合同谈判  响应变化 高于 遵循计划 也就是说,尽管右项有其价……

Shinetech Way 敏捷实践 1943 阅读

我的ODC项目经验分享

项目介绍:客户公司旨在为病人提供更加优质低价的治疗方案。其主系统联合病人、医师和医保公司,根据病人的病症、体检数据、过敏情况、生活习惯和过往服药方案等信息,结合其内部一套引擎工具,检查用药过程中的问题(Drug Therapy Problem)并提出给药建议。 在三年的合作过程中,我们不断丰富其主系……

经验分享 2170 阅读

敏捷实践系列(三):代码管理流程

我们已经从SVN切换到Git很多年了,现在几乎所有的项目都在使用Github管理。对于那些还在坚持使用SVN的,我实在想不出原因,权且称作守旧派吧。 Git的优点 Git的优点很多,但是这里只列出我认为非常突出的几点。 感兴趣的,可以去看一下Git本身的设计,内在的架构体现了很多的优势,不愧是出资天……

Shinetech Way 敏捷实践 1679 阅读

敏捷实践系列(二)

大话西游里有一段因为没有沟通的经典, 结局如何大家都知道。 唐僧:你想要啊?悟空,你要是想要的话你就说话嘛,你不说我怎么知道你想要呢,虽然你很有诚意地看着我,可是你还是要跟我说你想要的。你真的想要吗?那你就拿去吧!你不是真的想要吧?难道你真的想要吗?…… 悟空:… 一. 敏捷项目沟通尤其重要 敏捷开……

Shinetech Way 敏捷实践 1494 阅读