如何寫一份交互說明文檔

2013-2-4    藍(lán)藍(lán)設(shè)計(jì)的小編

轉(zhuǎn)載藍(lán)藍(lán)設(shè)計(jì)(   sillybuy.com  )是一家專注而深入的設(shè)計(jì)機(jī)構(gòu) ,為期望卓越的國內(nèi)外企業(yè)提供有效的   BS界面設(shè)計(jì) 、  cs界面設(shè)計(jì) 、  ipad界面設(shè)計(jì)   、  包裝設(shè)計(jì) 、  圖標(biāo)定制 、  用戶體驗(yàn) 、交互設(shè)計(jì)、   網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)

來源: http://heidixie.blog.sohu.com/207036464.html

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中,   請(qǐng)點(diǎn)這里

離開交互圈已經(jīng)有段時(shí)間了。但由于博客還在,還是能夠偶爾收到一些郵件,上周有位同學(xué)問我:我在求職,我看到很多招聘說明上需要交互設(shè)計(jì)師編寫界面交互設(shè)計(jì)文檔 ,請(qǐng)問界面交互設(shè)計(jì)文檔是什么文檔?怎么編寫呢

這讓我想起來2009年自己在項(xiàng)目里也大力推行過交互說明文檔(在下文中,簡稱為DRD),格式倒沒什么限制,交互設(shè)計(jì)師自己寫到界面上也行,單獨(dú)文檔成文也行,總之就是讓交互設(shè)計(jì)師能夠?qū)⒔缑娉休d不了的信息通過文檔沉淀下來,降低項(xiàng)目里的溝通成本和風(fēng)險(xiǎn)。今天整理電腦, 翻出以前的PPT,分享之。

這將涉及到幾個(gè)問題:
一. 什么是交互說明文檔(DRD)?

 
所謂DRD即是用來承載交互說明,并交付給前端、測試以及開發(fā)工程師參考的文檔。

 
在項(xiàng)目中,交互設(shè)計(jì)師的主要產(chǎn)出物可能依次是:site map,page flow,wireframes。有的大型項(xiàng)目前期,交互設(shè)計(jì)師有可能還會(huì)產(chǎn)出用戶需求分析文檔(與PD產(chǎn)出的市場需求文檔不一樣的是,URD更多側(cè)重于對(duì)目標(biāo)用戶的需求分析)。

 
DRD則很少有人專門撰寫。如果需要對(duì)交互設(shè)計(jì)進(jìn)行說明,聰明的交互設(shè)計(jì)師往往會(huì)直接標(biāo)注在線框圖里,或者在項(xiàng)目中不斷和前端工程師和開發(fā)工程師口口相傳,反復(fù)驗(yàn)收,不斷迭代修改來確保所有的交互設(shè)計(jì)意圖最終得以呈現(xiàn)。

