政府软件产品设计经验谈:不要尊重公司,而要尊重客户
亲爱的创业者、产品经理,如果你的客户是企业与政府,那么我在产品设计犯的错误,希望这篇文章能够让你避免。
错误的产品设计会让你产生大量的成本,我给你的忠告是:不要按公司的环境去设计产品,而要按客户的环境设计产品。
性能第一?错!能用第一!
我们公司的安全产品使用Python开发,出于安全的考虑,我们认为Linux系统比Windows能更好地抵御安全威胁,同时Linux系统具有极好的稳定性,为了方便用户适应,我们选择了Deepin,为了简化安装,我们提供给客户Vmware虚拟机的Deepin,Deepin预先安装好了我们的安全产品,客户可以直接导入而无需安装即可使用。
实际情况是怎样的呢?政府的电脑配置实在太低了,多数是1G内存,因此他们再跑Vmware虚拟机,电脑基本上卡的动不了,Deepin系统用到了太多的特效,而我们公司的电脑配置是8G内存。第二个问题是,Deepin系统的网络配置、分辨率配置很麻烦,客户对这种系统完全不适应。
现在我们调整的方案是把Deepin换成WindowsXP,同时要求客户在专用的服务器安装。读者可能会问,产品为什么要弄成虚拟机的方式,客户年龄整体偏大,虚拟机直接导入安装较快。不过,把虚拟机作为产品来安装确实挺奇葩,主要是我们的产品模块太多,各种Python依赖环境,不弄成虚拟机的话,就得派技术去客户现场安装。不过虚拟机文件又挺大,1G多左右,只能放在百度网盘传过去。
我们最大的错误是,把产品装在Deepin系统上了,对客户来说学习成本实在过高。因此,大多数的时候,产品设计尽可能符合大多数用户的使用习惯。读者可能会问,产品为什么要弄成安装的,不能弄成云服务吗?我们实际也想,客户就是为了数据安全,必须要求装在他们的服务器上,这就是消费者市场与政府市场的区别。
安全第一?错!简单第一!
面向企业与政府的软件产品,大多用到加密狗、Key、U盾来保护产品防止盗版,可我们产品不是客户端类的,而是Web类的,用的Django框架。这下问题来了,一个网站产品如何做好防盗版的工作呢?最初我们想的是网络认证,把客户的MAC与IP进行绑定,但是客户IP总会变化,最终决定用Key文件。生成一个Key文件,并设定到期日期,然后把Key复制到系统里,再把系统导出为Vmware虚拟机,然后发给客户。
实际情况是怎样的呢?每提供一套产品给客户试用,就需要生成一个Key文件,然后再把虚拟机打包出来,打包一个虚拟机再上传到百度网盘,整个过程就要几个小时了。同时Key文件又不便于管理,如果那虚拟机系统被转给第三方客户了,第三方客户也能用了,尽管Key管理界面可以实时监测Key的使用情况,但从IP上又如何能分的清,比如客户要是上了VPN,基本就乱了,所以Key实际上并没有起到保护的作用,反而增加了管理与复杂的成本。
现在我们调整的方案是弄成手机验证码登录,登录时填写手机的验证码即可使用。由此可见,客户端软件的保护方式可以采取加密狗等方式,但是Web软件也试图采取本地验证的方式来反盗版,就适得其反了。如果你的软件是Web,那么尽可能采取Web的保护设计,比如手机认证、邮件认证、QQ认证、二维码认证等方式。
政府软件产品的困境
最苦逼的莫过于自己进了政府市场,对政府的采购部门来说,采购的产品应该是看得见、摸得着,最基本的要求是,软件产品需要安装在他们的服务器上。那么软件升级时、软件出现故障时,就得需要专人进行协调处理。
对于面向消费者市场的创业者与产品经理来说,上面遇到的2个问题应该不会很多,只是思维方式不要走我这种弯路,设计产品时,尽可能不需要从自身的需求出发,优先从客户的角度进行考虑,提出某个设计时,都应该问一下自己:这个设计,对客户,对公司,都是简单的设计吗?这个设计会在哪些方面增加了成本?(学习成本、维护成本)
在政府市场创业,真是坑爹啊。。。
作者:Greyoo
来源:简书
原文地址:http://www.jianshu.com/p/2d45b89425a9
政府客户现场的情况确实比较复杂难搞,深有体会