在搭建中臺系統(tǒng)時,需要遵守3個原則:
一、包容性。中臺需要能支持各種業(yè)務(wù)的接入,且能允許不同業(yè)務(wù)之間的細(xì)微差異存在。不能接受業(yè)務(wù)差異的中臺是不可靠的,尤其是供應(yīng)鏈,需要支持不同平臺的業(yè)務(wù),各平臺的業(yè)務(wù)規(guī)則存在一定的差異是在所難免的。
二、穩(wěn)定性。中臺應(yīng)該是個相對中立的系統(tǒng),不是為某個平臺或業(yè)務(wù)量身定做,所以要必須保證主體結(jié)構(gòu)的穩(wěn)定性,不能跟著業(yè)務(wù)隨意調(diào)整底層邏輯。
三、擴(kuò)展性。中臺系統(tǒng)不是一錘子買賣,用完即扔,也不是為某一個業(yè)務(wù)而單獨(dú)設(shè)計(jì)的,所以在設(shè)計(jì)時要兼具擴(kuò)展性和開放性,能夠擴(kuò)展更多場景、更多功能和更多業(yè)務(wù)。
下文為筆者在過往工作中用到的設(shè)計(jì)經(jīng)驗(yàn)總結(jié),供大家在日常需求過程中參考。
(1)能不能復(fù)用是中臺價值衡量的一個很關(guān)鍵的參考因素。在梳理系統(tǒng)邊界時,要將多業(yè)務(wù)通用功能提煉、抽象,并下沉至中臺,而不通用的功能可以留給業(yè)務(wù)系統(tǒng)自行實(shí)現(xiàn),保證中臺的穩(wěn)定和純凈。例如基礎(chǔ)數(shù)據(jù)、倉庫權(quán)限、庫存等功能,都是各個業(yè)務(wù)通用的功能,便可以交由供應(yīng)鏈中臺統(tǒng)一來承接,避免業(yè)務(wù)重復(fù)建設(shè)。但如果每個接入的業(yè)務(wù)方有不同的業(yè)務(wù)規(guī)則,例如A業(yè)務(wù)要按倉庫分配物流,B業(yè)務(wù)要按照地區(qū)分配物流,雙方邏輯互斥無法達(dá)成共識時,可以將物流分配的功能扔給業(yè)務(wù)側(cè)去處理,中臺僅提供物流信息的輸出和接收分配的結(jié)果。
(2)中臺和平臺最大的區(qū)別是平臺只提供各種組件讓業(yè)務(wù)自行組合,不參與業(yè)務(wù),而中臺則更貼合業(yè)務(wù)。在設(shè)計(jì)時,盡可能將跨系統(tǒng)的功能集成,為業(yè)務(wù)提供一站式解決方案,可以降低業(yè)務(wù)接入的難度。例如訂單查詢功能的集成、中央庫存集成、跨系統(tǒng)取消訂單功能集成等。
(3)當(dāng)遇到某些業(yè)務(wù)無法完全統(tǒng)一的情況時,可以由中臺負(fù)責(zé)整體節(jié)點(diǎn)控制,但在某些分支可以開放個性化的需求窗口給各業(yè)務(wù)側(cè)來填充,這是設(shè)計(jì)模式中的工廠模式思想。例如訂單下發(fā)至履約中心以后,有個訂單審核的環(huán)節(jié),用以疑似惡意訂單的排查、異常訂單的審核處理。由于每個業(yè)務(wù)對異常訂單審核的標(biāo)準(zhǔn)不同,如果都由訂單履約中心實(shí)現(xiàn),則需要梳理所有業(yè)務(wù)側(cè)的規(guī)則,這種業(yè)務(wù)規(guī)則并不是供應(yīng)鏈中臺應(yīng)該關(guān)心的,便可以將特殊審核的邏輯開放給業(yè)務(wù)系統(tǒng)來實(shí)現(xiàn),履約中心只需要在訂單審核的節(jié)點(diǎn)上調(diào)用對應(yīng)業(yè)務(wù)系統(tǒng)的接口來獲取審核結(jié)果即可。如下圖所示:
▲訂單節(jié)點(diǎn)開放給業(yè)務(wù)系統(tǒng)示例
(4)當(dāng)不同的業(yè)務(wù)需要走不同的流程時,可以通過鏈路配置的方式來實(shí)現(xiàn)。例如倉庫入庫支持到貨登記、收貨、驗(yàn)收、拍照、上架5個節(jié)點(diǎn),但并不是所有的業(yè)務(wù)都需要這5步操作。于是我們就可以增加一張配置表,按照業(yè)務(wù)配置不同的鏈路,在倉儲系統(tǒng)中入庫時,便能按照此鏈路配置驅(qū)動不同業(yè)務(wù)走不同的入庫流程了,當(dāng)上一個節(jié)點(diǎn)操作完成后,系統(tǒng)會根據(jù)配置自動跳轉(zhuǎn)到鏈路中的下一個節(jié)點(diǎn)。如圖:
▲入庫鏈路配置示例
(5)通用字符串與枚舉值擴(kuò)展新場景。當(dāng)業(yè)務(wù)場景越來越多時,今天要按業(yè)務(wù)送精美禮品、明天要求按平臺使用不同的包裝,我們不能總是要求技術(shù)擴(kuò)展新字段來記錄新的業(yè)務(wù),特別是訂單這些關(guān)鍵表,每每調(diào)整可能都會影響上下游,但業(yè)務(wù)也不能不支持,那怎么辦?可以定義一個長字符串,例如0000000000,這是1個10位的字符串,我們可以對每一位分配0-9,A到Z等不同的枚舉值,每個值代表一種業(yè)務(wù)屬性,例如第一位代表平臺,第二位代表包裝屬性(普通包裝、精美包裝等),1000000000代表自營訂單,2000000000代表三方平臺訂單,1100000000代表自營平臺的精美包裝,如上,位數(shù)可以不斷擴(kuò)充,枚舉值也可以擴(kuò),還可以兩位組合、三位組合搭配,這樣就可以擴(kuò)展無數(shù)的場景了。
(6)通用屬性和擴(kuò)展屬性搭配妙用。不同的業(yè)務(wù)、不同的商品品類之間的差異一定是存在的,但作為中臺需要兼容,該怎么辦?我們可以把屬性分為通用屬性和擴(kuò)展屬性兩組。所有業(yè)務(wù)和品類都通用的屬性通過通用屬性存儲,每個品類個性化的屬性用擴(kuò)展屬性存儲,可以通過長串報文放到數(shù)據(jù)庫中的一個字段中存儲。這樣通用數(shù)據(jù)和擴(kuò)展屬性搭配便能存儲全品類商品信息了。例如在設(shè)計(jì)商品相關(guān)的功能時,商品編碼、名稱、類目是每個品類都必須的,這一類數(shù)據(jù)便放至通用屬性中,而圖書的版本、手機(jī)的網(wǎng)絡(luò)制式、衣服的尺碼等,屬于每個品類特有屬性,就通過擴(kuò)展屬性來存儲。
不僅商品屬性,標(biāo)準(zhǔn)訂單狀態(tài)+擴(kuò)展訂單狀態(tài)、標(biāo)準(zhǔn)商品庫+業(yè)務(wù)自有商品庫、通用操作+個性化操作等場景都可以按此思路來設(shè)計(jì),以達(dá)到供應(yīng)鏈中臺兼容不同業(yè)務(wù)的目標(biāo)。
(7)通過擴(kuò)展字段來適配不同的屬性。再強(qiáng)大的系統(tǒng)也不可能囊括所有行業(yè)的業(yè)務(wù)屬性,但可以留出空間給用戶自定義。不同于上面將擴(kuò)展屬性通過長報文存到一個字段中,此設(shè)計(jì)思路是通過擴(kuò)展不同的字段存儲不同的屬性,但數(shù)據(jù)庫中的同一個擴(kuò)展字段對應(yīng)不同的業(yè)務(wù)存儲的屬性不同,此類設(shè)計(jì)在用友、金蝶等將軟件服務(wù)商的產(chǎn)品形態(tài)上比較多見。
例如某產(chǎn)品在做商品屬性設(shè)計(jì)時,在數(shù)據(jù)庫中總共設(shè)計(jì)10個字段,前4個字段為固定字段,存儲通用屬性(商品ID、商品名稱、規(guī)格、類目),后6個擴(kuò)展字段預(yù)留給用戶自行配置,存儲各行業(yè)個性化的屬性。
現(xiàn)有A用戶為手機(jī)行業(yè),配置了擴(kuò)展字段5-9,分別對應(yīng)內(nèi)存、容量、網(wǎng)絡(luò)制式、主屏幕尺寸、運(yùn)營商;B用戶為服裝行業(yè),配置了擴(kuò)展字段5-8,分別對應(yīng)貨號、尺寸、風(fēng)格、材質(zhì)。于是,A、B兩個用戶在使用系統(tǒng)時,便能分別看到不同的屬性名稱了,但在數(shù)據(jù)庫中都是對應(yīng)同樣的擴(kuò)展字段。
(8)靈活使用適配器保證供應(yīng)鏈中臺的穩(wěn)定性。為了保證供應(yīng)鏈中臺內(nèi)部邏輯的一致性,可以通過適配器來將外圍各業(yè)務(wù)邏輯轉(zhuǎn)換為供應(yīng)鏈體系認(rèn)可的標(biāo)準(zhǔn),這樣就能將差異放到供應(yīng)鏈中臺之外,不用供應(yīng)鏈中臺來遷就業(yè)務(wù)了,保證了中臺架構(gòu)的穩(wěn)定性。通俗的說法就是映射。例如不同平臺的地址庫的統(tǒng)一、不同平臺SKU編碼的統(tǒng)一、不同業(yè)務(wù)訂單狀態(tài)的統(tǒng)一等,都可以通過適配器來進(jìn)行轉(zhuǎn)換。
(9)系統(tǒng)參數(shù)是個好東西。做中臺,不可能百分百標(biāo)準(zhǔn)化,難免會遇到不同業(yè)務(wù)要求不同邏輯的情況,這時,就可以增加一張系統(tǒng)參數(shù)表,使用系統(tǒng)參數(shù)來配置不同的業(yè)務(wù)邏輯。例如:A倉訂單需要合單,B倉訂單不需要合單,為了同時應(yīng)對兩個倉的業(yè)務(wù)訴求,便可以增加一個”是否需要合單”的參數(shù),配置為“是”則合單,為“否”則不合單,由A倉和B倉自行配置。
以上只是眾多設(shè)計(jì)經(jīng)驗(yàn)中的點(diǎn)滴,在供中臺的搭建思想上,產(chǎn)品設(shè)計(jì)和架構(gòu)設(shè)計(jì)思想是相通的,感興趣的朋友可以多看一些設(shè)計(jì)模式方面的書籍,對提升我們自身的規(guī)劃能力有極大的幫助。
2024LOG供應(yīng)鏈物流 突破創(chuàng)新獎候選案例——上海歐力德物流科技有限公司
4861 閱讀2024LOG供應(yīng)鏈物流?突破創(chuàng)新獎候選案例——科捷供應(yīng)鏈有限公司
3161 閱讀2024LOG供應(yīng)鏈物流?突破創(chuàng)新獎候選案例——中外運(yùn)物流有限公司
2737 閱讀2024LOG供應(yīng)鏈物流 突破創(chuàng)新獎候選案例——安得智聯(lián)供應(yīng)鏈科技股份有限公司
2435 閱讀順豐、德邦發(fā)布春節(jié)服務(wù)公告:將加收資源調(diào)節(jié)費(fèi)
2110 閱讀中郵無人機(jī)(北京)有限公司揭牌
2041 閱讀2024LOG供應(yīng)鏈物流 突破創(chuàng)新獎候選案例——京東物流
1762 閱讀剛上市就大跌,航空物流巨無霸市值已縮水211億
1780 閱讀2024LOG供應(yīng)鏈物流?突破創(chuàng)新獎候選案例——中國移動通信集團(tuán)終端有限公司云南分公司
1584 閱讀聊聊2025年物流企業(yè)如何做營銷規(guī)劃
1520 閱讀