「技术人生」第2篇:学会分析事物的本质
簡介: 對于研發同學而言,探究事物的本質,是最基礎最核心最先需要被掌握的技能,沒有之一。
作者:賀科學
?
技術一號位不是崗位,更多的是技術人員在公司中做事的一種心態,這個系列的文章適合所有想要對日常工作“知其然更知其所以然”的技術人,借助理論工具的指引,結合自己的實踐經歷,悟到自己的收獲,從而加速成長的過程。大道理千千萬萬,有緣者得之真諦踐于其行而非流于其表。
?
未來一段時間,阿里巴巴中間件公眾號會持續發布系列文章,歡迎關注。
?
往期技術一號位方法論系列文章:
?
「技術人生」專題第1篇:什么是技術一號位?
?
?
背景
?
生活中每時每刻都在發生著各種各樣的事情,有些與己相關,有些看似毫無瓜葛,不論事情大小,總需要分出一部分精力,或多或少,對事情進行處理解決。在處理這些事情的過程中,在和某些人接觸時,總能感覺到他們對事物的認知要更深刻,更全面,聽其言如同醍醐灌頂,觀其行勝讀十年書。這樣的人解決問題往往一針見血,事半功倍;而在和另外一些人溝通時,則可能會感到對方對某個事情的認知其實流于表面,解決問題往往抓不住重點,做的很辛苦卻多是無用功。那么究竟是什么造成了兩種人對事物認知的差異?是否有什么途徑或者方式能夠消除這種差異?
?
作為技術研發人員,總面臨著各種各樣的需求,總會有前人不斷強調技術的復用,強調代碼的重構,可是往往是倒排的截止日期逼迫研發更快上線臨時需求,造成線上揀不干凈的滿地雞毛,同時留下一身還不完的技術債務。為什么面對一定會變的業務需求,研發人員似乎永遠跟不上需求變化的節奏?很多時候大家本能的會怪罪產品經理沒有想清楚,那么有沒有人思考過,和我們每天配合的產品經理或者運營人員,究竟是什么東西沒想清楚,從而導致了我們研發同學自己不斷地返工?他們沒想清楚的事情,我們是不是從來就沒想過?這些事情,我們該不該想,能不能想清楚,有沒有好處?研發人員需要掌握什么技能來應對永遠都在變化的業務需求?
?
作為系統架構師,在面對復雜業務系統時,開局往往操作猛如虎,三年規劃五年演進,可是經過若干年的建設,往往只是遺留下眾多見招拆招的祖傳代碼,新的需求需要在舊的業務邏輯的縫隙里面找“解法”,一線開發人員不僅要避開“牽一發動全身”的各種彎彎繞繞,可能連架構本身也已經變得模糊不清了,更不用提架構的演進。這一切都會逐步失控下去直到某一天達到臨界點再來一次推翻式的重構,讓混亂重新回到原點,開始新一輪的技術債務周期,當然,系統一定是 2.0 或者 3.0了(目前還沒見過 4.0 的系統)。可是當年說好的架構可擴展性呢,說好的抽象程度高呢?架構本身究竟和業務有什么關系,架構的演進又和業務的發展有什么關系,如何才能讓架構師打破“架構設計和演進過程被現實反復打臉”的魔咒?
?
作為研發團隊 leader,帶著自己的人做需求交付,一邊忍住親自下場寫代碼的沖動不得不做著項目管理的事情,一邊又可能被下面的人懷疑技術能力;各種倒排的截止日期仿佛一條條排著隊催債的紅線,眼看著這些紅線圈著自己團隊的黑著眼圈的兄弟,在一個又一個的坑里面像炮灰一樣摸爬滾打,而自己只能像一個大號的外包資源經理一樣對這種局面在實際行動上束手無策,在思想上除了覺得要不斷加人之外感覺無力回天。如何才能讓團隊成員在做業務的過程中不再是資源一樣被消耗而是像資產一樣自我增值?如何才能利用對業務發展趨勢的預測打破規律提前布局,在戰略上掌握主動性,從而在戰役上既能先于對手做出穩定的產品,又能有足夠的時間打磨產品從而提升用戶的使用體驗?
?
不同角色的技術人,不論在工作還是在生活中,面臨的這一系列老生常談的問題時,或許都希望能有一抹就靈的萬金油,打一發銀彈出去,就能夠留下廣為業內傳唱的人月神話。可是在現有的生產力條件下,技術人員既沒有萬金油,更不存在銀彈,而且人月神話永遠都是神話。所有的事情,所有的問題,想要被解決,都要回到最初的原點:這件事情的本質是什么?也就是說,我們日常工作中的事情的起點不是使用什么工具解決問題,而是先認清這件事情 —— 認清一件事情的本質,是所有后續行動的前提和基礎。做業務需求分析也好,做架構設計畫架構圖也罷,計算機語言和技術棧的選擇以及相關整體解決方案的構建是一方面,而“基于對業務本質的理解進行的業務建模并結合業務發展持續演進”是極其重要的、卻往往被忽視的另外一個方面。
?
日常工作中,很多研發人員往往把注意力集中在各種計算機語言及其技術棧上,大家會花時間翻看各種技術書籍,探究各種技術方案背后的原理,然后通過業務實踐提升個人技術能力,所有的促進個人成長的事情幾乎都是圍繞著“技術”兩個字展開,但是,特別是對于常年從事業務研發的同學而言,大家是否意識到,除了“技術”以外,還需要掌握“業務”相關的知識,而其中,探究事物的本質,是最基礎最核心最先需要被掌握的技能,沒有之一。它是戰略層面構建業務大圖的基礎,是排兵布陣發起關鍵戰役的基礎;也是戰術層面分析業務需求的基礎,做架構設計的基礎,做業務領域建模的基礎。技術一號位需要掌握的所有工具和方法論,所有的起點都是它,所有的理論工具和方法論最終都是它在某個領域內的應用、投射和簡化。
?
什么是事物的本質
事物本質的哲學定義
?
抽象地探討事物的本質,涉及到了哲學層面,目前本人不具備相關的能力來進行詳細的理論論證,這里就直接摘抄馬克思主義哲學關于事物本質和現象的對立統一的論述,來看哲學層面的事物的本質是什么:
?
- 本質是事物的根本性質,是事物自身組成要素之間相對穩定的內在聯系。—— 《馬克思主義哲學原理》(第五版,陳先達、楊耕著)
- 本質是事物的根本性質,是事物自身組成要素之間相對穩定的內在聯系,是由事物本身所具有的特殊矛盾構成的。—— 百度百科
- 唯物辯證法的宇宙觀主張從事物的內部、從一事物對他事物的關系去研究事物的發展,即把事物的發展看做是事物內部的必然的自己的運動,而每一事物的運動都和它的周圍其它事物互相聯系著和互相影響著。事物發展的根本原因,不是在事物的外部而是在事物的內部,在于事物內部的矛盾性。任何事物內部都有這種矛盾性,因此引起了事物的運動和發展。事物內部的這種矛盾性是事物發展的根本原因,事物和事物的互相聯系和互相影響則是事物發展的第二位的原因。—— 《矛盾論》毛澤東
- 研究問題,忌帶主觀性、片面性和表面性。所謂主觀性,就是不知道客觀地看問題,也就是不知道用唯物的觀點去看問題。這一點,我在《實踐論》一文中已經說過了。所謂片面性,就是不知道全面地看問題。—— 《矛盾論》毛澤東
事物本質與現象的對立統一分析
?
1、本質和現象是對立統一關系。任何事物都有本質和現象兩個方面。世界上不存在不表現為現象的本質,也沒有離開本質而存在的現象。本質和現象是統一的,但二者又有差別和矛盾。本質從整體上規定事物的性質及其基本發展方向,現象從各個不同側面表現本質;本質由事物內部矛盾構成,是比較單一、穩定、深刻的東西,靠思維才能把握;現象是豐富、多變、表面的東西,用感官即能感知。假象從否定方面表現事物的本質,給人一種與事物完全相反的印象,掩蓋著本質。假象的存在明顯表現出本質和現象的矛盾。因此不能簡單地把現象與本質等同起來。—— 百度百科
?
2、事物的本質與現象是對立統一的,這是客觀辯證法,把這種辯證法運用于人的認知過程,就要求人們既不能脫離現象去空談事物的本質,也不能停留在事物的現象上,而要透過現象抓住事物的本質。(本文作者批注:透過現象看本質,這句話誰都懂,但是究竟怎么才能做到,是本文嘗試給出的。)
?
為此,要在實踐的基礎上觀察大量的現象,盡可能多地占有感性材料,這是認知透過現象抓住本質的前提條件。(本文作者批注:這就是“沒有調查就沒有發言權”的理論依據。)在觀察社會問題時,一定要學會區分本質與現象,要抓住本質與主流,這是其一。
?
其二,有了觀察到的大量現象,占有了真實的感性材料,并不等于抓住了事物的本質,要透過現象抓住本質,就必須對大量的現象、真實的感性材料,以及它們之間的關系進行分析和研究,這就需要掌握科學的方法。(本文作者批注:《馬克思主義哲學原理》中并沒有講明需要掌握的科學的方法究竟是什么,而這一點,恰恰是本文作者結合實際實踐經驗嘗試給出的,同上一個批注。)
?
其三,事物的現象錯綜復雜,而且事物的本質有一個逐漸暴露,逐漸展開的過程,所以人們對事物本質的認知不是一次完成的,而是一個不斷深化的過程,是一個由片面到全面、由不太深刻到深刻的過程。—— 《馬克思主義哲學原理》(第五版,陳先達、楊耕著)
?
了解了哲學層面的本質與現象的對立統一關系,有的讀者可能會問,這和業務研發有什么關系?我這里只舉一個看起來非常小但是實際上問題很大的例子:我們所做的新零售業務,整個流程涵蓋了供應商、平臺、渠道客戶、合作伙伴和消費者這些不同的業務參與方,整個業務可以讓供應商入駐平臺,給平臺上的渠道客戶供貨,從而讓渠道客戶自己的用戶能夠以積分或者積分加現金的方式購買商品。
?
某天產品經理提了一個需求,說要“在供應商控制臺中增加一個刪除按鈕,刪掉供應商不想看到的商品”。看似非常簡單的一個需求,在商品列表里面增加一個刪除按鈕,應該很快就能上線,但是實際上,刪除商品這個動作背后真正的業務含義和場景并不是簡單的技術上的把商品數據軟刪除,而是“停止供貨”——供應商要刪除的商品很大概率已經簽過在線協議,以某個價格供貨給某個渠道客戶,這個時候研發人員如果按照需求無腦刪除商品數據,就會造成已經在售賣甚至在參加運營活動的商品突然無法購買,造成渠道客戶的損失或引發輿情。
?
所以,研發人員溝通完需求要進行技術方案評審時,被我駁回,要求相關的同學完成業務場景的分析和討論,補全刪除按鈕背后的完整業務流程,將“刪除”按鈕的名稱修改為“停止供貨”按鈕,并且針對已經不在任何渠道銷售的商品單獨提供篩選項,而不再在供應商商品管理列表里面默認展示。所以整個需求原本就是一個刪除按鈕1天的工作量,實際上分析清楚產品需求背后的業務場景和真正的業務含義以后,就變成了一個涉及到了停止供貨的在線審批流程、供貨協議更新、渠道在售商品下架等等一系列聯動的復雜業務需求,技術方案的復雜度和原來相比更復雜,排期更長。
?
作為業務的技術負責人,如果不能把握業務需求背后的本質,類似這種情況會層出不窮,所有快速上線的臨時方案最后都要隨著需求的深入而重新投入人力和精力進行重做,這方面的成本往往會轉嫁在一線研發同學身上。
?
探究事物本質的方法
?
抽象的哲學定義并不能給我們提供透過現象看本質的實際操作方法,但是卻指明了事物本質的組成和關鍵點。我們可以基于哲學上的定義和《矛盾論》全文以及本文中特別引用內容可知,如果想要分析清楚一個事情的本質,就是要客觀地去分析事物,梳理它內在的主要矛盾和次要矛盾,同時需要梳理外在的它和它所處環境內其他事物的相互聯系和相互影響。
?
內在要分析研究目標事物的組成部分和對應的對立統一關系,從而得出對應的主要矛盾次要矛盾,理清矛盾的主要方面和次要方面。需要注意的是,相關的分析是建立在事物的某一維度上,在事物發展的某一階段上的,隨著事物的發展,相關的分析可能會出現變化。事物的內在決定了事物的本質。如下圖所示:
外在要分析在一定環境下,研究目標事物和其他事物之間的相互關聯關系和相互影響。事物的外在通過事物的內在關系和影響來影響事物的發展。這一點可以簡單思考一個問題:一把普通的錘子可以打破一面普通的玻璃,根本原因在錘子還是在玻璃?如果覺得根本原因在錘子的讀者,可以繼續思考:一把普通的錘子可以打破鋼化玻璃么,可以打破防彈玻璃么,可以打破鋼鐵么?如下圖所示:
?
通過以上的示意圖和對應的分析說明,我們可以了解到在分析問題本質的過程中的所有關鍵因素,關于詳細操作步驟和說明指引,在本文第四章節會給出模板,方便大家在實際工作生活中使用。
?
分析事物本質對技術一號位的必要性
?
業務研發,特別是復雜業務系統的研發,實現產品經理提出的業務需求僅僅是其表象,其真正本質內涵,是使用技術手段將解決某一特定問題的邏輯數字化,利用計算機技術對客觀事物做數字化的建模,以盡可能貼近事物本質的方式進行邏輯和數據的運轉,從而完成現實和虛擬的映射,解決對應的問題。
?
作為研發團隊的技術負責人,如果對業務的認知的起點是產品經理輸出的產品功能文檔,對業務的理解來源于源源不斷的業務需求,不能認清業務的本質,不能看到未來的一些可能的發展趨勢,那么這樣的技術負責人其實只能做到了響應業務的需求,永遠無法真正的在技術架構和解決方案上支撐業務的發展,更遑論使用技術驅動業務發展了。
這也是“技術一號位” 和 “研發團隊 TeamLeader”的最大的區別,前者是業務的共建者,利用技術背景和專業技能輔助業務一號位推進業務的發展,本質上是在扮演決策者的角色,而后者只是研發資源的協調者和項目進度的把控者,本質上是在扮演執行者的角色。
?
面對非常復雜的事情的時候,我們需要能夠有合理的理論工具來支撐自己,將復雜的情況主干脈絡理清楚,然后分析它為什么現在會是這樣,過去是什么樣的,在什么條件下,未來會發展成什么樣,然后再分析哪些關鍵部分是我們可以通過實際行動影響的,從而通過影響關鍵部分來引導事物未來的發展方向。
?
以下內容就是面對復雜問題的時候,基本的分析操作流程。
?
分析事物本質的操作步驟
?
事物內在分析
1、明確事物討論的范圍
明確問題討論的范圍非常重要,同一件事情,在不同的范圍內討論,得出的結論可能完全相反,原因并不是我們使用的理論工具有問題,而是隨著討論范圍的擴大,討論的事物本身的組成和外界的相互聯系和相互影響都會變化,所以就會有不同的,甚至是相反的結論出來。所以為了解決某個固定的問題,我們首先要確定的就是這個問題的范圍是什么,它所處的環境是什么,討論的問題的場景是什么。這些是展開所有的分析的基礎,如果多人討論的情況下,不把這部分內容對齊,就會非常容易導致討論的時候各方論點風馬牛不相及。
?
2、分析事物內部組成及其存在形式
在明確好事物的范圍以后,我們需要分析清楚這個事情中的各個組成部分,每個組成部分是以什么樣的形式存在的。
?
3、分析事物內部各組成成分所扮演的角色及其職責
事物的每個部分,在這個事物中,都扮演了某種角色,這個角色是某個部分的職責和行為的抽象,所有的行為都體現著該部分的核心利益訴求。
?
4、分析各角色在職責限定下的核心利益訴求
在分析完事務內部各組成的角色以后,接下來就是分析該事物內部組成在對應角色的要求下的核心利益訴求了。需要注意的是,在討論核心利益訴求的時候,需要結合場景,明確討論范圍,否則所很多事物最終的核心利益訴求都會被過渡抽象化,但是很多時候一個問題是一個具體的、有范圍的利益訴求展開的。只泛化地討論經過抽象后的利益訴求,既不方便分析矛盾點,又不能具體的解決實際問題,所以在討論對立統一的時候,明確核心利益訴求要限定范圍和場景,不能一味只做抽象,只去看矛盾的普遍性而不看矛盾的特殊性。
?
事物組成 1
- 核心利益訴求
講清楚該事物組成 1 的核心利益訴求是什么
- 核心利益訴求的由來分析
講清楚該事物 1 的核心利益訴求為什么是這樣的
?
事物組成 2
- 核心利益訴求
講清楚該事物組成2的核心利益訴求是什么
- 核心利益訴求的由來分析
講清楚該事物 2 的核心利益訴求為什么是這樣的
?
事物與外界相互關聯相互影響的分析
?
以毛澤東的《矛盾論》中的理論為依據,我們要想分析清楚事物的本質,還需要分析清楚它和外界其他事物的關系,因此我們會針對這部分內容作簡要分析。
?
事物所處的大環境是什么
從影響事物本身的多個維度去分別梳理,從而能夠建立起來一個多維度的大環境的畫像。
?
事物所處的大環境內的關鍵事件是什么
分析每個維度發生的關鍵事件,這些事件可能和事物內部有各種關系。
?
事物所處的大環境內的關鍵事件對事物內的影響是什么
分析每個關鍵事件對事物內部的影響是什么。
?
事物所處的大環境未來可能有哪些變化
簡單預測大環境中每個關鍵事件未來可能演變的走向,從而分析未來可能對事物本身的影響。
?
事物內部對立統一分析
?
明確討論范圍和場景
再次明確討論事物內部對立統一的范圍。
?
基于事物各方核心利益訴求,分析各方之間的對立統一關系
基于之前分析的事物各方的核心利益訴求,進行兩兩分析,分析每2個組成事物時間的對立統一關系,在必要的時候,可以繼續分析三方、四方的對立統一關系。我們需要明確的是,所有的對立統一都是在圍繞著核心利益訴求展開的,核心利益訴求的滿足有低級的方式,也有高級的方式,如果各方的核心利益訴求是通過低級的方式滿足的,那么說明各方的“統一”處于低水平的狀態;如果各方的核心利益訴求是通過高級的方式滿足的,那么說明各方的“統一”處于高水平的狀態。
?
基于分析出來的對立統一關系,確定當前階段主要矛盾次要矛盾
基于已經分析清楚的對立統一關系,明確當前事物現階段的主要矛盾次要矛盾。
?
基于當前階段的主要矛盾次要矛盾,分析矛盾主要方面次要方面
?
明確主要矛盾和次要矛盾以后,就要看下,矛盾主要方面是什么,次要方面是什么,分別給出解決辦法即可。并且確定矛盾主要方面以后,就要優先解決矛盾主要方面,而不是哪個簡單先解決哪個,或者最起碼要講清楚在主要矛盾方面做了哪些事情來緩解,否則就會給人造成一種感覺:解決問題隔靴搔癢,不切中重點。
?
1、矛盾的主要方面的分析和解法
?
2、矛盾的次要方面的分析和解法
?
事物發展規律的預測和干預
?
我們面對非常復雜的事物的時候,為什么要費很大的力氣去分析它的組成,分析它的主次矛盾?就是為了能夠在非常復雜的局面下看清它未來可能的走向,從而提前做好一些準備,甚至主動做一些事情,從而讓事情按照我們的預期來發展。
?
1、基于當前主次矛盾的分析,分析主次矛盾的解決辦法
分析解決辦法,確定如何解決主要矛盾,次要矛盾。在解決主要矛盾和次要矛盾的時候,要遵守至少一個非常明確的原則:當前事物的主要矛盾和次要矛盾需要遵循其所在環境的主要矛盾和次要矛盾的演變規律。
?
2、預測演化軌跡和事物發展趨勢,尋找可以影響事物發展趨勢的關鍵點,利用規律打破規律
就一般的規律來看,對于任何一個事情而言,如果我們期望統一大于對立,把對立的激烈程度降低,那么整個事務的對立統一情況應該從低水平狀態向高水平狀態發展,即從可能傷害某一方的核心利益的狀態,逐步演變為不損害任一方的核心利益訴求,在此基礎上尋找合理的方法和模式,滿足各方核心利益訴求。在整個演進過程中,開始是統一的模式或形式會起到決定性作用,但是隨著統一的水平逐步變高,模式起到的作用釋放殆盡以后,往往就需要從生產力來著手,利用生產力的提升來解決模式無法解決的問題,或者是讓模式更精細化,或者是催生出新的模式基于更高生產力的模式,從而繼續推動統一朝著更高的水平演變。
?
就我們日常具體的事情來看,主要做到以下幾點進行分析即可:
?
- 預測事物在主次矛盾不被干預的情況下的發展趨勢,判斷趨勢是否有利于我們的預期的達成。
- 尋找事物的關鍵點,判斷改變關鍵點對事物發展趨勢的影響,從而讓事情向我們期望的方向演變。
?
?
分析事物本質的案例分享
?
以下內容,是本人利用該方式進行復雜業務的分析的案例。
?
1、在沒有做任何調研,只依靠 “流量變現” 幾個字,結合自己做的電商業務,進行脫離實際業務的單純的理論分析,這個分析主要的作用就是讓毫無任何業務背景和經驗的我,能夠在理論上看到業務和技術演進的大脈絡,從而為后續的調研、架構設計和最終的系統落地提供整體方向性的支撐。為什么要這樣做,因為未來很可能接手的業務是毫無經驗的,如何能夠把業務做好,這是基礎之一。
?
2、在做了大量的調研的基礎上,繼續按照該方式分析流量變現中的某一個業務參與者他的核心利益訴求,并根據核心利益訴求進行關鍵業務指標的拆解,從而在業務開展過程中以此指標及其拆解后的指標指引業務的發展。
原文鏈接
本文為阿里云原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的「技术人生」第2篇:学会分析事物的本质的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 戏说云栖,如果这些名人参加云栖大会。。。
- 下一篇: 双11还能创造什么新技术?