产品经理该了解到技术的哪个层面?
最近在一些媒体平台,看到关于产品经理需不需要懂技术的讨论,问题的来源可能是产品经理在与开发打交道的时候遇到了阻力或者有些方案觉得棘手,不知道如何下手,心想如果了解技术可能问题会简单些,在这里,我想就自己的一点体会分析产品经理该了解到技术的哪个层面?
在了解技术前,得先从深入分析需求开始
在我看来,任何问题都不能孤立的去分析,产品经理在了解技术前,得先从深入分析需求开始。首先需要将需要解决的问题罗列出来;其次探讨这些问题之间的关联,分析问题之间的关联特别重要,思考关联其实也是一个梳理业务流程的过程,这个阶段往往能找到问题的本质,也就是最根本的问题,;找到最根本的问题后,需要分析解决这个问题的不同解决方案,一般思考解决方案的时候,企图一下子就能找到最好的方案不太可能,而且也会让自己陷入焦虑的状态,我发现比较好的方法是先粗略的假设1个到2个可能的方案路径,然后再细致分析每个方案,我们只有深入到方案的实现细节里面去,才能理出完善的需求,同时也才能反向推导方案的可行性。
我们可以从上面发现,真正涉及到技术实现细节的,是在最后一部方案落地时,其实在这之前我们已经对这个需求的进行了最本质的思考,这点很重要,最本源的问题没有弄清楚之前,就去想实现细节,很多逻辑可能站不住脚,等到开发实现时来反推,一旦出现问题,技术当然会来找产品撕逼,友谊的小船说翻就翻,工作的阻力随即产生……
所以产品的实现流程只有在分析问题的本质之后才能站得脚,否则,一上来就考虑技术实现很有可能缘木求鱼。
技术实现时前端和后台的交互
下面以常见的用户注册为例,分析技术实现时前端和后台的交互。首先需要了解,开发所有的判断条件都是基于字段。就像小时候做数学题,如计算三角形的面积,只有告诉我们底是多少,高是多少,才能求出面积,这里的底和高就类似与程序的字段,也就是已知条件。所以,产品在设计功能时,需要考虑到,要实现这个功能,程序需要哪些已知条件。设计用户注册功能,需要先定义注册要采集的要素,比如包含手机号、登录密码、昵称,还需要发送短信验证码来校验(以手机号作为用户的唯一性标识),这是前端注册页面的表单需输入的内容,用户注册完成后,后台需要把用户的注册信息存储下来,那么后台会在数据库里设计一个表,比如叫做“用户注册信息表”,只要有用户注册,就会将注册信息存入这个表里面,下次如果前端同一个用户再次注册时,开发会先查一下“用户注册信息表”里面是否有这个手机号了,如果有了,当然会提示不能注册了,没有的话,才允许继续注册。之后,如果产品再提一个需求,想判断用户是否已获取积分,没有的话需要提示用户获取,以增强用户的粘性,那么开发在实现时,会在这个用户的表里面,加一个字段“是否已领取:0标识未领取,1表示已领取”,如果这个用户的标识是0的话,前端就需要提示用户了。这就是前端和后台交互的基本逻辑,最关键的问题在于我们要知道实现我们要求的功能的话,需要哪些基本的字段。至于编程代码怎么写,我觉得产品经理无需钻研太深,毕竟术业有专攻,每个人精力都是有限的,但是需要懂一些算法,除了对逻辑思维能力提升有好处外,还能在设计功能选择最优方案时用上。
万物皆相通
以上阐述的是基本的逻辑,复杂的逻辑只不过是涉及到多个表之间的关联、字段的计算。其实写代码的过程类似与翻译,将产品的流程用程序的语法翻译出来,所以产品流程的正确性确定了代码实现的准确性。万物皆相通。
关注微信公众号“Tina说”,也可识别图中二维码,获取更多关于产品、读书的思考和总结,一起进步,欢迎留言一起探讨。
产品经理该了解到技术的哪个层面?