用設(shè)計(jì)的思路解讀“庫(kù)存鎖定”功能_第1頁(yè)
用設(shè)計(jì)的思路解讀“庫(kù)存鎖定”功能_第2頁(yè)
用設(shè)計(jì)的思路解讀“庫(kù)存鎖定”功能_第3頁(yè)
用設(shè)計(jì)的思路解讀“庫(kù)存鎖定”功能_第4頁(yè)
用設(shè)計(jì)的思路解讀“庫(kù)存鎖定”功能_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、用設(shè)計(jì)的思路解讀“庫(kù)存鎖定”功能-實(shí)施顧問(wèn)需具備的系統(tǒng)架構(gòu)思維幾次在微信中提到用軟件架構(gòu)的思想去學(xué)軟件,今天更有感觸,基于標(biāo)準(zhǔn)產(chǎn)品的交付會(huì)越來(lái)越少,標(biāo)準(zhǔn)的核算和基礎(chǔ)的HR項(xiàng)目也會(huì)越來(lái)越少,更多的項(xiàng)目一定會(huì)向業(yè)務(wù)延伸,而且延伸的程度會(huì)越來(lái)越深,這意味著標(biāo)準(zhǔn)產(chǎn)品交付的模式將會(huì)受到?jīng)_擊,基于標(biāo)準(zhǔn)產(chǎn)品下的個(gè)性化開(kāi)發(fā)會(huì)越來(lái)越多,如何在利用標(biāo)準(zhǔn)產(chǎn)品、利用現(xiàn)有系統(tǒng)平臺(tái),通過(guò)一個(gè)好的業(yè)務(wù)設(shè)計(jì)實(shí)現(xiàn)用戶的需求的能力,對(duì)實(shí)施顧問(wèn)會(huì)越來(lái)越重要。要具備這個(gè)能力,首先要學(xué)會(huì)用軟件設(shè)計(jì)的思想對(duì)產(chǎn)品功能進(jìn)行深度剖析,漸漸的你會(huì)能站在產(chǎn)品的架構(gòu)層面看產(chǎn)品,你就會(huì)對(duì)產(chǎn)品隨心所欲。用一個(gè)例子來(lái)說(shuō)明,我們用兩種思路來(lái)學(xué)習(xí)“銷(xiāo)售訂單”

2、這個(gè)功能。首先用常規(guī)的產(chǎn)品功能層面來(lái)學(xué):我們開(kāi)始一項(xiàng)一項(xiàng)的學(xué)習(xí),從訂單的基本操作增刪改查審開(kāi)始,到訂單的所有相關(guān)流程,多訂單相關(guān)的各種控制,例如價(jià)格、合同、信用、收款、庫(kù)存控制等,再到銷(xiāo)售訂單對(duì)生產(chǎn)、采購(gòu)的影響功能,甚至訂單中個(gè)性化的客戶定制化的BOM,其實(shí)你還是學(xué)的很不錯(cuò)。不過(guò)我們今天換個(gè)思路來(lái)學(xué)習(xí),除了掌握上述功能,作為一個(gè)管理科學(xué)與計(jì)算機(jī)技術(shù)交叉的行業(yè),除了產(chǎn)品功能和業(yè)務(wù)實(shí)現(xiàn)外,我們來(lái)嘗試從軟件設(shè)計(jì)角度學(xué)習(xí)一下訂單,再進(jìn)一步,就深入理解一下銷(xiāo)售訂單鎖定庫(kù)存這個(gè)功能。我們知道很多流通企業(yè)都有一個(gè)需求,希望在客戶下達(dá)訂單時(shí),檢查倉(cāng)庫(kù)是否有貨,有貨下達(dá)訂單結(jié)束后,能對(duì)這些庫(kù)存鎖定,不能挪為它用

3、。我們開(kāi)始想象如何實(shí)現(xiàn)這個(gè)功能,先不管軟件,我們可以這樣分析一下,想到如下兩種方案:第一種:庫(kù)存就像一個(gè)水池A,但客戶下達(dá)訂單后,我們把A水池的水移動(dòng)到B水池中,A中的都是可以隨便使用的,B水池中的都是名花有主的,這樣我們只要隨時(shí)檢查A水池是否夠;第二種:在A水池上增加一個(gè)計(jì)量刻度,每次下訂單后,就將計(jì)量刻度按照訂貨量上升一點(diǎn),刻度之上的可用,刻度之下的名花有主。這兩種方法第一種顯然是自由的和鎖定的完全隔離,第二種實(shí)際上都在一個(gè)池子,可以互換,只要整個(gè)池子還有水,當(dāng)然第一個(gè)方案屬于強(qiáng)硬型方案,可以理解為庫(kù)存硬鎖定,第二種方案實(shí)際是通過(guò)可用量在控制。從程序設(shè)計(jì)角度去看,第一種方案簡(jiǎn)單粗暴型,直接

