ToB產(chǎn)品設(shè)計:關(guān)于產(chǎn)品重構(gòu)任務(wù)的思考重構(gòu)
編輯導(dǎo)語:產(chǎn)品重構(gòu)是一件特別耗費(fèi)時間和人力的事情,為什么產(chǎn)品會出現(xiàn)重構(gòu)呢?產(chǎn)品經(jīng)理應(yīng)該如何做好產(chǎn)品重構(gòu)的任務(wù)?本文將從原因和重構(gòu)前的準(zhǔn)備工作兩個方面展開分析,對產(chǎn)品重構(gòu)的具體步驟進(jìn)行了梳理,希望對你有幫助。
最近接到一個任務(wù),需要重構(gòu)后臺某管理模塊。重構(gòu),開發(fā)聽了頭痛,測試聽了難過,產(chǎn)品聽了流淚。但先不要難過,先刨析需求。
一、重構(gòu)是對舊產(chǎn)物的一次重要改革升級
(1)不是隨便一個任務(wù),都能叫重構(gòu)
之所以要重構(gòu),必然是落后的產(chǎn)品設(shè)計已經(jīng)不滿足當(dāng)前日益增長的產(chǎn)品需求,同時可能影響到當(dāng)前的使用穩(wěn)定。重構(gòu)也是對敗絮其中的一次反思,在不影響當(dāng)前產(chǎn)品能力的情況下,對產(chǎn)品進(jìn)行重新思考并優(yōu)化設(shè)計。重構(gòu)同樣也可對原先設(shè)計缺陷進(jìn)行完善補(bǔ)充,讓功能體驗更加完整。
(2)重構(gòu)需要根據(jù)實際情況決定其程度
開發(fā)常見的重構(gòu)基本是代碼重構(gòu),比如優(yōu)化代碼性能,提高代碼健壯性等,而產(chǎn)品的重構(gòu)則等同于重做。最慘烈的無非是從產(chǎn)品底層由下至上開始重構(gòu),不過這種尤為罕見。一般情況下主要針對產(chǎn)品的信息結(jié)構(gòu)層和功能模塊層進(jìn)行重構(gòu),可能是由于產(chǎn)品早期規(guī)劃不夠長遠(yuǎn),隨著產(chǎn)品不斷迭代升級,導(dǎo)致產(chǎn)品使用起來信息過載或者功能混亂。
(3)重構(gòu)的時機(jī)同樣需要天時地利人和
對曾經(jīng)走過的路再走一遍,現(xiàn)實中叫浪漫,研發(fā)中叫成本。很多時候需要先解決從0到1的問題,再考慮其他天長地久日久生情,用最小成本嘗試,然后再根據(jù)業(yè)務(wù)發(fā)展情況進(jìn)行產(chǎn)品周期迭代,敏捷開發(fā)精義首先就是要快。用唯快不破的速度爭取機(jī)會,用日益增長的趨勢換取信任,才能贏得一點(diǎn)點(diǎn)重構(gòu)的時間。
二、針對產(chǎn)品重構(gòu)任務(wù)的準(zhǔn)備工作
所以判斷任務(wù)目的,分析利害程度,評估可用時間,是拆解重構(gòu)需求的基本反應(yīng)。
果不其然,打開產(chǎn)品管理模塊的信息詳情頁,各種信息五花八門,一頭霧水。此次重構(gòu)應(yīng)該是因為頁面的信息組織和展示出了問題,即針對產(chǎn)品信息結(jié)構(gòu)層的優(yōu)化。
頁面是信息的載體,目前我面臨的問題如下:
- 信息較為繁雜,不利于獲取目標(biāo)信息
- 存在部分高風(fēng)險配置,會直接影響線上用戶
- 存在多個易混淆的權(quán)限開關(guān)
- 各種不明所以的參數(shù)
這可能就是古老傳說的一種產(chǎn)品設(shè)計,叫做專為功能服務(wù)的設(shè)計。目的就是只滿足功能和當(dāng)事者的需求,不考慮其他使用者的感受。
追溯其歷史原因,可以總結(jié)如下:
- 匯集多個產(chǎn)品模塊信息,當(dāng)初沒有做好模塊劃分
- 因部分需求需要新增參數(shù)信息,直接隨意插入,且沒有任何提示說明
- 敏捷開發(fā)太敏捷,沒有留下產(chǎn)品文檔
遇事不亂,先談幾段,無非破案。重構(gòu)的需求不可能平白無故產(chǎn)生,本次案件不抓嫌疑人,不追究罪證,只找核心受害者和關(guān)鍵證人,細(xì)探解決案件的蛛絲馬跡。
通過緊密的取證,該任務(wù)需要解決的難點(diǎn)如下:
- 涉及到后端接口特別多且復(fù)雜,需要安全平移迭代。
- 部分業(yè)務(wù)權(quán)限管理沒有形成閉環(huán),需要收集整理并且補(bǔ)充前端設(shè)計。
- 高風(fēng)險操作易如反掌,需要針對信息權(quán)限以及操作進(jìn)行規(guī)范
- 部分知情人士已不在,需要協(xié)調(diào)各方查驗
水之呼吸,在問題與原因的空隙間,找到致勝的那條緊繃的關(guān)鍵線:信息所屬模塊?信息作用?信息展示?
逐一擊破即可。
三、信息重構(gòu)的解析刀法
壹之型 · 信息整理:制作遠(yuǎn)航的藍(lán)圖
先整理出來當(dāng)前版本的信息清單,每個信息對應(yīng)著參數(shù)的設(shè)置或展示,但一開始先不用太注重表現(xiàn)層的展示(因為有可能之前設(shè)計的展示是錯誤的),把每個信息記錄下來,為接下來的信息處理做好準(zhǔn)備。
在這里主要使用表格或者思維導(dǎo)圖,前者方便文檔存檔,后者方便歸類分支,可根據(jù)實際情況選擇,本次我選擇后者,因為思維導(dǎo)圖更滿足本次信息整理的需求,無論是加注釋、改分類還是添關(guān)聯(lián),都可以一目了然:
這時候,一份基礎(chǔ)的信息結(jié)構(gòu)圖就完成了,作為最初底版,哪怕后續(xù)改動頻繁,也可以快速回顧原始版本。
貳之型 · 信息初步分類:調(diào)整方向的羅盤
有了基本的信息清單,根據(jù)個人對平臺產(chǎn)品的理解以及負(fù)責(zé)的相關(guān)業(yè)務(wù),其實可以對當(dāng)前信息進(jìn)行初輪分類。
此步驟可以避免信息從頭開始遍歷梳理的成本,每個人對信息的掌控程度不同,所以需要產(chǎn)品本身輸出一份標(biāo)準(zhǔn)定義的文檔,以便統(tǒng)一用戶對產(chǎn)品的信息認(rèn)知。
通過該輪也是幫助自己回顧產(chǎn)品細(xì)節(jié),帶著問題再去詢問別人,可以高效率解決問題,同時降低溝通成本,而非直接把信息清單甩給別人補(bǔ)充完善。
叁之型 · 信息明確:清楚每一步的去處
這一步就需要費(fèi)些功夫,因需求和業(yè)務(wù)負(fù)責(zé)人不同,需要找到蛛絲馬跡順藤摸瓜,追溯信息根源。在這里主要就是與相關(guān)知情者溝通交流,不斷完善信息。
信息明確在于要清楚該信息或參數(shù)的作用,比如某某調(diào)用次數(shù)是怎么回事,高風(fēng)險操作為什么會有風(fēng)險,配置信息配置后會有什么效果,開關(guān)打開或關(guān)閉會產(chǎn)生哪些影響。清楚了作用,才能根據(jù)不同的信息類型設(shè)計不同的樣式展示,符合直觀使用感受。
這步驟需要費(fèi)些精力和時間,檢驗標(biāo)準(zhǔn)我覺得一句話就可以概括:如果連自己都無法表述清楚,說明自己并沒有完全理解。信息的加工整理本身就屬于獨(dú)立思考的一部分。
肆之型 · 模塊歸類:整理成果的分箱
信息意義作用清楚,會發(fā)現(xiàn)需要增刪信息模塊,同時也要優(yōu)化原來不合理的信息分類。在這里作為一個總指揮,根據(jù)手中信息重新排兵布陣。
模塊信息的劃分帶有其鮮明性。一個是數(shù)據(jù)規(guī)范,有些是跟開發(fā)數(shù)據(jù)庫表結(jié)構(gòu)直接對應(yīng)得上的,比如訂單里就一定會有商品名稱、價格、交易時間等。一個是業(yè)務(wù)規(guī)范,比如鑒權(quán)業(yè)務(wù)涉及到的鑒權(quán)開關(guān),調(diào)用次數(shù)設(shè)置等。
模塊信息的作用類似用途分明的場所。進(jìn)到不同的模塊,接收并處理對應(yīng)業(yè)務(wù)的信息。比如進(jìn)到數(shù)據(jù)統(tǒng)計模塊,看到的就是清晰明了的圖像報表等,進(jìn)到某某設(shè)置模塊,就是整齊排列的開關(guān)等。
這時候一份全新的信息結(jié)構(gòu)圖就做成了,產(chǎn)品的信息框架可以使自己更好的理解產(chǎn)品全貌,尤其是后臺產(chǎn)品,最關(guān)心的是數(shù)據(jù)流、數(shù)據(jù)處理、數(shù)據(jù)交互。
伍之型 · 原型設(shè)計:簡釋用途的裝飾
7分想,3分做。有了信息結(jié)構(gòu)圖,也就意味著產(chǎn)品的結(jié)構(gòu)已經(jīng)初步成型。需要根據(jù)信息的重要性選擇對應(yīng)的設(shè)計方式:
(1)信息展示形態(tài)
信息的類型有很多,而信息的編輯主要有以下幾種形態(tài):
- 開關(guān)控制:基礎(chǔ)
- 參數(shù)輸入:基礎(chǔ)
- 聯(lián)動展示:打開某開關(guān),才會出現(xiàn)。(界面簡潔)
- 全局展示:展示全部細(xì)節(jié),與聯(lián)動展示相反,對所有信息一目了然。
(2)信息展示權(quán)限
對于不同用戶,信息的可用性不同,為了避免造成信息干擾,需要根據(jù)用戶權(quán)限合理化展示信息。
即使是內(nèi)部工作人員,也需要進(jìn)行權(quán)限分類。信息敏感程度由低到高如下:
- 基礎(chǔ)信息:所有人都可以查看。
- 信息設(shè)置:簡單的參數(shù)設(shè)置,可由商務(wù)、市場和運(yùn)營直接使用;復(fù)雜的參數(shù)設(shè)置,需要經(jīng)過產(chǎn)品、測試和研發(fā)確認(rèn)修改。
- 高風(fēng)險操作:部分操作會直接導(dǎo)致線上產(chǎn)品直接出現(xiàn)問題,需要更高權(quán)限的賬戶才可以查看和設(shè)置,且有明確的強(qiáng)警告提示和使用記錄。
- 高機(jī)密信息:一般不會直接對外暴露,且底層加密保護(hù)。
(3)信息操作提示
信息對應(yīng)到數(shù)據(jù),數(shù)據(jù)的操作基本為增刪查改,增要直接明了,刪要提示警告,查要權(quán)限控制,改要延遲生效。在這里主要講一下改。
后臺改動參數(shù),可能會導(dǎo)致非常嚴(yán)重的后果,所以大部分情況下,最好不要立即生效!對數(shù)據(jù)的處理主要會思考以下幾個環(huán)節(jié):
- 數(shù)據(jù)校驗:比如針對表單提交的數(shù)據(jù)進(jìn)行正確性校驗,比如非法輸入等。
- 數(shù)據(jù)風(fēng)險:修改后是否會對線上產(chǎn)品造成影響,如果會,目前有兩種做法,一種是強(qiáng)制要求必須達(dá)到前置條件才可以修改,一種是強(qiáng)警告提示后果自負(fù)。明確告知風(fēng)險是每一個沉熟穩(wěn)重的產(chǎn)品人必須盡到的責(zé)任,產(chǎn)品是給人用的,但總有人想負(fù)罪前行,如果背鍋太多只會影響設(shè)計的手速。
- 數(shù)據(jù)測試:某些參數(shù)設(shè)置后確實會對線上產(chǎn)品造成影響,不過影響也不一定都是壞的,因線上產(chǎn)品本身權(quán)限判斷過于復(fù)雜,所以還需要進(jìn)行數(shù)據(jù)測試,確保操作生效,符合用戶目的。比如某小白組合配置了某選項,這時候跑通測試用例輸出測試報告,明確告知哪些配置線上已經(jīng)生效,避免出問題再反饋再驗證再測試等一連串現(xiàn)象。
最后的效果圖如下(非真實原圖,意會即可):
- 舊:一目十行,行行迷茫
- 新:模塊清晰,層次分明,業(yè)務(wù)入口直觀,操作理解一致
四、重構(gòu)經(jīng)歷的思考提煉
重構(gòu)并非榮耀,也非形式大于內(nèi)容。重構(gòu)是一個無可奈何的選擇,意味著要排雷填坑,一不小心就成“烈士”。我會很疑惑為什么產(chǎn)品早期就不能規(guī)劃好,但我現(xiàn)在也理解,畢竟某些決策也只是試探性實驗,只有業(yè)務(wù)起來了才有產(chǎn)品發(fā)揮的空間,成本和收益永遠(yuǎn)是在博弈狀態(tài)。
重構(gòu)道路崎嶇坎坷,是彌補(bǔ)過錯的救贖之路。不比版本升級的添磚加瓦,重構(gòu)意味著拆解過去的稚嫩,拼湊起當(dāng)前的成熟。在如今追求邊際效益的匆匆旅途,又怎會有施舍寶貴時間,讓彼此激流緩?fù)恕?/p>
只有發(fā)生了才會懷念或后悔,人生的重構(gòu)也只能在總結(jié)過往的同時再尋求新的發(fā)現(xiàn)。
新的發(fā)現(xiàn)也會變成懷念或后悔,我們究竟是在重構(gòu)人生,還是在被人生重構(gòu)。
作者:濤痕,公眾號:一兩語
本文由 @濤痕 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于CC0協(xié)議。
敢問閣下是什么呼吸法
自然呼吸法
給炭治郎點(diǎn)贊!!
哇哦!
一目十行,行行迷茫…
說得太對了!
看來是同道中人