ToB產品設計:關于產品重構任務的思考重構

6 評論 11152 瀏覽 63 收藏 15 分鐘

編輯導語:產品重構是一件特別耗費時間和人力的事情,為什么產品會出現重構呢?產品經理應該如何做好產品重構的任務?本文將從原因和重構前的準備工作兩個方面展開分析,對產品重構的具體步驟進行了梳理,希望對你有幫助。

最近接到一個任務,需要重構后臺某管理模塊。重構,開發聽了頭痛,測試聽了難過,產品聽了流淚。但先不要難過,先刨析需求。

一、重構是對舊產物的一次重要改革升級

(1)不是隨便一個任務,都能叫重構

之所以要重構,必然是落后的產品設計已經不滿足當前日益增長的產品需求,同時可能影響到當前的使用穩定。重構也是對敗絮其中的一次反思,在不影響當前產品能力的情況下,對產品進行重新思考并優化設計。重構同樣也可對原先設計缺陷進行完善補充,讓功能體驗更加完整。

(2)重構需要根據實際情況決定其程度

開發常見的重構基本是代碼重構,比如優化代碼性能,提高代碼健壯性等,而產品的重構則等同于重做。最慘烈的無非是從產品底層由下至上開始重構,不過這種尤為罕見。一般情況下主要針對產品的信息結構層和功能模塊層進行重構,可能是由于產品早期規劃不夠長遠,隨著產品不斷迭代升級,導致產品使用起來信息過載或者功能混亂。

(3)重構的時機同樣需要天時地利人和

對曾經走過的路再走一遍,現實中叫浪漫,研發中叫成本。很多時候需要先解決從0到1的問題,再考慮其他天長地久日久生情,用最小成本嘗試,然后再根據業務發展情況進行產品周期迭代,敏捷開發精義首先就是要快。用唯快不破的速度爭取機會,用日益增長的趨勢換取信任,才能贏得一點點重構的時間。

二、針對產品重構任務的準備工作

所以判斷任務目的,分析利害程度,評估可用時間,是拆解重構需求的基本反應。

果不其然,打開產品管理模塊的信息詳情頁,各種信息五花八門,一頭霧水。此次重構應該是因為頁面的信息組織和展示出了問題,即針對產品信息結構層的優化。

頁面是信息的載體,目前我面臨的問題如下:

  1. 信息較為繁雜,不利于獲取目標信息
  2. 存在部分高風險配置,會直接影響線上用戶
  3. 存在多個易混淆的權限開關
  4. 各種不明所以的參數

這可能就是古老傳說的一種產品設計,叫做專為功能服務的設計。目的就是只滿足功能和當事者的需求,不考慮其他使用者的感受。

追溯其歷史原因,可以總結如下:

  1. 匯集多個產品模塊信息,當初沒有做好模塊劃分
  2. 因部分需求需要新增參數信息,直接隨意插入,且沒有任何提示說明
  3. 敏捷開發太敏捷,沒有留下產品文檔

遇事不亂,先談幾段,無非破案。重構的需求不可能平白無故產生,本次案件不抓嫌疑人,不追究罪證,只找核心受害者和關鍵證人,細探解決案件的蛛絲馬跡。

通過緊密的取證,該任務需要解決的難點如下:

  1. 涉及到后端接口特別多且復雜,需要安全平移迭代。
  2. 部分業務權限管理沒有形成閉環,需要收集整理并且補充前端設計。
  3. 高風險操作易如反掌,需要針對信息權限以及操作進行規范
  4. 部分知情人士已不在,需要協調各方查驗

水之呼吸,在問題與原因的空隙間,找到致勝的那條緊繃的關鍵線:信息所屬模塊?信息作用?信息展示?

逐一擊破即可。

三、信息重構的解析刀法

壹之型 · 信息整理:制作遠航的藍圖

先整理出來當前版本的信息清單,每個信息對應著參數的設置或展示,但一開始先不用太注重表現層的展示(因為有可能之前設計的展示是錯誤的),把每個信息記錄下來,為接下來的信息處理做好準備。

在這里主要使用表格或者思維導圖,前者方便文檔存檔,后者方便歸類分支,可根據實際情況選擇,本次我選擇后者,因為思維導圖更滿足本次信息整理的需求,無論是加注釋、改分類還是添關聯,都可以一目了然:

這時候,一份基礎的信息結構圖就完成了,作為最初底版,哪怕后續改動頻繁,也可以快速回顧原始版本。

貳之型 · 信息初步分類:調整方向的羅盤

有了基本的信息清單,根據個人對平臺產品的理解以及負責的相關業務,其實可以對當前信息進行初輪分類。

此步驟可以避免信息從頭開始遍歷梳理的成本,每個人對信息的掌控程度不同,所以需要產品本身輸出一份標準定義的文檔,以便統一用戶對產品的信息認知。

通過該輪也是幫助自己回顧產品細節,帶著問題再去詢問別人,可以高效率解決問題,同時降低溝通成本,而非直接把信息清單甩給別人補充完善。

叁之型 · 信息明確:清楚每一步的去處

這一步就需要費些功夫,因需求和業務負責人不同,需要找到蛛絲馬跡順藤摸瓜,追溯信息根源。在這里主要就是與相關知情者溝通交流,不斷完善信息。

