软件的社交能力

  首先回顾一下《变身博士》中著名的精神病,他的发病起因大抵可归结为一条——人格分裂。再来思考一下自己是否有分裂的迹象,当然,我没有,至少我不会当众承认。然而澄清的世界在互联网面前改变了,任何人都可以申请N个不同的帐号来扮演不同的角色,这不是人格分裂又是什么?既然计算机只认得0和1,它就不会在乎你的长相,你是否是个变异的澳大利亚袋鼠,更不会在乎你是财务部发票管理员还是分公司发票管理员,但是,我们是否有必要规定:一个帐号只能对应一个角色,如果你想同时拥有多个角色,那么你必须申请两个ID。NO!NO!NO!有人大声反对,为什么我不能同时是超级管理员还是分公司发票管理员?你当然可以,但是如果这两个角色看到的页面不一致怎么办?取他们的并集?以权利较大的一个为准?还是其它的方式?如果有些页面取并集,有些页面取权利较大的一个,有些页面又以其它方式,这又如何设计?如果你的设计成功了,你仍然要考虑其扩展性——既然已经适应了这么复杂的方式,等着瞧吧,客户必然会要求再复杂一点。

  听起来似乎我一直赞成互联网上的人格分裂,并非如此!我有限的大脑空间记不住一大堆帐号和密码,而且一些变态的规定要求在一定时间后必须更换密码,更变态的是这些密码必须大于8位且同时拥有数字、字母和特殊字符!没错,作为用户,你要么同意接受开发人员的观点,要么只能停止使用。

  好了,现在让我们远离人格分裂,来看一些缺乏社交能力的例子。

例1:词不达意

图1 登陆页面

  猜猜“本地登陆”和“远程登陆”是什么意思,给你十秒钟时间。

  计算机专业知识告诉我,“本地登录”是在局域网内登陆;“远程登录”指坐在家里连接到办公室的服务器。没错,我就是这么想的。某日,一个基层用户(请注意,是用户,不是客户)打来电话,听声音大概是个即将领退休金的老大妈:“那啥,我想问一下,我是东北那边旯的,你这个‘本地登录’是不只能上海人用?我选‘远程登录’咋不好使捏?”

  看见了吧,问题来了。其实这个系统只能用于内部专网,“本地登录”和“远程登录”各维护了一套密码系统:“本地登录”使用姓名缩写或管理员分配的帐号登录;“远程登录”使用公司E-mail作为帐号。

  让每个词汇都有其特殊、单一的含义,永远不要让用户猜测,尤其避免词不达意。

例2:缺少必备操作

图2 角色管理页面

  这个页面有三个缺陷,我想明眼人一眼便会看出上图缺少一个必要元素——查询按钮。6页信息或许能勉强忍受,16页呢?100页呢?碰巧你的角色名正好在第50页,那么你必定会抓狂,大骂这个系统是垃圾。

  第二个缺陷是缺少全选按钮,其作用不必细说。

  第三个缺陷可能不太明显,就是那个序号列。请问序号在哪里?

  缺少必要的操作键会使我们的系统看起来不够专业,进而影像客户的好感度。

例3:不友好的操作

  首先我必须承认,在我经历的所有项目中,友好性操作都作为最后一项指标,即使被测试人员指出,其等级也是最末级。这没错,毕竟软件以实现功能为主,华丽花哨的界面通常被开发人员不屑一顾。

  是这样吗?只要把眼光稍稍放远一点(不是蹬高远眺,只是看看隔壁的邻居),就会发现,优秀的软件必然有友好的操作界面。

  让我们回顾一段传奇的往事:

  一个硅谷最据权势的风投家约翰·杜尔(简单说,他在Google上投了1250万美元,赚了300多倍,他也是针对iPhone app投资的iFund的老大)主办的内部会议上,乔布斯同学迟到了。迟到了还不算。在他来之前,大家被这个待演示的玩具弄的很开心,等他来了,所有人要正襟危坐开始做PPT演说,他就开始踢场子。

  演示者对自己出产品很满意,他问乔布斯:“你觉得这个产品这么样?”

  “我觉得这是屎!”乔布斯回答。

  对方被震慑了,乔布斯说出了其中的原因:“它的外形不创新、它不优雅、也感觉不到人性化……你拥有让人难以置信的创新的机器,但外形看上去却非常传统。”

  创新、优雅、人性化造就了iPhone。

  当然,我们的系统没法与苹果相比,但我觉不会轻易承认我们的系统不好用,我甚至可以向用户保证,我们的系统每个世纪只需重启一次,它简单到一只独眼蛤蟆都能轻易使用,而且它规定不许做的事是世界上所有文明公国明文禁止的!

  说大话前还是先看看其中的一个操作界面:

 图3 分配角色页面

  那个选择角色的操作……哎……为了同时选择多个角色,我必须按住Ctrl键,如果没按住怎么办?对不起,之前选中的角色都会取消。还记得吗?角色信息一共有6页。

  想修改它并不难:

