黃金三步法 | 匯報時,如何讓老板快速抓住重點?
對事物的歸類分組是我們?nèi)祟惖奶煨裕覀兊拇竽X會自動將發(fā)現(xiàn)的所有事物以某種持續(xù)組織起來。但如何組織才能幫助我們解決工作和生活中出現(xiàn)的各種復雜問題?今天,我們請阿里高級技術(shù)專家張建飛分享他的黃金三步法。
我們經(jīng)常說軟件開發(fā)中,沒有銀彈。的確,單看軟件領(lǐng)域,很少有什么方法論是普適的。然而再拔高一些,跳出軟件的范疇,有一些東西是普適的。
最近,我有一個新發(fā)現(xiàn):我發(fā)現(xiàn)“歸類分組”在我們解決問題中起著巨大的作用。而這里的“問題”不僅僅限于軟件設計,從日常生活、產(chǎn)品設計到公司戰(zhàn)略、生物分類。都有它的身影。
這是為什么呢?究其原因可能有兩個:
1.歸類分組是抽象的重要方法,解決復雜問題我們離不開抽象。2.歸類分組是結(jié)構(gòu)化的重要步驟,結(jié)構(gòu)化的表達離不開歸類分組。
當然,歸類分組要先有素材可以“歸類”才行。因此,完整的方法論是這樣的,我給他起了一個好聽的名字——解決問題黃金三步:定義問題——分解問題——歸類分組。
這三步的詳細操作如下:
1. 第一步,定義問題:也就是要清楚我們要解決的問題是什么?
2. 第二步,分解問題:對問題進行分析拆解,形成平鋪的多個子問題,此步可以盡量發(fā)散。
3. 第三步,歸類分組:對子問題進行歸納、剪枝,將趨同的子問題,合并成一類問題。
如上圖所示,通過黃金三步以后,我們就可以得到一個形同“金字塔”的結(jié)構(gòu),也就是我們經(jīng)常說的金字塔結(jié)構(gòu)。根據(jù)問題的復雜程度,這個金字塔結(jié)構(gòu)可能是兩層,也可能是三層和多層。
看似簡單的三步操作會有那么大的作用嗎?廢話不多說,直接上案例。
在日常生活中的運用
你出門買報紙,你老婆說家里冰箱空了,順便帶點東西回來吧。她給你列了一個清單,里面有葡萄、橘子、咸鴨蛋、土豆、雞蛋。你說就這么多了嗎?她說蘋果和胡蘿卜也可以買一點。當你準備出門的時候,她說家里的牛奶和酸奶也沒有了,最好也買一點回來。
你覺得你能把老婆交代的東西都買齊嗎?我看很難,因為我們的大腦短期記憶無法一次容納7個以上的記憶項目,超過5個時,我們就會開始將不同的項目歸類到不同的邏輯范疇,以便于記憶。
如果我們將葡萄、橘子、牛奶、咸鴨蛋、土豆、雞蛋、胡蘿、蘋果、酸奶。按照邏輯關(guān)系,進行下歸類分組,比如把葡萄、橘子、蘋果歸為水果類,把土豆、胡蘿卜歸為蔬菜類,便可以大大幫助我們提高記憶效率。
注意這里分類的作用不只是將一組9個概念,分成每組各有4個、3個和2個概念的3組概念,因為這樣還是9個概念,你所要做的是提高一個抽象層次,將大腦需要處理的9個項目變成3個項目。
如果你已經(jīng)這么做了,恭喜你,你已經(jīng)在實踐黃金三步了:
1. 定義問題:冰箱空了,需要購買補給。
2. 分解問題:你要分析購買哪些東西呢?
3. 歸類分組:為了方便記憶,你將要買的9個東西按性質(zhì)分成了三組,形成如下的金字塔結(jié)構(gòu)。
這就是結(jié)構(gòu)化思維,下次你再接到老婆這樣的“需求”,記得把這個方法論用上,她一定會對你刮目相看。
在工作匯報中的運用
定義問題
“小張,客戶對銷售報告和庫存報告不滿意,你去看一下什么原因。” 面對這種典型的工作問題,你打算怎么處理呢?
分解問題
首先,你肯定要去調(diào)研客戶不滿意的原因,經(jīng)過調(diào)查你發(fā)現(xiàn),客戶不滿意主要有以下原因造成的:
1. 提交報告的周期不恰當;
2. 庫存數(shù)據(jù)不可靠;
3. 獲得庫存數(shù)據(jù)的時間太遲;
4. 庫存數(shù)據(jù)與銷售數(shù)據(jù)不吻合;
5. 客戶希望能改進報告的格式;
6. 客戶希望除去無意義的數(shù)據(jù);
7. 客戶希望突出說明特殊情況;
8. 客戶希望減少手工計算。
雖然你做了大量的工作,調(diào)查也很充分。但是,如果你要是把這8個原因直接給老板匯報,估計效果不會太好。你可以自己做個試驗,仔細閱讀上面的列表3分鐘,你能從中獲得什么?同樣的,你老板看到這樣的羅列也會是一臉懵逼,不知道重點在哪。
歸類分組
所以我們有必要加上第三步,對問題進行進一步的歸類分組,我們可以將8個問題概括為3組:
1. 報告中含有不可靠的數(shù)據(jù);
2. 報告的格式混亂;
3. 產(chǎn)生報告的時間太晚,無法采取有效措施。
進行分組之后,我們就可以得到如下的金字塔結(jié)構(gòu):
這種結(jié)構(gòu)化的表達,很明顯讓問題的表述更加清晰。領(lǐng)導也可以很快抓住問題的要點,并作出相應的決策。當然,這里是為了著重介紹歸類分組,真正的匯報你還要提供對應的解決方案,然后讓老板做“選擇題”。
在寫代碼時的運用
你遇到一個相當復雜的業(yè)務場景,在這個業(yè)務操作中,涉及到大量的校驗和執(zhí)行操作。這種代碼,如果沒有一定的策略,很容易寫成大泥球。
定義問題
例如,在我們的業(yè)務中有一個商品上架的操作,是一個非常復雜的業(yè)務操作。
分解問題
對這種業(yè)務問題的分解,通常是產(chǎn)品經(jīng)理的職責,但是作為工程師也不能完全依賴PRD。因為產(chǎn)品視角和工程視角還是有差別的。
針對“商品上架”,我們做了如下的功能分解:
歸類分組
同樣,在分解之后,我們需要有一個歸類分組的過程。否則,這些步驟的平鋪會讓代碼顯得凌亂,不方便記憶和維護。通過分析,我們可以把分解后的步驟分成三個階段:
1. 初始化階段
2. 校驗階段
3. 執(zhí)行階段
通過黃金三步,我們可以得到如下的金字塔結(jié)構(gòu):
最后,我們按照這個結(jié)構(gòu)去組織我們的代碼,整個代碼結(jié)構(gòu)會更加清晰,代碼的可維護性也會好很多。
在應用架構(gòu)中的運用
應用架構(gòu)主要解決的是模塊、組件定義和模塊、組件關(guān)系的問題。
從宏觀層面來說,架構(gòu)設計也是遵循這三個步驟的。比如,我們的架構(gòu)要如何分層,分模塊、分組件就是在做問題分解。然后,模塊和組件要歸屬在哪個層次,要如何命名,就是在做抽象,在做分類歸組。
在綜合考慮功能屬性+質(zhì)量屬性,然后通過黃金三步,就能得到我們想要的架構(gòu)設計。例如,我們的COLA 2.0架構(gòu)也是在這個方法論的指導下完成的。
在產(chǎn)品架構(gòu)中的運用
定義問題
“小張,為了做新零售,我們打算做一款智能互聯(lián)網(wǎng)POS機,你先做一下產(chǎn)品設計。”
分解問題
通過調(diào)研你發(fā)現(xiàn),作為POS機,其核心功能是收銀和經(jīng)營管理。所以至少需要包含收銀的功能、服務核銷的功能、商品管理的功能、庫存管理的功能等等。
但如果僅僅是滿足這些功能,和傳統(tǒng)的POS并沒有多大的區(qū)別,為了滿足“智能”和“互聯(lián)網(wǎng)”的要求,你去深入百度了一下智能POS應該具備的功能,大致包含以下功能:
1. 刷臉支付;
2. 支持品牌商營銷;
3. 支持自主營銷;
4. 智能定價;
5. 外賣對接;
6. 彩票對接;
7. 虛擬充值等等。
在問題分解階段,我們應該盡量多的收集信息,多發(fā)散,多頭腦風暴。
歸類分組
發(fā)散完,我們還是要收回來。在收斂之前,我們先看一下產(chǎn)品框架應該包含哪些東西,通常,一個產(chǎn)品架構(gòu)至少要包含三個層次:
1. 用戶感知層(在何種場景下通過何種方式觸達用戶);
2. 功能模塊層(通過哪些功能模塊實現(xiàn)產(chǎn)品的核心功能,和哪些外部平臺功能有信息交互);
3. 數(shù)據(jù)層(產(chǎn)品的數(shù)據(jù)從哪里來、產(chǎn)品的數(shù)據(jù)沉淀到何處去)。
在這三個層次的基礎上,我們再對每個層次內(nèi)的模塊進行分組。例如在功能模塊層,我們要對功能進行分類,讓分散的功能點內(nèi)聚成更大的產(chǎn)品模塊(體現(xiàn)在用戶界面上,往往是一級菜單和子菜單的關(guān)系)。
比如對于POS的收銀產(chǎn)品模塊,我們可以提供以下的產(chǎn)品功能:
- 支付寶收銀
- 現(xiàn)金收銀
- 微信收銀
- 刷臉支付
- 記賬等
通過層次劃分,模塊劃分我們就可以得到一個相對清晰的產(chǎn)品架構(gòu),以智能POS為例,我們可以畫出如下的產(chǎn)品架構(gòu):
分類是科學也是藝術(shù)
通過上面的案例,我想你已經(jīng)領(lǐng)會到黃金三步:定義問題——分解問題——歸類分組的要義了。其中前兩步相對比較直觀,而第三步往往是不容易做好,也容易被忽略的關(guān)鍵步驟。
實際上,對事物的歸類分組是我們?nèi)祟惖奶煨浴H祟惔竽X會自動將發(fā)現(xiàn)的所有事物以某種持續(xù)組織起來。基本上,大腦會認為同時發(fā)生的任何事物之間都存在某種關(guān)聯(lián),并且會將這些事物按某種邏輯模式組織起來。
比如,下面這張圖片:
無論是誰,乍一看到上面的六個黑點,都會認為共有兩組墨點,每組三個。造成這種印象的原因主要是有些黑點之間的距離比另一些黑點之間的距離大。
空間是一個相對比較直觀的邏輯關(guān)系,然而,并不是所有的邏輯關(guān)系都是如此的顯性化。實際上,很多的概念會在多個維度進行交叉耦合,這就給我們的歸類分組帶來了很大的挑戰(zhàn)。
生物分類學
生物分類學通常直接稱分類學(Taxonomy),是一門研究生物類群間的異同以及異同程度,闡明生物間的親緣關(guān)系、基因遺傳、物種進化過程和發(fā)展規(guī)律的基礎科學。
最流行的分類是五界系統(tǒng)。通常包括七個主要級別:界(Kingdom)、門(Phylum)、綱(Class)、目(Order)、科(Family)、屬(Genus)、種(Species)。種(物種)是基本單元,近緣的種歸合為屬,近緣的屬歸合為科,科隸于目,目隸于綱,綱隸于門,門隸于界。
不過分類學到不是一門很嚴謹?shù)?ldquo;科學”。就像比爾.布萊森在《萬物簡史》里說的:
分類學有時候被描述成一門科學,有時候被描述成一種藝術(shù),但實際上那是一個戰(zhàn)場。即使到了今天,那個體系比許多人認為的還要混亂。以描述生物基本結(jié)構(gòu)的門的劃分為例。許多生物學家堅持認為總數(shù)30個門,但有的認為20來個門,而愛德華在《生命的多樣性》一書里提出的數(shù)字高達令人吃驚的89門。
由此可見,分類并不像我們想的那么簡單。我們觀察事物的視角不同,對問題的認知程度不同,得出來的分類很可能也完全不同。
特別是當概念之間有交叉情況,分類就會變得更加棘手。比如,在你的筆記本中,有“讀書筆記”和“哲學筆記”兩個平級的分類,此時你閱讀了一本哲學書籍,那么你會把這本書的讀書筆記放在哪個分類里呢?
分類的原則
分類的基本原則是MECE法則。透過結(jié)構(gòu)看世界,說的就是MECE法則。
MECE法則即mutually exclusive collectively exhaustive的縮寫,是麥肯錫咨詢顧問芭芭拉·明托在《金字塔原理》中提出的一個思考工具,意思是“相互獨立,完全窮盡”,也常被稱為“不重疊,不遺漏”。
MECE原則的思想精髓,就是全維度的去分析一件事情,不要有遺漏和重復的部分。我們可以借助已有的結(jié)構(gòu)化思維模型(分類的框架)來分析問題,確保每一層要素之間“不重復、不遺漏”。
分類的思維模型
實際上,在上文中我們已經(jīng)提到了一些分類的思維模型。比如,在應用架構(gòu)中,我們通常有展現(xiàn)層、控制層、應用層、領(lǐng)域?qū)雍突A實施層;在產(chǎn)品架構(gòu)中,有用戶感知層、功能模塊層、數(shù)據(jù)層。這些框架可以有效的指導我們在各自領(lǐng)域中開展工作。
類似于這樣的分類思考模型還有很多,比如:
1.制定市場營銷策略的“4P”模型,即產(chǎn)品策略(Product Strategy)、價格策略(Price Strategy)、渠道策略(Place Strategy)、促銷策略(Promotion Strategy)。
2.分析問題的“5W2H"模型,即Why、What、Who、When、Where、How和How much。
3.思考組織戰(zhàn)略的“7S”模型,即經(jīng)營策略(Srategy)、組織結(jié)構(gòu)(Structure)、運營系統(tǒng)(System)、經(jīng)營風格(Style)、職員(Staff)、組織技能(Skill)和共享價值觀(Shared value)。
4.分析競爭力的SWOT模型,SWOT分析代表分析企業(yè)優(yōu)勢(Strengths)、劣勢(Weakness)、機會(Opportunity)和威脅(Threats)。
5.制定目標的SMART模型,即制定目標要滿足確定性(Specific) 、可度量性(Measurable)、可實現(xiàn)性(Attainable)、相關(guān)性(Relevant)和時效性(Time-based)。
這些思維模型都是寶貴的經(jīng)驗總結(jié),相當于已經(jīng)幫我們做好了第三步“歸類分組”的工作,我們只需要按照模型制定的框架往里面填充要素即可。
因此擅用模型,活用框架??梢詷O大的提升我們解決問題的效率,同時幫助我們做更加全面的、更加結(jié)構(gòu)化的思考,做了“無遺漏,不重復”。