倉庫管理器:一個庫存的分析模式
2008-4-5 23:50:00 來源:物流天下 編輯:56885 關(guān)注度:摘要:... ...
現(xiàn)代制造系統(tǒng)中,制造過程中所涉及信息的管理已經(jīng)成為降低產(chǎn)品成本,提高產(chǎn)品質(zhì)量的一個關(guān)鍵因素。很多公司和機(jī)構(gòu)在這個領(lǐng)域投入了大量的資源,制造資源計劃系統(tǒng)(MRP)已經(jīng)變得重要了。庫存是MRP系統(tǒng)中最重要的一部分,用來跟蹤目標(biāo)對象的數(shù)量和位置。
這里,我們開發(fā)了一個庫存模式——倉庫管理器,它滿足對可重用性和可擴(kuò)展性所期望的要求。這個模型不僅考慮了系統(tǒng)的靜態(tài)視圖,還考慮了它的動態(tài)方面。因為一個庫存控制系統(tǒng)不能被完全地模型化(除非顧及到整個制造系統(tǒng)中幾個其他方面的問題),所以模型中也包含了制造系統(tǒng)的一些功能性部分(非庫存方面)的作用。這個模型可以作為開發(fā)一個完整的制造系統(tǒng)模型的起點或是作為一個語義分析模式(Semantic Analysis Pattern)的實例,這種實例實際上是一個領(lǐng)域范圍內(nèi)可以使用的最小應(yīng)用。這個模式也是一個組裝模式,我們識別出了兩個原子模式:基本庫存(Basic Inventory)和物品分布(Item Distribution)。
現(xiàn)實需求
一個庫存系統(tǒng)應(yīng)當(dāng)具備的基本功能或用途可以總結(jié)如下:
把不同類型的貨物分開。如:物料或零部件與成品。
跟蹤倉庫中的每個物品?赡苄枰獛追N類型的數(shù)量。庫存(onHand)數(shù)量指示了物品的現(xiàn)存數(shù)量。定購(onOrder)數(shù)量指示了將來有多少物品可以入庫。保留(reserved)數(shù)量指示了為訂單保留的數(shù)量。可獲得數(shù)量是庫存數(shù)量與保留數(shù)量的差額,它暗示了一個員工以后可以使用的數(shù)量。在更復(fù)雜的系統(tǒng)中,可能還會用到其他類型的數(shù)量。
跟蹤物品的位置。庫存應(yīng)該記錄物品在特定位置上的分布。
由這些功能的本質(zhì)所決定,幾乎所有其他子系統(tǒng)都會對庫存中記錄的數(shù)量有影響。一些對庫存系統(tǒng)有直接影響并更新庫存記錄數(shù)據(jù)的功能是:采購、接收、物料的分發(fā)、審計、報廢、發(fā)運(yùn)、制造。
原子模式
我們從定義一個跟蹤物品的庫存模式——基本庫存模式開始。
物品是任何我們想知道它的存在位置和數(shù)量的東西。每一個物品屬于一個唯一的類型,這個類型提供了一個標(biāo)識,如:物品號(物品編碼,型號)。庫存(Inventory)類持有每個物品我們所關(guān)注的各種數(shù)量。這可以被認(rèn)為是一個原子模式,如語義分析模式(SAP),它既可以單獨存在,又可以作為一個更大模型的一部分。它的動態(tài)方面在組裝模式中顯示。
貨物管理器的類模型
倉庫(Stock)和零部件/產(chǎn)品(Component/Product)通過一個聚合關(guān)聯(lián)發(fā)生關(guān)系。庫存(Inventory)類中的數(shù)量(quantities)屬性是倉庫(Stock)與零部件/產(chǎn)品(Component/Product)類的結(jié)合點,不同的鏈接,有不同的值。這個模型允許設(shè)計者定義不同類型的倉庫,作為單獨的物品集合;例如,零部件倉庫,產(chǎn)品倉庫。庫存的不同類型可以歸納為一個庫存(Inventory)類。
物品被劃分成兩個不同的類型:成品和用于制造產(chǎn)品的零部件。其他的劃分方法也是可能的。產(chǎn)品(Product)類中的“型號(model)”屬性,用來作為一個唯一的標(biāo)識符,其他屬性描述了顧客選擇時可能用到的特征,如顏色等。零部件(Component)類具有物品序號,描述,類型等屬性,物品序號用來做唯一的標(biāo)識符。產(chǎn)品(Product)和零部件(Component)通常是多-多的聚合關(guān)系(一個型號的產(chǎn)品使用幾種類型的零部件,一種類型的零部件可以被用在幾種型號的產(chǎn)品中),不過這與庫存模型無關(guān)。
物品(Item)類被劃分成產(chǎn)品(Product) 和零部件(Component)子類的原因是:在這兩個實體的管理中,存在著很多不同。例如,產(chǎn)品是由一些零部件制成的,在制造過程中,庫存系統(tǒng)需要跟蹤零部件數(shù)量的變化。換句話說,零部件庫存比產(chǎn)品庫存更復(fù)雜。另一方面,兩者又在一些方面有相同之處,例如,都需要跟蹤手頭(onHand)數(shù)量(合計的總數(shù)量)和實際的存放位置。這里可以應(yīng)用泛化關(guān)系,定義庫存(Inventory)類為一個父類,含有共同的特征,而產(chǎn)品庫存(ProductInventory)和零部件庫存(ComponentInventory)類作為子類,含有每一種不同庫存類型的獨特特征。圖3的模型中也包含了從動態(tài)分析中引申出的操作,這將在下一部分描述。
動態(tài)分析
這是不夠的,我們也需要動態(tài)模型來顯示庫存怎樣隨時間而變化。在動態(tài)模型中,我們定義了為完成通用的操作而應(yīng)該具有的一般特征。具體的庫存系統(tǒng)的其他特征可以從該模型的基本配置中派生。
當(dāng)零部件或產(chǎn)品入庫時,通過調(diào)用add_to_stock操作,它們的手頭數(shù)量(onHand)增加。當(dāng)零部件或產(chǎn)品出庫時,通過調(diào)用remove_from_stock,它們的手頭(onHand)數(shù)量減少。而add_to_stock操作根據(jù)預(yù)定的規(guī)則,決定物品放在哪兒。當(dāng)零部件或產(chǎn)品被放到某個特定的倉庫區(qū)域時,操作add_to_localStock增加局部的手頭數(shù)量(localonHand)。相似地,remove_to_localStock減少局部手頭數(shù)量。
零部件或產(chǎn)品可以從一個倉庫區(qū)域遷移到另一個倉庫區(qū)域,操作transfer執(zhí)行這個動作。因為所有的移動操作既可以應(yīng)用到零部件(由Component類表示),又可以應(yīng)用到產(chǎn)品(由Product類表示)上,所以我們把這個操作放在父類Inventory中。當(dāng)零部件或產(chǎn)品移出某個倉庫區(qū)域時,remove_from_localStock操作被用來更新局部手頭數(shù)量(localonHand)。相反情況下,使用add_to_localStock操作。
最復(fù)雜的庫存變化發(fā)生在制造過程中。我們首先假設(shè)顧客的訂單已經(jīng)被處理,并形成了一張表單。表單中詳細(xì)指示了在制造某種類型的產(chǎn)品時所需的零部件--什么型號的,以及每種型號的數(shù)量;這張表單就是生產(chǎn)指令單。當(dāng)物料員根據(jù)生產(chǎn)單備料時,根據(jù)生產(chǎn)指令單上指示的數(shù)量,所需零部件保留數(shù)量的值增加。當(dāng)零部件從倉庫區(qū)域?qū)嶋H被領(lǐng)出時,保留數(shù)量和手頭數(shù)量的值減少了。當(dāng)制造過程結(jié)束時,產(chǎn)品庫存中的手頭數(shù)量增加了。通常,生產(chǎn)指令單從處理到結(jié)束,需經(jīng)歷幾天時間。備料、領(lǐng)料到制造等階段使人們知道生產(chǎn)指令單正處于什么狀態(tài)。
在圖書館庫存管理中的應(yīng)用
為了展示本模式在不同領(lǐng)域的使用,我們把它應(yīng)用到一個圖書館庫存中。
結(jié)論
產(chǎn)生的模型滿足了以下的約束:
該模式可以用于跟蹤不同類型倉庫中目標(biāo)物品的數(shù)量和它們的分布位置。
其他動作產(chǎn)生的影響可以通過調(diào)用適當(dāng)?shù)牟僮鞣从吵鰜。如圖書館的例子中指出的那樣,對庫存產(chǎn)生影響的動作在不同的應(yīng)用中可以是不同的。
盡管該模式是用制造業(yè)中的術(shù)語描述的,但它仍可以用來表示諸如圖書館、商務(wù)活動、或者其他相似的地方的庫存。
文檔,如顧客訂單,和其他一些東西,被認(rèn)為是與庫存系統(tǒng)相互作用的外部系統(tǒng)的組成部分,因此沒有在模式中表示出來。
為了使該模式能夠在多個領(lǐng)域里應(yīng)用,我們省略了:
◇ 物品的細(xì)節(jié),如結(jié)構(gòu)和描述。
◇ 存放位置的細(xì)節(jié)。
◇ 描述內(nèi)部動作的文檔,例如,在不同位置間貨物的遷移。
◇ 異常處理,例如,保留數(shù)量比實際能獲得的數(shù)量大,訂單取消等。
◇ 提示低庫存水平的報警。
◇ 歷史信息。
◇ 資金流動。
◇ 當(dāng)庫存物品為液體形態(tài)時的處理(度量液體時應(yīng)該使用不同的方法)。
◇ 這些方面應(yīng)該通過其他模式來增加,或者是開發(fā)一個包含它們的完整框架。