4千字,總結(jié)產(chǎn)品需求文檔的形式、規(guī)范、自查

14 評(píng)論 35931 瀏覽 225 收藏 17 分鐘

編輯導(dǎo)讀:產(chǎn)品需求說(shuō)明文檔(PRD)可以將產(chǎn)品設(shè)計(jì)思路清晰的展現(xiàn)給團(tuán)隊(duì)人員,便于他們快速理解產(chǎn)品。那么,產(chǎn)品需求說(shuō)明文檔該如何寫(xiě)呢?本文作者結(jié)合多年工作經(jīng)歷,分享了關(guān)于產(chǎn)品需求文檔形式、規(guī)范、自查相關(guān)的非常有用的知識(shí),供大家一同參考和學(xué)習(xí)。

本文總結(jié)一個(gè)最基礎(chǔ)的話題:PRD。

目錄:

一、PRD的形式

二、PRD的規(guī)范

三、PRD的自查方法

一、PRD的形式

1. 原型附帶文字

移動(dòng)端產(chǎn)品當(dāng)然是把產(chǎn)品DEMO展示出來(lái)為第一位。

附帶的文字,多是對(duì)原型的交互的說(shuō)明、取值邏輯說(shuō)明等。

比如這樣:

文字較多的,可以把原型靠右的部分都分簡(jiǎn)單排版。比如這樣:

2. 文字附帶原型

邏輯過(guò)重的后端需求,干脆就使用Word/Excel/TXT格式的PRD。好處是在行文的過(guò)程中,可以二次梳理思路,暴露問(wèn)題。一般這樣的需求文檔都包括:

版本說(shuō)明(含變更日志)、背景、目標(biāo)、需求范圍、需求用例(正文,包含所有核心內(nèi)容,如功能邏輯說(shuō)明等)、參考資料等。

(1)需求背景

  • 現(xiàn)狀當(dāng)前業(yè)務(wù)流程怎么了,當(dāng)前功能是怎么樣的,問(wèn)題是什么,需要怎么辦,以達(dá)到什么目標(biāo)。
  • 用戶(hù)故事也可以更簡(jiǎn)單的以“作為誰(shuí),希望通過(guò)什么,實(shí)現(xiàn)什么”這樣的用戶(hù)故事形式也可以。
  • 場(chǎng)景是需求的外在,拆解和窮盡需求場(chǎng)景,為窮盡功能和邏輯規(guī)則打基礎(chǔ)。

拆解需求場(chǎng)景的方法:

  • 按業(yè)務(wù)順序,想象或模擬用戶(hù)操作順序;
  • 按目標(biāo)生命周期,比如草稿、待審核、審核中;
  • 按正常、異常、正向、逆向,形成交叉矩陣。

(2)需求目標(biāo)

用戶(hù)角度的驗(yàn)收標(biāo)準(zhǔn),即從效果的角度表達(dá)需求的預(yù)期(不表達(dá)如何實(shí)現(xiàn))。

例如:

a、用戶(hù)在點(diǎn)擊頁(yè)面之后3秒內(nèi)必須加載完成。

b、用戶(hù)能看到自己買(mǎi)到的商品。

c、用戶(hù)可以刪除自己的商品購(gòu)買(mǎi)記錄。

(3)需求范圍

需求范圍就是描述需求的目標(biāo)項(xiàng)、邊界、排除項(xiàng),其作用是理清邊界。

目的是防止需求蔓延(參考PMBOK指南)。

需求范圍可以使用功能框架圖。

(4)需求用例

需求用例是需求的正文部分。

先將需求分成任務(wù)點(diǎn),進(jìn)行描述。

描述的語(yǔ)句要嚴(yán)格按照文檔語(yǔ)法原則進(jìn)行(下文會(huì)繼續(xù)聊到)。

如下圖:

(5)參考資料

參考資料部分,附上調(diào)研過(guò)程中查到的相關(guān)模板、數(shù)據(jù)表、腳本、接口地址、歷史文檔、原型鏈接等。

二、PRD的規(guī)范

這里主要以Word樣式的PRD為對(duì)象。

1. 需求文檔的語(yǔ)法

(1)說(shuō)明文一字千金

需求文檔就像是說(shuō)明書(shū)一,去掉形容詞、比喻句、副詞等。

能用一句話說(shuō)明的就不要說(shuō)第二句。

(2)避免用詞不當(dāng)