4、上去把庫(kù)存給分離出去,所以我們可以想象一定有一個(gè)庫(kù)存分離的過(guò)程存在,系統(tǒng)控制的是自由庫(kù)存中是否還有數(shù);第二種方案比較溫柔,沒(méi)有把庫(kù)存數(shù)據(jù)直接分離走,而是通過(guò)不停的計(jì)算是否還有可用量是否大于0。我們也可以分析出第一種方案,由于有數(shù)據(jù)分離的過(guò)程,所以更加可控,例如我們完全可以控制分離多少出去,可以更靈活的處理一些特殊場(chǎng)景,而第二種只是簡(jiǎn)單的通過(guò)倉(cāng)庫(kù)和訂單的量來(lái)計(jì)算,比較理論,從控制的角度看可調(diào)節(jié)性較差,但從另外一個(gè)單據(jù)管理的靈活性看,第二種顯然比較靈活,因?yàn)榈诙N沒(méi)有實(shí)際的分離動(dòng)作,數(shù)據(jù)還混在一起,所以系統(tǒng)不會(huì)控制訂單與分離鎖定數(shù)據(jù)之間的邏輯關(guān)系,第一種方案則需要考慮這個(gè)關(guān)系,因?yàn)閷?duì)訂單的影響也就

5、更復(fù)雜,所以一個(gè)不太規(guī)范的管理,用第一種方案實(shí)施難度較大。上面用形式化的語(yǔ)言描述一些一下方案后,我們?cè)傧胂霃南到y(tǒng)角度如何實(shí)現(xiàn)了,第一種方法把庫(kù)存都搬走了,剩下的屬于可用的,對(duì)應(yīng)NC系統(tǒng),就有對(duì)應(yīng)搬走的單子(當(dāng)然不是出庫(kù)單,只是一種內(nèi)部的庫(kù)存鎖定單據(jù)),就有剩下的現(xiàn)存量,于是系統(tǒng)可以實(shí)施記錄這個(gè)存量,通過(guò)這個(gè)存量你就可以實(shí)現(xiàn)控制。第二種實(shí)際并沒(méi)有被搬走,也沒(méi)有相關(guān)單據(jù)反應(yīng)這種庫(kù)存的控制,實(shí)際上是通過(guò)一種總額控制模式,于是你會(huì)想到,他應(yīng)該是通過(guò)現(xiàn)存量+預(yù)計(jì)入庫(kù)-預(yù)計(jì)出庫(kù)(訂單未出庫(kù)量)=可用量,可用量大于0意味著還有可用庫(kù)存。于是你再想到第一種方案可能是通過(guò)一個(gè)靜態(tài)的結(jié)存數(shù)控制庫(kù)存是否可用,第二種

6、通過(guò)一個(gè)動(dòng)態(tài)的公式計(jì)算是否可用。再進(jìn)一步,我們都可以找到上述業(yè)務(wù)在NC中對(duì)應(yīng)的操作節(jié)點(diǎn),例如庫(kù)存的鎖定,可用量的計(jì)算公式設(shè)置等。于是我們可以更深入的思考了,第一種方案我們說(shuō)搬走了,其實(shí)只是一個(gè)系統(tǒng)動(dòng)作,可能并沒(méi)有實(shí)物上的動(dòng)作,我們所謂的存量這個(gè)靜態(tài)的值,其實(shí)也是計(jì)算機(jī)算出來(lái)的,系統(tǒng)是否真需要這個(gè)被搬走后的靜態(tài)值存在?我們完全可以用系統(tǒng)中的數(shù)據(jù)(入庫(kù)-出庫(kù)-鎖定)來(lái)計(jì)算這個(gè)值嗎?但是系統(tǒng)卻真不是這樣的,再向后臺(tái)深入一步,發(fā)現(xiàn)后臺(tái)真有一張獨(dú)立的現(xiàn)存量表來(lái)記錄這個(gè)實(shí)時(shí)庫(kù)存(NC中是ic_onhandnum,U8中CurrentStock),為什么需要,再分析,可以想象這是為系統(tǒng)效率著想,想想如果有大