二. 為什么要寫?

 
DRD非項(xiàng)目必需環(huán)節(jié),一般情況下也不會(huì)為交互設(shè)計(jì)師專門留出相應(yīng)的時(shí)間預(yù)估。沒有這份文檔,項(xiàng)目也會(huì)繼續(xù),但是可能項(xiàng)目會(huì)為此承擔(dān)不必要的溝通成本和時(shí)間成本。嚴(yán)重的話,項(xiàng)目的質(zhì)量也會(huì)受到影響。所以寫與不寫,交互設(shè)計(jì)師需要做把握,時(shí)間被統(tǒng)一包含在“線框圖”環(huán)節(jié)內(nèi)——如果你要寫,請(qǐng)?jiān)谠u(píng)估時(shí)預(yù)留1-2天的時(shí)間。

 
那么,結(jié)合我過去的經(jīng)歷,談一下此文檔的必要性。

 
下圖是一個(gè)產(chǎn)品開發(fā)項(xiàng)目基本的流程。


 
敏捷開發(fā)意味著很多不同角色的流程需要并行操作。如果等到產(chǎn)品經(jīng)理的FRD已經(jīng)全部敲定,交互設(shè)計(jì)師再開始去畫線框圖,固然會(huì)減少溝通成本和返工風(fēng)險(xiǎn),但是同時(shí)意味著交互設(shè)計(jì)師的很多想法不被采納。如果產(chǎn)品經(jīng)理再強(qiáng)一些,他甚至?xí)贔RD里連原始的DEMO也一并繪制出來了,功能性的需求和界面交互的需求有時(shí)無法區(qū)分太清楚——比如他會(huì)在FRD里直接要求每頁條目40條,超過40條即分頁。而交互設(shè)計(jì)師可能會(huì)認(rèn)為像蘑菇街那樣不斷裝載出足夠長的頁面會(huì)更親和……所以,我們希望是和產(chǎn)品經(jīng)理同時(shí)開始工作,在術(shù)業(yè)有專攻的時(shí)候相互補(bǔ)充。

 
同樣,開發(fā)工程師也希望及早介入需求,在FRD并未確認(rèn)的時(shí)候就了解需求,進(jìn)而將商業(yè)需求和功能需求轉(zhuǎn)化為開發(fā)工程師看得明白的開發(fā)需求清單(這個(gè)清單,大部分叫做UC,即USE CASE),當(dāng)這份清單由工程師需求分析師——在過去,這個(gè)角色被叫簡稱為RA,但是目前已經(jīng)取消此專門的職位,而是由開發(fā)工程師代表擔(dān)綱此環(huán)節(jié)工作,為了便于描述,在此文里,我仍然將做這件事情的人稱為RA——交付給具體的執(zhí)行工程師后,執(zhí)行工程師基本上可以當(dāng)作一條條的checklist開始工作,而不必再思考商業(yè)邏輯和需求。同樣,測試工程師也需要編寫具體的文檔去指導(dǎo)很多測試人員在開發(fā)后測試,這也是基于UC和FRD去撰寫的。


 
所以,開發(fā)需求分析是個(gè)很重要的環(huán)節(jié)。那RA是如何來完成需求分析工作的呢?
  • 前期介入,對(duì)PD進(jìn)行開發(fā)需求評(píng)估支持;
  • 參與每次的FRD評(píng)審會(huì);
  • 詳細(xì)審閱FRD文檔并不斷與PD確認(rèn)。
對(duì)于做這件事情的人來說,足夠詳盡的FRD是非常重要的。所以一份FRD雖然是PD產(chǎn)出,但是很多實(shí)施細(xì)節(jié)則是由開發(fā)工程師不斷溝通評(píng)估并確認(rèn)下來的。而設(shè)計(jì)需求的傳遞,卻存在很多問題。除了線框圖,沒有“詳盡的說明性的文檔”告訴他們。比如:
一方面,交互設(shè)計(jì)師對(duì)產(chǎn)品經(jīng)理說:這塊由我們來考慮,你的文檔不必包含設(shè)計(jì)上的說明,這隨時(shí)會(huì)調(diào)整的。
另一方面,線框圖的評(píng)審有時(shí)會(huì)讓RA參與,有時(shí)卻沒有叫他們。即使叫上了他們,他們也會(huì)發(fā)現(xiàn)交互設(shè)計(jì)的需求變化要比FRD變化快。另外,他們會(huì)認(rèn)為UC不必寫太多關(guān)于交互設(shè)計(jì)的需求。

 
在某個(gè)大型項(xiàng)目結(jié)束后,作為交互設(shè)計(jì)師,我進(jìn)行了一些調(diào)研,聽聽這相關(guān)人員是怎么表述問題的:

 

 
開發(fā)部門的需求分析師:
  • 每次變動(dòng)都很痛苦,設(shè)計(jì)變了之后,我就要跟著改UC,改截圖,有時(shí)候UED改了還忘了通知我們,導(dǎo)致UC有問題……
  • 頁面交互的需求容易漏掉,因?yàn)閁C里面不可能寫太多交互方面的東西。
  • 希望UED能夠在提交HTML DEMO給RA時(shí),能同時(shí)給出一份頁面元素描述文檔,需要介紹html demo中的文案、鏈接以及相關(guān)的圖片尺寸或顯示字符個(gè)數(shù)。現(xiàn)在RA在這方面花費(fèi)的時(shí)間比較多,經(jīng)常要和UED去確認(rèn)這些內(nèi)容。