在文檔或口頭交流的時(shí)候,經(jīng)常用到諸如“維度”、“顆粒度”、“參數(shù)”、“字段”、“項(xiàng)”、“列”、“表”等詞匯。

產(chǎn)品需求文檔中,要做到用詞嚴(yán)謹(jǐn),避免詞語(yǔ)歧義或失準(zhǔn)。

常見(jiàn)用法例如:

  • 以“訂單號(hào)+產(chǎn)品編碼”的[維度]進(jìn)行唯一性判斷;按照“訂單”[顆粒度]進(jìn)行匯總;
  • 以“時(shí)間”作為請(qǐng)求[參數(shù)];
  • 數(shù)據(jù)庫(kù)的[字段]為“number”;
  • 頁(yè)面搜索欄的“姓名”搜索[項(xiàng)];
  • 頁(yè)面列表的“年齡”[列]。

(3)按順序描述

開(kāi)發(fā)和測(cè)試人員通常希望將一個(gè)模塊的工作做完,再進(jìn)行下一個(gè),而不是來(lái)回跳。

因此行文順序上,按照先后、左右、大小等常規(guī)的順序進(jìn)行,一個(gè)模塊寫(xiě)完再寫(xiě)下一個(gè)。

前面寫(xiě)過(guò)的內(nèi)容,后面不要再寫(xiě)了,避免歧義。

比如:要在已有接口增加獲取一個(gè)字段,并在頁(yè)面展示,可以這樣兩步描述:

  1. 在xx接口,增加xx字段,存入數(shù)據(jù)庫(kù)xx表。接口邏輯調(diào)整為xx。舊數(shù)據(jù)初始化方案是xx。
  2. 在xx頁(yè)面列表中,新增一列“xx”,對(duì)應(yīng)取值是數(shù)據(jù)庫(kù)xx表中的字段xx。

(5)以“在哪里,做什么”為主線

文檔以任務(wù)線為核心句式結(jié)構(gòu),即:“在哪里,做什么”。

盡量用正向語(yǔ)序,不要倒敘,也不要用括號(hào)或破折號(hào)。

比如避免前面描述完,后面又接著一個(gè)“即xxxxx”、“也就是說(shuō)xxxxx”。

(6)非本需求的功能,不要放在文檔中

產(chǎn)品經(jīng)理是信息布道者,信息中樞

而開(kāi)發(fā)和測(cè)試人員,是希望所見(jiàn)即所得的閱讀方式。所以不必要的任務(wù)不要加入進(jìn)來(lái)。

比如不要使用“可能這次要做”、“注意,這個(gè)本次不做,只作為提前知悉”之類(lèi)的內(nèi)容。

正文一定傳達(dá)的是“做什么”。如果想補(bǔ)充,那么放在參考資料部分。

(7)采用合適的行文結(jié)構(gòu)

1)如果需要在舊功能基礎(chǔ)上做優(yōu)化,可以用對(duì)比結(jié)構(gòu)進(jìn)行描述,比如:

  • 修改前:xxxx;
  • 修改后:xxxx;

2)對(duì)于并列條件較多的,可以用平行列舉的結(jié)構(gòu)描述,比如:

每天一次,定時(shí)監(jiān)控【退款單】(表f_oms_refund),若同時(shí)滿(mǎn)足下列條件:

同時(shí)滿(mǎn)足上述條件,則進(jìn)行數(shù)據(jù)抓取。

  1. 數(shù)據(jù)更新時(shí)間為前兩天;
  2. 退款成功的(refund_status為:2、5、8、12、24任一個(gè));
  3. rma_sn不為空;
  4. order_sn已存在于【發(fā)票列表】中。

注意:如果不熟悉數(shù)據(jù)庫(kù),建議不要寫(xiě)數(shù)據(jù)庫(kù),而是要寫(xiě)清楚頁(yè)面取值位點(diǎn)并配以截圖,避免弄巧成拙。

3)如果需求點(diǎn)有多個(gè),但屬于同一個(gè)頁(yè)面功能模塊下的,那么可以放在一個(gè)用例中,分點(diǎn)描述,就像書(shū)本的目錄一樣進(jìn)行編號(hào)。

(8)窮盡原則

“窮盡”是方案嚴(yán)謹(jǐn)?shù)幕A(chǔ)。