7、量歷史數(shù)據(jù),每次都從所有的歷史數(shù)據(jù)中計(jì)算庫(kù)存,需要花多長(zhǎng)時(shí)間啊,但是每張單保存時(shí)把實(shí)時(shí)庫(kù)存更新一下是很快的。由此很快我們很快明白了,為什么系統(tǒng)會(huì)有一個(gè)現(xiàn)存量整理功能,用來(lái)修正錯(cuò)誤的現(xiàn)存量,冗余的數(shù)據(jù)庫(kù)設(shè)計(jì),提高了效率,必然造成穩(wěn)定性下降。當(dāng)然如果你富有供應(yīng)鏈的經(jīng)驗(yàn),我們可能曾經(jīng)發(fā)現(xiàn),這個(gè)整理似乎也有點(diǎn)Bug,如果某一個(gè)存貨結(jié)存為0后,一經(jīng)整理,這個(gè)存貨在現(xiàn)存量表中的記錄就沒(méi)了,偏偏系統(tǒng)的盤(pán)點(diǎn)單中的存貨就是取的現(xiàn)存量中的數(shù)據(jù),這些沒(méi)有結(jié)存的存貨就不出現(xiàn)在盤(pán)點(diǎn)單上了,系統(tǒng)中沒(méi)有結(jié)存,并不表示不盤(pán)點(diǎn),于是這里出現(xiàn)了一個(gè)小小的難題了,當(dāng)然你會(huì)說(shuō)那就保存那些為0的記錄行不就行了,也許真的可以,不過(guò)我們?cè)?/p>

8、研究下面的問(wèn)題后,你會(huì)發(fā)現(xiàn)這個(gè)問(wèn)題也不那么簡(jiǎn)單。上面我們研究了一下存量的一些設(shè)計(jì)思路,不過(guò)我們還需要向前一步,從數(shù)據(jù)的角度,研究一下現(xiàn)存量表的后臺(tái)存儲(chǔ): 我們可以發(fā)現(xiàn)兩個(gè)密碼,一是發(fā)現(xiàn)現(xiàn)存量是沒(méi)時(shí)間概念的,現(xiàn)存量都是最新的,由于沒(méi)有時(shí)間概念,于是可以理解了為什么系統(tǒng)雖然參數(shù)不允許負(fù)庫(kù)存,但是系統(tǒng)有時(shí)查看報(bào)表卻產(chǎn)生了負(fù)數(shù),由于控制表無(wú)時(shí)間概念,所以如果單據(jù)時(shí)間不規(guī)范就可能出現(xiàn)問(wèn)題,例如用較大的時(shí)間做了入庫(kù)單,再用較小的時(shí)期做出庫(kù)單,所以有時(shí)候用戶會(huì)查庫(kù)存告訴你某一天出庫(kù)量大于那一天的庫(kù)存來(lái)證明軟件似乎出錯(cuò)了,其實(shí)系統(tǒng)就是這樣設(shè)計(jì)的;第二個(gè)秘密更重要,從現(xiàn)存量表的字段可以完全可以判斷系統(tǒng)對(duì)庫(kù)存的管

9、理維度,因?yàn)轱@然現(xiàn)存量表決定了系統(tǒng)的控制維度,這個(gè)維度也顯然就是庫(kù)存系統(tǒng)的管理維度,例如我們看到有庫(kù)存組織、倉(cāng)庫(kù)、存貨、主計(jì)量、供應(yīng)商、批號(hào)、輔計(jì)量,自由項(xiàng)等,這些維度都反映了庫(kù)存數(shù)據(jù)的管理維度與精度。很容易我們發(fā)現(xiàn)無(wú)論NC還是U8沒(méi)有物料狀態(tài)(待檢、報(bào)廢、可用等)這個(gè)維度的,所以這個(gè)需求只能另想辦法。所以我們能從現(xiàn)存量表看到整個(gè)庫(kù)存模塊的管理粒度,從一個(gè)點(diǎn)上你就抓住了整個(gè)庫(kù)存管理。在這個(gè)地方我必須出一道思考題了,在現(xiàn)存量表中,NC中有輔助計(jì)量單位字段,U8中卻沒(méi)有,于是我們困惑了,正常情況下,計(jì)量單位不是存貨的一個(gè)屬性嗎?如果只是一個(gè)屬性,顯然在數(shù)據(jù)庫(kù)中是無(wú)需單獨(dú)建字段的,因?yàn)閺拇尕涀侄慰梢?/p>