图4 修改后的分配角色页面

  修改后的页面我们并不陌生。

  如果有一天糟糕的操作形式连你自己都无法忍受,那么请在它没有造成更大危害的时候即时修改。

例4:不一致的显示风格

图5 页面示例1

图6 页面示例2

  上面两个页面单独看都没有问题,但放在同一系统中就会显出不和谐。图5的查询域将下拉框放在文本框下方,图6正好相反;图5的登录用户没有对列表中数据的审核或修改权限,所以操作列没有任何信息,图6中用“—”表示。

  也许这种问题是最难发现的,但是既然你不想做一个人格分裂的精神病,大概也不会希望系统如此吧。

 例5:强迫用户做不熟悉的操作

  我认识一个未成年的程序高手,他每次发现Windows强迫他做一些操作时(比如停掉一个服务的同时系统会提示你其它相关服务也会停止)都会破口大骂,好像由他来做会更好似的,难道他忘了自己只是个穿着背带裤并且满脸青春痘的小屁孩?

  作为软件制造者,来看看用户是否会同样骂我们。

图7 复核提示框

   为什么我非要按一下键盘?为什么我需要输入1和0?东北老大妈又问了:“我输入了1,为啥告诉我输入不合理?我已经办了上海户口了。”我告诉她要输入英文半角字符,她又问了:“半饺是啥玩意?在哪有卖的?”

  修改这个问题也不难:

图8 修改后的复核提示框

  只是对问题做个小小的诠释就可以解决“半饺”问题。

例6:强迫用户做多余的操作

  当我们录入发票数量时需要同时填写发票号码段,包括“发票号码起”和“发票号码止”两部分,它们只允许输入8位数字,且必须满足发票号码止 =发票号码起 + 8。这合情合理,问题是当你每次都必须手动计算并输入“发票号码止”时就不合情不合理了。

  避免浪费脑细胞的多余操作。还记得那个经典的例子吗?在直角坐标系内怎样用一个类表示线段?你是否定义了一个多余的length属性表示线段的长度?

例7:出现了让人困惑的现象

  一个计算资金的例子:两个浮点类型数相减,1.0-0.1,其结果是多少?小学生都知道是0.9,但是很遗憾,计算机不能精确表示这个数字,它被表示成0.899999999。你试图对用户解释这种现象吗?那简直是浪费时间,他们才不会在乎什么二进制和双精度。

  好了好了,难道我们的系统真的没法用了?客户一直用的挺舒服啊,他们并没有抱怨。没错,他们的确不会当着我们的面抱怨。可以做一个简单的调查问卷,让人们回答:“如果你可以选择,你是否会选择健康的饮品?”这种白痴问题有人回答“不会”吗? 接下来,你准备一瓶白开水和一瓶可口可乐,暗中观察那个选择“会”的人会选哪一个。所以,别太相信表面现象。

   类似的例子还有许多,这需要我们在今后的工作中尽量避免,制作一个友好软件,让用户快乐地使用。等等,我好像跑题了,我要讨论的是精神病领域的问题……

2009-04-30



  本文写于8年前,当时的UI现在看起来相当老土

作者:我是8位的

出处:http://www.cnblogs.com/bigmonkey

本文以学习、研究和分享为主,如需转载,请联系本人,标明作者和出处,非商业用途!

时间: 2024-10-26 06:52:40

软件的社交能力的相关文章

多年收集的一些稀有软件2

