需求文檔不會(huì)寫(xiě)?手把手教你學(xué)會(huì)!
產(chǎn)品需求文檔的撰寫(xiě)是產(chǎn)品經(jīng)理必備能力之一,本文作者經(jīng)過(guò)多年多的學(xué)習(xí)與實(shí)踐,將寫(xiě)需求文檔的經(jīng)驗(yàn)分享給大家。
一、需求文檔的作用
之前提到過(guò)『結(jié)構(gòu)流程圖』是產(chǎn)品的骨架,非常重要,但團(tuán)隊(duì)中很多成員對(duì)其實(shí)無(wú)感的,因?yàn)楫a(chǎn)品本身就是一個(gè)故事,僅僅有故事的構(gòu)思是遠(yuǎn)遠(yuǎn)不夠的,要想把故事講好,還需要賦予故事更多的細(xì)節(jié)與血肉,這就是需求文檔的作用!
二、好故事的組成要素
童話書(shū)里最吸引眼球的是插圖,而非文字。甚至只看插圖,就能把情節(jié)完整的串聯(lián)起來(lái)。而原型圖就是需求文檔中的插圖,是產(chǎn)品方案最直接的體現(xiàn),故事書(shū)中除了插圖,還有對(duì)應(yīng)的描述,以便讀者能夠更好地理解細(xì)節(jié)。
需求文檔也是如此,只是需求文檔的讀者可以明確劃分為:開(kāi)發(fā)、設(shè)計(jì)與測(cè)試。不同讀者想從中獲取的信息也有所不同,開(kāi)發(fā)想了解產(chǎn)品的功能邏輯;設(shè)計(jì)想確定交互與布局,而測(cè)試則想知道具體的測(cè)試點(diǎn)。
所以需要針對(duì)以上三類(lèi)人群,需求文檔要進(jìn)行三種不同的描述,分別為:開(kāi)發(fā)注意事項(xiàng)、設(shè)計(jì)注意事項(xiàng)、測(cè)試注意事項(xiàng)。
而實(shí)際的操作中,測(cè)試注意事項(xiàng)多數(shù)會(huì)被開(kāi)發(fā)與設(shè)計(jì)注意事項(xiàng)所涵蓋,所以測(cè)試注意事項(xiàng)多數(shù)可以不寫(xiě)。
另外,方案背后的理由解釋也很重要,這樣能夠讓開(kāi)發(fā)、設(shè)計(jì)、測(cè)試對(duì)產(chǎn)品方案的理解更加深刻,與產(chǎn)品經(jīng)理在方案理解上達(dá)成最大的公約數(shù)。同時(shí)在陳述產(chǎn)品解釋的過(guò)程中,也是產(chǎn)品經(jīng)理二次檢驗(yàn)與自我質(zhì)疑,對(duì)于方案的嚴(yán)謹(jǐn)性與完善性有很大的益處。
三、需求文檔的編寫(xiě)
3.1 原型圖
原型圖是需求文檔中最核心的部分,所有的解釋說(shuō)明,都以原型圖為基礎(chǔ)而展開(kāi),合格的原型圖應(yīng)該滿足清晰的表達(dá)出以下信息
(1)頁(yè)面包含的組件與布局;
這一點(diǎn)是最基礎(chǔ),同時(shí)也相對(duì)簡(jiǎn)單,因?yàn)橹灰a(chǎn)品骨架確定下來(lái),通過(guò)參考大量的競(jìng)品,確定頁(yè)面內(nèi)相關(guān)的組件與布局,往往是水到渠成的事情。
(2)組件的展示優(yōu)先級(jí);
原型圖中的各個(gè)組件一般會(huì)通過(guò)大小,布局,顏色深淺的形式來(lái)傳達(dá)相應(yīng)的優(yōu)先級(jí)。一般來(lái)說(shuō),顏色越深,優(yōu)先級(jí)越高;組件越大,優(yōu)先級(jí)越高;組件越靠近頁(yè)面的視覺(jué)中心,優(yōu)先級(jí)越高。
(3)展示出組件的不同狀態(tài);
很多組件會(huì)因場(chǎng)景的不同,而展示不同的狀態(tài),下面的頁(yè)面是某個(gè)音頻播放器的主頁(yè),主頁(yè)下方是音頻列表,列表中每個(gè)音頻通過(guò)顏色深淺的方式,區(qū)分了『選中』與『未選中』兩種狀態(tài)。
(4)展示組件在頁(yè)面內(nèi)的響應(yīng)結(jié)果;
如果組件的響應(yīng)結(jié)果就在本頁(yè)展示,則需要將響應(yīng)結(jié)果也展示在原型圖中,如果響應(yīng)結(jié)果是另外一個(gè)頁(yè)面,則需要通過(guò)文字的形式說(shuō)清楚跳轉(zhuǎn)關(guān)系。
下面的案例中,點(diǎn)擊『開(kāi)始睡覺(jué)』的按鈕之后,會(huì)判斷起床時(shí)間距離當(dāng)前是否超過(guò)90分鐘,如果沒(méi)超過(guò),則彈出『睡前確認(rèn)彈窗1』否則彈出『睡前提醒彈窗2』
3.2 開(kāi)發(fā)注意事項(xiàng)
對(duì)于開(kāi)發(fā)的同學(xué)來(lái)說(shuō),『開(kāi)發(fā)注意事項(xiàng)』的地位和和原型圖同樣重要,因?yàn)樵蛨D只展示靜態(tài)的結(jié)果,但背后的觸發(fā)條件、觸發(fā)時(shí)機(jī)、動(dòng)態(tài)效果等關(guān)鍵信息無(wú)法體現(xiàn),需要大量的描述將上述信息說(shuō)清楚。所以『開(kāi)發(fā)注意事項(xiàng)』需要將以下信息說(shuō)明白:
(1)組件狀態(tài)變化的觸發(fā)條件與時(shí)機(jī);
由于多數(shù)的觸發(fā)條件與時(shí)機(jī)都是抽象不可見(jiàn)的,所以?xún)H參考原型圖,開(kāi)發(fā)無(wú)法完成預(yù)期的業(yè)務(wù)邏輯,需要通過(guò)文字將背后的邏輯說(shuō)清楚,以插屏廣告請(qǐng)求與展示為例:
原型圖只表明了廣告展示的流程,并沒(méi)有涉及廣告請(qǐng)求與展示邏輯,所以需要在『開(kāi)發(fā)注意事項(xiàng)』中添加如下描述:
點(diǎn)擊上鎖的音頻,進(jìn)入廣告加載頁(yè)面,同時(shí)請(qǐng)求廣告,若在8秒內(nèi)請(qǐng)求到廣告,則進(jìn)行展示,廣告展示后,『廣告加載提示頁(yè)面』消失,用戶可以手動(dòng)關(guān)閉廣告;如果8秒內(nèi)沒(méi)有請(qǐng)求到廣告,則不再請(qǐng)求廣告,『廣告加載提示頁(yè)面』消失。
(2)組件的交互結(jié)果
雖然多數(shù)組件的交互結(jié)果都能通過(guò)原型圖表現(xiàn)出來(lái),但也有一些場(chǎng)景需要文字描述的形式才能解釋清楚。
下面的原型圖展示的是某音頻播放器的首頁(yè),點(diǎn)擊『右上角』的隨機(jī)播放按鈕,會(huì)隨機(jī)播放4首免費(fèi)的音頻。但隨機(jī)二字顯然很難通過(guò)原型圖表達(dá),所以需要在『開(kāi)發(fā)注意事項(xiàng)』中詳細(xì)說(shuō)明
(3)頁(yè)面間的跳轉(zhuǎn)邏輯;
在一張Axure畫(huà)板中,通常只展示一個(gè)頁(yè)面的邏輯,如果該頁(yè)面中某些組件的交互結(jié)果是跳轉(zhuǎn)到其他頁(yè)面,建議使用文字將涉及的跳轉(zhuǎn)邏輯表達(dá)清楚。
(4)組件與頁(yè)面的動(dòng)態(tài)過(guò)程;
雖然Axure也能實(shí)現(xiàn)一些動(dòng)態(tài)效果,但制作成本較高,動(dòng)態(tài)表達(dá)也很單一,通過(guò)文字描述的形式,很容易將邏輯說(shuō)明白。
下圖案例中,點(diǎn)擊自定義按鈕,底部會(huì)出現(xiàn)自定義計(jì)時(shí)器面板,僅靠原型圖,開(kāi)發(fā)同學(xué)無(wú)法得知『計(jì)時(shí)器面板』的出現(xiàn)效果,直接展示?還是淡入淡出?所以需要在『開(kāi)發(fā)注意事項(xiàng)』中添加如下描述
點(diǎn)擊『自定義』按鈕,『計(jì)時(shí)器面板』自下向上彈出
(5)必要的流程圖
所謂一圖勝千言,上面提到的4個(gè)開(kāi)發(fā)注意事項(xiàng)如果能用流程圖表達(dá),則建議盡量使用流程圖,這樣不僅邏輯清晰,而且簡(jiǎn)練明快,如下圖展示的是某個(gè)睡眠鬧鐘首頁(yè):
若用文字描述上面的邏輯,會(huì)吧啦吧啦寫(xiě)出下面一段:
點(diǎn)擊首頁(yè)的『開(kāi)始睡眠按鈕』,判斷右上角的『起床提醒開(kāi)關(guān)』的狀態(tài),若為關(guān)閉,直接彈出『睡前狀態(tài)彈窗』,若為開(kāi)啟,則判斷提醒時(shí)間距當(dāng)前時(shí)間是否大于90分鐘,若大于90分鐘,則彈出『睡眠狀態(tài)彈窗』,否則彈出『睡前確認(rèn)彈窗』。
上述文字不僅表達(dá)啰嗦,而且很容易將人弄糊涂,若用流程圖,則會(huì)變的清晰很多:
3.3 設(shè)計(jì)注意事項(xiàng)
對(duì)于設(shè)計(jì)同學(xué),重要的信息包含『頁(yè)面布局』『組件展示優(yōu)先級(jí)』『組件的不同狀態(tài)』與『交互/展示動(dòng)畫(huà)』,這些信息絕大多數(shù)都可以通過(guò)原型圖直接表現(xiàn),所以相較于『開(kāi)發(fā)注意事項(xiàng)』,『設(shè)計(jì)注意事項(xiàng)』要簡(jiǎn)單很多,僅僅起到輔助說(shuō)明的作用。
(1)組件優(yōu)先級(jí)
在原型圖中,雖然會(huì)通過(guò)大小與顏色等不同因素區(qū)分不同組件的優(yōu)先級(jí),但這些因素組合起來(lái),依然會(huì)令人困惑,顏色深、形狀小的組件與顏色淺但形狀大的組件,哪個(gè)優(yōu)先級(jí)更高?所以仍需要文字說(shuō)明。在下面的原型圖中,需要在『設(shè)計(jì)注意事項(xiàng)』中添加如下描述:
頁(yè)面組件展示優(yōu)先級(jí):開(kāi)始睡覺(jué)按鈕 > 起床提醒卡片 = 就寢提醒卡片
(2)組件的不同狀態(tài)
如果組件存在不同狀態(tài),除了要在原型圖中進(jìn)行展示,也要在『設(shè)計(jì)注意事項(xiàng)』中再次強(qiáng)調(diào),例如之前提到的音頻圖標(biāo)分為選中狀態(tài)與未選中狀態(tài)。
(3)展示/交互動(dòng)畫(huà)
如前面所說(shuō),原型圖很難展示動(dòng)態(tài)效果,所以如果牽扯到一些復(fù)雜的動(dòng)畫(huà)效果,也需要額外說(shuō)明,這里不再詳述。
3.4 產(chǎn)品解釋
產(chǎn)品解釋主要說(shuō)明方案背后的原因,通過(guò)闡述產(chǎn)品方案的內(nèi)因,能夠讓開(kāi)發(fā)與設(shè)計(jì)更好地理解產(chǎn)品,使得產(chǎn)品、開(kāi)發(fā)與設(shè)計(jì)能在方案認(rèn)知上取得最大的公約數(shù)。從而減少溝通成本,提高整個(gè)團(tuán)隊(duì)的運(yùn)作效率。
這里繼續(xù)以插屏廣告的請(qǐng)求與展示為例。
如果對(duì)于不熟悉業(yè)務(wù)的開(kāi)發(fā)與設(shè)計(jì),可能會(huì)對(duì)『廣告加載提示』頁(yè)面充滿疑惑,點(diǎn)擊上鎖的音頻icon之后,直接彈出一個(gè)toast提示豈不是更簡(jiǎn)單有效?為何要多此一舉?
所以這里需要使用產(chǎn)品解釋?zhuān)?/strong>
因?yàn)樵诓迤翉V告政策中,不允許插屏廣告出現(xiàn)前后是同一個(gè)頁(yè)面,所以需要額外添加一個(gè)『廣告加載提示』頁(yè)面,使得廣告展示前用戶看到的是『廣告加載提示頁(yè)面』,廣告關(guān)閉后,用戶看到的是『首頁(yè)』
有了上述文字解釋?zhuān)_(kāi)發(fā)與設(shè)計(jì)在執(zhí)行的時(shí)候,會(huì)減少困惑,避免了不必要的溝通或撕逼。
四、完整示例
這是某睡眠鬧鐘軟件的首頁(yè)需求文檔,包含了『原型圖』『流程圖』『開(kāi)發(fā)注意事項(xiàng)』『設(shè)計(jì)注意事項(xiàng)』『產(chǎn)品解釋』僅供大家參考,也歡迎大家吐槽
五、其他
最后給大家推薦一些設(shè)計(jì)組件的說(shuō)明與工具,原型圖作為需求文檔中最重要的組成部分,是對(duì)設(shè)計(jì)師最直觀的產(chǎn)品表達(dá),在正式開(kāi)始著手原型圖,強(qiáng)烈建議熟悉并使用標(biāo)準(zhǔn)的組件原型,具體鏈接如下:
- 谷歌設(shè)計(jì)組件說(shuō)明
- 蘋(píng)果設(shè)計(jì)組件說(shuō)明
- 阿里設(shè)計(jì)組件說(shuō)明
- 谷歌設(shè)計(jì)組件下載(Axure9版本)
- 阿里設(shè)計(jì)組件下載(Axure版本)
同時(shí)也強(qiáng)烈推薦將原型圖/需求文檔上傳至統(tǒng)一的協(xié)作平臺(tái)中,例如:
#專(zhuān)欄作家#
MING,個(gè)人公眾號(hào):MING的大航海,知乎專(zhuān)欄:產(chǎn)品見(jiàn)知錄,人人都是產(chǎn)品經(jīng)理專(zhuān)欄作家。一只專(zhuān)注于個(gè)人成長(zhǎng)的產(chǎn)品汪,沉迷『方法論』,只分享值得收藏的『硬干貨』!
本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來(lái)自 Unsplash,基于CC0協(xié)議。
非常感謝!產(chǎn)品人加油
終于找到一篇好文章了,頂上
請(qǐng)問(wèn)一下作者,阿里設(shè)計(jì)組件下載之后使用在自己的工作中會(huì)不會(huì)有版權(quán)問(wèn)題?
好文,贊!