產(chǎn)品經(jīng)理:
  • 前期RA和PD溝通過程中,有很多交互點(diǎn)點(diǎn)不能夠明確,比如“默認(rèn)顯示多少屬性值”,“標(biāo)題顯示多少字符”等。在以往的需求和項(xiàng)目中,對(duì)待這些問題我們都是想到一點(diǎn)補(bǔ)一點(diǎn)的到FRD文檔或者郵件中去。既增加了溝通成本又會(huì)存在遺漏細(xì)節(jié)的風(fēng)險(xiǎn)。PD為了可控性的需求,往往會(huì)“越俎代庖”,直接在FRD注明這種需求(對(duì)于交互設(shè)計(jì)師來講,卻又導(dǎo)致沒有發(fā)揮余地)
走訪了一些交互設(shè)計(jì)師后,他們也存在如何清晰無遺漏將交互設(shè)計(jì)需求傳遞下去的困惑:
交互認(rèn)為很平常的設(shè)計(jì)需求,如果不表達(dá)出來,還是容易被前端和開發(fā)忽略掉。我經(jīng)歷的一個(gè)項(xiàng)目,前端從頭到尾更換了三個(gè)人,每次我都要重復(fù)去講解下設(shè)計(jì)需求,講得口干舌燥。而且做好后,還需要去驗(yàn)收。
  • DRD做為參考手冊(cè),一定程度上避免不吻合的問題發(fā)生。
  • 即使有問題發(fā)生,也可以作為界面驗(yàn)收時(shí)的Checklist。將“我對(duì)A說,我對(duì)B說,A對(duì)B說”,轉(zhuǎn)變?yōu)?ldquo;A和B共同參考同一份文檔”,減少溝通成本及信息不對(duì)稱。
  • 全程影響用戶體驗(yàn)(一直到測試,都需要參照設(shè)計(jì)文檔)。
可是以下問題都可以通過一份DRD來解決嗎?

 
三. 寫什么不寫什么?



 
要明確文檔的定位,從寫什么與不寫什么開始,劃清DRD以及FRD的邊界。

 
1. 不寫視覺規(guī)范規(guī)格標(biāo)注



這些說明與功能實(shí)現(xiàn)沒有太大關(guān)系,主要是為前端做HTML的時(shí)候參考的。一般視覺設(shè)計(jì)師會(huì)在PSD里標(biāo)注清楚。如圖:
2. 不寫功能實(shí)現(xiàn)邏輯。



如下圖所示,作為DRD,你有必要傳達(dá)清楚Browse by category區(qū)域的設(shè)計(jì):鏈接的可點(diǎn)擊性,鏈接的指向,字符與條目的數(shù)量限制等,但是具體二級(jí)類目排列是按產(chǎn)品數(shù)目排還是按字母排,還是人工運(yùn)營,是FRD要解決的任務(wù)。
那么文檔寫什么呢?

舉例子說明下:

 
1. 字符限制


提高空間利用率,有時(shí)網(wǎng)頁上的動(dòng)態(tài)文字需要從數(shù)據(jù)庫里提取部分然后截?cái)嗵幚怼1热缦聢D中的標(biāo)題和描述。你的DRD需要傳達(dá)清楚:1,是否要做限制?2,如果做限制的話,多少字出現(xiàn)截?cái)啵拷財(cái)嗪笫秋@示為省略號(hào)還是不顯示?這個(gè)漢語設(shè)計(jì)相對(duì)簡單,如果英文單詞的話,因?yàn)槭前醋址?,每個(gè)字符的寬度不一致,需要預(yù)估,另外還需要注明是整詞截?cái)噙€是詞間截?cái)唷?/div>

 
2. 鏈接具體化






很多網(wǎng)站都有對(duì)搜索結(jié)果的篩選設(shè)計(jì)(refine search),比如aliexpress搜索結(jié)果頁左側(cè)。這塊區(qū)域的交互事件是非常復(fù)雜的。
  • 類目和屬性的不同如何處理
  • 屬性以及每條屬性顯示的屬性值的條目是否有顯示上的限制?
  • 選中后,被選中的屬性值是停留在原地,方便用戶記憶,還是放到統(tǒng)一的位置,方便用戶統(tǒng)一查看?其他未被選中的屬性值是否消失?

 
