言基礎(chǔ):跨行業(yè)視角下的企業(yè)信息化建模與流程復(fù)用)
站在行業(yè)與跨行業(yè)角度看待企業(yè)信息化這個(gè)話題放在SMP軟件制作平臺(tái)語(yǔ)言基礎(chǔ)知識(shí)系列里來(lái)聊其實(shí)非常合適。很多人一聽(tīng)到“SMP語(yǔ)言基礎(chǔ)知識(shí)”第一反應(yīng)是語(yǔ)法、是字段、是報(bào)表模板覺(jué)得這東西就是個(gè)技術(shù)工具。但做到第44篇這個(gè)階段我更想換個(gè)視角SMP真正值錢(qián)的地方不只是讓你能把一個(gè)表單做出來(lái)、把一張報(bào)表跑通而是讓你在理解企業(yè)信息化本質(zhì)之后用一套可復(fù)用的語(yǔ)言思維去應(yīng)對(duì)不同行業(yè)、不同規(guī)模、不同成熟度的業(yè)務(wù)場(chǎng)景。這篇內(nèi)容不是講某個(gè)具體函數(shù)怎么用而是講怎么用SMP的語(yǔ)言思維把行業(yè)經(jīng)驗(yàn)和跨行業(yè)的方法論沉淀成真正能落地的信息系統(tǒng)。適合正在做企業(yè)信息化建設(shè)、ERP實(shí)施、MES系統(tǒng)搭建或者準(zhǔn)備從單一行業(yè)轉(zhuǎn)向多行業(yè)方案復(fù)用的朋友們參考。1. 企業(yè)信息化為什么要站在行業(yè)與跨行業(yè)視角1.1 只懂技術(shù)不懂業(yè)務(wù)系統(tǒng)上線就是災(zāi)難的開(kāi)始我接觸過(guò)不少企業(yè)信息化的項(xiàng)目有一個(gè)很普遍的誤區(qū)覺(jué)得信息化就是買(mǎi)一套軟件、配幾個(gè)服務(wù)器、把Excel表?yè)Q成網(wǎng)頁(yè)表單。結(jié)果呢業(yè)務(wù)人員覺(jué)得系統(tǒng)不好用管理層覺(jué)得數(shù)據(jù)不準(zhǔn)確IT部門(mén)天天被投訴。問(wèn)題的根源往往不在技術(shù)上而在視角上——做信息化的人只看到了“功能”沒(méi)看到“業(yè)務(wù)邏輯”。比如說(shuō)同樣是“訂單管理”快消品行業(yè)的訂單是高頻、小批量、促銷(xiāo)活動(dòng)頻繁裝備制造行業(yè)的訂單是低頻、大額、BOM復(fù)雜、交期長(zhǎng)。如果用同一套表單邏輯去做必然有一邊是別扭的。而SMP這類(lèi)軟件制作平臺(tái)的核心價(jià)值就是允許你在不寫(xiě)底層代碼的前提下把不同行業(yè)的業(yè)務(wù)邏輯用元數(shù)據(jù)、字段配置、流轉(zhuǎn)節(jié)點(diǎn)的方式表達(dá)出來(lái)。你懂不懂這個(gè)行業(yè)的“潛規(guī)則”直接決定了你配置出來(lái)的系統(tǒng)是好用還是難用。站在行業(yè)視角看企業(yè)信息化本質(zhì)上是回答三個(gè)問(wèn)題這個(gè)行業(yè)的核心業(yè)務(wù)鏈路是什么這個(gè)行業(yè)的管理痛點(diǎn)集中在哪些環(huán)節(jié)這個(gè)行業(yè)的合規(guī)和報(bào)表要求有什么特殊性拿制造業(yè)舉例。制造業(yè)的信息化核心鏈路通常是“銷(xiāo)售接單—技術(shù)BOM—采購(gòu)備料—生產(chǎn)排程—車(chē)間執(zhí)行—質(zhì)檢入庫(kù)—發(fā)貨結(jié)算”痛點(diǎn)多集中在物料清單不準(zhǔn)、生產(chǎn)進(jìn)度不透明、庫(kù)存賬實(shí)不符報(bào)表上必須滿足成本核算和追溯要求。而零售行業(yè)呢核心鏈路是“鋪貨—?jiǎng)愉N(xiāo)—補(bǔ)貨—調(diào)撥—盤(pán)點(diǎn)”痛點(diǎn)在庫(kù)存周轉(zhuǎn)和門(mén)店執(zhí)行力報(bào)表關(guān)注的則是坪效、SKU貢獻(xiàn)和促銷(xiāo)ROI。你要是拿制造業(yè)的邏輯去做零售系統(tǒng)光是“批次追溯”和“貨位管理”這兩個(gè)概念就能把零售業(yè)務(wù)人員折騰死。1.2 跨行業(yè)視角的本質(zhì)抽象與遷移與行業(yè)視角相對(duì)的是跨行業(yè)視角??缧袠I(yè)不是說(shuō)讓你什么行業(yè)都懂而是指你具備一種“抽象能力”——能夠從不同行業(yè)的業(yè)務(wù)流程中剝離出共性的、規(guī)律性的東西然后遷移到新場(chǎng)景里。SMP語(yǔ)言基礎(chǔ)里的建模思維很大程度上就是在訓(xùn)練這種抽象能力。你看SMP里的數(shù)據(jù)對(duì)象、流程節(jié)點(diǎn)、服務(wù)接口本質(zhì)上都是對(duì)業(yè)務(wù)概念的抽象。一個(gè)“客戶主數(shù)據(jù)”對(duì)象放到制造業(yè)里可能要掛“信用額度、結(jié)算方式、收貨地址”放到醫(yī)療行業(yè)里可能要掛“執(zhí)業(yè)資質(zhì)、科室分類(lèi)、發(fā)票抬頭”。但不管掛什么它在語(yǔ)言層面都是一個(gè)“主數(shù)據(jù)對(duì)象”。你先把這個(gè)對(duì)象定義好再根據(jù)行業(yè)特性去擴(kuò)展屬性這就叫抽象與遷移??缧袠I(yè)視角還體現(xiàn)在流程模式的復(fù)用上。很多行業(yè)都有“審批流”但審批流的底層結(jié)構(gòu)無(wú)非是“提交—逐級(jí)審批—會(huì)簽—駁回—終止”這么幾種。SMP的語(yǔ)言機(jī)制里流程節(jié)點(diǎn)的編排方式是通用的只是每個(gè)節(jié)點(diǎn)的業(yè)務(wù)規(guī)則、表單內(nèi)容、權(quán)限范圍不同。你能把制造業(yè)的設(shè)備報(bào)廢審批流程搭好換個(gè)場(chǎng)景去做酒店行業(yè)的采購(gòu)審批其實(shí)只需要調(diào)整節(jié)點(diǎn)參數(shù)和表單字段流程骨架是不需要推倒重來(lái)的。再往深了說(shuō)跨行業(yè)視角的最大價(jià)值在于“避免重復(fù)造輪子”。你做過(guò)十個(gè)行業(yè)的進(jìn)銷(xiāo)存之后你會(huì)發(fā)現(xiàn)所有行業(yè)的進(jìn)銷(xiāo)存都可以抽象成“單據(jù)—明細(xì)—庫(kù)存變動(dòng)—財(cái)務(wù)憑證”四層結(jié)構(gòu)。有了這個(gè)認(rèn)知你再接一個(gè)新行業(yè)的需求心里是有底的先梳理業(yè)務(wù)單據(jù)再設(shè)計(jì)庫(kù)存模型再對(duì)接財(cái)務(wù)接口。這個(gè)底氣和經(jīng)驗(yàn)就是企業(yè)信息化從業(yè)者最值錢(qián)的能力。2. SMP語(yǔ)言基礎(chǔ)中面向企業(yè)信息化的核心要素2.1 元數(shù)據(jù)建模信息化的地基工程既然是SMP語(yǔ)言基礎(chǔ)知識(shí)系列這一節(jié)把企業(yè)信息化場(chǎng)景下最常用的語(yǔ)言要素重新梳理一遍。首當(dāng)其沖的是元數(shù)據(jù)建模。如果把企業(yè)信息化比作蓋樓元數(shù)據(jù)建模就是打地基。地基沒(méi)打好后面所有樓層都要出問(wèn)題。SMP的元數(shù)據(jù)建模通常從“數(shù)據(jù)對(duì)象”開(kāi)始。你需要按照業(yè)務(wù)的自然結(jié)構(gòu)把數(shù)據(jù)拆分成對(duì)象和屬性。比如“銷(xiāo)售訂單”這個(gè)對(duì)象它的屬性包括訂單編號(hào)、客戶、下單日期、交貨日期、狀態(tài)、備注“訂單明細(xì)”這個(gè)對(duì)象屬性包括商品、數(shù)量、單價(jià)、稅率、行號(hào)。兩個(gè)對(duì)象之間通過(guò)“一對(duì)多”關(guān)系關(guān)聯(lián)起來(lái)。這個(gè)建模過(guò)程看起來(lái)簡(jiǎn)單但真正做的時(shí)候有很多講究。我踩過(guò)的坑是在早期做SMP配置時(shí)喜歡把屬性鋪得非常平所有字段都堆在一個(gè)大對(duì)象里。訂單表里既放客戶名稱(chēng)又放客戶聯(lián)系人既放商品編碼又放商品名稱(chēng)。結(jié)果數(shù)據(jù)冗余嚴(yán)重客戶改名要批量刷訂單表追查數(shù)據(jù)口徑也對(duì)不上。后來(lái)我學(xué)乖了嚴(yán)格按范式思維來(lái)建模主數(shù)據(jù)單獨(dú)建對(duì)象業(yè)務(wù)單據(jù)單獨(dú)建對(duì)象單據(jù)只存主數(shù)據(jù)的ID和快照字段。快照字段的意思是訂單上冗余存儲(chǔ)商品名稱(chēng)、單價(jià)這些下單時(shí)的信息防止商品主數(shù)據(jù)后續(xù)修改影響歷史單據(jù)追溯。這個(gè)設(shè)計(jì)思路在SMP里非常常見(jiàn)也是企業(yè)信息化建設(shè)中必須掌握的建模功底。元數(shù)據(jù)建模還要考慮“狀態(tài)字段”。業(yè)務(wù)單據(jù)幾乎都有狀態(tài)草稿、已提交、已審核、已執(zhí)行、已關(guān)閉。不要小看這個(gè)狀態(tài)字段它是流程驅(qū)動(dòng)的基礎(chǔ)也是報(bào)表統(tǒng)計(jì)的依據(jù)。你需要在建模之初就把狀態(tài)字段設(shè)計(jì)好否則后面加狀態(tài)歷史數(shù)據(jù)的處理會(huì)很頭疼。2.2 流程編排讓業(yè)務(wù)動(dòng)起來(lái)一個(gè)企業(yè)信息系統(tǒng)光有數(shù)據(jù)對(duì)象是不夠的業(yè)務(wù)是要“動(dòng)”的。訂單要從草稿變成已審核然后再變成已發(fā)貨、已結(jié)算這個(gè)動(dòng)態(tài)過(guò)程在SMP里靠流程編排來(lái)實(shí)現(xiàn)。流程編排在SMP語(yǔ)言層面的核心要素包括節(jié)點(diǎn)類(lèi)型、流轉(zhuǎn)條件、權(quán)限矩陣、超時(shí)策略。節(jié)點(diǎn)類(lèi)型通常有審批節(jié)點(diǎn)、自動(dòng)節(jié)點(diǎn)、條件分支節(jié)點(diǎn)、子流程節(jié)點(diǎn)。流轉(zhuǎn)條件就是控制“什么情況下走A分支、什么情況下走B分支”。比如采購(gòu)申請(qǐng)單金額小于5000走部門(mén)經(jīng)理審批金額大于等于5000還要走總經(jīng)理審批。這個(gè)業(yè)務(wù)規(guī)則在SMP里就是一條流轉(zhuǎn)條件表達(dá)式。做流程編排最容易犯的錯(cuò)是“流程過(guò)于理想化”。你按制度文件畫(huà)了一條完美流程結(jié)果業(yè)務(wù)實(shí)際執(zhí)行時(shí)根本走不通。因?yàn)橹贫仁抢硐霊B(tài)業(yè)務(wù)是現(xiàn)實(shí)態(tài)。所以我做SMP流程配置的建議是先跟業(yè)務(wù)人員一起走一遍真實(shí)業(yè)務(wù)把異常路徑都記錄下來(lái)。退貨怎么辦跳過(guò)審批直接入庫(kù)嗎緊急采購(gòu)怎么辦先采購(gòu)后補(bǔ)流程嗎這些異常路徑必須在流程設(shè)計(jì)時(shí)預(yù)留分支否則系統(tǒng)上線第一天就會(huì)卡住。流程編排里還有一個(gè)容易忽略的點(diǎn)流程節(jié)點(diǎn)的操作按鈕配置。SMP里一個(gè)節(jié)點(diǎn)的提交動(dòng)作、回退動(dòng)作、撤銷(xiāo)動(dòng)作都要顯式配置。很多新手只配置了“通過(guò)”和“駁回”忘了配置“退回上一步”“轉(zhuǎn)交他人”“終止流程”結(jié)果審批人想操作卻沒(méi)按鈕只能干瞪眼。這些都是實(shí)操細(xì)節(jié)但直接決定系統(tǒng)好不好用。2.3 報(bào)表與看板管理層最關(guān)心的部分企業(yè)信息化建設(shè)做到一定階段管理層問(wèn)的最多的問(wèn)題就是我什么時(shí)候能看到數(shù)據(jù)這里的“看到數(shù)據(jù)”通常指兩類(lèi)一類(lèi)是固定格式的管理報(bào)表比如月度銷(xiāo)售匯總、庫(kù)存周轉(zhuǎn)表另一類(lèi)是實(shí)時(shí)看板比如車(chē)間生產(chǎn)進(jìn)度看板、門(mén)店銷(xiāo)售實(shí)時(shí)看板。在SMP語(yǔ)言體系里報(bào)表設(shè)計(jì)的核心是“數(shù)據(jù)源—篩選條件—分組匯總—展示格式”四要素。數(shù)據(jù)源決定了報(bào)表基于哪些對(duì)象取值篩選條件控制數(shù)據(jù)范圍分組匯總決定統(tǒng)計(jì)維度展示格式則落到表格、柱圖、折線圖、透視表這些呈現(xiàn)方式上。做報(bào)表有一個(gè)思維習(xí)慣要刻進(jìn)DNA里報(bào)表的口徑必須和業(yè)務(wù)定義一致。銷(xiāo)售回款率怎么計(jì)算是按開(kāi)票日期統(tǒng)計(jì)還是按合同日期統(tǒng)計(jì)逾期賬款怎么定義超賬期多少天算逾期這些問(wèn)題如果不先和業(yè)務(wù)對(duì)齊報(bào)表做出來(lái)數(shù)字再漂亮也是廢的。我見(jiàn)過(guò)太多項(xiàng)目因?yàn)榭趶讲灰恢略碌讓?duì)賬時(shí)業(yè)務(wù)和財(cái)務(wù)吵得不可開(kāi)交。所以在SMP里搭報(bào)表之前我總會(huì)先跟關(guān)鍵用戶開(kāi)一個(gè)“口徑確認(rèn)會(huì)”把每一個(gè)指標(biāo)的計(jì)算邏輯寫(xiě)成文檔確認(rèn)無(wú)誤后再動(dòng)手做配置。3. 從行業(yè)視角出發(fā)的SMP實(shí)操制造業(yè)與服務(wù)業(yè)對(duì)照3.1 制造業(yè)信息化場(chǎng)景下的SMP配置思路制造業(yè)的信息化場(chǎng)景我拿“生產(chǎn)工單管理”來(lái)舉例因?yàn)檫@個(gè)場(chǎng)景非常能體現(xiàn)SMP在行業(yè)落地時(shí)的配置思路。生產(chǎn)工單的核心鏈路是銷(xiāo)售訂單轉(zhuǎn)化為工單、工單關(guān)聯(lián)BOM和工藝路線、車(chē)間按工單領(lǐng)料報(bào)工、質(zhì)檢按工單檢驗(yàn)、完工后入庫(kù)。用SMP建模時(shí)需要建“生產(chǎn)工單”“工單物料明細(xì)”“工單工序明細(xì)”“領(lǐng)料記錄”“報(bào)工記錄”這些數(shù)據(jù)對(duì)象。工單和物料明細(xì)是一對(duì)多關(guān)系工單和報(bào)工記錄也是一對(duì)多關(guān)系。每個(gè)對(duì)象上都要掛狀態(tài)字段比如工單狀態(tài)從“已下達(dá)”到“生產(chǎn)中”再到“已完工”工序狀態(tài)從“未開(kāi)始”到“進(jìn)行中”到“已報(bào)工”。在流程編排上制造業(yè)的工單通常要有“工單審核”節(jié)點(diǎn)審核通過(guò)后才會(huì)下發(fā)到車(chē)間。車(chē)間執(zhí)行過(guò)程中如果出現(xiàn)來(lái)料不良還要有“異常提報(bào)”流程這個(gè)流程在SMP里可以做成子流程節(jié)點(diǎn)不影響主流程的數(shù)據(jù)結(jié)構(gòu)。制造業(yè)做SMP配置最容易被忽視的是“投料控制”。很多工單允許超量領(lǐng)料但如果完全不設(shè)上限車(chē)間就會(huì)大量超領(lǐng)最后成本失控。好的做法是在SMP里配置領(lǐng)料數(shù)量的校驗(yàn)規(guī)則按BOM用量乘以損耗系數(shù)允許一定比例的超領(lǐng)超過(guò)閾值就要走額外審批。這個(gè)規(guī)則在SMP語(yǔ)言里是一條簡(jiǎn)單的條件判斷但業(yè)務(wù)價(jià)值非常大。3.2 服務(wù)業(yè)信息化場(chǎng)景下的SMP配置思路換到服務(wù)業(yè)比如酒店管理或者連鎖餐飲信息化場(chǎng)景的核心就變成了“預(yù)訂—消費(fèi)—結(jié)算—會(huì)員—營(yíng)銷(xiāo)”這條鏈路。拿連鎖餐飲的“門(mén)店日結(jié)”場(chǎng)景舉例。門(mén)店日結(jié)的核心鏈路是收銀系統(tǒng)產(chǎn)生訂單流水、每日凌晨定時(shí)匯總訂單數(shù)據(jù)、按支付渠道分組生成結(jié)算單、與第三方支付平臺(tái)對(duì)賬、差異部分生成異常單。用SMP建模時(shí)需要建“訂單流水表”“日結(jié)算單”“對(duì)賬差異單”這些數(shù)據(jù)對(duì)象。日結(jié)算單和訂單流水表是一對(duì)多關(guān)系但對(duì)賬時(shí)只需要讀取匯總值所以日結(jié)算單上可以冗余匯總字段避免報(bào)表時(shí)要實(shí)時(shí)聚合大量明細(xì)數(shù)據(jù)。服務(wù)業(yè)的特點(diǎn)在于“時(shí)效性”。連鎖餐飲的日結(jié)業(yè)務(wù)要求每天早上開(kāi)業(yè)前完成前一天的日結(jié)所以SMP的定時(shí)任務(wù)配置就很重要。你可以用SMP的調(diào)度服務(wù)在每天凌晨3點(diǎn)自動(dòng)執(zhí)行匯總服務(wù)生成日結(jié)單草稿7點(diǎn)前推送差異提醒給財(cái)務(wù)人員。這套邏輯用制造業(yè)的“報(bào)工單”思維也能理解但業(yè)務(wù)字段完全不同使用了跨行業(yè)的抽象能力。服務(wù)業(yè)還有一個(gè)制造業(yè)不太壓重視但服務(wù)業(yè)非常重視的點(diǎn)會(huì)員和營(yíng)銷(xiāo)。會(huì)員等級(jí)、積分流水、券核銷(xiāo)記錄這些在SMP里也要建模。你會(huì)發(fā)現(xiàn)你已經(jīng)掌握了“主數(shù)據(jù)—業(yè)務(wù)單據(jù)—匯總統(tǒng)計(jì)”的三層結(jié)構(gòu)會(huì)員主數(shù)據(jù)對(duì)應(yīng)客戶主數(shù)據(jù)積分流水對(duì)應(yīng)業(yè)務(wù)明細(xì)表會(huì)員報(bào)表對(duì)應(yīng)經(jīng)營(yíng)分析報(bào)表??缧袠I(yè)視角的遷移在這里體現(xiàn)得非常明顯。4. 跨行業(yè)信息化建設(shè)中的SMP能力復(fù)用4.1 主數(shù)據(jù)治理所有行業(yè)都繞不開(kāi)的硬骨頭把主數(shù)據(jù)治理放在跨行業(yè)能力復(fù)用的第一位是因?yàn)槲矣X(jué)得不管做哪個(gè)行業(yè)的信息化主數(shù)據(jù)都是一塊必須啃的硬骨頭。所謂主數(shù)據(jù)就是一個(gè)企業(yè)里被多個(gè)業(yè)務(wù)系統(tǒng)共同使用的、相對(duì)穩(wěn)定的基礎(chǔ)數(shù)據(jù)客戶、供應(yīng)商、物料、組織架構(gòu)、會(huì)計(jì)科目、人員。在SMP語(yǔ)言層面主數(shù)據(jù)治理的核心是“唯一編碼 分類(lèi)屬性 狀態(tài)管理 共享發(fā)布”。唯一編碼確保同一個(gè)客戶不會(huì)在系統(tǒng)里存在三條記錄分類(lèi)屬性讓不同行業(yè)可以靈活擴(kuò)展維度狀態(tài)管理區(qū)分草稿、生效、失效共享發(fā)布確保其他業(yè)務(wù)對(duì)象能引用到同一份主數(shù)據(jù)。我做過(guò)的項(xiàng)目里主數(shù)據(jù)治理做得好的后面越做越輕松做得差的系統(tǒng)越用越亂。一個(gè)典型的反面案例客戶主數(shù)據(jù)里沒(méi)有統(tǒng)一編碼規(guī)則銷(xiāo)售錄入一個(gè)“華東區(qū)大客戶”財(cái)務(wù)錄入一個(gè)“華大客戶”ERP里還有一條“Huadong”月底對(duì)賬三條記錄各算各的全公司都崩潰。用SMP做主數(shù)據(jù)治理要建立編碼生成規(guī)則比如“客戶類(lèi)型地區(qū)碼流水號(hào)”這種結(jié)構(gòu)由系統(tǒng)自動(dòng)生成不允許手工亂填。這個(gè)規(guī)則在SMP里可以被配置在保存事件的服務(wù)中在數(shù)據(jù)對(duì)象保存前自動(dòng)觸發(fā)編碼填充。4.2 集成接口跨系統(tǒng)協(xié)同的信息化基石沒(méi)有一家企業(yè)的信息化是一步到位的。大多數(shù)情況是先有財(cái)務(wù)系統(tǒng)再上ERP然后補(bǔ)一個(gè)MES后來(lái)覺(jué)得CRM也好用又買(mǎi)了套SaaS的協(xié)同辦公工具。系統(tǒng)越上越多數(shù)據(jù)孤島就越來(lái)越嚴(yán)重。這時(shí)候SMP能發(fā)揮什么作用答案是做集成層。SMP的集成能力體現(xiàn)在接口服務(wù)設(shè)計(jì)上。你可以用SMP定義一個(gè)“客戶信息同步服務(wù)”從ERP讀取客戶主數(shù)據(jù)經(jīng)過(guò)字段映射和格式轉(zhuǎn)換推送到CRM和報(bào)表系統(tǒng)。也可以在SMP里做“訂單狀態(tài)回寫(xiě)服務(wù)”當(dāng)MES系統(tǒng)更新了生產(chǎn)進(jìn)度SMP定時(shí)拉取數(shù)據(jù)回寫(xiě)到ERP的銷(xiāo)售訂單上。做接口設(shè)計(jì)最考驗(yàn)跨行業(yè)視角的地方在于“字段語(yǔ)義的對(duì)齊”。同樣叫“客戶編碼”ERP里的編碼規(guī)則可能是四段式組合編碼CRM里的編碼可能是純流水號(hào)MES里可能直接用簡(jiǎn)稱(chēng)。你在SMP的映射規(guī)則里必須做轉(zhuǎn)換邏輯而不是簡(jiǎn)單的字段搬移。這個(gè)映射規(guī)則在SMP里通常是可視化配置的左邊選源字段右邊選目標(biāo)字段中間寫(xiě)轉(zhuǎn)換表達(dá)式??雌饋?lái)簡(jiǎn)單但需要你對(duì)兩個(gè)系統(tǒng)的數(shù)據(jù)語(yǔ)義都理解透徹這就是為什么信息化從業(yè)者的跨行業(yè)經(jīng)驗(yàn)特別值錢(qián)。4.3 模板沉淀從“做項(xiàng)目”轉(zhuǎn)向“做產(chǎn)品”跨行業(yè)復(fù)用做到高階狀態(tài)就是模板化。你在制造業(yè)做過(guò)一套生產(chǎn)報(bào)工模塊再做另一個(gè)制造業(yè)客戶的時(shí)候直接基于上次的SMP模板進(jìn)行二次配置效率會(huì)翻倍。但模板沉淀的前提是你具備“抽象共性、沉淀差異”的意識(shí)。在SMP的實(shí)踐中我是這樣做的每完成一個(gè)行業(yè)的項(xiàng)目會(huì)把數(shù)據(jù)對(duì)象、流程模板、報(bào)表模板、服務(wù)接口歸類(lèi)整理。共性的部分沉淀為標(biāo)準(zhǔn)模板差異的部分記錄為配置參數(shù)。下次遇到同行業(yè)客戶先匹配模板再調(diào)整參數(shù)遇到跨行業(yè)客戶先分析新行業(yè)和沉淀模板之間的差異再?zèng)Q定是擴(kuò)展現(xiàn)有模板還是新建模塊。模板沉淀還有一個(gè)好處新人培養(yǎng)成本大幅下降。新人進(jìn)入項(xiàng)目組后先讓他看標(biāo)準(zhǔn)模板再讓他理解行業(yè)差異比讓他從零開(kāi)始研究業(yè)務(wù)要快得多。這也是我堅(jiān)持在SMP語(yǔ)言基礎(chǔ)知識(shí)系列里反復(fù)強(qiáng)調(diào)模板思維的原因——做信息化的最高境界不是寫(xiě)代碼而是沉淀可復(fù)制的方案能力。5. 實(shí)操中經(jīng)常踩的坑和自查清單5.1 流程設(shè)計(jì)脫離實(shí)際紙上談兵要不得這個(gè)坑我踩得最深。早年開(kāi)始做信息化時(shí)我特別迷信流程制度拿流程文件一條條對(duì)照著搭節(jié)點(diǎn)覺(jué)著很?chē)?yán)謹(jǐn)。結(jié)果生產(chǎn)現(xiàn)場(chǎng)的人根本不用系統(tǒng)理由是審批流太長(zhǎng)了等領(lǐng)導(dǎo)手機(jī)審批黃花菜都涼了生產(chǎn)不能停。后來(lái)我做SMP流程設(shè)計(jì)前會(huì)花至少一周時(shí)間盯現(xiàn)場(chǎng)看業(yè)務(wù)人員實(shí)際怎么做。不看不知道一看嚇一跳實(shí)際業(yè)務(wù)的“潛規(guī)則”和制度文件差距巨大。制度上說(shuō)領(lǐng)料必須工單審核后才能執(zhí)行實(shí)際上車(chē)間工序緊急時(shí)班組長(zhǎng)先口頭聯(lián)系倉(cāng)庫(kù)出料事后再補(bǔ)單據(jù)。你把流程卡死業(yè)務(wù)就繞開(kāi)系統(tǒng)走線下。SMP里的解法是為緊急場(chǎng)景設(shè)計(jì)“先出庫(kù)后補(bǔ)單”的例外流程分支允許有權(quán)限的班組長(zhǎng)發(fā)起緊急領(lǐng)料系統(tǒng)自動(dòng)生成待補(bǔ)單任務(wù)超時(shí)未補(bǔ)單則升級(jí)給車(chē)間主任。這樣既管住了風(fēng)險(xiǎn)又尊重了業(yè)務(wù)現(xiàn)實(shí)。流程設(shè)計(jì)的原則是先活后管再逐步收緊。系統(tǒng)上線初期流程可以適當(dāng)寬松跑順之后再增加控制節(jié)點(diǎn)。一次性上一堆管控流程系統(tǒng)基本注定失敗。5.2 字段配置隨心所欲后患無(wú)窮的數(shù)據(jù)臟亂差很多SMP新手在數(shù)據(jù)對(duì)象建模時(shí)傾向于“能用就行”字段名隨便起、類(lèi)型隨意選、長(zhǎng)度估著填。結(jié)果業(yè)務(wù)跑了大半年數(shù)據(jù)質(zhì)量慘不忍睹報(bào)表根本取不出數(shù)更談不上企業(yè)信息化決策支持。舉一個(gè)常見(jiàn)的問(wèn)題手機(jī)號(hào)字段。有人定義為字符串20位有人定義為數(shù)字類(lèi)型。數(shù)字類(lèi)型遇到手機(jī)號(hào)首位是0的情況就直接丟了字符串20位倒是能存但沒(méi)有校驗(yàn)格式業(yè)務(wù)人員可以填“無(wú)”“未提供”“138xxxx”最后用來(lái)做客戶觸達(dá)時(shí)全是臟數(shù)據(jù)。正確的做法是在SMP里用字符串類(lèi)型14位并配置正則校驗(yàn)規(guī)則不符合手機(jī)號(hào)格式的不允許保存。類(lèi)似地金額字段必須用DECIMAL類(lèi)型禁止用浮點(diǎn)型避免精度誤差日期字段必須用日期類(lèi)型禁止用字符串否則排序和區(qū)間篩選全是坑。字段配置的自查清單我整理過(guò)幾點(diǎn)字段類(lèi)型是否匹配業(yè)務(wù)語(yǔ)義長(zhǎng)度是否覆蓋最大輸入值是否配置了必填校驗(yàn)是否有格式校驗(yàn)是否有默認(rèn)值是否建立了索引變更字段名時(shí)是否同步更新了歷史數(shù)據(jù)這六條每一條都能救你一命。5.3 服務(wù)接口命名混亂維護(hù)人的噩夢(mèng)SMP里可以配置很多服務(wù)接口、定時(shí)任務(wù)、消息通知。當(dāng)項(xiàng)目規(guī)模變大之后服務(wù)命名混亂會(huì)讓人抓狂。我見(jiàn)過(guò)一個(gè)SMP項(xiàng)目里同一個(gè)“同步客戶數(shù)據(jù)”的服務(wù)有人叫syncCustomer有人叫customer_sync_new有人叫客戶同步2.0最后維護(hù)時(shí)根本分不清哪個(gè)在用。服務(wù)命名的規(guī)范要提前定模塊前綴 業(yè)務(wù)動(dòng)作 對(duì)象名 版本號(hào)。比如crm_sync_customer_v1mes_pull_progress_v2wap_query_order_v3。這樣一眼看上去就知道這個(gè)服務(wù)屬于哪個(gè)模塊、干什么用的、是第幾版維護(hù)起來(lái)效率高很多。企業(yè)信息化是長(zhǎng)跑前期懶一分鐘后面可能要多花十小時(shí)去猜邏輯。5.4 自查清單速查表上線前必查項(xiàng)目這里把我做SMP企業(yè)信息化項(xiàng)目上線前必查的清單列成一張表直接抄作業(yè)就能用。檢查維度核心檢查項(xiàng)建議標(biāo)準(zhǔn)數(shù)據(jù)建模對(duì)象編碼是否唯一統(tǒng)一編碼規(guī)則自動(dòng)生成數(shù)據(jù)建模關(guān)鍵字段是否配置校驗(yàn)必填、格式、類(lèi)型、長(zhǎng)度全部明確流程配置是否覆蓋異常分支緊急、駁回、退回、轉(zhuǎn)交、終止都要有點(diǎn)位流程配置審批權(quán)限是否與組織匹配一人多崗按崗位而非人員授權(quán)報(bào)表指標(biāo)口徑是否與業(yè)務(wù)對(duì)齊有口徑說(shuō)明文檔并簽字確認(rèn)報(bào)表大數(shù)據(jù)量是否做了匯總表匯總表 明細(xì)表分離查詢走匯總表集成接口字段映射是否一致編碼規(guī)則轉(zhuǎn)換處要有轉(zhuǎn)換文檔集成同步失敗是否有告警有重試機(jī)制 告警通知操作體驗(yàn)高頻業(yè)務(wù)操作是否簡(jiǎn)化保存按鈕是否在首屏觸達(dá)位置操作體驗(yàn)單據(jù)編號(hào)是否可讀編號(hào)包含業(yè)務(wù)含義方便口頭溝通每次上線前照著這張表一項(xiàng)項(xiàng)過(guò)基本能避免絕大多數(shù)低級(jí)問(wèn)題。這套清單在我做的項(xiàng)目里反復(fù)打磨過(guò)很多輪確實(shí)是實(shí)戰(zhàn)里攢出來(lái)的經(jīng)驗(yàn)。結(jié)尾的幾句實(shí)在話做了這么多年的企業(yè)信息化又一直在SMP語(yǔ)言這個(gè)方向持續(xù)深耕我個(gè)人最大的體會(huì)是信息系統(tǒng)拼到最后拼的不是功能堆砌而是建模的克制、流程的務(wù)實(shí)、服務(wù)命名的整潔以及對(duì)行業(yè)業(yè)務(wù)邏輯的理解深度。SMP語(yǔ)言基礎(chǔ)東西不難難的是你愿不愿意沉下心去理解業(yè)務(wù)、抽離共性、沉淀模板。最后再分享一個(gè)小技巧每次做完一個(gè)模塊強(qiáng)制自己寫(xiě)一份“配置說(shuō)明業(yè)務(wù)口徑說(shuō)明”的文檔哪怕只有三頁(yè)紙半年后你就會(huì)感謝當(dāng)時(shí)的自己。企業(yè)信息化這條路很長(zhǎng)但有了跨行業(yè)的抽離視角和SMP這類(lèi)平臺(tái)的支撐路會(huì)越走越寬。