10、獲取,而且NC和U8在這一點(diǎn)上表現(xiàn)的還不一樣,這個(gè)地方又會(huì)充分反映多計(jì)量單位的設(shè)計(jì)思路,相信研發(fā)設(shè)計(jì)這個(gè)地方的時(shí)候一定有小小的糾結(jié)了,如果你沒(méi)糾結(jié),那基于架構(gòu)的思考可能還不到位,這是一道思考題,請(qǐng)各位從業(yè)務(wù)出手開(kāi)始分析,為什么會(huì)有糾結(jié),這反映了多計(jì)量設(shè)計(jì)可能出現(xiàn)哪些需求和潛在的問(wèn)題。第一個(gè)方案分析了一遍,發(fā)現(xiàn)后面隱藏著現(xiàn)存量這個(gè)大鱷,分析一下第二種方案,第二種方案是現(xiàn)存量結(jié)合一些公式計(jì)算,公式計(jì)算就有不穩(wěn)定性,因?yàn)楣叫枰獜牟煌牡胤饺≈?,這不是個(gè)簡(jiǎn)單的問(wèn)題,例如想到了如果訂單不發(fā)貨,訂單部分發(fā)貨,他們會(huì)怎么對(duì)可用量產(chǎn)生影響,分析一下就明白了訂單的關(guān)閉等一些列功能是多么的重要了,再開(kāi)動(dòng)腦筋,關(guān)

11、閉這個(gè)操作雖好,但是有時(shí)挺復(fù)雜的,大宗物資采購(gòu)經(jīng)常都有一定量的誤差,造成訂單處于一個(gè)部分完成的狀態(tài),如果都去人工處理關(guān)閉,多復(fù)雜,于是終于明白了為什么系統(tǒng)有自動(dòng)關(guān)閉策略;既然是公式,不同企業(yè)的規(guī)則就可能不一樣,于是就需要設(shè)計(jì)不同環(huán)境下的可用量計(jì)算公式。所以,即使一個(gè)看著挺小的功能,后面隱藏著不少業(yè)務(wù)與相對(duì)應(yīng)的系統(tǒng)設(shè)計(jì)。先就說(shuō)這多,就一個(gè)庫(kù)存鎖定的功能,也許我們隨口一說(shuō)系統(tǒng)支持,但功能的背后卻隱藏了現(xiàn)存量這個(gè)設(shè)計(jì),從現(xiàn)存量這個(gè)設(shè)計(jì)我們甚至能夠認(rèn)識(shí)整個(gè)庫(kù)存管理對(duì)庫(kù)存的管理程度,甚至找到了各種功能缺陷的真正設(shè)計(jì)原因。如果我們更深入的研究鎖定,銷(xiāo)售訂單的實(shí)例還只停留在銷(xiāo)售和成品倉(cāng)庫(kù)的鎖定,再分析一下生產(chǎn)有關(guān)的材料鎖定,再向采購(gòu)與加工環(huán)境延伸,怎么從訂單環(huán)節(jié)開(kāi)始鎖定,就一個(gè)鎖定功能,甚至可以打通整個(gè)業(yè)務(wù)系統(tǒng)。就這樣我們從業(yè)務(wù)推功能,從功能推設(shè)計(jì),從設(shè)計(jì)追數(shù)據(jù),再?gòu)臄?shù)據(jù)又能發(fā)現(xiàn)系統(tǒng)的設(shè)計(jì),從這些設(shè)計(jì)你又能明確系統(tǒng)能實(shí)現(xiàn),能怎么實(shí)現(xiàn)那些功能,于是我們愈發(fā)清晰和明白了,業(yè)務(wù)、功能、架構(gòu)、數(shù)據(jù)都開(kāi)始融為一體了,這也許就是氣功中所謂的任督二脈打通了的感覺(jué)。我們實(shí)施顧問(wèn)開(kāi)始具備

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論