乐趣区

关于需求分析:掰扯掰扯需求分析从工程到生活中的4个case

版本 日期 备注
1.0 2024.3.4 文章首发

需要剖析是工程师的必备技能之一。咱们常说一些架构师多少多少牛逼,零碎设计的多好多好——而零碎设计的底座正是需要剖析。基于具体的需要剖析底座加上已知的业界实践下限,能力让咱们更好得去设计好一个零碎。本文笔者想基于程序设计以及生存中的例子,聊一聊需要剖析。

开胃菜:让你导 100 个 G 的数据到线上,你会怎么做?

这个能够说是一个比拟常见的面试题了。

小白工程师看到这个可能就比拟懵了,或者间接带入本人遇到的场景了。沿着这样的思路,显然很难让面试官称心。

略微老道点的工程师可能就会问:

  1. 大略多久要实现?
  2. 数据是什么类型的?
  3. 可不可以丢数据?可不可以反复?

下面这些问题其实是围绕着技术的点去询问的。和实在的业务场景还是有一点的间隔,这点间隔就是 在业务需要到技术实现的剖析上

所以这个时候就要和面试官做一个探讨:具体是什么样的场景,导 100 个 G 的数据到线上?或者说这 100G 的数据导到线上的用处是什么?

举个例子,商家侧有一个报表,外面有个指标的口径要变更,历史数据都要刷。那么就须要持续探讨:

  • 是 DM 层数据还是宽表、两头表的数据?离线还是实时?

    • DM 层的数据是否要思考以商家为单位 or 整体的原子性?不然商家看到数据始终在来回横跳,会引起报障,减少解释老本
    • 两头表则须要思考变更时对外的可读性,比方 50% 的数据是新口径,50% 的数据是老口径,那么上游的表这样去读数据是否会遇到问题?
    • 实时数仓的话,大量数据的刷入要思考提早问题;有些数据引擎可能是 HTAP,引擎的承受能力须要思考,数据热点的问题须要思考。

上述的探讨就会比拟贴近理论的状况了。产品给研发提需要,研发依据目前的状况去剖析需要,设计方案。当然在面试的时候面试官可能会诘问一些细节技术问题——比方数据热点个别是怎么去解的?

生存中的例子:千万别既要又要

在生活中,咱们常常会买货色。尤其是一些电子产品,大家都晓得越贵越好,很多货色垫起脚来够一下是够失去,无非就是钱包出点血。回头再感叹钱难赚屎难吃。

但我置信大多数人的钱都是一个子儿一个子儿挣来的,因而在这一节我想聊聊如何依据本人的理论需要登程,来防止花额定的钱——也就是如何基于理论需要登程去 谋求性价比。

例子 1:买冰箱

买大家电这种,如果间接去实体店的话,很容易被导购忽悠买一些冤种玩意儿。在网上看销量吧,在网上适合公众(忽视了天文、寓居环境等条件)的未必适合你。

所以咱们须要确认本人的需要,比方搁置冰箱地位的大小、容量要求、估算、功能性等等。

举个例子,在杭打工人三口之家,会怎么选冰箱。从硬性条件来剖析需要:

  • 对应地位的大小,决定了冰箱的长宽高。
  • 容量。一个人个别 100L,如果存储量大的话 150。这样算的话 400 高低个别够用。
  • 功能性。得防串味吧,不然夏天吃个腊肉味的西瓜多好受啊,所以至多是双循环系统。
  • 不想手动除霜,所以必定买风冷的。
  • 留神乐音问题,买变频的。
  • 能效必定是要一级的。不然长此以往电费很难顶。

这样根本就把本人的需要明确了,能够在这个框架上来精确的抉择适合本人的产品。

而后也能够依据以下的价格表,在购物时疾速定位到适合本人的那批产品:

  • 3000 以下:主打经济。容量个别,个别都是单循环系统,能效也有差。
  • 3000~6000:常见冰箱价位。容量下来了,双循环必须的,能效个别都是一级的。
  • 6000~10000:面向要求较高的群体。零嵌、好看都开始有了。
  • 10000+:面向土豪群体。好看、设计细节拉满。

具体细节能够看我在语雀里写的洽购冰箱笔记。

例子 2:买保险

买保险的人个别都是对于危险思考比拟周全的人。打工人最怕就是一场意外,导致家里积蓄全副花完,还失去工作,分分钟返贫。

那么保险应该选什么品种呢?应该买多少额度呢?

我来举个例子,还是以杭州打工人三口之家为例,男方是个程序员,女方在家带孩子:

  1. 依据男方的身材状态、以及压力状况,思考配置重疾险(重疾险的适应范畴真的很小很小,买之前最好理解分明)。
  2. 医疗险必配,配置额度个别在 50w 左右(依据以往的教训来看,50w 花上来人还没治好,根本也差不多了)。
  3. 意外险和寿险必配。意外险次要是意外大残、逝世的状况。寿险是避免全残、身故。额度倡议依据债权状况来配置——比方还有房贷 200w,那就配 200w 的额度。防止出事当前,家里人饭都吃不起还要还贷,太惨了。

因为配置保险往往是为了抵挡危险嘛,所以会依据理论危险状况,来配置适合险种与额度。千万别想把保险当“理财”来玩,保险公司的那帮人比咱们精太多太多。

例子 3:洗烘套装、洗烘一体机

洗烘套装、洗烘一体机当初十分的风行。一些相干的外围参数我就不贴了,网上有很多,大家能够自寻寻找。

从需要登程,我认为烘干性能的存在是为了解决三种场景:

  1. 所在地区、地位晾衣服常常不容易干:比方湿度高、阳光个别。
  2. 对于阳台有空间需要:自身阳台不大,人又常常喜爱在窗边。衣服晾满很煞风景。
  3. 这人懒的一批。就喜爱甩干完事,不喜爱晾衣服晒衣服收衣服。

如果确实是为了解决这三种场景,那么确实能够思考购买洗烘套装 or 洗烘一体机。那么这两者如何抉择呢?从两者的差别就可以看进去:

  1. 洗烘一体机在烘干上会花较长的工夫,超过洗烘套装
  2. 洗烘一体机外部容易攒毛,洗烘套装则不会

听起来洗烘一体机被完爆啊。其实不然,因为洗烘一体机个别价格会远低于洗烘套装。所以如果你是偶然有烘干需要的,比方:

  1. 该地区、地位某个时间段晾衣服常常不容易干
  2. 周期性犯懒 or 节日家里来住很多人

这种场景下是十分适合洗烘一体机。但如果是高频应用烘干的场景且有足够的空间,更适宜购入洗烘套装。

小结

在本文中,笔者举了几个例子来阐明如何做需要剖析。咱们能够发现,需要剖析的思维能够用在生存各处。

在计算机系统设计中:

  • 设计者的需要剖析能力间接影响着这个零碎的上限。
  • 设计者的眼界(理解到的业界实践:比方零碎设计 TradeOff,常见实际与实现等等)间接影响着这个零碎的下限。

同样,在生活中花钱买货色也是:

  • 剖析分明本人的需要能够买到更适合本人的品类。
  • 理解相干品类的“外围参数”能够防止花冤枉钱。
退出移动版