要確保這些你設(shè)想中的復(fù)雜的交互邏輯能夠被理解被呈現(xiàn),除了一頁頁的線框圖,你有必要再三讓前端工程師和開發(fā)工程師了解并達(dá)成認(rèn)知一致。所以你需要將頁面上的關(guān)鍵鏈接事件標(biāo)識(shí)清楚。它們有的指向無需刷新頁面的交互,有的指向你安排的并非PD安排的某個(gè)中間頁面(page flow是交互設(shè)計(jì)師的職責(zé))




3. 交互細(xì)節(jié)說明


相信我,我很不愿意寫這些東西。我喜歡在會(huì)議室向各位涉眾演示我的線框圖,我會(huì)研究用axure制作各種動(dòng)態(tài)效果,達(dá)到它足夠逼真呈現(xiàn)各種聯(lián)動(dòng)——比如當(dāng)你選擇了下拉菜單中的某項(xiàng)時(shí),頁面上其他區(qū)域也發(fā)生相應(yīng)的變化??墒?,Axure不是全能的。即使能夠表達(dá)出來,線框圖交付出去,也不能確保其他人都能夠一一進(jìn)行點(diǎn)擊嘗試。所以只能在會(huì)議室反復(fù)講解,在事后再三檢查并敦促修改。

 
但是當(dāng)我嘗試用下圖對(duì)這塊小小且復(fù)雜的區(qū)域進(jìn)行詳細(xì)說明后,事情變得簡單多了。所以我用節(jié)省的時(shí)間去寫了這份PPT.

 
又如,你可以在這里說明任何你想要的效果。你的受眾也只需要用10分鐘時(shí)間閱讀完畢,標(biāo)注出與他工作相關(guān)的重點(diǎn),存檔并在遇到問題,找不到你人時(shí)隨時(shí)參考。
5. 表單的校驗(yàn)

這也是一項(xiàng)不怎么有創(chuàng)意的事情,但是你若不事先想清楚,在項(xiàng)目過程中有點(diǎn)麻煩。寫文檔看似枯燥乏味,反過來想也是讓你自己再好好思量審核設(shè)計(jì)本身的關(guān)鍵步驟。我曾經(jīng)自以為完善的交互設(shè)計(jì)方案就是在寫DRD的時(shí)候發(fā)現(xiàn)存在重大的紕漏,然后及時(shí)優(yōu)化的。
6. 瀏覽器的兼容性要求

你們的產(chǎn)品兼容所有瀏覽器簡直是夢(mèng)想,但是有時(shí)出于效率的要求,我們必須戰(zhàn)略性放棄某些瀏覽器,比如IE6.:D 。 這個(gè)決定誰來做?是前端工程師還是產(chǎn)品經(jīng)理?還是你——交互設(shè)計(jì)師?我認(rèn)為決定權(quán)在交互設(shè)計(jì)師這里,但是他必須和產(chǎn)品經(jīng)理達(dá)成一致,并與前端確認(rèn)。你要求兼容的瀏覽器越多,標(biāo)準(zhǔn)越高,前端的工作量就會(huì)越大,測試的工作量甚至也會(huì)翻倍。
四. 什么時(shí)間交付呢?

 
Heidi的建議:盡可能與你的線框圖同時(shí)交付,如果你先交付出線框圖,在撰寫DRD的時(shí)候,極大可能會(huì)發(fā)現(xiàn)問題或產(chǎn)生優(yōu)化的想法。但是往往寫DRD至少需要1-2天的時(shí)間,你不可能讓所有下游等著你的工作。所以:
  • 你可以交付出線框圖供視覺先開始。視覺設(shè)計(jì)往往會(huì)先做風(fēng)格定位設(shè)計(jì),這和交互細(xì)節(jié)關(guān)系不大。
  • 先交付出已經(jīng)確定的線框圖給前端,然后在1-2天DRD后,若有改動(dòng),與前端當(dāng)面一一確認(rèn)并一起交付。

 
