在建站前先做四步——確定、分解、評估、決策,完美把握網站建設方向。
確定
確定需求往往是承接需求調研而來,目的網頁設計是搞清楚產品部門究竟要解決的是什么問題,有時候業務部門會要求你能為他們做到些什么,但這種要求往往過于含糊,你還需要再和他們多了解一些信息,才有可能真正了解他們希望得到是什么,避免發生買個MBP回來只為裝了winxp玩掃雷這樣的杯具……
在確定環節中,這只完成了一半的工作;接下來我們需要知道對應這個需求,會有哪些角色來使用,我們需要能夠對這些角色涉及到的不同需求做出細分。這也是需要和業務/需求部門溝通好的。
分解
分解的意義在于把大問題化解為小問題,網頁設計變成一個個可控的模塊,注意這里是說的可控是指你可以通過一定的約束條件和已知存在的變量來實現對問題的描述。經常看到的所謂需求拆解只不過是把業務部門的需求換個描述方式,這種糊弄人的做法要不得,山寨,害人害己。大問題變成了小問題,我們就可以來討論如何去實現了。
至于該如何把大的需求拆解,這里提供兩種思路:
第一,流程驅動:根據業務流程和業務需求建立對應的uml,或者也可以對應每個角色建立起一個虛擬人物,把整個業務流程完整走一遍,這樣可以模擬出實際操作中會出現哪些具體問題,在完成最終的業務目標前,可能會出現的階段性目標有哪些,同時又會有什么樣零星的小需求出現。很多這些過程中的需求是業務部門不會提及的,你有責任告訴他們這些情況。
第二,公式驅動:以應用類產品舉例,如果一個公司可以同時向用戶提供兩種服務A和B,二者的利潤不同,同時又會受到市場季節性需求變化和產能供應量的限制出現數量上的波動;現在要求我們能夠找到合適的資源分配方式,來讓公司獲得最大的盈利。這其實就是一個根據制約條件來找到A和B兩種服務對應各自需要有什么變量的問題。不妨列出一個公式,看看究竟各個制約條件之間是如何影響的,從而找到合適的解決辦法。
要記得,在需求被拆解后的每一個問題有些是對應固定的角色的,而一些則是可認為是無所謂角色區分的共性問題,還有一些問題的處理結果會影響他角色。務須能分清楚來對待。
分解階段另一件重要的事情就是完成流程圖的設計,網頁設計對應產品人員要做的是業務流程圖,如果有核心開發人員也參與了前期的需求討論分析,可以建議他們同步展開架構流程的思考。在繪制流程圖的時候需要盡可能標明其中的里程碑功能,大約需要哪些功能支撐、需要設計多少個頁面或頻道、組件,對應的管理后臺需要有哪些對應的調用。
這時候也需要一并帶著整理。我的實踐經驗是,可以先做完流程圖,然后把后面的這些問題帶進去思考,一方面尋找答案,一方面也可以完善你的流程圖。
如果能夠一路堅持走下來,基本上可以做到很完整地了解自己要解決些什么問題了。這時候你面對的就不再是一個總的需求,而是一個個細節的問題。接下來要做的就是對各個問題進行評估,
評估
如果我們把分解理解為找問題,那么評估就是為解決問題做準備。鑒于我們在分解問題的時候,其實已經涉及了一部分評估的工作,這里不妨更深一層。例如,你打算使用多少個頁面、會有多少個功能點出現。這些經過分析提煉后的內容可以用PRD或者低保真原型的方式展現給相關的開發人員和業務部門。
不過評估最重要的工作并不是要窮列出來究竟需要做哪些工作,而是需要對這些即將展開的工作做出排序,同時你可能必須舍棄一些原本精心構思的內容。對工作的排序是產品自己無法完成的,需要盡可能和開發部門配合。開發人員對于業務需求有著自己的一套理解,同時由于涉及到很多實現細節的問題,也需要在達到共識的基礎上才能繼續推動。
因此,在真正展開具體的產品設計工作之前,需要能和開發人員進行溝通,盡可能做到以下幾點:我們需要多少個功能點來支撐這個產品或滿足需求;這些功能點都是可以在規定項目時間內開發完成的嗎。
開發人員對于自己要做的事情有足夠的判斷,知道哪些應該先做,哪些要后置;對于暫時無法實現的功能,是退回給需求方,還是產品重新構思或者延至 2.0版本完成,需要說明清楚。對于沒有技術背景的產品,這時候很容易陷入被動,你可能會被技術提出的各種“不好實現”攪得心煩意亂。
為了避免這種情況,你最好能找到一個能和你順暢溝通的技術經理,很多問題其實并不需要你親自上陣的。
決策
在經過了前面幾輪重重的折磨,才是產品人員真正發揮創意的時候,你將左右會有怎樣的表現,你擁有整個產品開發的決策權。別人可以提意見,但是最終你才是那個決定事情該怎么做的人。
制定項目計劃,針對每個細分功能拿出具體的實現策略,給出產出物的交付時間,繪制原型圖和PRD文檔。從產品整體框架到頁面布局、頻道功能再到按鈕的位置,彈出層的設計。設計的創意才在這里真正迸發,你所有知道的界面設計、導航架構、交互形式的知識和才能都會在這里得到淋漓盡致的體現。
暫且撇下你的設計創意不表,如何把評估階段的成果應用好是我們是否能順利進入決策階段的關鍵。總會有一些功能被砍掉,也有一些新功能提出來,原本想好的某些流程也可能要重新調整。在決策階段,你需要有做減法的魄力和決心,拋棄一些東西,適當做一些讓步,但是要能保證產品的核心功能不被閹割。對于核心功能,任何為了減輕工作量或者無法實現而要求繞道而行的借口都是可恥的;如果你有有充分的理由相信產品的核心功能,網頁設計那就一定要堅持到底。
總結
至此,我們通過確定、分解、評估和決策把需求分析階段要做的事情做了一個梳理,也為后面的設計和開發開了一個好頭。當然你仍然會面臨業務部門的需求變更,設計或者開發人員在某個功能或表現形式上跟你死磕的局面,這時候你仍然可以應用這四個步驟來解決具體的問題。
但是在實現上需要做一些變通,項目一旦進入到開發編碼階段,時間會非常緊湊,你能做的就是根據新提出來的想法迅速協調好利益相關部門,在開會之前你就能要準備好幾套方案,否則會議就會變成一種折磨:低效,浪費時間,不解決問題。