开发人员如何了解用户和需求

很多前辈和书上都说开发人员,尤其是架构师和技术经理需要有商业感觉,我一直试图培养自己这方面的能力,可是常常不知所措,一说到感觉,就意味着要么是与生俱来的,要么就是在商业世界里一点一滴积累起来,而对于我们这些整天泡在技术细节里的人谈何容易。其实对我们来说,商业感觉这个词太大了,过于抽象,以至于我们不知如何做起,我觉得不如缩小范围,把我们要服务的用户和要实现的需求搞清楚倒是来得实在些。记得去年被收购的时候,新来的老板骂我们不懂用户不懂需求,做的东西别手蹩脚,磕磕跘跘。虽然感觉有些不爽,但审视自己确实没在用户和需求上下多大功夫。因此,开发人员要培养商业感觉应该从用户和需求开始。

读了下苏杰的《人人都是产品经理》,学习到了一些研究用户和需求的方法和观点,加上一些自己的理解整理如下:

体会真正的用户

都说开发人员要走向前台,去接触最真实的用户,但真正做到的没几个,要么就是象征性地参加一下公司组织的需求调研活动(少得可怜),要么就是把自己当用户,开发人员把自己当用户说到底就是YY,怎么可能是真实用户呢?自己是研发人员,面对是一行行代码,真实用户是网商,面对是拿不到订单就关门的商业环境。一个开发人员面对一个需求的时候,一般会这么来思考:界面流程是什么样的?这个流程中会涉及到哪些数据?如何用服务包装这个流程中的各个动作?会不会有性能问题?这样一路下来,有哪些东西是和真实用户有关系,又有哪些是在考量那个最原始的需求本质。因此,要体会真正的用户就是要打破这种思维定势,跳出开发人员所处的圈子,多和真实用户交流,多考虑一些与技术无关的问题。

试着描述用户

体会用户的一个很好的办法就是做描述用户的练习,当然描述和自己不搭嘎的用户群体比较困难,我们可以先从比较熟悉的用户群体开始,比如普通的网民,我们本身就是属于网民群体,我们会使用到各种各样的网络产品,比如email、 IM、RSS等等,我们可以从这些经常使用的产品开始,描述自己的需求和体验感受。为什么有些人(比如PD)对产品很有感觉,能说出很多自己的见解?其实他们也是因为会留心去考量产品,而不仅仅只是停留在使用的层面上。我相信这种练习虽然不能立竿见影,但简单可行,久而久之就能更多地站在用户的层面思考问题,对产品的理解也会有自己的一番见解。

用户研究的四个维度

《赢在用户Web人物角色创建和应用实践指南》这本书里讲到一个四个维度的用户研究方法,如下图所示:

在研究和实践过程中一般按照如下顺序:

1)听用户定性地说:用户访谈。助力产出需求列表

2)定量地说:调查问卷。助力给需求按优先级排序

3)定性地做:可用性测试。助力验证需求的可行性

4)定量地做:数据分析。助力持续改进产品

需求来源于用户,更要超越用户

这里说的需求实际上指的是需要实现的产品需求,而需求分析实际上是把用户需求转化为产品需求。技术人员喜欢采用的方式是“树干-树枝-树叶”总分的方式,而需求分析的合适方式是首先“树叶-树枝-树干”,然后“树干-树枝-树叶”,实际上是“分-总-分”的方式,因为只有这样我们的产品需求是忠于用户的,起源都是用户零散原始的需求,然后通过归纳和结构化才能看到需求背后的本质。最后,基于我们提炼的本质,再细化去做,转化为一个个可实现和实施的需求列表。

从生活中去体会产品的点点滴滴

对用户的研究和需求的把控实际与自己的生活态度和对周围细节的观察息息相关,这方面的能力不是可以像学技术那样看几本书,埋头搞几天就能提高的,需要做一个有心人。软件产品只是产品总集中非常小的一个子集,因此不用拘泥于此,可以放眼到生活中万物,比如店铺、电梯、餐馆的菜单等等,尝试留意这些平时被我们习惯或漠然的东西,分析它们的可用性和易用性,甚至可以思考改进方案。很难想象一个不关心生活,整天埋头于技术细节的工程师能在产品和需求上提出什么独到的见解。

一些值得参考的书和博文

产品经理值得读的12本书

产品经理值得看的16个博客