给嵌入式新人的几条建议(共勉):二
前言
嵌入式技术涉及的内容十分广泛,几乎生活中与电有关的内容都会涉及到。 这就容易出现一个问题:走的太远。很容易从一个关注点发散到其他部分,要懂得“收”。不要“走的太远”
1、举个例子,吃晚饭。
晚上下班,你想去吃碗面。(业务需求)
你走到了一家面馆(初步需求调研),
打开服务员递过来的菜单,你看到了各种各样的面(方案选择):
- 西红柿鸡蛋面
- 酸菜肉丝面
- 鸡蛋捞面
- 炸酱面
- ,,,
这个时候就会迎来一个经典场面:
- 西红柿鸡蛋面,用的是什么面?
- 宽面还是细面?
- 鸡蛋是不是土鸡蛋?
- 西红柿新不新鲜?
- 酸菜肉丝面里的酸菜干不干净?
- ,,,
但其实,只是吃碗面,满足这个需求就可以了,不管吃什么面都可以。
上面的例子看起来很不可思议,但是在实际项目中,
尤其是新人在阅读代码时,就会遇到类似的问题。
1个问题发散出10个问题,
导致在很多影响不大或者是没什么影响的细节上,
花了很多时间,
最终还是没能把最开始那1个问题给弄清楚。
所以, 不要走的太远。而是,先有1,再有2,3,4,
2、再举个例子,客户问FAE I2C协议在产品中怎么实现的?
FAE:Field application engineer,现场应用工程师。
这个时候这个FAE对于这个需求应该怎么样呢?
- 首先向客户了解清除背景,他问这个问题是为了什么应用场景?
- 然后是客户希望产品做成什么样子?是做成库,还是开源,可裁减?
- 如果自己不是十分了解,那就简单的对上述场景做个百度/谷歌,大致了解
- 最后拿着自己的这些信息,找公司的研发沟通。
但是在上面这个过程中,很容易陷入什么呢?
FAE钻到了I2C协议里面去,这样会让效率降低。
这里举的I2C只是个简单的主从通信协议,
如果是更复杂的一些标准协议,例如DMTF的相关协议,动辄几百页,
如果FAE去看的话,一方面是不熟悉,难以抓住重点,一方面是这属于研发研究的事情。
3、总结:
做事,在刚接到需求的时候:
- 了解背景
- 需求拆解
- 避免发散
- 合作愉快
不要“走的太远”
本系列回顾清单
我是Eric xuan, 一名小厂固件工程师
如果你对我的博客感兴趣,或者有什么想了解的问题
欢迎评论、点赞 和 转发。