窮盡包括窮盡需求的功能點(diǎn),窮盡每個(gè)功能點(diǎn)的要素,窮盡每一個(gè)邏輯判斷、性能要求、異常機(jī)制、用戶(hù)權(quán)限等。

比如:做一個(gè)新頁(yè)面,就要從導(dǎo)航欄目、界面交互、搜索功能、網(wǎng)站介紹性文字、默認(rèn)列表展示內(nèi)容、列表數(shù)據(jù)統(tǒng)計(jì)等全部說(shuō)清。

同時(shí)對(duì)于后端產(chǎn)品而言,基本上每個(gè)需求都要說(shuō)明性能要求、異常機(jī)制等。

(9)最后,不要遺漏對(duì)性能的要求、對(duì)歷史數(shù)據(jù)是否處理、以及權(quán)限要求

性能的要求,如果不懂技術(shù)術(shù)語(yǔ),則寫(xiě)出性能支持的數(shù)據(jù)或現(xiàn)象范圍。

比如:預(yù)計(jì)半年內(nèi)數(shù)據(jù)量為100萬(wàn)/天,要求接口響應(yīng)3s內(nèi)。

歷史數(shù)據(jù)是否要初始化,及與發(fā)版的時(shí)間順序。

權(quán)限就是賦予頁(yè)面數(shù)據(jù)、功能權(quán)限。

2. 通用項(xiàng)進(jìn)行統(tǒng)一

(1)命名統(tǒng)一

頁(yè)面一些常見(jiàn)的插件的命名可能有多個(gè)版本,產(chǎn)品經(jīng)理需一開(kāi)始就在需求文檔中確定用哪一個(gè)。

比如下面這幾組意思相近的插件名稱(chēng):

  1. 表示刪除或禁用的:刪除、禁用、關(guān)閉、封存;
  2. 表示啟用的:開(kāi)啟、啟用、生效;
  3. 表示設(shè)置的:配置、設(shè)置;
  4. 表示編輯的:編輯時(shí)間、修改時(shí)間、更新時(shí)間、操作時(shí)間。

(2)數(shù)據(jù)庫(kù)表中的通用字段命名統(tǒng)一(開(kāi)發(fā)負(fù)責(zé)的)

比如:

每個(gè)開(kāi)發(fā)習(xí)慣不同,所以要固定用哪一種,避免千人千面。

  1. 是否已寫(xiě)入:用“is_use”、“is_used”還是“is_write”表示?
  2. 已寫(xiě)入/未寫(xiě)入:用“1/0”,還是用“1/2”表示?

筆者曾經(jīng)遇到一個(gè)開(kāi)發(fā)比葫蘆畫(huà)瓢,把“goods_sn”(商品編碼),寫(xiě)成“good_sn”,這就鬧笑話了。

(3)頁(yè)面展示統(tǒng)一

比如:數(shù)據(jù)表為空字符串時(shí),前端展示什么,是顯示“/”,還是空白?

(4)文檔命名統(tǒng)一

可以使用日期+模塊名+需求名稱(chēng)+作者+版本號(hào),例如:20180920_【個(gè)人資料】編輯個(gè)人資料優(yōu)化_張三_V1.0。

(5)術(shù)語(yǔ)名詞定義統(tǒng)一

比如跨境電商行業(yè)的“清關(guān)”、“保稅”、“頭程運(yùn)費(fèi)”、“尾程運(yùn)費(fèi)”、“大包”、“小包”等。

三、PRD的自查

PRD可形成一套自查規(guī)則。筆者拋磚引玉。

1. 按功能插件自查

(1)輸入框

需限定輸入的范圍,做輸入校驗(yàn)。示例:最多輸入10個(gè)數(shù)值,輸入不合規(guī)則的內(nèi)容,則在輸入框下方紅色字體提示,比如:“請(qǐng)不要輸人漢字!”。

(2)下拉框

下拉的同時(shí)是否支持輸入搜索,是否支持多選。

(3)導(dǎo)入文檔

表頭校驗(yàn)、自校驗(yàn)、與系統(tǒng)校驗(yàn)、寫(xiě)入邏輯(全部不予導(dǎo)入或部分導(dǎo)入)、下載結(jié)果文檔;

(4)已有功能的邏輯規(guī)則變更

則要考慮舊數(shù)據(jù)兼容或初始化。

(5)基礎(chǔ)數(shù)據(jù)刪除

則要考慮基礎(chǔ)數(shù)據(jù)被調(diào)用的地方,刪除和編輯怎么處理。

