UI設(shè)計人員是對產(chǎn)品的使用界面進行設(shè)計和訂正的人員。 Usability Engineer是檢驗UI設(shè)計的合理性的人員。
在很多團隊,真正的界面設(shè)計都是由PM做完了Spec,才找UI設(shè)計人員來征求意見。像我們團隊,我的設(shè)計規(guī)范書寫完后,我才找UI設(shè)計人員來,他們所做的也不過是對我的設(shè)計作小改動,如那些英語詞句用得不妥,哪里的按鈕該改變大小,等等。我所知道的其它視窗操作系統(tǒng)的團隊,也是差不多。這主要是因為我們能自己進行界面設(shè)計——視窗操作系統(tǒng)部門的PM是微軟PM中厲害的。可是,這是不太正確的方法,因為如果你有很強的PM,你可用這種方法,要是你的 PM的設(shè)計能力不強,這樣的流程要出問題。你的項目的成功不應(yīng)該寄托在幾個強有力的PM上,而是要用完善的流程來保證。好的流程應(yīng)該是,在產(chǎn)品開發(fā)的早期,在做設(shè)計時,PM應(yīng)該和UI設(shè)計人員一起來考慮產(chǎn)品設(shè)計的合理性。
這個問題在微軟內(nèi)部我們自己也有很大的爭論。 UI設(shè)計人員常常抱怨,在產(chǎn)品開發(fā)的早期,他們常常不被看重,被拋在一邊。UI設(shè)計的甚至在全公司的培訓(xùn)大會上講,我們的這個文化有問題,領(lǐng)導(dǎo)對 UI設(shè)計人員在產(chǎn)品開發(fā)早期能起的作用不夠重視。可是這個爭論已有幾年了,結(jié)果仍無改變。我想這主要還是跟我們這個行業(yè)的產(chǎn)品開發(fā)的特性有關(guān)系。因為軟件開發(fā)是很技術(shù)性的,常常在早期的技術(shù)討論中,UI設(shè)計人員對技術(shù)討論說不出個所以然來(因為他們大多是學(xué)藝術(shù)設(shè)計的),漸漸地各開發(fā)團隊對UI設(shè)計人員的作用看輕了。在使用界面因素占很大比例的產(chǎn)品團隊,像 Office 和 MSN ,這種情況要好一些。
Usability Engineer 所做的事和UI設(shè)計人員不同。他們是將UI設(shè)計的模型版,找客戶來進行實用和使用性能的檢驗調(diào)查和測試,并根據(jù)調(diào)查結(jié)果對UI設(shè)計提出進行修改的意見。也是說,他們的工作是檢驗UI設(shè)計的合理性,有點像測試人員對程序進行檢驗的功能。可以說,Usability Engineer 和UI設(shè)計人員的關(guān)系像測試人員與開發(fā)編程人員的關(guān)系。
User Education team 是編寫使用說明書的編輯人員。
從大方面的來說,微軟的產(chǎn)品組是公司的幾大部門之一,其他還有市場/銷售部門,服務(wù)部門,運作部門,還有研究院什么的。
合理的開發(fā)團隊組合應(yīng)該是什么? 允許我拋磚引玉,先談一下微軟的經(jīng)驗:
項目經(jīng)理團隊:(Program Management Team)
設(shè)計項目經(jīng)理(Feature Design PM):負(fù)責(zé)具體的產(chǎn)品設(shè)計,寫Design Spec,PM 隊伍中,80%的PM是做這個。
發(fā)行項目經(jīng)理 (Release PM):負(fù)責(zé)整個項目的流程和進度管理,制定進度表等,協(xié)調(diào)整個團隊的工作。大的PM 隊伍中有一人專門做這個。這是整個項目的領(lǐng)頭人。大型的項目的成功與否,常常靠得力的發(fā)行經(jīng)理的領(lǐng)導(dǎo)。
協(xié)助項目經(jīng)理(Supporting PM):負(fù)責(zé)其它產(chǎn)品發(fā)行需要照顧到的事情,如客戶交流、和市場開發(fā)人員交流、負(fù)責(zé)beta program(初版試行)等等。大的PM 隊伍中少不了這樣的人。20%的PM是做這個。
開發(fā)團隊:(Development Team)
開發(fā)團隊領(lǐng)導(dǎo)(Development Manager): 負(fù)責(zé)管理各個開發(fā)小組,并對開發(fā)編程的工作做總體的規(guī)劃。
開發(fā)組長(Development Lead): 負(fù)責(zé)管理開發(fā)工程師,也參加對開發(fā)編程的工作做總體的規(guī)劃。
開發(fā)工程師(Develop Engineer,or Developer):負(fù)責(zé)具體的編程開發(fā)。
構(gòu)架師(Architect): 大的產(chǎn)品團隊有一兩個工程師專門做整體系統(tǒng)的設(shè)計規(guī)劃。
測試團隊:(Quality Assurance or Test Team)
測試團隊領(lǐng)導(dǎo)(QA Manager): 負(fù)責(zé)管理測試小組。
測試組長(Test Lead): 負(fù)責(zé)管理測試工程師,制定測試計劃等。
測試工程師(Tester or Test Engineer):負(fù)責(zé)具體的測試工作。
測試開發(fā)工程師(Developer in Test,or STED): 負(fù)責(zé)測試工具的開發(fā)。
產(chǎn)品可用性團隊:(Usability Team)
產(chǎn)品可用性工程師(Usability Engineer): 做使用性能的調(diào)查和測試,采訪客戶或?qū)⒖蛻粞垇碜稣{(diào)查。
界面設(shè)計師(UI Designer): 負(fù)責(zé)具體的界面設(shè)計。
產(chǎn)品設(shè)計師 (Product Designer): 負(fù)責(zé)產(chǎn)品的總體設(shè)計,特別是硬件產(chǎn)品。
客戶教育或文檔團隊:(User Education,or UE Team)
文檔組長(UE Lead):負(fù)責(zé)管理文檔小組。
文檔編輯(UE Editor):負(fù)責(zé)具體的文檔編輯和撰寫。
以上只是一個大約的組合模式。不同的團隊有各自的側(cè)重點和變化。在很大程度上這些也受到具體的產(chǎn)品的影響。我想我在微軟的產(chǎn)品部門的其他同事們會再做補充。希望這些信息能對國內(nèi)的軟件開發(fā)公司能有參考價值。我們希望通過這樣的交流,我們能為中國軟件開發(fā)事業(yè)的進一步發(fā)展盡我們的一點微薄之力。