• 所属类目:理论
  • 更新时间:2006-09-23 12:28:04
  • 关键词:排序 检索
  • 浏览次数:(今日:,本周:,本月:

分享到:

排序是个很泛的概念,而且根据被排序的数据量排序方法和侧重又有很大的不同。因此一直没想到从何着手。今天把玩iphone的时候突然又想到这个问题,于是挑了个简单的路线来说说。我们从排序的目的来开扯。

个人认为,排序的目的是方便检索(浏览)
个人认为,排序是为了方便用户浏览(被排序的)数据,当用户浏览数据时就有了让数据有序排列的需求。于是才有排序。
在数据量较少时(一般在20组以内,如电梯按钮),排序则较为简单,常按首字母顺序进行简单的排序,而影响用户浏览体验的更多的是排版。这里就不深入探讨。
而当数据量达到一定程度的时候(超过50组),想要浏览就有一定的难度了,此时用户的最适合的行为则从浏览变成了检索。这时排序方式才起到了至关重要的作用,成为检索数据的根本,成为所有检索手段的依据。这里分享三种比较代表性的情况。

1、最基本的是利用排序规则来进行检索。(某个参数的升序或降序排序)
比如我想要去淘宝查查现在8G iphone代购掉到什么价格了,T_T。
于是我在淘宝上搜索iphone,选择参数找到8G iphone。这是得到的数据是未排序(或者按淘宝的某种规则排序)的相当庞大的一批价格数据。
然后我利用价格排序,然后人工排除了一些干扰项找到了淘宝上最便宜的8G iphone代购已跌至3199rmb,于是矛盾的缅怀一下自己的400多块钱。
这个方法最基本,用来查最大或最小很方便,但如果要检索的数据在排序的半中间,这个办法就显得有点笨拙了。

2、基于排序建立索引(分类)。
iphone的联系人排序体验相当好。
用联系人名称的首字母顺序建立有序的索引(进行分类),分组中的联系人再根据字母顺序进行排序。这种方法很常见,不足为奇。
出彩的地方在于设计师充分利用了触摸屏的优势来利用这个索引帮助用户进行定位。他们把索引列在屏幕右边,用户只需在索引条上滑动就能准确、快捷地定位到所要的分组进行浏览。

3、关键词筛选,无形的排序、无形的索引
上面的两种情况,所检索的数据都有可以很纯粹地进行排序的参数。淘宝上的价格,联系人的名字拼音首字母。但实际上有许多数据可能没有一个数字化的参数,而内容本身带着无规律的前缀或者后缀的。

来说说最“土”的网址导航(我们先扮演下不知道搜索引擎为何物的网芽们)。我想要找找与“奥运”为主题的网站。网站名称可能很幸运的是”奥运xxx”但也有可能是”xxx奥运网”或者”xxx奥运xxx”。我们排除掉正好那个网址导航网站整理出一个“奥运专题站”的分类,而且还放在很显眼的位置的情况。
别说要在常见的网址导航网站别说找到多个符合条件的网站、就算是找到一个符合条件的网站也不是一件容易的事情。
事实上,在好123上我就没有找到奥运两字。但是通过Google的网址导航我却很容易地找到了。虽然条目不多,都是符合条件的名站专题。

利用关键字筛选出相关网站。而这些条目所包含的文字本身则因为一个小小的筛选框,而变成了一个错综复杂的、无形的序列、索引、分类的网络。
于是,我找到这些条目只需两步:输入关键词、回车。

也许有人会问,这不就是搜索吗?
检索和搜索的区别,解释起来又是另外一篇文章了,而且内容和排序相关不大。我就用一个事实来回答这个问题。
在Google.com上搜索“奥运”得到的结果和在这个网址导航中检索“奥运”得到的结果是大不相同的。这就是“搜索”和“检索”的区别。大概也正因为这样,Google的网址导航虽然仍是“对熟用搜索引擎的网虫而言最土的网址导航”家族的一员。却也稍微有了些档次。有了些用处。让人耳目一新。

减少交互

当某个软件迫使用户进行交互,它就把自己判定为操作型软件。软件的外部模型通过对导航进行操作形成情境模型。但是,不同于真正的操作型软件,用户不关心这个外部模型──它只是为了最终看到相关信息的一种手段。

设计者的目标是让用户以尽可能少的操作塑造出情境模型。假设将图形设计,历史数据和环境关联等手段被抛在一边,他们就没有什么技术手段可以减少交互带来的负面影响了:

  • 形象化操作能将情境模型应用于适当的信息集合中。
  • 相关性引导能让用户确认模型,而无需建构模型。
  • 紧凑的反馈循环能让用户无需太多操作便能接近结果。

    形象化操作。命令行系统被批评为强迫用户来学习电脑的语言。现代的图形界面可能会更容易使用,但它相对前者在这方面没有太大的改进。图形界面语言是由菜单,按钮,以及确认框组成的,每一个控制元素都是非情境化的。用户要通过一个特定的的指令输入需求──它完全不同于任何人类语言,缺乏形象化的含义且很不自然。

    打个比方,看这个男孩如何向别人“演示和描述”他的玩具:


    点击放大

    话由于这个孩子的描述能力不强,他只能通过演示来传达复杂的概念。同样地,图形界面的发展并不完善,使得文字提示繁琐且晦涩,但软件的动态传递是理想的演示方式。用户可以点击某处的信息图形,说:“就是这儿!”,来获取该处的关联情境。

    两个最根本的描述情境的条件便是“时间”与“地点”。几千年来,人们都以这两个条件为基础来绘制专门的信息图表。但仍有许多现代软件放弃了这一传统做法,看这家网上热门的搬家公司:

    这些下拉菜单既突兀又没能显示充足的信息。地理位置应该从地图上找,而日期应该从日历上选。这是重新设计后的效果:

    这个设计也并非最理想。地点和日期信息应该能从用户既有的地图和日历上提供。但在满足这样需求的平台普及之前,软件至少应该提供类似的临时服务。

    作为进一步应用特定情境的一个例子,看一个主流的网上花店设计是如何让用户局限在下拉菜单里的: 对比另一个简单的可视化导向设计:

  • 我们是怎么发展到今天的?

    当前的很多软件都存在交互多,信息少的问题。我能想到的几个原因是。

    首先,我们目前的用户界面范式,是在另一个技术时代发明的。举例来说,最初的Macintosh时代,没有网络,没有大规模的存储,而且很少有跨程序的沟通。因此,它无从获取它自身环境之外的数据,记忆空间太少以致于无法保留重大历史记录。

    交互是设计者可利用的唯一手段。因为在当时,计算机无需提供太多的信息,所以,大部分软件还都是操作型软件──打字机,绘图板,分类账簿。经过二十年的发展以及互联网爆炸时代的到来,软件可以提供更多的服务。

    现代软件模拟机械运行机制的第二个原因是,对于那些创建软件的人来说,计算机就是一台机器。程序员生活在操作模式中,她操作一台计算机就如同驾驶一辆车。因此,她下意识的认为软件也必须像一台机器那样被操作,即使它的功能只类似于报纸或书籍。更糟的是,那些设计平台和图形界面工具箱的人更容易从这个角度看问题,因为他们工作于更低的层面。然后,应用软件设计师在设计大环境的影响下,几乎被迫投入到对机械模型的研究中去了。

    即便有些软件认识到了应该“丰富信息,简化交互”,却还是依旧把时间浪费在改良操作方式上,一次又一次的更新版本。对于设计师和程序员来说增加菜单项目和对话框都比重新设计一个动态图形更容易,有时,他们的理由是应该尽可能少改变用户的使用习惯。经过十次改版后,这个软件很可能改得像个怪物,用户花费在向下拉动菜单的时间比了解和获取信息的时间还要长。

    软件不应该这样发展,但解决这个问题需要对设计流程和技术平台作大量地重新思考。经过最近设计的一个案例进行详细研究,我将谈谈面对信息软件革命我们需要做些什么。

    演示:行程规划

    BART是美国海湾地区快速运输系统,的官方网站就像是个稻草人那样有名无实,因为BART几乎已经不存在竞争压力了,因此也没什么动力去提供一个高质量的网站。但另一方面,航空业则抓住每一个机会向客户提供优质的服务。不过,规划一次航空旅行和一次地下运输其实是差不多的。但我查了其他10个航空公司网站,发现他们十分(几乎完全)相似。

    首先,机械化的,毫无信息的配置屏幕:

    然后是文本化的结果列表:


    点击放大

    有实质意义的信息被压缩成几栏,排列在左侧,而屏幕右侧的大部份空间被分层定价列表占用。(截图中只显示了右侧列表的一部分)。

    用户有可能提出哪些问题?

  • 这条航线会在哪些城市中转?他们位于何处?
  • 航班白天会停经哪些地方,我想顺道逛一逛?
  • 他们起飞和抵达的时间分别是何时?
  • 要飞多久?(跨时区有可能造成这种迷惑)。
  • 中间停靠几次?要转签几次?         

    看看这个设计:


    点击放大

    航班的飞行时间和飞行距离,以及到达中转站的时间和距离及中转停留的时间,这些都能通过视觉呈现直观的进行对比。那些无需中转的航线格外突出,因为他们完全是蓝色的,而中转航线则是双色的。6:50从Hartford起飞的航班与7:20起飞的航班在排列的位置上有明显不同。通过查看顶端的灰条可以方便的将时间转换成任何时区。

    交互尽可能被简化了,每个点击都会有明确的语句提示。充其量就是双击地图,拖动日历,双击票价,可能还需要一些网页滚动。根据既有数据进行的预测(自动选择最近的购买路线,并展示最近的旅程名列表)可以为许多旅行者消除或减少对地图的浏览时间。一个不断更新的预测机制,还能发现用户总是每月第一周的周一到周五呆在Baltimore这一规律,然后自动将这一规律记录到日历,这样就可以免去相关的交互。当然,因为所有信息都是在同一页上展示,并且反馈非常及时,用户也可以考虑其他出发日期和中转城市,并且可以即时查看航班是否有空位。

    航空业近几年一直处于低迷状态,航空公司一直拼命争取乘客。其中,不成功的甚至面临破产。面对这么大的赌注,为什么没有任何航空公司试图通过更好的软件设计改善购票者的购物体验?

    问题主要还是在于观念。试问:“为什么西南航空不设计个更好的软件?”,这个问题只看到了表象,没有抓住本质。本质上的问题是,“真正意义上的软件设计诞生了吗?”,在我们期待获得更好的航空网站之前,我们可能需要改变一下观念。

    (未完待续)

  • 评论

    相关下载

    推荐下载