比如:商品分類(lèi)中維護(hù)的“商品類(lèi)型”被刪除,那么再編輯和刪除該分類(lèi)下的歷史數(shù)據(jù)的時(shí)候就可能報(bào)錯(cuò),所以基礎(chǔ)數(shù)據(jù)維護(hù)時(shí)候要校驗(yàn)調(diào)用情況。

(6)設(shè)置規(guī)則

考慮規(guī)則去重、規(guī)則優(yōu)先級(jí)。

一般情況下,沒(méi)有優(yōu)先級(jí)的話,規(guī)則的去重和命中次序校驗(yàn)起來(lái)比較麻煩。(在<后端產(chǎn)品經(jīng)理寶典>一書(shū)中有專(zhuān)門(mén)介紹)。

(7)列表的數(shù)據(jù)的排序

一般按照修改時(shí)間的倒敘排列,也可以用數(shù)據(jù)庫(kù)id代替序號(hào)。

用數(shù)據(jù)庫(kù)id的好處是,方便用戶(hù)和技術(shù)協(xié)作追溯數(shù)據(jù)。

(8)異常機(jī)制

每時(shí)每刻都要有逆向思維,告訴開(kāi)發(fā)人員什么算異常?異常了怎么標(biāo)示出來(lái)。

比如:表1字段A,匹配表2字段B,將匹配成功的數(shù)據(jù)寫(xiě)入表3。就要考慮表1中字段A為空的情況該怎么辦。

(9)頁(yè)面長(zhǎng)期不登錄

則給自動(dòng)退出。主要考慮到后端系統(tǒng)的保密性。

(10)凡是帶操作的

一般都要設(shè)置頁(yè)面權(quán)限。

最簡(jiǎn)單的方式是所有系統(tǒng)的權(quán)限都分三個(gè)等級(jí):不能查看、只能查看、可以編輯。

(11)功能修訂

比如規(guī)則變更,需要考慮舊數(shù)據(jù)是否要按照新規(guī)則進(jìn)行初始化。

2. 按需求類(lèi)型自查

(1)功能需求

需要窮盡功能覆蓋的使用場(chǎng)景,窮盡本功能相關(guān)聯(lián)的各個(gè)系統(tǒng)模塊,窮盡本功能的用戶(hù)角色、權(quán)限。

(2)性能需求

數(shù)據(jù)量較大時(shí)的系統(tǒng)壓力、反應(yīng)速度;

批量上傳、下載要考慮數(shù)量上限,考慮是否異步處理;

考慮瀏覽器兼容性;考慮調(diào)用接口超時(shí)的備用策略等。

(3)安全需求

敏感詞屏蔽(同步過(guò)濾和異步召回)、防刷單機(jī)制、數(shù)據(jù)補(bǔ)推機(jī)制、風(fēng)險(xiǎn)預(yù)警等。

3. 關(guān)鍵詞提醒自查

筆者不完全羅列了幾個(gè)關(guān)鍵詞,可以作為自查的維度。

(1)完整流程是否存在斷頭路。

(2)逆向功能流程是否可逆,如果逆向操作,是否考慮對(duì)應(yīng)的機(jī)制:比如退款、退貨操作。

(3)異常即異常機(jī)制。各個(gè)步驟都可能出現(xiàn)預(yù)期外的情況。

(4)歧義需求文檔的語(yǔ)法、功能文案、名詞是否易懂,是否存在歧義。

(5)兼容是否存在兼容問(wèn)題:不同業(yè)務(wù)人員對(duì)功能都能接受嗎?各個(gè)系統(tǒng)之間兼容嗎?新舊功能的兼容嗎(比如歷史數(shù)據(jù)要不要初始化)?

(6)備用是否有備用方案,次級(jí)選項(xiàng)。

比如當(dāng)正常流程無(wú)法傳輸?shù)臅r(shí)候,是否可以用導(dǎo)入的機(jī)制救急。業(yè)務(wù)高峰的系統(tǒng),是否有降級(jí)處理邏輯。

(7)窮盡業(yè)務(wù)場(chǎng)景和可能原因是否窮舉完畢。

默認(rèn):是否給予了默認(rèn)值。

比如設(shè)置規(guī)則功能業(yè)務(wù)未設(shè)置怎么辦?

(8)脫敏是否存在敏感信息,是否有脫敏機(jī)制。

4. 其他

