一个有趣的产品经理面试逻辑题:app的文件下载功能
你可以不懂产品,但你不能不懂逻辑,看起来一个简单的文件下载,才发现原来也并没有那么简单。
大家都知道产品经理面试是需要考逻辑题的,这可以快速看出一个人的思维能力和逻辑能力。前段时间看到一个有趣的产品面试题,都是开放类型,没有标准答案,这里想分享给大家探讨下。
一、背景
现在很多APP都有下载功能,尤其是视频类app,经常会需要将视频缓存到本地,这就需要用到下载功能。但一般大家不会一个文件一个文件下载,而是经常批量下载一堆文件,这就需要考虑到各个文件之间的优先级及状态变化。
二、假设
- 现在有ABCD四个文件需要下载;
- 不考虑异常情况及下载完成,正常情况下这四个文件的状态有三种:下载中、等待中、已暂停;
- 受到系统限制,只能有一个文件处于“下载中”的状态,其余文件需要处于“等待中”或“已暂停”;
- 假设此时A处于“已暂停”,B处于“下载中”,C&D处于“等待中”,如下图:
三、 题目
1. 如果此时用户点击了B,四个文件的状态如何变化?(简单级)
- 理论上来说,用户此时点击B的动机应该是想让它暂停,所以B的状态应该变成“已暂停”;
- 而A是已暂停状态,用户无操作的时候,状态不会改变,所以A依然是“已暂停”;
- 那么这里的重点在于C、D,这两个文件都是等待中,这个时候该先下载谁呢?这里的优先级应该按照用户添加下载的时间来定义,如果C比D早加入下载队列,那么这个时候应该先下载C,也就是C变成“下载中”,D依然是“等待中”;
2. 在原假设的基础上,若用户点击的是C,四个文件状态如何变化?(中等级)
(1)据说是80%人的思路
- 用户此时点击C的目的应该是想先下载C,所以C的状态应该变为“下载中”;
- 相应地,因为只能有一个文件处于“下载中”,B的下载进程被打断,B就被动变成了“已暂停”;
- A和D状态不变;
这个逻辑其实也非常有道理,非常正确,目前这一步来看没有什么问题,但是下一步如果用户进一步有操作,就会发现这个逻辑有个陷阱,这个会在第三个问题中详细展开;
(2)其实逻辑更细致的思路:将每一步用户的操作都拆解开来
- 用户对C执行了点击操作,但是C的状态是不是一定要发生改变?即“等待中”的文件被点击后是否有点击事件?
- 如果点击C之后有点击事件,那个这个状态有两种可能:“下载中”或“已暂停”,这个时候哪一种更贴近用户的想法?
- B的进程被打断,那B的状态同样有两种可能:“等待中”或“已暂停”,哪一种更贴近用户呢?
如果你经常使用百度网盘下载文件,你会发现当用户点击C时,百度网盘采用的是如下逻辑:
对照上面的三个步骤分别为:
- “等待中”的文件C后面确实有点击事件;
- 百度网盘认为用户点击C之后,已暂停更贴近用户的想法;
- B的进程未被打断;
百度网盘将用户的点击理解为要暂停这个文件,虽然说这确实是一个用户场景,但是这个场景目前我遇到的还比较少;
我经常遇到的是:想优先下载某一个文件,然而这个文件添加到下载列表的时间较晚,百度网盘按照时间顺序的优先级要等很久才会下载到它,于是我把前面的文件一一暂停,才终于轮到这个文件开始下载了。
百度网盘这里的下载逻辑背后的原因我们不去深究,但至少这给我提供了一种与大部分人认知不太相符的解决逻辑;
相信如果在面试的时候,能够做到与大部分人的出发点不一致,或者能讲出属于自己的逻辑并能够有合理原因证明,那就是一个好的回答,也是一场好的面试。
3. 在上题中80%人的思路下,当C下载完成时,下一步该下谁?(困难级)
此时四个文件的状态如下:
按照正常的产品逻辑:下载中>等待中>已暂停,而此时只有一个文件D处于等待中,因此现在会开始下载D;但是这里会涉及到一个问题:
- 用户原来的优先级中,是最想先下载B的,其次是C、D,也就是原定优先级:B>C>D;
- 中途用户改变了想法想先下载C,也就是此时C变为最高优先级,但是我们并不能判断C和D在用户心理的优先级有改变,从尊重用户的角度来说,应该保持原优先级,即现在的优先级应该为C>B>D;
- 那么当C下载完成时,此时B应该是最高优先级,应该优先下载B;那显然此时产品逻辑上开始下载D是不符合用户需求的,用户这个时候需要下载的是B;
- 但B现在是已暂停状态,从产品逻辑上来说:下载中>等待中>已暂停,这个优先级也不能被打乱;
好像陷入了一个两两矛盾的状态,怎么办?
所以这一问才是全题的关键所在,这个逻辑被质疑和挑战的时候,往往才能看出产品经理的判断力和决策力;
这里提供以下几个备选方案:
- AB实验:看下哪个方案更受用户的喜欢,对数据有正向帮助;
- 向上汇报,让领导决策:遇到自己无法决策的问题,可以把问题升级到更有经验的领导那里,让领导决策;
四、相对最优的答案
1. 如果此时用户点击了B,四个文件的状态如何变化?(简单级)
此问答案同上,B变为“已暂停”,开始下载C,D仍为“等待中”;
2. 在原假设的基础上,若用户点击的是C,四个文件状态如何变化?(中等级)
从这一问开始,和上文有不同的解决方案:用户点击C之后,C的状态改变为“下载中”,但是B的状态不是变为“已暂停”,而是变为“等待中”,如下图:
3. 当C下载完成时,下一步该下谁?(困难级)
此时,B和D的状态都是“等待中”,按照上面说过的逻辑,这个时候按照原定优先级C>B>D,开始下载B,上面提到的矛盾就迎刃而解了,如下图:
五、总结
一位有多年面试经验的产品大佬说,面试中的这类逻辑题往往没有标准答案,主要是想考察产品求职者的逻辑能力,以及面对挑战的心理素质;
所以大家即便是遇到从来没有想过或者见过的产品场景被转化成面试题来拷问自己,也不用太慌,可以用你的逻辑征服面试官!
实在不行,就坚定自己的立场吧,毕竟相信自己的判断力也是很大的加分项~
(这篇文章其实有点绕,因为这个逻辑用文字表达实在有点绕,大家凑合看~感谢感谢)
#相关阅读
作者:一律先生, 一个有梦想的产品汪!
本文由 @一律先生 原创发布于人人都是产品经理,未经许可,禁止转载。
题图来自Unsplash, 基于CC0协议。
作者暂无likerid, 赞赏暂由本网站代持,当作者有likerid后会全部转账给作者(我们会尽力而为)。Tips: Until now, everytime you want to store your article, we will help you store it in Filecoin network. In the future, you can store it in Filecoin network using your own filecoin.
Support author:
Author's Filecoin address:
Or you can use Likecoin to support author: