“不謀全局者,不足謀一域;不謀萬世者,不足謀一時。”——陳澹然
強調了從全局和長遠的角度去謀劃事情的重要性,與產品設計中先從宏觀層面定位需求,而不是陷入細節的理念相契合。
今日清晨,我參加了一場產品需求設計評審會。會上,一位同事率先登臺,介紹本次需求目標——對某一功能進行重構。他條分縷析地剖析了原有設計存在的問題,并精心準備了兩套全新的設計方案。其核心訴求很明確,希望大家共同研討,選出更合適的方案。
然而,首輪講解結束后,我有些云里霧里,未能完全領會他的意圖。這時,另一位同事站出來進行補充說明。他沒有直接圍繞功能本身展開,而是巧妙地回顧了原有功能的設計思路、現存問題,以及此次重構的改進方向。這番補充如同撥云見日,讓我逐漸有了清晰的認知。
隨后,我開始思索同事面臨的核心問題:兩套方案,該如何抉擇?于是,我提出第一個問題:在現有的產品功能里,是否存在類似需求?經過熱烈討論,我們發現該需求與功能 B 有相似之處,二者均涉及授權管理,只是一個針對用戶授權,另一個針對機構授權。
緊接著,我拋出第二個問題:深入探究用戶授權功能的具體實現。我們打開系統查看后發現,用戶授權功能支持對單個用戶或多個用戶進行授權,而此次需求是要針對一個機構及其下屬的所有子機構進行統一授權。
這兩者乍一看相似,實則存在微妙差別。主要區別在于,機構授權是選定一個機構的根節點后,無論該機構下有多少子機構(可能是 10 個,也可能是 100 個),都會一并授權至應用系統。而用戶授權則是選一個用戶就授權一個,選兩個就授權兩個,無法一次性對大量用戶進行授權。
通過此次討論,我清晰地指出:這兩個場景從大類上看確實相近,但在具體分類上存在差異。機構授權屬于批量授權,而用戶授權則是單個或小批量授權。因此,用戶授權適宜采用同步處理模式,而機構授權則需采用異步處理模式。
從具體場景出發,我們可以總結得出:我們需要支持針對機構的批量授權功能。目前,我們的系統僅支持逐個選擇用戶進行授權,尚不具備用戶批量授權功能。未來是否會增加這一功能呢?可能性極大。例如,我們可以選擇某個機構下的用戶進行批量授權,這便是一種條件式批量授權。只是當前用戶授權功能尚未實現這一特性。
通過深入分析,我們識別出該需求與用戶授權在大類上相似,但在具體分類上有所不同,這是一個全新的場景,我們將其命名為“條件式批量授權”。
針對“條件式批量授權”,我們需要對這一場景進行更精準的界定。以基于機構的批量授權為例,這種授權方式與普通批量授權有著本質區別。這種差異不僅體現在產品界面設計上,更貫穿于整個邏輯架構的革新。
首先,鑒于授權數量的不確定性——既可能是單個節點下的單個用戶,也可能是成千上萬的用戶,我們必須摒棄同步處理方式,轉而引入異步處理機制。這一發現表明,這是一種全新的設計模式,在以往的產品設計中未曾出現過。
這種異步處理方式催生了新的需求:我們需要構建異步處理日志系統,并在后臺架構中引入調度任務機制。進一步思考,這種模式是否僅適用于當前模塊?顯然不是。這種設計模式極有可能適用于產品的其他模塊,這意味著當前的實現僅僅是一個開端。
因此,我們應按照通用模式來實現該功能,為未來可能遇到類似場景的其他項目和模塊提供可復用的設計模式與底層架構。明晰這些關鍵問題后,團隊面臨的困惑自然會煙消云散。
在此情況下,我們決定暫停會議,讓團隊成員回去重新審視設計方案的優化方向。回顧此次經歷,當我們面對一項需求時,該如何開展工作呢?
首先,我們要在產品功能架構圖中精準定位該需求的位置,也就是先進行定性分析。具體來說,要確定它所屬的大分類,層級越細致越好。若暫時無法精確到最細粒度,先定位到上一層級也無妨。這一步的關鍵在于明確需求在整個架構中的位置。
其次,在確定大分類后,我們需進一步明確其小分類,并以簡潔的一句話概括其核心特征。同時,判斷該分類是既有的還是全新的場景。若為既有分類,我們可直接參照以往的設計模式進行處理;若為新分類,則需思考第三個層面的問題:該分類未來是否可能再次出現?
通過這三個層面的思考,我們能夠清晰把握當前功能需求的本質,從而做出更有效、準確的決策。所以,在進行產品設計時,切勿一開始就一頭扎進細節的漩渦,而應從更高的層面出發,對需求進行精準定位,這才是做好產品設計的不二法門。
結語
回顧此次評審會,它宛如一場生動的實踐課,讓我們深刻領悟到產品設計的智慧與方法。當面對需求時,我們不能被眼前的迷霧所迷惑,而要像經驗豐富的航海家一樣,站在高處,用精準的定位和清晰的邏輯,引領產品之舟穿越波濤,駛向成功的彼岸。在未來的產品設計征程中,讓我們牢記這三個層面的思考,以宏觀的視野和嚴謹的態度,雕琢出更加卓越的產品。圖片 圖像 小部件