對 Xwindow 的思考
作者:白文濤
X Window System 是一套 Client-Server 體系結構的窗口系統,它是現代 Unix 系統 ( 包括 Linux 、 FreeBSD etc.) 所必備的圖形界面。
目前,絕大部分個人電腦用戶基本上都在使用圖形用戶界面( GUI )。如果是 Windows 及 Macintosh 的用戶自不待言、在 Linux 等的 UNIX 環境下用戶也經常使用 KDE 及 GNOME 等桌面環境。這是個非常了不起的事情。象筆者這樣,根據所做的項目一會兒使用 Linux ,一會兒使用 Windows ,如此便利的轉換,說成是 GUI 的功勞也毫不為過。
但是,筆者也經常會被雜志等媒體上的“正因為是 GUI ,所以使用方便”這樣話所迷惑。 GUI 真得使用方便嗎?
其實 GUI 并不方便
這是筆者個人的親身體驗。筆者首次接觸到 GUI 是在 1997 年。
當時在大學實驗室里 Macintosh 上玩了一會兒。這時候才感覺到程序設計及編輯文章等操作過程中有沒有 GUI 截然不同。例如,在沒有這種界面的情況下,每天為了啟動相同的程序而不得不查找一個又一個文件夾,確實相當麻煩。
模糊功能擴大了 GUI 的用戶層
在某種意義上,可以說因為支持模糊操作才使 GUI 變得簡單易用。例如, GUI 不擅長批處理,但指令方面,由于指令名稱和處理有著 1 對 1 的對應,因此不存在模糊性。而 GUI 通過使用模擬動作的鼠標等定位外設,只需將光標移到應用程序圖標附近的位置點擊或雙擊即可。
此時,沒有必要精確地將光標移動到某個特定的像素上。而且,圖標的位置位置可以在畫面上任意移動。比如 Windows ,就可以隨意改變圖標的布局。這種自由度給 GUI 帶來了方便的模糊功能。或許正因為有了這種模糊性,所以那些 UNIX 高手才會覺得“ GUI 用起來不方便”吧。
但是,這一模糊功能擴大了用戶層也是不爭的事實。計算機用戶數量正在穩步增加,連一向沒有接觸過電腦的人們也開始使用了。
當然,這里有需要注意的問題。讓不習慣的人方便地使用并不見得就可以提高效率。命令語句如果習慣的話,效率會很高。但是如果不習慣的話則無從下手。
總之,很難說哪一個好。所謂的使用方便指的是操作方法隨手即來、顯示結果隨心如意。也說是說,只要習慣了,任何用戶接口都是方便的。
新一代 GUI 到了問世的時候了
GUI 概念的提出已經是 33 年前的事情了。如果有機會可以看一下 1968 年 12 月 8 日在 Joint Computer Conference 上 Douglas Engelbart 的講演錄像。從錄像中我們就可以知道鼠標、多視窗、菜單、超級鏈接( Hyper Link )、組件等目前計算機中的基本要素大都是從這時開始提出的。
也就是說想法本身從那時起并沒有發生多大的進步。可以說現在已經到了應該推出新的計算機使用方法的時候了。雖然有通過語音操作等的提案,但至今還沒有什么大的進展。
想想看,在計算機人機接口的歷史中,使用鍵盤的歷史要更長一些。雖然目前也有筆輸入,但還沒有達到完美的地步。這也許在提醒人們必須改變一下一成不變的“計算機”本身了。
當今的計算機開發已經從單一的實現功能轉向以用戶為中心的設計方法。只要細心的用戶觀察一下就不難發現:微軟, IBM, ORACLE這些大企業的產品用戶界面做得是那樣的讓人無以挑剔。其實這正是他們為適應時代發展不惜代價建造可用性實驗室,利用統計學的方法跟蹤,調查,實驗,分析用戶的操作習慣和審美取向,簡單的說就是他們肯花大價錢搞清楚用戶到底喜歡什么樣的操作界面。這些做法當然都是最有效的。有符合科學規律的。也最能解決我們在界面設計中碰到的各種問題。因為他們深信軟件是要滿足用戶的需求迎合用戶口味的,要讓用戶掏腰包的同時心滿意足――說到底,只有廣大用戶才是評價用戶界面實用與否的最終權威。那么用戶對所謂的GUI(Xwindow)是否滿意呢?是否下像 雜志上所說的那樣“正因為是 GUI ,所以使用方便”呢?
為此筆者對 XWINDOW系統做了一個可用性的調查。得到的統計數據如下。。
筆者選取了具有該產品用戶群體特征的 8位測試對象,讓測試對象獨立完成筆者設計的覆蓋該產品常用功能的一些測試任務,在此過程中,對測試對象完成任務的情況進行觀察和記錄,在最后請測試對象填寫AIR滿意度問卷并征詢他們的反饋意見。
按照 CIF2.0標準,筆者采用 有效性、效率和滿意度這三個指標對可用性進行定量衡量。從對測試數據的處理和分析中,得出有關該產 品可用性質量的以下評估結果:
按照所有測試對象的平均情況來看, 在全部測試任務中,測試對象 可以獨立 完成 25.4% 的工作 ,其余 74.6% 的工作是在借助測試管理人員幫助或查閱聯機幫助和手冊的情況下完成的,測試對象的平均求助次數為 12 次。測試對象完成所有測試任務平均用時 38.92分鐘。在 AIR滿意度問卷9個項目中,測試對象的平均評分在 4.3到5.6之間(參見下表),對產品的評價傾向于滿意。
AIR 滿意度問卷平均值表( 1 )
|
產品的整體設計
|
產品的容易使用程度
|
用戶界面的容易掌握程度
|
用戶界面與外觀設計
|
用戶界面間轉換的容易程度
|
菜單、標簽、聯機幫助所使用的措辭
|
平均值
|
2.5
|
2.9
|
3.9
|
1.6
|
2.3
|
2.8
|
*1表示非常不滿意,7表示非常滿意
二、方法
2.1 測試對象
根據對該產品用戶群體的理解,它應該具有以下基本特征:
<!--[if !supportLists]--> ? <!--[endif]--> 經常使用計算機,熟悉計算機使用和基本的 windows 操作
<!--[if !supportLists]--> ? <!--[endif]--> 喜歡學習新技術,聽說過 linux.
<!--[if !supportLists]--> ? <!--[endif]--> 對 windows 下的辦公軟件比較熟悉。
根據以上分析,我們在計算機和非計算機專業人群中選擇了 8位人員作為測試對象,他們的具體情況如下表所示:
No.
|
職業
|
年齡
|
性別
|
每周使用計算機時間(小時)
|
計算機專業
|
1 |
秘書 |
25 |
女 |
15 |
否 |
2 |
秘書 |
19 |
女 |
25 |
否 |
3 |
部門經理 |
34 |
男 |
32 |
是 |
4 |
軟件開發師 |
27 |
男 |
70 |
是 |
5 |
軟件開發師 |
27 |
男 |
74 |
否 |
6 |
學生 |
23 |
女 |
32 |
是 |
7 |
教師 |
30 |
女 |
34 |
是 |
8 |
學生 |
21 |
女 |
53 |
否 |
2.2 測試環境
測試任務:
基于以往的對 windows操作系統的使用經驗完成最典型的常用功能,筆者為本測試設計了4項測試任務:
1 、 尋找到一個類似 word的軟件并制作一份個人簡歷。
2、 利用 linux系統提供的瀏覽器瀏覽給定網址的網站。
3 、 改變 linux 系統的刷新率。
測試物理環境:
實際的測試是在無干擾的辦公室環境中進行的。
測試計算環境:
實際的測試計算環境為:
<!--[if !supportLists]--> l <!--[endif]--> redhat9.0 中文 操作系統上的 Xwindow環境。
<!--[if !supportLists]--> l <!--[endif]--> 奔騰 IV1.7G處理器/256MB內存.
<!--[if !supportLists]--> l <!--[endif]--> sunflower鼠標/標準鍵盤
<!--[if !supportLists]--> l <!--[endif]--> 17寸SAMSUNG顯示器
測試工具:
筆者使用了手動秒表計時器、計分表格和計算器等工具來測量和記錄有關測試數據,并使用 AIR滿意度問卷進行滿意度評測。
2.3 測試程序
測試過程:
對 8個測試對象逐個進行以下測試過程。
首先,筆者向他 /她介紹測試的目的、內容和大致過程。然后,讓其填寫一份關于自身基本情況的表格,包括職業、年齡、性別、使用計算機的經驗等內容。在向測試對象介紹測試目的時,著重強調測試的目的是對產品可用性質量進行評價,而不是對測試對象的能力和素質進行評價,測試結果將以無記名方式記錄和使用。
在隨后的正式測試中,讓測試對象進行以下測試過程:告知他 /她在完成任務過程中將不提供任何幫助,要求他/她在完成每一項任務后示意筆者。并自行按照其要求逐個完成測試任務。筆者為每個測試對象設置計算機的測試初始狀態,并在測試過程中記錄任務完成情況的有關數據。在測試對象完成了最后一項測試任務后,讓他/她填寫一份AIR滿意度問卷,然后詢問他/她對該產品的感受和建議。
2.4 可用性指標體系
我們按照 CIF2.0標準,采用有效性、效率和滿意度這三個指標對該產品的可用性質量進行測試和評估。
在本測試中,有效性通過以下指標來衡量:
<!--[if !supportLists]--> ? <!--[endif]--> 任務完成率:測試對象完整、正確地完成某項任務的程度。
<!--[if !supportLists]--> ? <!--[endif]--> 幫助:測試對象完成某項任務過程中尋求幫助的次數。
效率通過以下指標來衡量:
<!--[if !supportLists]--> ? <!--[endif]--> 任務完成率 / 測試對象完成任務的時間。
滿意度指標通過使用 AIR滿意度問卷來獲得
三、測試結果
測試數據記錄的打分標準
在本次測試中,測試任務分為可分任務和不可分任務。任務是否可分主要是看該任務是否是由多個相對獨立的子任務組成的,如果是,即為可分任務,否則為不可分任務。對于不可分任務來說,其完成程度只有完成和未完成兩種情況,完成則其任務完成率為 100%,否則為0。對可分任務則要根據其子任務的完成情況來計算相應的任務完成率。任務完成率又區分為獨立完成率和協助完成率兩種情況,如果測試對象在沒有借助任何幫助(包括聯機幫助、和測試管理人員提供的幫助)的情況下獨立完成了測試任務,其任務完成率為獨立完成率,否則即視為協助完成率。
下面列出每項任務的打分標準以及按其常用和重要程度在所有測試任務中所占的比重:
1 、尋找到一個類似 word的軟件并制作一份個人簡歷:該任務由找到類似word的軟件,找到中文輸入法和制作一份個人簡歷。(比重:50%)
<!--[if !supportLists]--> 2、 <!--[endif]--> 利用 linux系統提供的瀏覽器瀏覽給定網址的網站。:若成功設置,其完成率為100%,否則為0。(比重:20%)
<!--[if !supportLists]--> 3、 <!--[endif]--> 改變 linux 系統的刷新率 :若成功設置,其完成率為 100%,否則為0。(比重:35%)
數據處理
將每個測試對象完成 4項任務的數據進行處理,獲得平均值和標準偏差,其中用A[ i ]表示測試數據, ? 表示測試數據的平均值, n 為測試數據的個數:
<!--[if !supportLists]--> l <!--[endif]--> ? =A[1]+A[2]+ ??? + A[n]/n
<!--[if !supportLists]-->
l
<!--[endif]-->
標準偏差
=
<!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter"/> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0"/> <v:f eqn="sum @0 1 0"/> <v:f eqn="sum 0 0 @1"/> <v:f eqn="prod @2 1 2"/> <v:f eqn="prod @3 21600 pixelWidth"/> <v:f eqn="prod @3 21600 pixelHeight"/> <v:f eqn="sum @0 0 1"/> <v:f eqn="prod @6 1 2"/> <v:f eqn="prod @7 21600 pixelWidth"/> <v:f eqn="sum @8 21600 0"/> <v:f eqn="prod @7 21600 pixelHeight"/> <v:f eqn="sum @10 21600 0"/> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/> <o:lock v:ext="edit" aspectratio="t"/> </v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:110.25pt; height:38.25pt' o:ole="" fillcolor="window"> <v:imagedata src="file:///C:/DOCUME~1/白文濤/LOCALS~1/Temp/msohtml1/01/clip_image001.wmz" o:title=""/> </v:shape><![endif]--><!--[if !vml]-->
<!--[endif]-->
<!--[if gte mso 9]><xml> <o:OLEObject Type="Embed" ProgID="Equation.3" ShapeID="_x0000_i1025" DrawAspect="Content" ObjectID="_1290964711"> </o:OLEObject> </xml><![endif]-->
結果
任務一數據分析結果
測試對象
|
獨立完成率 %
|
協助完成率
|
完成時間(分鐘)
|
完成率 /完成時間
|
幫助次數
|
1
|
|
100%
|
6.85
|
26.0%
|
2
|
2
|
|
100%
|
3.95
|
105.3%
|
0
|
3
|
|
100%
|
1.60
|
62.5%
|
1
|
4
|
|
100%
|
1.85
|
54.1%
|
1
|
5
|
|
100%
|
1.72
|
58.1%
|
1
|
6
|
|
100%
|
2.37
|
42.2%
|
1
|
7
|
100%
|
|
1.20
|
83.3%
|
0
|
8
|
100%
|
|
2.45
|
40.8%
|
0
|
平均值
|
100%
|
100%
|
2.00
|
59.0%
|
0.75
|
最小值
|
100%
|
100
|
0.95
|
26.0%
|
0
|
最大值
|
100%
|
100%
|
3.85
|
105.3%
|
2
|
標準偏差
|
0
|
0
|
0.91
|
0.25
|
0.71
|
任務二數據分析結果
測試對象
|
獨立完成率 %
|
協助完成率 %
|
完成時間(分鐘)
|
完成率 /完成時間
|
幫助次數
|
1
|
|
86%
|
26.63
|
3.23%
|
14
|
2
|
|
100%
|
39.72
|
2.52%
|
11
|
3
|
|
100%
|
32.98
|
3.03%
|
13
|
4
|
|
100%
|
27.92
|
3.58%
|
6
|
5
|
|
100%
|
26.13
|
3.83%
|
13
|
6
|
|
100%
|
35.37
|
2.83%
|
6
|
7
|
100%
|
|
23.80
|
4.20%
|
0
|
8
|
|
100%
|
37.58
|
2.66%
|
3
|
平均值
|
100%
|
98%
|
31.27
|
3.23%
|
8.25
|
最小值
|
100%
|
86%
|
23.80
|
2.52%
|
0
|
最大值
|
100%
|
100%
|
39.72
|
4.20%
|
14
|
標準偏差
|
0
|
0.05
|
5.93
|
0.59%
|
5.23
|
任務三數據分析結果
測試對象
|
獨立完成率 %
|
協助完成率 %
|
完成時間(分鐘)
|
完成率 /完成時間
|
幫助次數
|
1
|
|
100%
|
1.22
|
82.0%
|
1
|
2
|
|
100%
|
0.55
|
181.8%
|
1
|
3
|
100%
|
|
0.32
|
312.5%
|
0
|
4
|
|
100%
|
0.33
|
303.0%
|
2
|
5
|
100%
|
|
0.37
|
270.3%
|
0
|
6
|
|
100%
|
1.00
|
100.0%
|
1
|
7
|
100%
|
|
0.35
|
285.7%
|
0
|
8
|
100%
|
|
0.57
|
175.4%
|
0
|
平均值
|
100%
|
100%
|
0.59
|
213.8%
|
0.63
|
最小值
|
100%
|
100%
|
0.32
|
82.0%
|
0
|
最大值
|
100%
|
100%
|
1.22
|
312.5%
|
2
|
標準偏差
|
0
|
0
|
0.34
|
91.7%
|
0.74
|
所有任務數據分析結果的平均情況
參加者 #
|
獨立完成率 %
|
協助完成率 %
|
完成時間(分鐘)
|
完成率 /完成時間
|
幫助次數
|
1 |
|
90.9% |
36.13 |
2.52% |
20 |
2 |
10% |
90% |
43.82 |
2.28% |
17 |
3 |
8% |
92% |
38.05 |
2.63% |
16 |
4 |
|
100% |
35.42 |
2.82% |
13 |
5 |
8% |
92% |
30.28 |
3.30% |
16 |
6 |
17% |
83% |
47.13 |
2.12% |
8 |
7 |
83% |
17% |
35.22 |
2.84% |
1 |
8 |
35% |
65% |
45.28 |
2.21% |
3 |
平均值 |
26.83% |
78.74% |
38.92 |
2.59% |
11.75 |
標準偏差 |
0.29 |
0.27 |
5.87 |
0.39% |
6.96 |
最小值 |
8% |
17% |
30.28 |
2.12% |
1 |
最大值 |
83% |
100% |
47.13 |
3.30% |
20 |
AIR滿意度問卷調查結果
測試對象
|
產品的整體設計
|
產品的容易使用程度
|
用戶界面的容易掌握程度
|
用戶界面與外觀設計
|
用戶界面間轉換的容易程度
|
菜單、標簽、聯機幫助所使用的措辭
|
1 |
2 |
1 |
2 |
3 |
2 |
3 |
2 |
2 |
2 |
3 |
2 |
3 |
3 |
3 |
5 |
5 |
5 |
3 |
3 |
3 |
4 |
3 |
5 |
5 |
3 |
3 |
2 |
5 |
4 |
4 |
3 |
2 |
1 |
3 |
6 |
3 |
5 |
3 |
3 |
2 |
3 |
7 |
4 |
3 |
4 |
2 |
3 |
3 |
8 |
5 |
4 |
3 |
4 |
2 |
2 |
平均值 |
4.5 |
4.9 |
4.9 |
4.6 |
4.3 |
4.8 |
標準偏差 |
1.41 |
1.25 |
1.46 |
1.41 |
1.75 |
1.58 |
最小值 |
3 |
3 |
3 |
2 |
3 |
3 |
最大值 |
7 |
6 |
7 |
6 |
7 |
7 |
*1 表示非常不滿意 7 表示非常滿意
結論:
這些用戶都是操縱 WINDOWS系統的熟練用戶,他們也代表了大部分使用計算機的群體。既然WINDOWS已經盛行多年,微軟又在系統界面設計上投入了大量的人力物力,XWINDOW為什么不來個東施效顰呢?XWINDOW中的許多名詞也經常讓人費解,比如控制中心,我看就是沒有控制面版好。其實用戶界面的好看實用與否并沒有一個統一的規則,但是做為一個比較成功的操作系統WINDOWS已為人們所熟悉。就不要難為我們可憐的計算機用戶了。
參考文獻 :
[1].Nigel Bevan, Tutorial 11---Industry Standard Usability Tests,Interact ’ 99 Conference, Edinburgh, 1999.
[2].Jakob Nilsen, Usability Engineering, Academic Press, 1993.
[3].Harry E. Blanchard, Standards for Usability Testing, ACM SIGCHI Bulletin, Vol.30, No.3, 1998.
[4].Nigel Bevan, Common Industry Format Usability Tests, Proc. Usability Professionals Association Conference, <place><city><span lang="EN-US">Scottsdate</span></city><span lang="EN-US">, </span><state><span lang="EN-US">Arizona</span></state></place> , 1999.6.
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