信息明確在于要清楚該信息或參數的作用,比如某某調用次數是怎么回事,高風險操作為什么會有風險,配置信息配置后會有什么效果,開關打開或關閉會產生哪些影響。清楚了作用,才能根據不同的信息類型設計不同的樣式展示,符合直觀使用感受。

這步驟需要費些精力和時間,檢驗標準我覺得一句話就可以概括:如果連自己都無法表述清楚,說明自己并沒有完全理解。信息的加工整理本身就屬于獨立思考的一部分。

肆之型 · 模塊歸類:整理成果的分箱

信息意義作用清楚,會發現需要增刪信息模塊,同時也要優化原來不合理的信息分類。在這里作為一個總指揮,根據手中信息重新排兵布陣。

模塊信息的劃分帶有其鮮明性。一個是數據規范,有些是跟開發數據庫表結構直接對應得上的,比如訂單里就一定會有商品名稱、價格、交易時間等。一個是業務規范,比如鑒權業務涉及到的鑒權開關,調用次數設置等。

模塊信息的作用類似用途分明的場所。進到不同的模塊,接收并處理對應業務的信息。比如進到數據統計模塊,看到的就是清晰明了的圖像報表等,進到某某設置模塊,就是整齊排列的開關等。

這時候一份全新的信息結構圖就做成了,產品的信息框架可以使自己更好的理解產品全貌,尤其是后臺產品,最關心的是數據流、數據處理、數據交互。

伍之型 · 原型設計:簡釋用途的裝飾

7分想,3分做。有了信息結構圖,也就意味著產品的結構已經初步成型。需要根據信息的重要性選擇對應的設計方式:

(1)信息展示形態

信息的類型有很多,而信息的編輯主要有以下幾種形態:

  1. 開關控制:基礎
  2. 參數輸入:基礎
  3. 聯動展示:打開某開關,才會出現。(界面簡潔)
  4. 全局展示:展示全部細節,與聯動展示相反,對所有信息一目了然。

(2)信息展示權限

對于不同用戶,信息的可用性不同,為了避免造成信息干擾,需要根據用戶權限合理化展示信息。

即使是內部工作人員,也需要進行權限分類。信息敏感程度由低到高如下:

  1. 基礎信息:所有人都可以查看。
  2. 信息設置:簡單的參數設置,可由商務、市場和運營直接使用;復雜的參數設置,需要經過產品、測試和研發確認修改。
  3. 高風險操作:部分操作會直接導致線上產品直接出現問題,需要更高權限的賬戶才可以查看和設置,且有明確的強警告提示和使用記錄。
  4. 高機密信息:一般不會直接對外暴露,且底層加密保護。

(3)信息操作提示

信息對應到數據,數據的操作基本為增刪查改,增要直接明了,刪要提示警告,查要權限控制,改要延遲生效。在這里主要講一下改。

后臺改動參數,可能會導致非常嚴重的后果,所以大部分情況下,最好不要立即生效!對數據的處理主要會思考以下幾個環節:

  1. 數據校驗:比如針對表單提交的數據進行正確性校驗,比如非法輸入等。
  2. 數據風險:修改后是否會對線上產品造成影響,如果會,目前有兩種做法,一種是強制要求必須達到前置條件才可以修改,一種是強警告提示后果自負。明確告知風險是每一個沉熟穩重的產品人必須盡到的責任,產品是給人用的,但總有人想負罪前行,如果背鍋太多只會影響設計的手速。
  3. 數據測試:某些參數設置后確實會對線上產品造成影響,不過影響也不一定都是壞的,因線上產品本身權限判斷過于復雜,所以還需要進行數據測試,確保操作生效,符合用戶目的。比如某小白組合配置了某選項,這時候跑通測試用例輸出測試報告,明確告知哪些配置線上已經生效,避免出問題再反饋再驗證再測試等一連串現象。

最后的效果圖如下(非真實原圖,意會即可):

  • 舊:一目十行,行行迷茫
  • 新:模塊清晰,層次分明,業務入口直觀,操作理解一致

四、重構經歷的思考提煉

重構并非榮耀,也非形式大于內容。重構是一個無可奈何的選擇,意味著要排雷填坑,一不小心就成“烈士”。我會很疑惑為什么產品早期就不能規劃好,但我現在也理解,畢竟某些決策也只是試探性實驗,只有業務起來了才有產品發揮的空間,成本和收益永遠是在博弈狀態。

重構道路崎嶇坎坷,是彌補過錯的救贖之路。不比版本升級的添磚加瓦,重構意味著拆解過去的稚嫩,拼湊起當前的成熟。在如今追求邊際效益的匆匆旅途,又怎會有施舍寶貴時間,讓彼此激流緩退。

只有發生了才會懷念或后悔,人生的重構也只能在總結過往的同時再尋求新的發現。

新的發現也會變成懷念或后悔,我們究竟是在重構人生,還是在被人生重構。

 

作者:濤痕,公眾號:一兩語

本文由 @濤痕 原創發布于人人都是產品經理,未經作者許可,禁止轉載。

題圖來自Unsplash,基于CC0協議。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 敢問閣下是什么呼吸法

    來自北京 回復
    1. 自然呼吸法

      來自廣東 回復
  2. 給炭治郎點贊??!

    來自廣東 回復
    1. 哇哦!

      來自廣東 回復
  3. 一目十行,行行迷茫…
    說得太對了!

    來自北京 回復
    1. 看來是同道中人

      來自廣東 回復