创立于 2008 年 · 数字版 · 2026年6月15日

SMB IT Journal

面向小型企业的信息技术资源

中文
IT 业务

你不会需要它

我很幸运,自己从事 IT 工作,却来自软件工程背景,这让我对 IT 世界有了一些不同的视角:既能理解发布周期与功能背后所发生的诸多事情,也能将从那个行业获得的知识应用到这个行业中。

近年来,在软件工程界,“你不会需要它”(You Aren’t Gonna Need It),即 YAGNI 的理念已变得颇为流行。YAGNI 源自敏捷开发者中的极限编程(XP)流派,其规则表述如下:“务必在你实际需要某项功能时才去实现它,而绝不要仅仅因为你预见自己会需要它就去实现它。”

在开发中,我喜欢将 YAGNI 重新表述为“在确知自己需要某样东西之前,不要在它上面投入。”但其理念是相同的——如果你花费时间和金钱去构建那些你并不确定将来是否会用到的部件,你就要承担一些风险,比如无法尽早获得价值(因为你专注于那些尚不重要的事情,却忽视了那些重要的事情),以及投资于永远不会被使用的技术(因为需求会变化、项目会被取消等等)。

这一理念能极好地迁移到 IT 领域。设计与采购两者都深受 YAGNI 的影响,或者说本应如此。存储就是一个绝佳的例子。不要今天就投资于你认为明天才会用到的存储。我们可以列举出许多说明过早投资存储为何不利的理由:企业几乎没有能力准确预测自身的增长;IT 也不擅长根据业务增长来预测存储增长;货币的时间价值,以及今天购买存储比明天购买同样的存储更为昂贵。每当我们基于预测进行采购时,就承担了风险。而预测很少会成真。

如果我们今天过量采购存储,就是在为这些存储支付溢价,因为存储成本会随着时间大幅下降。如果我们以 100% 的余量进行采购,而要等三年或更久才会用到那部分余量,那么我们就为这些存储支付了过高的费用,并且得到了较旧的技术;而若推迟到以后再购买,则能让我们更好地洞察自己在那时实际所需要的东西(不仅是容量,还有速度、可靠性、功能等等),同时成本更低、选择更多。

过量采购是一种风险,采购不足是另一种风险。显然,采购不足的风险较小,但仍然值得关注。如果你今天就为三年后的需求进行采购,而在第二年时突然出现需求激增,你可能已经过度投资于某个无法满足你需求的平台或技术。

存储只是一个例子,但这一点可以适用于任何方面,从软件许可证,到 CPU 容量、内存、高可用性技术,甚至台式机。很少有公司会仅仅为了应对三年后预计的人员增长,就把台式机的采购量翻上一倍,但奇怪的是,他们在其他方面却会毫不犹豫地这样做。

通过只采购满足当前迫切需求所必需的东西,并将采购决策推迟到以后,就有了节省成本和获得技术升级的重大机会。在某些情况下,未来的需求可能根本不会出现,无论是由于错误的预测、市场或战略的变化,还是内部或外部技术方向的改变。

除了采购之外,YAGNI 还可以应用于网络设计。基于预期增长(往往是数年之后,而且老实说,在现实世界中很少有多大可能性)来提出并实施大型、复杂的设计方案,这种情况并不少见。举例来说,为了公司未来预期的增长,去构建一个具有昂贵许可、复杂网络以及大量存储的复杂高可用环境,而实际上今天在成本上合理的只是两台服务器加一套良好的备份方案,这种做法是危险的。不仅必要的增长必须真正发生才能证明这笔 IT 支出合理,而且它还必须发生得如此之快,以至于货币的时间价值得以体现,并且技术的成本下降幅度不至于让分两次实施系统更具成本效益。令人惊讶的是,先部署一个较小的临时性过渡系统、再在需要时实施一个更大规模的系统,竟然很容易就能便宜得多,仅仅是因为自第一套系统部署以来,构建那套更大、更复杂的系统的成本已经下降了如此之多——而这还没有把错误预测的风险考虑在内。

过早支出还有一项额外的风险——它将公司资金占用在闲置的架构之中。那笔钱本可以投入到业务的其他部分,以促进业务的增长。在极端情况下,对基础设施的过度投资可能会成为导致公司彻底失败的因素之一——这是一种自我实现的局面,其中恰恰是不运用 YAGNI 这件事本身,制造出了最需要运用 YAGNI 的境况。那个精心设计的解决方案从未被真正需要,因为公司已经倒闭了。

YAGNI 是一种风险缓解的过程。基于你已知的需求,而非你所预期的需求来开展工作。

也许 IT 部门今天会过量采购,是因为他们被赋予了特定的预算。这是可以理解的:当业务的心血来潮恰好垂青于他们时,IT 部门最终会陷入一场技术抢购,试图尽其所能地去实施一切。然而,这是一种极其糟糕的商业做法。企业需要认识到,正因为 IT 被迫在假定自己具有未卜先知能力的前提下、依据业务给出的毫无现实依据的任意预算来实施系统,大笔的资金才被浪费在了 IT 上。IT 被迫去采购那些它能够基于往往非常模糊的因素向业务“推销”出去的东西,而业务往往又相当反复无常地为 IT 提供资金。这就造就了一种非常不健康的业务与 IT 关系:IT 因别无选择而浪费资金,而业务则因为 IT 无法被允许高效运作,而将其视为一种浪费。

要解决这种局面,业务与 IT 需要携手合作。IT 需要表现得更像一个精通业务的部门,而业务需要倚重 IT 的指导,不再采用基于预测的预算编制,也不再在缺乏对技术选择后果之技术理解的情况下陷入对技术方案的挑选之中。IT 需要能够信任业务做出合乎逻辑的业务财务决策,而业务也需要能够信任 IT 为业务做出合乎逻辑的技术决策。业务驱动 IT,IT 赋能业务。这是一种共生关系。如果业务坚持要 IT 去预测并在固定预算下运作,IT 就会继续被迫在一切可能的时候过度支出、过度设计,寄望于为明天预算可能不获批准的情形做好准备。如果 IT 能够被信任去申请所需之物,而业务能够被信任在恰当的时机为技术需求提供资金,那么双方都能为共同的利益更有效地运作。

要点:不要过早投资,你并不知道明天技术或业务会如何变化。

标签business investing planning yagni

广告

SMB IT Journal — the IT resource for small business