客户:Facebook 的副本要多少钱?

客户:Facebook 的副本要多少钱?

“复制 Facebook(Avito、Yandex.Taxi、fl.ru...)需要多少钱?” - 客户最常提出的问题之一,今天我们将给出详细的答案,并告诉您从必须这样做的人的角度来看它是怎样的。

黑匣子

当我们承担复制服务的任务时,对我们来说它代表了一种“黑匣子”。 它是什么类型的程序根本不重要:网站、移动应用程序或驱动程序。 无论哪种方式,我们都可以从外面看到它的样子,但我们无法了解里面的情况。

这大约就像我们被展示了一辆车并被要求制作一个精确的副本,但没有机会看到引擎盖下面的情况:我们只能限制自己只进行外部检查并坐在方向盘后面。 但进入后备箱已经不可能了!

因此,我们将被迫解决以下问题:
让我们猜一猜,发明一下——这辆我们只看到车身的“汽车”内部是如何建造的?

想象一下它由哪些部分组成。 要了解:任何现代汽车都由大约 18 个零件组成......

估计需要什么样的专家来制造这 18 个零件,以及制造每个零件需要多长时间。

在软件开发中,也有类似的过程:我们创建的系统需要分解为一堆小组件。 弄清楚如何以及由谁来创建它们,以及它们如何相互交互。 这就是为什么“仅仅复制”并不是一件容易而艰巨的任务。

“冰山一角”

Avito、Facebook、Yandex.Taxi...如果客户从内部了解他所指的业务,他会发现该公司雇用了数十甚至数百名程序员,他们多年来一直在创建该服务。

投入生产该产品的专家数千小时得到了报酬。

通过计算“复制 Facebook 需要多少钱”,我们就会看到他们的所有工作成果。 而且,当我们列出这些结果时,客户总是发现他最多看到了“Facebook”的 10%。

剩下的90%只有在我们做了相当多的工作后才对他可见。 当你坐在汽车的方向盘后面时,你看不到发动机、转向架、燃油管路,对吗?

接下来会发生什么?

客户明白他根本不需要该服务 90% 的功能。 这些都是劳动力成本,不会给他带来任何好处。 数千个工时浪费在他永远不会使用的功能上。 又贵又没用。

“复制你邻居的女儿,但更便宜!”

为什么客户会提出这样的要求? 在他看来,既然这件作品已经完成了,那么没有什么比拿走它并复制它更容易的了。 节省很多钱!

但有一个小问题 - 我们不能从 Facebook 获取任何东西,因为:

  1. 我们(以及其他承包商)有权访问源代码。 即使有,它也是另一家公司的财产。
  2. 我们没有设计源,这意味着设计也需要重新创建。
  3. 我们对产品架构一无所知。 我们只能猜测它内部是如何工作的。 即使我们读了一堆关于哈布雷的文章,也只是大概的描述。

唉,“像你邻居那样做”的要求并不会让工作变得更便宜:)

“把扑克给我!”

软件产品本身并不是目的:客户希望通过它的帮助来解决他的业务问题。 例如,赚钱或省钱、吸引受众、为员工创建方便的工具。

这只是一个悖论:客户并不是带着有关业务问题的问题来找我们的。 他提出了一个有关技术解决方案的问题。 也就是说,提出诸如“我需要一把扑克”之类的请求。 他为什么需要它? 也许他要砍柴并需要一把斧头?

客户不是解决方案专家(通常他是一生中第一次解决这样的问题),但是当他看到扑克时,他觉得这就是它,一根魔杖!

但当我们问“您要解决什么业务问题?”时让我们想想什么解决方案才是真正最优的,事实证明它与 Facebook 或扑克无关。 嗯,这根本没有任何共同点。

总结

显然,请求“一份副本要多少钱......?” - 无意义的。 为了从字面上回答这个问题,您需要做大量的工作,这对我们或客户来说都没有用。 你为什么这么确定? 是的,我们已经做过很多次这个工作了 =)

该怎么办? 我们有一个意见——编写技术规范。

任何普通读者此时都会认为“你这么说是因为你想卖给我们!!!”

是和不是。 尝试寻找一位优秀的建筑商,他将在没有设计估算的情况下开始建造房屋。 或者汽车修理工在没有图纸的情况下制造汽车。 或者经验丰富的企业家在没有财务模式的情况下创建新业务。

即使我们为自己制定计划,我们也会从职权范围开始。 我们和您一样,不想为此花费“额外”的钱。 但我们知道我们离不开它。 否则,摩天大楼就会倒塌,生意就会得不偿失,有了汽车,也不知道谁会开谁。

本文只有一个目标:避免无用的工作,为您做有用的工作。 我们来谈谈,为什么需要“扑克”?

来源: habr.com

添加评论