12月 22nd, 2006 by 奇遇
書名原文: About Face 2.0: The Essentials of Interaction Design
作者: [ 美 ]Alan Cooper , Robert M. Reimann 譯者:詹劍鋒、張知非
推薦語
本書是一本由一位在交互設計前沿有著10年設計咨詢經驗及25年計算機工業界經驗的卓越權威撰寫的設計數字化產品行為的啟蒙書。它探索了一個獨特的設計領
域,即復雜系統行為的設計——特別是軟件激活技術。本書論述一種具有革命意義的設計觀念——人類驅動設計過程。
本書是一本難得的大師經典之作,應該是一本產品規劃師、界面設計師以及可用性工程職業人員或者程序員都想得到的書。
封面
序
本書旨在為您提供一些有效而實用的工具來設計用戶界面( user interface )。這些工具很明顯分為截然不同的兩類:戰術性工具
(tactical) 和策略性 (strategic) 工具。戰術性工具是使用和創建用戶界面的習慣用法 (user interface
idioms) ——如對話框 (dialog box) 和下壓按鈕 (push button) ——的提示( hint )和技巧 (tip)
。而策略性工具是思考用戶界面習慣用法的方式,換言之,即用戶與用戶界面習慣用法的交互方式。
雖然已經有了一些介紹策略性或者戰術性準則的書,我們的目標在于寫一本能將兩者融為一體的書。在幫助您設計更有吸引力、更有效的對話框的同時,本書還將幫助您理解用戶如何了解您的軟件,以及與之交互的方式。
設計有效的用戶交互和界面之關鍵在于將策略性和戰術性的方法合二為一。例如,客觀上不存在好的對話框——對話框的品質取決于具體的應用情形:用戶是
誰,他們的背景和目標是什么。僅僅應用一系列的戰術性說明( tactical dictum
),會使創建用戶界面變得更容易,但這并不能使最終結果更好。同樣,對于用戶應該如何與您的系統交互的深層次思考也不能改善軟件本身。真正奏效的是:在策
略上對用戶與特定軟件的交互方式保持敏感的同時,擁有一個可以在任意情況下應用的在你掌握之中的戰術工具盒 ( tactical toolbox )
。本書既會加深您對用戶的理解,又將教您如何把這些理解轉變為設計理念。
誰應該讀這本書
在 1995 年 8 月,軟件觀念革命( About Face )這本書第一次出版時, 界面設計 (interface design)
還是個未開墾的新領域。少數人在軟件工程的影子下,勇敢地以用戶界面設計師的頭銜工作,正如機敏的小哺乳動物在粗暴的巨龍陰影下爬行。正如在軟件觀念革命
第一版中所指出的,軟件設計被人們錯誤地理解和評價。過去是怎么做的,程序員就就是怎么做的。很多處境不佳的文檔工程師 (documenters)
、培訓者、技術支持人員,以及處于增長趨勢的 可用性工程職業人員( usability practitioners )
都意識到:某些事情應該改變。
Web 令人吃驚的、似乎是一夜之間的發展和流行,驅動了這種改變。突然間,易用性( ease Of use) 成了掛在每個人嘴邊的術語。在
20 世紀 90 年代初期,即多媒體短暫流行的期間,涉足數字產品設計的傳統設計師紛紛轉向 Web
。表面上,新的設計師頭銜像雜草一樣涌現:信息設計師 (information designer) 、信息架構師 (information
architect) 、用戶體驗策略師 (user experience strategist) ,以及交互設計師 (interaction
designer) 。 C 級公司的首席職務(首席用戶體驗官, user experience officer
)一開始就存在,他的工作核心是創建以用戶為中心的產品。很多重點大學都爭先恐后地開展這些理論的培訓。與此同時,可用性工程和人性因素( human
factor )職業人員的地位也在提升,現在被承認是推動更好產品設計的領導者。
雖然 Web 使得界面技術倒退了不止十年,但它無可爭議地將用戶需求永久地置于公司的雷達之上。作者堅信: .COM
的衰敗只能使得用戶及其需求的可見性,以及對它們的關注在將來變得更加明顯。人們一般對新技術感到厭倦。消費者傳達了明確的信息,他們所需要的好技術是容
易使用的,并且能滿足他們需求的技術。
因此,作者很高興地說,新版本的讀者群會大大地增大:任何對用戶與數字產品的交互感興趣的人都會在讀這本書的過程中獲得獨特的能力洞察力。程序員、與
數字產品相關的設計者、可用性工程職業人員、項目經理都會從此書中受益匪淺。讀過《軟件觀念革命》( About Face )
第一版或《軟件創新之路》( The Inmates are running the Asylum )
第一版的讀者會在此發現更新穎且更詳細的有關設計方法和原理的詳細信息。
為什么要做交互設計
《軟件觀念革命》的第一版描述了一門被稱為軟件設計的學科,同時也可稱為用戶界面設計。在這兩個術語中,用戶界面設計有更強的生命力。在本書里,我們仍會使用它,而且大多數是合適的。
然而,筆者很清楚,本書所討論的內容要遠比用戶界面設計的范圍廣。界面這個詞意指表面,本書所闡述的大多數設計問題要遠遠比 CRT 屏幕的表面問題深奧,它直接觸及了“數字產品是什么”,以及“數字產品要做什么”等核心問題。
近些年來,對于這類設計,人們已經提出了許許多多的術語。在 2000 年左右,公司對 Web 的興趣達到頂點時,被稱為信息架構(
information architecture , IA )的學科似乎最終包含了此處這里討論的這類設計。但是正如 Web
在經濟方面的前景已經暗淡一樣, IA 基本上也保留了它以 Web 為中心的狹隘視圖:如何組織和瀏覽頁面上的內容。隨著新經濟的明顯下滑, IA
產業的好運也逐漸消失。
另一個近年來流行的術語是 體驗設計( experience design ) 。美國圖形藝術研究所 (American Institute
of Graphic Artists , AIGA)
特別提倡使用這個術語來概括用于開發數字產品和系統的不同設計與可用性工程學科。這個想法很有吸引力,但它仍然回避了一個問題——什么樣的設計才是交互式
系統設計的真正核心,交互式系統設計是一種明顯不同于已有設計的嶄新設計。
體驗設計這種想法也有一定的問題。在筆者看來,體驗是人與人工制品(或者其他生物)交互的結果。體驗出現在一定的上下文場景 (context) 中,進一步由內部、心理的個人環境所調節,這種個人環境由動機、過去經驗、氣質和多種認知因素形成。
作為設計者,我們不能聲稱能夠設計一種人工制品或者系統的用戶體驗,但我們能夠設計與人工制品交互的機制,以改善用戶體驗。因為,我們相信體驗發生在
人和人工制品交互的過程中,我們已經選擇了“交互設計”這個術語來表示本書描述的這類設計,該術語由 Bill Moggridge 和 Bill
Verplank 在 20 世紀 80 年代首創。你不能設計體驗本身,但你能設計調節和引導體驗的交互行為。
交互設計的定義
簡單地說,交互設計是 人工制品 (artifact) 、環境和系統的行為,以及傳達這種行為的 外形元素 (formal element)
的設計與定義。不像傳統的設計學科主要關注 形式 (form) ,最近則是關注 內容和內涵 (content and meaning)
,而交互設計首先旨在規劃和描述事物的行為方式,然后描述傳達這種行為的最有效形式(參見圖 1 )。
交互設計借鑒了傳統設計、可用性工程及工程學科的理論和技術,它是一個具有獨特方法和實踐的綜合體,而不只是部分的疊加。它也是一門工程學科,具有不同于其他科學和工程學科的方法。
交互設計是一門特別關注以下內容的學科:
? 定義與產品的行為和使用密切相關的產品形式
? 預測產品的使用如何影響產品與用戶的關系,以及用戶對產品的理解。
? 探索產品、人和 上下文 (context) (物質、文化和歷史)之間的對話 (Riemann 和 Forlizzi,2001)
? 交互設計從目標導向 (goal-directed) 的角度解決產品設計:
? 要形成對人們希望的產品使用方式,以及人們為什么想用這種產品等問題的見解。
? 尊重用戶及其期望目標。
? 對于產品特征與使用屬性,要有一個完全的形態,而不能太簡單。
? 要看到產品最終成品的樣子,它們目前的樣子并不重要。
設計的三維
交互設計著重于傳統設計較少探索的領域:行為設計。
所有的設計影響人類行為:結構關于人們使用空間的方式,與形式和光線有關。如果沒人對張貼畫所表達的信息有所反應,那張貼畫又有什么意義呢?
引入交互技術——計算機的禮節——來設計人工制品的行為,以及這種行為如何影響和支持人的目標和期望?已經成為一門值得關注的學科。
理解交互設計和傳統設計關注點的不同方法之一是借助歷史透鏡。在 20
世紀的上半葉,設計者主要關注形式。后來設計者逐漸關注內涵,例如,產品設計師和結構師在 20 世紀 70
年代引入了本土和懷舊形式。直到今天,這種趨勢仍在繼續,諸如 PT Cruiser
的懷舊風格的汽車。今天,信息設計師繼續關注內涵,包括可用內容的設計。
在最近 15 年以來,越來越多的設計師開始談論行為:軟件激活技術 (software-enabled) 的產品(或復雜的機械)直接與用戶交互的動態方式。
這些關注(形式、內涵及行為)并不是相互排斥的。交互產品必須多少包含各部分;軟件應用關注更多的是行為和形式,而對內容的需求較少; Web 站點和公用信息亭關注更多的是內容和形式,而較少關注復雜的行為。
因為,復雜系統的行為通常不是一個審美學 (aesthetics) 的問題,而是認知因素 (cognitive factor) 和邏輯過程 (logical processes) 的結合,交互設計應該采用系統化方法,且能從這種方法中受益匪淺。
交互設計師應該,也是首先要做的,理解使用他們設計的人們的目標、動機和期望(心智模型 , mental model )。這些最好能被理解為“敘述” (narrative) ——時間軸上的邏輯(或者情感)進展。
與這些“敘述”相適應,所設計的人工制品必須具有它們自己的行為敘述,且這些行為必須成功地與用戶的期望吻合。不像大多數機械制品,只有簡單的行為,
觀察之下一切都一目了然,軟件和其他數字產品因為其行為潛在的復雜性,所以它們需要交互設計。軟件對于觀察者是不透明的,然而它所表現出來的可能行為幾乎
是無限的。
一些設計者,以設計的傳統形式,如視覺 (visual) 、聲音( audible )、觸覺 (tactile themes) ,模式
(patterns) 、風格 (style) ,以及習慣用法 (idioms) 為論據,認為交互元素應被視為隨著時間變化的感覺數據(
sense data )流,類似于動畫 (motion picture)
,因此完全可以通過傳統設計方法來描述。然而,這種論點有嚴重的缺陷:盡管交互設計面向形式的方面非常重要,但是,除非它們是通過有效和合適的行為組織
的,否則幾乎沒用。如果沒有一個邏輯結構或流來幫助解決用戶的實際問題,那么面向形式的交互設計( form-oriented
interactive design )本身只是隔靴搔癢,價值值得懷疑。
換句話說,如果沒有條理化的“敘述”,感覺數據本身毫無意義。電影不能光有特效,敘述也很必不可少。這一點,對與數字產品的交互而言,更有效,因為對
話不在第三方可觀察到的虛幻境界中發生。相反,它是在人和設計的人工制品之間的交流, Bill Buxton ( 1990
)稱之為“非文字的自然語言”。這種對話(也就是行為)的期望和設計是交互設計的實質。
本書的內涵和外延
本書是一本有關交互設計(交互系統復雜且以用戶為中心的行為設計)的原理和方法的參考書。本書的第一篇強調 設計過程 (design process) ,以及對用戶的系統理解;第 2 篇提供了策略原理和工具;第 3 篇更深地鉆研戰術性的問題。
本書不打算以 指南 ( guide )的姿態出現,或者提供一些界面標準。實際上,你會在第 19
章了解到為什么那些工具的使用是有限制的,而僅僅與特定環境相關。也就是說,在本書中描述的過程和原理是與你選擇的風格指南相兼容的,它也是解決任意這類
問題的一本極好的配套書。 指南 擅長于回答做什么,但無法回答為什么這樣做。本書打算解決交互系統設計中未解決的問題。
設計交互系統有 4 個步驟:研究問題域( researching the domain ),理解用戶 (understanding
with user) 及其需求;定義解決問題的框架 (defining the framework of a solution)
;完善設計細節 (filling in the design details) 。
很多業內人士會加上第 5 個步驟:確認( validation )——讓用戶測試方案的有效性。他們這么做,不會錯。最后一步是眾所周知稱為可用性學科的一部分。
可用性工程方面的重要文獻在持續增長,但有關交互設計的資料卻相對很少。本書專門關注交互設計的過程和原理,設計方案的測試方法則留給出版的相關學術著作。本書可以與可用性工程方法和實踐的文獻配套使用。通過和諧地結合這兩個學科,你會獲得最好的設計成果。
譯者注 作者定義的術語,見第 2 章。
譯者注 作者定義的術語,見第 6 章。
名家推薦
ALAN COOPER 作者推薦
當我們被聯系為 該 寫中文版的序言時,我們非常興奮,因為我們有機會接觸一批新的而為數眾多的讀者,包括學生,設計人員,開發人員,以及人性因素專家等。
在最近幾年,中國不僅成為基于軟件的數字產品 —— 從計算機、蜂窩電話到家庭和個人娛樂系統 ——
的主要制造者,也成為這些產品的日益重要的消費者。這就意味著在中國數以百萬的新用戶正在使用軟件和數字產品,其中不乏初學者。由此可見,對于用戶界面口
和交互設計師來說,這是一個獨一無二的機會,他們的工作可以極大地改進這些數字產品的質量和合意性,并最終影響數以百萬計的人們的生活。
和西方一樣,中國的開發者和制造商經過了一段時間才理解,用戶界面和用戶交互對于使得數字產品更有用和更成方面所具有的極端重要性。除了改善用戶的生
活質量以外,容易使用和理解,并且能夠更好地滿足用戶需求的產品有額外的潛力,為生產商增加利潤和市場份額。我們希望本書將會為市場引領一條通向更好的數
字產品的道路,也可以為本書的讀者,不論學生,設計人員,開發人員還是制造商,帶來更多的機遇。
交互設計是設計中的一個新領域,在這里是行為,而非形式成為最為關鍵的因素。形式必須支持行為,但是當用戶和一個復雜的數字產品交互時,用戶所能感受
到的產品質量和從中獲得的親身體驗均來自于產品的行為。不是基于軟件的產品不會有復雜的行為:錘子只有單一而簡單的行為,除了樣式以外不需要別的設計。然
而,蜂窩電話、掌上電腦或者數碼相機有很多復雜的行為,而這些行為需要仔細而專門的設計方法。
本書試圖描述行為和交互式設計這一嶄新而又令人興奮的領域的基本原則,我們預測這一領域將會成為 21 世紀設計學中的一個主要領域。
本書的大部分例子來源于桌面計算機應用和 WWW 。盡管如此,書中幾乎所有的內容也適用于別的數字設備。
本書并不致力于闡述所有可能的設計方法,它也不包括用戶界面標準的風格指南。事實上,本書提供了一個獨特的過程和框架,借助它可以設計產品和產品的行為,而這些行為真正地解決了用戶最核心的需求和意愿。
書的第一篇描述了這一系統的過程 —— 我們稱之為目標導向設計 —— 這一部分有一個前提,就是:如果你對產品的用戶有深入了解,也了解他們使用該產品的動機(他們的目的),那么你可以為最重要的用戶需求開發界面。
本書第二篇和第三篇提供了高層次和細節的設計原則,主要涉及如何選擇產品行為,既可以滿足用戶需求,又可以為用戶消障礙,這無疑會提高用戶的滿意度和
生產率。在過去的 13 年里,我們在全世界使用了上面所說的方法為小到剛起步,大到有上百億美金的公司的數百種數字設備,軟件產品以及基于 Web
的服務做了設計。
自從該書 2003 年在美國出版以來, 在美國和歐洲本書已被許多大學的計算機科學和設計專業選為教材 。尤其是人物角色的使用(在第一篇所描述的刻畫用戶的一個強有力的工具),幾乎已經成為普遍采納的設計和人性因素的最優方法。
無論在中國還是西方,交互式設計的未來都是光明的。我們希望本書能激發出中國新一代數字產品和服務中的杰出設計!
Robert Reimann
Brookline , Massachusetts , USA
Alan Cooper
Menlo Park, California, USA
2005 。 1
葉展 人機交互分析師
讀經典著作如同飲醇酒,回味雋永。而給經典著作寫序,則如推銷醇酒與人,在別人的沉醉中分享快樂。
擺在我面前的就是一本經典著作,一本計算機領域的經典著作。眾所周知,計算機領域多的是應景之作,比如某某軟件版本 X.0
的使用指南之類,而少能經得起時間考驗的經典著作。其原因一方面是計算機領域發展迅猛,知識更新代謝極快;另一方面,則是計算機領域應用重于理論,所以有
思想深度的著作比較少。
一本書要成為經典,起碼要兩個條件。其一是著者是擁有深邃的思想,且文筆流暢。大師級人物,往往單從文字上的修養就看得出。比如經濟界的
George Stigler (諾貝爾獎獲得者,被譽為經濟學界一支筆)和軟件工程方面的 Frederick Brooks
(《神秘的人月》著者),他們的著作拿起來閱讀幾段,你馬上就可以在行文中感到那種大家的雍容風度。而更重要的是,大師們在書中所講述的往往不是細枝末節
的技巧和技術,而是一種深邃的思想方法,可以給人以深層次的啟發。那種風度和深度,是難于模仿的。
要成為經典的第二個條件是作者的思想要經得起時間的考驗。對計算機書籍來說,起碼要能經過 10 年的考驗。這個標準比之其他領域已經是很寬松的了,但在這個標準下大部分計算機書籍會落馬。
以筆者來看,本書基本上符合前面的兩個條件,是一本計算機領域的經典之作。
本書的作者 Alan Cooper ,是計算機業界一位成名高手。除了早期在 Visual Basic 方面的工作外(他被譽為 Visual
Basic 之父),更重要的是他曾站到了一個新領域的前沿,參與并影響了軟件開發領域一次深刻的變革。而這個新領域,就是人機交互(
Human-Computer Interaction )。這個變革,是軟件開發領域的第三次革命。
在軟件開發領域出現過三次革命—— 50
年代高級語言的出現,使得軟件開發從機器硬件(機器語言)的束縛中解脫出來,程序員能夠從(抽象+結構)層次來進行思考。此為第一次革命。 70
年代軟件工程興起,使得軟件開發的注意力由語言和編譯器技術拓展到軟件開發的過程( software process
)。人們意識到:要提高一個軟件產品最終的靜態質量,必須提高這個產品產生過程的動態質量。此為第二次革命。而 90
年代以來,隨著計算機軟件和商業行為的聯系越來越緊密,特別是互聯網的興起,人們進一步認識到:軟件不是孤立的,軟件的質量并不是僅由其本身就能決定的,
而是由(軟件+用戶)這個大系統來決定的。軟件的成功,在于是否它能夠成功嵌入到用戶的商業活動中。對人的因素的重視,使得一門新的領域崛起。這就是人機
交互。經過十幾年發展,人機交互理論已經全面改觀了一般商用軟件設計開發的流程和方式,成為業界的標準。是為第三次革命。
每次革命或變革,都會有豪杰之士涌現,為改變舊的思想和宣傳一種新的思想而搖旗吶喊,成為領導變革的預言家和代言人。在 90
年代,一批人物涌現,一批著作發表,為人機交互理論在業界的應用打開了局面。 Donald Norman 在 1990 年出版了《 The
Design of Everyday Things 》, Jakob Nielsen 在 1994 年出版了《 Usability
Engineering 》,本書作者在 1995 年出版了本書的第一版。這些人的著作,都是經受了 10
年考驗的,現在都成了經典。他們當時的思想,現在已經成為業界的主流。他們也自然而然地成為了人機交互領域舉足輕重的領導者。
閱讀本書,最重要的是了解作者所闡述的關于軟件設計開發的高層次理念和指導思想。因為作者是最新一次軟件開發思想變革的積極參與者,他親自現身說法寫
的書當是記錄這個思想變革的寶貴的第一手資料。正因為如此,筆者竊以為本書的第一部分最是重要,乃為全書的靈魂。這部分從了解用戶,了解用戶需求講起,到
構建用戶模型,到設計 scenario
來描述軟件系統現在和未來的行為模式,到如何把對用戶的理解和行為模式轉換為設計方案。作者不僅把軟件設計的整個過程流暢清晰地描述出來,而且真知灼見不
斷涌現于其中。下面隨便列舉一二:
? 軟件的設計和開發,不要囫圇吞在一塊,最好要分成兩個單獨的過程——設計過程和開發過程:
傳統的軟件工程理論,是對整個軟件設計開發的過程化研究,而更側重編程測試和項目規劃部分,并且把設計和開發混在一起。而現在人機交互理論,實際上是把軟
件設計這部分提出來,是對軟件設計的過程化分析,還借用了認知心理學和其他領域的成果。目前業界普遍認為:對商用軟件來說,這兩個階段分開,有助于軟件質
量的提高。
? 應當以用戶為中心去設計軟件,而不是以某項新技術或者技術人員為中心去開發軟件:
這一點是軟件走出象牙塔,滲入人類生活和商業領域的必然后果。作者雖然是程序員出身,但對以程序員(技術的代表)為核心的軟件開發的局限性有清醒的認識,
并指出這種方法再也不能適應開發軟件產品的需要。基于用戶的設計( User-Centered Design )是 90
年代以后被“炒”的最火的一個詞。它實際上是說在軟件設計過程中要圍繞用戶和商業活動來進行,是不是圍繞技術和程序員來運行。
? 決定軟件成功與否的,不是一個軟件有多少個功能,而是這些功能是否有用和好用。
? 設計軟件,重要的是設計用戶行為: 作者所極力鼓吹的一個新的名詞——交互設計( Interaction Design )的含義就是軟件設計師設計的不是死的軟件,不是靜止的界面,而是活的行為,是用戶和軟件硬件環境之間的動態交互,并尋求動態的最優。
需要指出的是:以上思想,在 1995
年本書初版時乃為革命,與今則為業界常識——起碼是美國商用軟件開發領域人所共奉的常識。現今但凡大一點的和軟件開發有關的公司,其軟件設計開發過程都按
作者所提出的思路改進過。從另一個角度講,這更體現了 90 年代這場變革的影響之深遠。
在本書的第二部分, Alan Cooper 介紹了一大把新概念和新名詞(眾所周知, Alan Cooper
在業界有賣弄新名詞的“不良”嗜好。業內人最愛開的玩笑之一就是傳說在什么什么會議上 Alan Cooper
又發明了一個新的英文詞。當然能夠在計算機業內成為這種玩笑的對象本身就說明這個人很有影響力。)這些新名詞,由于是獨此一家,別無分號,讀者讀來需要一
定的辨別力。需要記住的是:雖然這些名詞比較新奇,但其含義和基本思路應該是容易接受的。
與前兩部分比,本書的第三部分就完全是實用性的了,有諸多實際的設計案例和討論,而且主要是基于現有圖形用戶界面的格局。
由于本書的這種結構——由抽象理念入手,到具體的設計方法和案例,使得它適合各類讀者閱讀。軟件公司的領導者可以通過前兩部分了解軟件行業的最新思
潮,并以此為指導思想來改進自己公司內部的軟件開發流程。軟件開發人員,可以學習書中介紹的具體的方法,更可以從更實際的案例討論中獲得啟發。對學生來
說,除了學習編程等“硬”技術外,通過讀書了解一下軟件行業“軟”的思想,拓展眼界,受益將會不淺。
國內軟件行業經過多年發展已經初具規模,當然在發展的過程中也遇到諸多問題。目前的一個共識是中國軟件業和外國比,最大的劣勢并不是在具體某項技術或
者編程方面。中國的勤奮而又有天分的程序員,可以獲得美國業界的編程大獎。由此可見單打獨斗中國人是可以的。但項目一大起來,中國軟件業的固有劣勢就顯現
出來了。中國的傳統弱項主要是在軟件工程和軟件過程等方面。而現在西方軟件行業又進了一步,在軟件工程的基礎上搞出了人機交互理論,又引發了一次革命。我
們目前對這場革命的了解還是很膚淺,人機交互領域在國內的科研、教學和應用都還在起步階段。這就很有些舊的差距沒有彌補上,新的差距又產生了的危險。這本
書現在被介紹到國內來,將有助于我們填補這方面的差距。此其時也!
葉展
人機交互分析師
2005 年 7 月于美國芝加哥
葉展,清華大學自動化系本科畢業,后赴美留學,先后取得伊州理工學院( Illinois Institute of Technology)的計算機碩士學位和卡內基美隆大學(Carnegie Mellon University)的人機交互(Human-Computer Interaction)碩士學位,現在美國BCS管理和IT咨詢顧問公司任職。葉展目前主要的研究和工作領域是人機交互理論在游戲設計中的應用、人機界 面設計與評測、以及軟件開發流程設計和管理。是這些領域有一定影響的專家,并應邀在包括CHI等一系列重要國際會議上發表了論文和演講。
譯 者 序
今天,人類不僅在認識世界,也在創造著新世界。軟件作為人類所創造的最復雜的人工制品( artifact )之一 ,
已不僅僅是人類智慧和工具的延伸,而在某種程度上作為虛擬世界新法則的執行者和實施者統治著我們。諾貝爾物理學獎獲得者費曼曾經以這種方式描述過人類創造
新事物的過程:我們創造新事物,而被創造的新事物按照某種規則又創造新的事物,突然某一瞬間,不同于人類靈魂的事物出現了:它與人類靈魂迥然不同,或許還
有著惡意,威脅著人類。一個智者以這種玄想的方式展現了對人類創造物的恐懼。
今天的軟件人工制品會以這種方式工作嗎?是否會威脅到我們的人類?作為軟件業的一名從業人員,譯者深知以 0 或者 1
為工作基礎的計算機所有智慧來自于設計師和程序員的智慧,本身不具有惡意。然而,現實的情況是 “
受不正確的設計觀念影響開發的軟件已經開始威脅到大眾用戶 ” ,技術派論者甚至以 “ 計算機盲 ” 通常稱這些和計算機工作者一樣富有智慧的人們。
請尊重你的用戶! Alan Cooper
,這位在圖形用戶界面領域馳騁數十年的大師給出了如此的忠告。大師的忠告是中肯而辛辣的,技術不能高高在上,而應該植根于土壤,軟件工人們不能脫離為人民
服務的宗旨,否則就要被革命了。新技術經濟的沉淪也許指示著新的機遇:為大眾用戶服務,采取全新的目標導向設計方法。
這種方法關注用戶的目標;認真地研究實際用戶和潛在用戶,定義具體的原型用戶 ( 人物角色 , persona) ;使用人物角色作為腳本提綱 (scenarios) 的主要人物;人物角色作為定義交互產品功能、行為和形式的主要工具;遵循行為設計的原理。
在系統模型方面,作者精彩地辨析了程序員的實現模型和用戶的心智模型之間的差異,指出程序員通常為了容易實現的私利犧牲用戶利益,用實現模型取代用戶
的心智模型,從而產生了認知方面的鴻溝,因此在交互設計領域有必要區分設計和編程的責任。在用戶分析方面,將用戶分為新手用戶、中間用戶和專家用戶三類
, 提出了沒有用戶愿意永遠做新手用戶,只有少數用戶才會成為專家用戶,因此大多數用戶都是永久的中間用戶,設計應該為中間用戶優化的精辟論解。
在行為和形式設計方面,作者深刻地揭示了一些現象背后隱藏的本質。首先從行為立場出發,定義了軟件姿態的概念,將軟件分為獨占、暫時、精靈和輔助四種
姿態。不同姿態的軟件對應不同的用戶類型,如獨占式應用的用戶是永久的中間用戶,應該在使用整個屏幕的情況下優化獨占姿態的應用;而暫時姿態應用應該簡
單、清晰而切中要點,保持在一個窗口和視圖內。在用戶心理層次,作者深刻地揭示了流狀態 :“ 深深的完全沉思狀態 ” ,經常產生 “ 輕微的歡娛
”
,能夠讓你忘記時間的流逝。因此,軟件交互應該促進和加強流狀態,而不是打斷或者干擾流狀態。為了創建高效的軟件,作者提出了附加工作的概念,分析了附加
工作產生的原因,指出只有消除附加工作,用戶才會效率更高。在這種背景下,作者也詳細地分析了圖形用戶界面的導航問題,以及如何消除導航中出現的附加工
作。另外,作者指出要想開發效能高和用戶使用起來會愉悅的軟件,軟件必須能夠體貼和足夠聰明。也正是從這個角度出發,作者詳細地討論了如何改善數據檢索和
數據輸入,使其體貼和足夠聰明。
在討論如何為不同用戶設計時,作者指出有兩個概念在根據不同的經驗水平將用戶的需求進行分類方面特別有用:命令向量和工作集。命令向量是允許用戶向程
序發起指令的特殊技術:下拉菜單、彈出菜單和工具條控件都是命令向量的例子。好的用戶界面提供多種命令向量,這種冗余性讓不同技能水平的用戶和不同偏好的
用戶根據自己的意愿和能力向程序發起命令。因為每個用戶都在無意識地記憶經常使用的命令,持久的中間用戶記住了命令和功能的適度子集:工作集。雖然嚴格的
說沒有一個標準的工作集可以覆蓋所有用戶的需求,但是用戶和使用模式的研究和建模可以產生一個較小的功能子集。這個最小工作集可以通過目標導向的設計方法
確定:利用腳本提綱來發現你的人物角色所需求的功能。這些需求直接轉化成最小工作集的內容。
作者也詳細地闡述了視覺界面設計的一些基本原理,并在具體的背景下討論了這些視覺界面設計原理的應用。如視覺界面必須:
? 避免視覺噪音 (visual noise) 和雜亂 (clutter) ;
? 使用對比 (contrast) ,相似性( similarity )與分層 (layering) 來區分和組織元素;
? 在每一個組織層次提供視覺結構和流;
? 使用緊湊、一致而場景合適的圖像;
? 全面而有目的地結合風格和功能。
在對主流的三類界面范例:實現為中心( implementation-centric )、隱喻 (metaphoric) 和習慣用法
(idiomatic) 分析的基礎上,作者獨特而精辟地指出隱喻的限制,強調了習慣用法的力量,深刻地指出 “
所有的習慣用法都需要學習,而好的習慣用法只需要學一次 ” 。
另外,作者憑借淵博的知識和豐富的產業界經驗,深刻全面地揭示和闡述了各種交互細節的本質、演化和蘊含的發展機遇,如直接操作 (direct
manipulation) 、選擇、拖放 (drag and drop)
。在圖形用戶界面發展的歷史背景下,作者高屋建瓴地詳細討論了各種控件和它們的行為。
在譯者學習和翻譯這本書的過程中,深深地感受和體會到作者的大師風范,以及卓爾不群的見解和深刻的思想,并且在具體的科研實踐中受益。相信任何一個讀者只要用心讀這本書,都會有同樣的感受,并有豐富的收獲。
譯者要感謝參與本書出版過程中的朱沭紅編輯、孫學瑛編輯、 蔣芳 女士,感謝她們的耐心、信任和協作。
詹劍鋒 ( jfzhan@ncic.ac.cn ) 、張知非
2005 年 3 月 1 日
第一篇 了解你的用戶
第一部分 彌合差距
1 目標導向設計
2 實現模型和心智模型
3 新手、專家和中間用戶
4 理解用戶:定性研究
5 用戶建模:人物角色和目標
6 腳本提綱:將目標轉換為設計
7 綜合好的設計:原理和模式
第二篇 設計行為和形式
第二部分
8 軟件姿態
9 和諧與流
10 消除附加工作
11 導航和調整
12 理解撤銷
13 重新思考“ Files ”和“ Save ”
第三部分 提供高效能和愉悅
14 設計體貼的軟件
15 設計智能的軟件
16 改進數據檢索
17 改進數據輸入
18 為不同的需要進行設計
第四部分 應用視覺設計原理
19 外觀設計
20 隱喻、習慣用法和啟示
第三篇 交互細節
第五部分 鼠標和操作
21 直接操作和定點設備
22 選 擇 327
23 拖 放 336
24 操作控件、對象和連接
第六部分 控件及其行為
25 窗口行為
26 使用控件
27 菜單:教學向量
28 使用菜單
29 使用工具條和工具提示
30 使用對話框
31 對話框禮節
32 創建更好的控件
第七部分 與用戶的交流
33 消除錯誤
34 通知和確認
35 與用戶的其他交流方式
36 安裝過程
第八部分 超越桌面的設計
37 Web 設計
38 嵌入式系統的設計