在嵌入式应用中引入用户界面(下)
直观GUI的外观
开发一个高效的GUI可能是系统设计中最艰巨的任务之一,GUI设计不只是如何在屏幕上排列按键。要想让用户界面直观,设计人员必须想到这款产品的目标消费者类别。然而,坐在实验室的开发人员远离终端用户,很难预想他们将如何使用一款产品。
例如,开发人员给功能分组的原则是功能影响系统哪些组件,而用户与设备互动的方式是他们想要设备做什么。如果用户最常用的功能被掩藏在很多图标后面,那么总体体验势必是令人失望的。UI已成为决定用户体验的重要因素。在今天的市场上,消费电子产品变得十分复杂,设计较差的GUI很可能导致产品失败,即便其它各方面不错也无法挽救。
事实是开发人员不知道潜在用户与系统互动的方式。用户与想要如何使用设备之间最好是没有硬件,此外,为防止界面杂乱,不易浏览,应尽量减少屏幕显示的信息,但必须显示用户快速选择所需的关键数据。触控式UI对象/元素应尽量缩小尺寸,但是选择操作必须舒适。
图标排列和GUI元素顺序在设计初期是随意摆放的,这可能导致滑块出现在不方便的位置或者尺寸不合理,因为在最初设计阶段开发人员无法预测图标排列,直到用户有机会测试界面时才会清楚。
设计高效的GUI涉及很多像这类看不到的问题,需要用户直接反馈才能解决。对于屏幕大小受限的设备,UI必须有很强的相关性,只显示与用户目前考虑的选项相关的内容。开机后,GUI能够迅速进入应用的主界面,而且返回到主界面也非常简单。直观用户界面最终测试标准是,无需花费大力气学习或几分钟的培训,很快就能掌握如何高效地使用界面。
要想让开发人员了解GUI如何布局,设计公司需要举行大规模的用户测试活动。只聚集小部分群体,开发人员很可能无法达到预期目的,而大规模测试将会引起很多重复性的界面易用性改进工作。设计计划应考虑到GUI可能需要多次反复设计。准确的用户反馈融入到GUI越快越早,开发人员越有信心,在开发设计中投入大量的工程资源后无需大幅修改设计。
GUI测试
当选择一套GUI测试工具时,GUI设计的重复性是重要考虑因素之一。开发人员修改现有GUI的速度和难易程度将决定在设计进度中可进行多少次重复设计,还决定GUI捕获实际用户使用特性的效果。
任何测试过程都需要能够让相关人员和终端用户及时提供GUI设计反馈,最好是在设计初期。为实现这个目标,GUI工具必须加快设计速度,缩短重复设计的间隔。
过去,开发人员创造了仿真环境让用户测试。这些“线架”式仿真器是独立的工具,让开发人员能够将其整合成一个GUI,但不一定能够精确反应最终产品的外观和性能。例如,因为仿真器是工作在一个高速PC机上,屏幕刷新几乎瞬间完成。只有能够模拟实际产品内的MCU运行特性的仿真器才能让开发人员验证系统的响应性是否让用户满意。实际上,这样的测试反馈可能误导开发人员,结果导致新产品上市延期。
为确保仿真环境与目标硬件上的界面尽可能相同,仿真环境应模拟目标微控制器的运行方式。在一个能够精确模拟微控制器的PC机上开发嵌入式GUI给开发人员带来多个好处(见图2)。除无需向目标微控制器下载新固件来加快测试外,仿真环境提供多种分析功能,方便设计人员优化和调试代码。
- Linux嵌入式系统开发平台选型探讨(11-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)
- 嵌入式系统实时性的问题(06-21)
- 嵌入式实时系统中的优先级反转问题(06-10)
- 嵌入式Linux系统中MMC卡驱动管理技术研究(06-10)
- FPGA的DSP性能揭秘(06-16)