五. 如何寫DRD?

1. 選擇最有效率的工具。
我的經(jīng)驗(yàn)是這個(gè)工具最好能夠提供清晰的目錄導(dǎo)航結(jié)構(gòu),而且易標(biāo)注。word確實(shí)是個(gè)寫文檔的好工具,不管你信不信,反正我是信了。

2. 建立固定的目錄結(jié)構(gòu)
下圖僅供參考。
具體里面的細(xì)節(jié),就不一一羅嗦了。

 
六. 重要的原則
準(zhǔn)備寫DRD的朋友,請(qǐng)認(rèn)識(shí)清楚此文檔真正要解決的問題是什么?如果是解決溝通偏差、需求遺漏、溝通成本高的問題,你在項(xiàng)目里沒有出現(xiàn)過這種問題,各合作方也反饋良好,那么這個(gè)文檔就無需寫。如果是解決對(duì)設(shè)計(jì)需求進(jìn)行存檔,便于后續(xù)人員改版時(shí)查看的問題,則又是另外一回事(經(jīng)驗(yàn)證明,過去的DRD確實(shí)能夠在改版時(shí)起到一定的幫助,在我離開原項(xiàng)目很久后,新的設(shè)計(jì)師還找我要過相應(yīng)項(xiàng)目的文檔,了解過去的設(shè)計(jì)邏輯)。
  • 不是為了寫文檔而寫文檔 (而是為了解決問題)
  • 適合于項(xiàng)目、合作方 (大項(xiàng)目有大文檔,小需求有靈巧的解決方案)
  • 工具不是問題 (易傳播,易標(biāo)注,成目錄即可)
  • 模版不是問題,大家看明白就可
  • 完美的文檔無法取代面對(duì)面的溝通 (評(píng)審會(huì)和討論不會(huì)因?yàn)槲臋n而減少)
  • 需要在實(shí)踐中不斷改進(jìn)
七. 誰來寫?

我建議由交互設(shè)計(jì)師發(fā)起,但是由前端工程師進(jìn)行修訂,再傳遞給開發(fā)工程師。
有很多需求,交互設(shè)計(jì)師只要求實(shí)現(xiàn)即可,但是他可能并不在乎是前端實(shí)現(xiàn)還是后端實(shí)現(xiàn)。前端工程師對(duì)DRD進(jìn)行把關(guān)和修訂,能夠?qū)⒃O(shè)計(jì)語言轉(zhuǎn)化為工程師能夠看懂的語言,且能夠劃定與開發(fā)的實(shí)現(xiàn)邊界。

八. 與其他產(chǎn)出物的關(guān)系

 
項(xiàng)目中交付物對(duì)應(yīng)不同的使用角色,如下圖所示:

 
但是有個(gè)問題是,雖然DRD的目標(biāo)受眾有開發(fā)和測試,但是讓開發(fā)工程師同時(shí)參考那么多文檔是不現(xiàn)實(shí)的,所以仍然是開發(fā)工程師的接口人,也就是事實(shí)上的RA需求分析作為需求整合傳遞的角色,將商業(yè)需求和設(shè)計(jì)需求,傳達(dá)給具體的執(zhí)行開發(fā)工程師與測試工程師:
【總結(jié)】
對(duì)于堅(jiān)持撰寫DRD的我來說,DRD的好處自己當(dāng)然是明白的——在撰寫過程中重新梳理設(shè)計(jì)邏輯,優(yōu)化設(shè)計(jì);降低溝通成本等等。
但是并非所有人都喜歡寫文檔或者都喜歡看文檔。
解決問題有多種方案,DRD只是其中一個(gè)。不過,當(dāng)你因?yàn)樵O(shè)計(jì)需求傳遞過程中發(fā)生了問題,或者你的需求被理解偏差,或者你的需求被遺漏,或者你接手的項(xiàng)目改版,因?yàn)橐崂磉^去的設(shè)計(jì)邏輯焦頭爛額時(shí),你可以試試用DRD。如果使用過程中還是存在問題,那么就想想是否還存在別的解決方案吧~

 

分享本文至:

日歷

鏈接

個(gè)人資料

存檔