QQ:365543212 Fuel Economy Calculator v1.1 B.001(汽车工程软件,用于预测车辆燃油消耗率,是目前此类软件中最为全面的,能接收从最新的发动机分析程序Engine Analyzer自动发送来的强大的游标和发动机规格) Psat v5.1 1CD ProScan.v5.1 1CD PowerFlow v3.3p3a for Linux 1CD(Exa公司的汽车外气流计算软件) Rotating Inertia Calculator v1.1 A.000(一款

浅谈软件销售工作

自技术领域转做销售有几年了.由于长期耕耘在技术领域,对于销售的角色进入有点晚,只是近期几年也逐渐的摸出些门道,而且按照这些门道来指导团队的实践,确实可以看到比較可喜的进步,在此总结一下.跟大家一起分享一下. 销售分为例如以下三种类型:1. 技术型销售.典型特征是逢人必谈技术,对于技术的内因外果非常清楚,当跟客户沟通时特别在技术沟通时,能说会道,涛涛不绝.但一到关系项目譬如玩.喝酒.K歌等表现平平.2. 关系型销售.典型特征是碰到人必称"哥"."老师"."领

Day4 - 迭代器&生成器、装饰器、Json & pickle 数据序列化、软件目录结构规范

---恢复内容开始--- 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1.列表生成式,迭代器&生成器 列表生成式 需求:列表a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],要求把列表里的每个值加1 1 a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 2 b = [] 3 for i in a: 4 b.append(i+1) 5 a = b 6 print(a) 普通青

三件软件作品评价

先交代三件软件作品的相关资料.   软件一 软件二 软件三 软件名称 蜗牛词典APP 24点小游戏APP 物理实验网站 学校 2017集美大学1412软工实践  集美大学1411 北京航天航空大学计算机学院 团队名称 SNS1412 hexagon 软剑攻城队 团队博客地址 http://www.cnblogs.com/jmu-sns/ http://www.cnblogs.com/24app/ http://www.cnblogs.com/buaase/ Git地址 https://codin

IE 弹出提示:由于无法验证发布者,所以Windows 已经阻止此软件

由于无法验证发布者,所以Windows 已经阻止此软件 按如下步骤:1.打开Internet Explorer---菜单栏点“工具”---Internet选项--安全---自定义级别---安全设置---“ActiveX控件和插件下”的第5个“下载未签名的ActiveX控件”选择“提示”---确定!刷新您要安装的页面即可(因为使用的软件没有通过微软的徽标认证,在SP2中默认是不允许安装这样的程序的,解决方法为开始-控制面板-系统-硬件.其中在驱动程序项里有有个“驱动程序签名”的选项,点开后.选第一

定制windows环境下cmd替代软件ConEmu

定制windows环境下cmd替代软件ConEmu 公认的是Windows环境下命令行界面太难用. 不管是cmd还是powershell都不顺手!!窗口宽度不能全屏,字体太难看还不能调整,窗口背景不能更换,永远的黑白配,最痛苦的是复制和粘贴.都不知道MS是怎么想的?搞个这么个反人类的东西出来,还万年不变,从Windows诞生到Windows7不论是桌面版还是服务器版都一样,到了windows8/windows10换成powershell一样的鸡肋. 在百度搜了一下,找到cmd的替代软件conem

时序图与状态图(Rose) - Windows XP经典软件系列

最近开始了自己高级数据结构之旅,在这次旅行中,我将持续把一些高级的数据结构从理论到编码都过一遍,同时通过博客形式分享出来,希望大家指出不足之处! 二叉排序树是一种动态排序的数据结构,支持插入.删除.查找等操作,且平均时间复杂度为O(log(N)),但是普通二叉排序树不能保证树退化为一颗分支的情况,此时最坏情况下的时间复杂度为O(N).此时,平衡二叉树的产生了.平衡二叉树是一种动态调整平衡的数据结构,但理想的平衡二叉树很难,于是人们使用AVL.红黑树.Treap.伸展树等来替代平衡二叉树,这些数据

类图(Rose) - Windows XP经典软件系列

最近开始了自己高级数据结构之旅,在这次旅行中,我将持续把一些高级的数据结构从理论到编码都过一遍,同时通过博客形式分享出来,希望大家指出不足之处! 二叉排序树是一种动态排序的数据结构,支持插入.删除.查找等操作,且平均时间复杂度为O(log(N)),但是普通二叉排序树不能保证树退化为一颗分支的情况,此时最坏情况下的时间复杂度为O(N).此时,平衡二叉树的产生了.平衡二叉树是一种动态调整平衡的数据结构,但理想的平衡二叉树很难,于是人们使用AVL.红黑树.Treap.伸展树等来替代平衡二叉树,这些数据

mac-使用brew安装软件

安装brew软件 安装方法:  在Mac中打开Termal:  输入命令: ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)" 使用brew安装软件 brew install 使用brew卸载软件 brew uninstall 使用brew查询要安装的软件 brew search brew list           列出已安装的软件 brew update     更新brew brew home