当前位置:C++技术网 > 资讯 > 一个项目案例告诉你如何做好软件的用户体验

一个项目案例告诉你如何做好软件的用户体验

更新时间:2017-06-10 00:06:10浏览次数:1+次

    在项目开发中,如果一个产品出现了多种形态,势必会造成多种形态的混乱,这样给管理带来了麻烦。本着提高用户体验的角度思考,不仅仅要从运维上进行优化,在研发上更是要做好支持。这样才可以让产品体验变得完美。
    下面以我项目中遇到的一个实际的问题来进行探讨。

        现在的IC卡已经非常普遍了,银行卡、公交卡、饭卡、购物卡等等,随处可见。我们项目中用到的卡叫做充电卡。一张卡的形成,由空白的卡经过初始化后变成有效的卡。初始化的过程就是对卡片进行格式化数据的写入,将必要的信息写入卡内,同时也设置好保护的密码。

    一个项目案例IC卡告诉你如何做好软件的用户体验

    虽然业务需求的迭代更替,各种要求不断的提出来。为了能够更好的支持业务的变化,我们对卡的格式也进行相应的更改。其中一个就是密码设计问题。
    最开始的时候,客户只需要能够刷卡就行,数量少,而且需要快速开发出来充电卡。所以一开始我们用固定的密码。然后使用的人多了,也就出现了安全隐患。因为不同公司的卡肯定不能互刷,也要防止盗刷。所以后来支持自定义密码。虽然都是充电卡,但是密码不一样,也就代表制卡方不一样,就不能混刷。
    卡的格式升级之后,也就带来了不同卡类型的混乱。涉及到的卡形式有:空白卡、旧卡(内置密码的卡)、新卡(自定义密码的卡,不同的密码代表不同的卡)、其他种类的卡、坏卡(无法感应的次品,无效卡)。
    那么这么多的卡形式,在管理上必然会出现问题。而之前一个客户,就经历了三种卡,分别是空白卡、新卡(预设密码)、新卡(客户自己设定密码)。前前后后反复寄来寄去的,客服人员、产品人员轮番上阵,都没有能够解决。一方面是这些人员对卡也了解不够,另一方面是卡的形式确实变多了,很难的管理。最后还是和我沟通以及将几批卡寄回来,才解决了问题。
    为了规范卡的管理,我后续制作了一系列的规范文档,规范他们的制卡、发卡等流程。但是另一方面,程序也要做对应的优化,来帮助他们识别管理这些卡。如果一旦混乱,外观上是无法区分的,虽然建议他们将卡印上不同的标识,但是不一定能够落实。软件上如果能够更好的区分,会大大的降低管理难度。
    我们可以按照卡类型、好坏、密码来对几种卡进行区分,在一次测卡中,就可以判定这张卡是哪种形式的卡,进而做好进一步处理和提示,让用户不再不知所措。用户不知所措,最终还是落脚到研发这里来处理,这不是一个好的模式。
    所以,我是这样来处理的。
    白卡是默认密码为全F的卡。旧卡是我们之前使用的固定密码和格式。新卡用新的格式和密码(只能对预设的默认密码进行检测,不能检测用户自定义的密码的卡)。卡的类型可以通过测试命令测试出来,坏卡感应不到卡,提示无卡。
    有了这个基础,我们就可以很好的区分不同形式的卡了。当正常的功能执行受阻即出错的时候,我们不是立马提示原始的错误信息,而是进一步对卡进行检测,得到准确的错误信息,再用用户轻易能够理解的方式来提示,告诉用户该如何做。然后再提供一个单独的功能用来测卡,给出卡是哪一种形式的卡。
    如果检测到卡的密码是默认的全F,那么就提示此卡为空白卡,需要发卡后才能使用。如果检测不到卡,提示卡片是无效卡。如果检测到卡是其他类型卡即不支持的卡类型,则提示更换正确类型的卡。如果检测出来是旧卡,提示是否要升级为自定义密码的新卡或者提示更换新卡,或者以兼容模式操作卡或者提示新版本软件只支持新卡。如果检测出来卡的密码是预设的默认密码的新卡,那么就提示卡是预设的新卡,区分于用户自己设置密码的新卡。如果检测到是新卡,但是密码不是预设密码,则提示用户回忆自己曾经设置过的密码,设置正常密码后再次尝试。
    通过这样的改进,可以极大的降低管理难度和成本。用户可以通过软件,自己就可以解决大部分问题,也免得客服人员瞎忙。这样做到的是,智能判断卡的形式以及自动诊断错误并人性化提示。
    所以软件要做的优秀,要细致的去分析存在的各种问题,然后再多做一些工作,尽可能自动化处理问题,将用户承担的工作极大减轻,软件的用户体验自然也就会很好。当然,这个会花掉不少时间去研究和实现。
    不过,既然做了,就做好它!错误提示越准确,会让用户得到更实用的指导,而且也可以更多的自动化处理。如果开发者自己都不知道如何处理出现的问题,没法细化,那是相当糟糕的事情。
    软件开发不仅要注重代码的开发效率和软件执行效率,更要注重使用体验,尽量降低使用成本,才可以让软件更受欢迎。