关键词:人机交互接口,安全性设计,电子产品
电子产品在中国市场一直表现出国产不如进口产品走俏,但从使用功能或价格上往往都是国内产品具有自身优势,其最根本的原因是质量上逊色于进口产品。产品质量不仅是产品的性能,还包括可靠性和安全性。产品质量不佳其中一个原因是产品设计时缺少安全意识,另外国内市场的特点导致暴风开发模式,缺少验证,快速推出新产品,实际上往往是欲速而不达。
欲提高国产电子产品的竞争力,必须从根本上提高产品的可靠性和安全性,可靠性和安全性是有所区分并相互联系的,目前关于可靠性设计的资料比较多,也深入设计人员的设计思想,而安全性设计却未得到普遍推广。安全性是系统在可接受的最小事故损失条件下发挥其功能的一种品质,也定义为不发生事故的能力。对于产品开发,设计人员需要具备产品安全设计意识。这里的安全设计意识是指设计中考虑降低产品各种可能出现的安全隐患(不仅仅指对用户造成的人身伤害,还包括系统的功能失效)。安全性设计涵盖内容极广,文本仅从用户面板(人机交互接口)设计角度,说明几点设计的安全意识。安全性设计往往是系统化思维和思想意识问题,希望通过人机交互设计思想为例,融会贯通,最终贯穿整个产品设计。
安全设计从产品设计初期就应该考虑,贯穿产品开发的整个开发周期,安全意识提高有助于提高产品质量,但是安全设计做到了,不代表产品质量就高,产品质量相关的其他因素不在文章讲述范围之内。
人机交互是以人为中心与机器信息交互的过程。人是有感知和认识的主体,用户的认知模型如图1所示。人的认知功能分为感觉,信息处理,决定和反应四项子功能,并且皆依赖于大脑记忆。人本身是一个复杂的模型,受操作环境,工作额度影响,还和自身的能力,经验,情绪等很多因素相关,人机交互设计因而就变得非常复杂,设计中就应该尽量降低复杂度,降低不可预料因素造成的影响,使系统/设备尽可能在预知的安全状况下运行。
用户面板是接受用户操作输入和显示输出的人机交互接口,人机交互的重点是人与机器能准确方便地交流信息。用户面板的输入是随机的,操作次序或组合可能是很多样的,用户操作可能是错误的,如何降低用户操作的出错几率和如何降低误操作带来的风险就是人机交互系统安全性设计考虑的问题。
a) 首先,如何降低用户操作的出错几率呢?
考虑操作者姿势带来的疲劳,否则进入疲劳状态就容易引起操作失误,反应迟钝。操作者需要有舒适的姿势方便地进行人机交互。比如弯腰,探头操作极易使得操作者疲劳。设计时还需要考虑操作按钮和状态指示的位置,控制面板的倾斜角度,是否可以允许坐姿操作,因为坐姿比站姿不容易产生疲劳。一句话概括就是符合人体工程学设计。
设备的功能布局模块化,使人机界面更加合理,具有逻辑性。布局清晰,功能类似或安全等级相同的排列在一起。布局清晰使得操作按钮一目了然,不易失误。功能上类似的比如都是调节一些参数设定,操作上也方便并且由于这些同一类按钮的间距较近,容易误操作,即使误操作相近的按钮,也不会有大的影响。安全等级相同也是同样道理,比如危险开关和常用按钮最好分开足够距离,位置也应放在特殊位置。比如急停开关在特殊位置,能确保紧急情况能快速断电,正常操作时不会误断电。
状态指示应清晰,正确。对于指示灯显示状态正常或异常的可以用两种颜色显示,比如正常时显示绿色,警告或异常时显示更为敏感的黄色或红色。如果用指示灯亮灭表示正常/异常有不可避免的缺陷――如果指示灯灭还可能是发光器件损坏。开机自检可以提高器件失效的可探测度,有一定弥补作用。如果是文字指示应避免文字过多,反而对操作者起不到及时提示作用,应注意精简文字,对关键性文字或不同安全等级的文字附加闪烁或不同颜色加以强调,毕竟颜色信息敏感度优于文字信息。另外文字信息还需要考虑用户的语种,而图形信息可以避免这一问题,行业标准化图标对于跨国产品就显得尤为重要。
用户操作尽量简单易学,宁可让机器多运行也应让用户少操作。机器多运行往往是软件上的处理,当前的计算机技术高速发展速度以不成问题;而用户操作步骤简洁降低用户操作的出错几率,减少用户对系统的干预,降低了系统的故障率。
操作逻辑上也需要设计,比如按钮步骤互锁或连锁,减少操作者可能的操作组合,避免无意义的操作。互锁功能是系统在使用功能A时就禁止功能B,连锁指功能B必须在使用功能A的前提下。这样的设计可以保证用户操作必须符合一定的规范,对于不规范的操作直接不予接受;这就减少了系统接受用户输入的组合,并且还有一个好处是产品测试验证的操作用例也会减少。
b) 其次,加强对用户操作的确认和增加提示,使得用户意识到自己的操作错误。
高度的人机交互性需要系统对用户的操作给出相应的响应和提示。系统进入不同状态都应该从状态上清晰地显示出来,可以根据实际情况采用声,光状态指示,一方面操作者可以从状态反馈得知当前的操作是否成功,另一方面操作者可以根据状态指示指导下一步操作。比如家用电器中的消毒柜和微波炉在工作时的状态指示灯和声音提示给用户一个良好的状态反馈和安全警告。
如果系统有错误产生,不管是用户操作错误引起还是环境引起的,给出相应的状态指示可以帮助用户及时纠正操作或处理错误,甚至需要暂停系统工作。良好的用户接口设计,不仅需要系统具有检错或纠错能力,而且在错误出现后应让用户清楚了解其错误的性质和来源,以便由用户克服其错误,以免在异常状态下引发更为严重的问题。我们可以从Windows系统的文件删除操作来做例子,删除文件需要确认删除,并且先放到回收站而不是直接删除,这些操作虽然很多情况都是添加了操作步骤,但是如果没有这些安全措施,一个小孩随机敲几下键盘就可能将有用的资料从电脑上删除。手机面板设计也是如此,删除短信往往需要用户确认。另外有的手机编辑短信时输入编码正常时相应按键“嘀”的一声(设定按键有声音的时候),错误长响“嘀 -”的一声,这样用户可以清楚的判断文字编码输入情况。只要有按键输入(不管操作是否有误)都有个声音提示的另一个好处是,可以轻易探测按键是否失灵。
c) 最后,在用户误操作的情况下,如何降低危险的发生?
还需要考虑操作者误操作并且可能带来危害的情况下,如何采取安全保护措施。前面提到几点是从设计上降低用户误操作几率,但无法保证用户不误操作。比如系统在工作状态中有危险源,需用户保持一定距离,就应该有禁止用户接触的功能,比如需要关上屏蔽罩才允许用户操作等等。对于有辐射源,高电压,大机械力的产品这点尤为重要。比如微波炉在工作时上锁不让用户打开柜门,避免工作时用户误开门对人体辐射;X线机在放线时误开门自动通过门开关切断射线产生。工业切割机在进料切割动作时可以在面板上设计必须双手按控制按钮才执行切割动作,目的是防止对人体造成意外伤害。
还有一种方法是通过系统检测功能使得风险降低,比如X线机的最长曝光时间限制,即使操作人员操作严重失误,并且还没意识到问题,系统已对风险做了处理,使病人在受线额度上做了限制。
还有其他的安全防护措施,根据实际应用场合考虑是否需要。比如面板上的童锁功能,按下童锁键后,其他按键输入都暂时失效,除非解除童锁,这在一些场合有效地降低误操作。另一种措施是分辨用户等级,给出相应的操作权限,比如管理人员由于专业技能高,操作权限最高,普通用户只能进行简单的操作,实现的办法可能是密码管理,通过输入密码获得权限;也可以是硬件锁,管理员通过专用的钥匙提高操作权限。
设计产品初期就考虑不同类别的操作者,通过试验,调查了解各种可能的操作情况和各种风险,再用相应的方法避免或降低风险,提高产品的可靠性和安全性,这样的设计才可能是优质产品,当然采用的方案也需要考虑产品价格,以提高产品整体竞争力。
参考文献
《安全管理学》吴穹,许开立 主编,北京:煤炭工业出版社 2002年7月
《嵌入式系统可靠性设计》李伯成 编著,北京:电子工业出版社 2006年1月
《可靠性工程》金伟娅,张康达 编著,北京:化学工业出版社 2005年5月