自查的方式還有很多,比如也可以按照“增、查、改、刪、顯、傳、算”自查等。

總結(jié)

需求文檔最基礎(chǔ),努力做到心中有典型功能,邏輯自查舉一反三,需求要點(diǎn)不缺失,文檔內(nèi)容不歧義。

產(chǎn)品經(jīng)理要養(yǎng)成好的態(tài)度和習(xí)慣。比如:

1)保持學(xué)習(xí)學(xué)習(xí)其他人的文檔書(shū)寫(xiě)長(zhǎng)處,可以把好的東西借鑒過(guò)來(lái),吸取精華。

2)要自己多看多換位思考,揣摩他人是否能讀懂,把問(wèn)題止步于自查。

3)請(qǐng)求同事(包括產(chǎn)品經(jīng)理、程序員、測(cè)試員等)幫助互評(píng)自己的文檔,接受對(duì)方的建議。

4)文檔是改出來(lái)的,因此自己寫(xiě)好后,放一段時(shí)間再看,再改。

#專(zhuān)欄作家#

唧唧歪歪PM,公眾號(hào):唧唧歪歪PM(ID:jjyypm),人人都是產(chǎn)品經(jīng)理專(zhuān)欄作家。書(shū)籍《后端產(chǎn)品經(jīng)理寶典》作者,藥學(xué)碩士轉(zhuǎn)行互聯(lián)網(wǎng)產(chǎn)品多年;熟悉跨境電商業(yè)務(wù),醫(yī)藥領(lǐng)域;擅長(zhǎng)大型后臺(tái)體系,社交APP。

本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載

題圖來(lái)自Unsplash,基于CC0協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 只用描述需求和效果,如何實(shí)現(xiàn)有架構(gòu)師和開(kāi)發(fā)工程師,慌什么

    來(lái)自廣東 回復(fù)
  2. 開(kāi)發(fā)說(shuō)“產(chǎn)品需求文檔僅僅是讓你們完整的描述你們想要的功能,功能細(xì)節(jié)。而且表結(jié)構(gòu)設(shè)計(jì)屬于開(kāi)發(fā)的事情。產(chǎn)品完全不需要知道產(chǎn)品的數(shù)據(jù)庫(kù)結(jié)構(gòu)”,真的是這樣嗎,產(chǎn)品經(jīng)理沒(méi)有資格規(guī)定數(shù)據(jù)庫(kù)結(jié)構(gòu)?那怎么保證開(kāi)發(fā)做出來(lái)的是產(chǎn)品要的效果,并且結(jié)構(gòu)不一樣又不告知產(chǎn)品,后期迭代需求文檔怎么寫(xiě),路徑都不一樣了,怎么懟開(kāi)發(fā)啊,煩!領(lǐng)導(dǎo)特意交代必須寫(xiě)表結(jié)構(gòu),開(kāi)發(fā)又反感,老是說(shuō)“那鍵盤(pán)給你你來(lái)敲代碼”

    來(lái)自廣東 回復(fù)
  3. 太適合新人了,尤其是名詞規(guī)范那一趴,要是有文檔常用名詞及釋義就更棒了!

    來(lái)自廣東 回復(fù)
  4. 產(chǎn)品面試

    回復(fù)
  5. 認(rèn)真看完,果然有收獲,去看作者那本書(shū)

    來(lái)自湖北 回復(fù)
    1. 啥書(shū)

      來(lái)自浙江 回復(fù)
  6. 精辟

    來(lái)自山東 回復(fù)
  7. 點(diǎn)贊 用這個(gè) 懟開(kāi)發(fā)

    來(lái)自湖南 回復(fù)
  8. 干的不行

    來(lái)自北京 回復(fù)
  9. 干貨滿(mǎn)滿(mǎn),點(diǎn)贊!

    來(lái)自北京 回復(fù)
  10. 感謝分享

    回復(fù)
    1. 謝謝關(guān)心關(guān)注公號(hào)jjyypm。

      回復(fù)
  11. 寫(xiě)得很好!很多點(diǎn)的方法論都很完善,按這樣寫(xiě)開(kāi)發(fā)絕對(duì)不跟你杠,清晰、明了!
    但是老板說(shuō)“不做這個(gè)需求了,我要做那個(gè)。小張,改一改,明天再給我看一版?!?/p>

    來(lái)自廣東 回復(fù)
    1. 那就改唄

      來(lái)自浙江 回復(fù)