产品分析的方法
前言
产品分析在一个项目中,如果项目的最终交付的是一个产品,那么在项目开始之前,需要做产品分析。产品分析的目的是确定交付的产品是什么样的,包括使用的场景、特性和功能等等。一般我们可以采取问答法来进行,比如说,这个产品是在什么环境下使用的?产品的主要用户是谁?产品的业务流程是怎样的?系统架构是如何设计的?常用的分析方法有下面几种:
-
产品需求分析
-
产品分解图
-
业务流程图
-
产品架构分析
-
成本价值分析
-
系统工程
-
价值工程
产品需求分析
需求分析需要考虑目标用户的利益和了解他们的需求,是一个从了解想要什么东西到设计产品如何满足需求的过程。这个过程对于项目至关重要,如果没有执行好,则会导致项目的延期,甚至返工。这个也是导致很多项目失败的首要原因之一。需求分析输出的结果必须记录下来,并且是具备可行性和可验证的。下面是一个经典的关于“产品是如何开发”的漫画图,其中的一个含义就是:用户所表达出来的并不一定就是他的真实需求,产品或者项目经理需要挖掘并正确地表达出来(它的另外一个含义是,团队如果缺少协作,那么也将导致最终输出的结果大相径庭)。
图1:产品是如何开发的
产品分解图
产品分解图是对产品的最终输出成果进行分解,形成一个个的模块。一般它以分叉树的结构呈现,从产品开始,分成不同的模块,然后每个模型下面有哪些元素。比如说,微信的产品分解图:
微信产品分解图
从这个产品分解图也可以看出,微信定位自己为“一种生活方式”与其产品结构的设计是一脉相承的。
业务流程图
当我们使用微信支付的时候,在用户层面只是简单的扫一下二维码,然后输入金额和密码,点击支付就完成了。表面上的简单,其实后台经过了很多层的交互才完成这一个支付动作。业务流程图也是如此,在一开始设计的时候,尽量减少用户层面的交互,在保证安全情况下以最少的步骤完成交互,而大多数的动作放在后台自动完成。举个例子,微信支付的开发文档的的支付流程之一“Native Quick Pay-Mode”,一共14个流程中就有11个流程是后台自动交付完成的。
图2:Native Quick Pay-Mode流程图
产品架构分析
架构分析是结合需要实现的需求和目标,通过研究业务流程后,创造出来的一个系统结构图,以及系统中的每一个部分是如何高效地结合在一起的。比如说,下面是一个比较简单的架构,应用服务器与数据服务器分离、读写数据库分离的架构。在现实的系统中,往往还会加上负载均衡、缓存等部件。
成本价值分析
价值分析主要是为产品的开发和生产选择最佳的价值方案,需要解决的是如何在不降低产品质量并保证客户满意度的情况下,如何降低或者消除项目中的成本的付出。为了增加产品的价值,可以从三个方面考虑,第一,增加产品的功能,所以可以对功能方面进行改进;第二,降低成本,如何优化开发过程的各个环节;第三,提高质量。
系统工程和价值工程
这两个方法主要是系统级别的方法,属于工程管理的领域,它们往往需要具备多学科的知识和技能才能掌握。系统工程考虑的是如何设计和管理产品和系统的全生命周期,而价值工程需要思考的是如何提高产品和服务的价值的系统方法。
实际例子:加密货币钱包应用
客户的需求是为其公司开发一个专门存储其发行的加密代币的钱包APP,可以实现互相转账交易。将钱包的结构进行分解,其功能包括:
-
账号模块:助记词、私钥、公钥、交易码
-
代币余额和交易历史:收款历史、转账历史
-
收款功能:二维码、复制地址
-
转账功能:扫描二维码、私钥签名
-
代币间以及与法币的汇率:代币与ETH和USD汇率、ETH与USD汇率
钱包的前端业务流程为:
图3:钱包应用的业务流程
总结
这篇文章简单介绍了产品分析是什么,以及介绍了几个分析方法。当然,还有其他很多不同的方法,这里没有介绍到的。而且,这些方法单独拿出来都会有专门的书进行介绍。最后,还给出了一个加密代币钱包APP的案例。
参考
图1来源:http://www.projectcartoon.com/cartoon/2
图2来源:https://pay.weixin.qq.com/wiki/doc/api/index.html
图3来源:https://vironit.com/how-to-develop-a-blockchain-wallet-app/