需求如何解耦(一)

一、解耦的定義

解耦就是把系統(tǒng)功能和邏輯拆分。

為什么拆分。一個不解耦的系統(tǒng)就像把若干根線纏繞到一起,你想抽出任何一根都困難;不解耦的系統(tǒng)就像堆的混亂無序的衣柜,你想找到你想要的衣服需要翻箱倒柜還找不到。

拆分后的系統(tǒng),就像你家分類整理好的衣柜,春天的,夏天的,外套,內(nèi)衣分類放好,你今天想穿哪件很容易找到。

二、解耦就是對抗變化和混亂

熵增定律講在一個孤立系統(tǒng)里,如果沒有外力做功,其總混亂度(即熵)會不斷增大。系統(tǒng)需求每天都在增加,每天都在增加功能,如果我們不做好規(guī)劃和整理,系統(tǒng)一定會越來越混亂,直到崩潰。所以我們要用解耦來對抗變化和復(fù)雜性。

三、解耦的指導(dǎo)思想

把一件復(fù)雜的任務(wù)拆成若干個相對簡單且獨立的子任務(wù),理想狀態(tài)是子任務(wù)之間沒有相互影響。

就好比生產(chǎn)一部手機,有的企業(yè)專門造屏幕,有的企業(yè)專門造芯片,有的企業(yè)專門造操作系統(tǒng),本來生產(chǎn)手機這件很復(fù)雜的事情被拆分成了若干個子任務(wù),大家都不需要知道造手機的全部環(huán)節(jié)卻最后把手機造出來了。

四、解耦的方法1-識別并區(qū)分業(yè)務(wù)功能和規(guī)則

需求分析過程中,要分清楚哪些是業(yè)務(wù)功能,哪些是業(yè)務(wù)規(guī)則,并有意將他們分開闡述。

舉個例子要設(shè)計一個需求:線上商城賣蘋果8塊錢1斤,但是成為會員可以6塊錢1斤。我們拆分成:業(yè)務(wù)功能是賣東西,業(yè)務(wù)規(guī)則是**商品對**人**價。

如果不拆分,我們直接按照需求原樣實現(xiàn)出來,那就只能賣蘋果,假如明天又要賣梨,那我們做出來的功能就要整體推翻再改;

如果拆分,即便是明天賣梨,那業(yè)務(wù)功能這個模塊邏輯還是賣東西沒有變化,只需要變化業(yè)務(wù)規(guī)則模塊的邏輯即可。相當(dāng)于只改變了其中一個子任務(wù)的邏輯,另外一個子任務(wù)不受影響。

最后,識別并區(qū)分業(yè)務(wù)功能和規(guī)則也可以理解成區(qū)分穩(wěn)態(tài)(不變)和敏態(tài)(經(jīng)常變動)邏輯。理解方式不同而已。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容