對于制造企業(yè)來說,隨著信息化程度的不斷提高,IT建設(shè)過程面臨諸多問題。比如企業(yè)部署了辦公自動化系統(tǒng)(OA)、客戶關(guān)系管理(CRM)、產(chǎn)品生命周期管理(PLM)、企業(yè)資源規(guī)劃(ERP)、產(chǎn)品數(shù)據(jù)管理(PDM)、人力資源管理(HR)等主要信息管理系統(tǒng)以及企業(yè)內(nèi)部的信息部門提供的專用子系統(tǒng)等,各信息管理系統(tǒng)在不斷完善自身的同時,信息化程度也不斷提高。隨著制造行業(yè)逐漸轉(zhuǎn)為個性化定制生產(chǎn)時代,制造業(yè)面臨的最大挑戰(zhàn)在于各種應(yīng)用系統(tǒng)整合,同時信息整合,決策支持,降低成本都成為制造企業(yè)生存和競爭之本,離散的信息孤島成為企業(yè)整體運營效率提升的最大瓶頸。
BOM(Bill Of Material)。即物料清單。各種BOM的數(shù)據(jù)源是分布在各個信息系統(tǒng)中的異構(gòu)數(shù)據(jù)源,因此有必要對其進行整合。而BOM的組織方式不同,目前各系統(tǒng)普遍采用單層BOM、多層BOM、混合型、矩陣型等結(jié)構(gòu),占BOM結(jié)構(gòu)99%以上,還有一些特殊用途的BOM,對這些BOM進行整合較困難。而整合BOM后能否靈活地為各部門提供及時的正確信息,也是必須解決的問題。
分布于各個系統(tǒng)的各種BOM信息的共享與關(guān)聯(lián)很困難,要做這些BOM的管理更是難上加難。在信息集成時,做一個跨各系統(tǒng)的大BOM,將多個BOM信息拷貝或映射到這個BOM里,或者就是通過綁定各系統(tǒng)之間的接口,直接進行關(guān)聯(lián),這些方式的弊端也很明顯,系統(tǒng)臃腫龐大、后期維護幾乎不可能、靈活性極差,完全滿足不了未來制造業(yè)發(fā)展需求。而放棄技術(shù)已經(jīng)成熟的信息系統(tǒng),從新架構(gòu)一個全新的企業(yè)IT系統(tǒng),這個完全很不現(xiàn)實。
要解決多個BOM的信息管理,就必須充分利用現(xiàn)有的各個系統(tǒng),這對企業(yè)的IT系統(tǒng)提出了較高要求,為了達到這種高度企業(yè)需要借助一種面向服務(wù)的架構(gòu)模式,也就是SOA。
1 SOA的架構(gòu)思想和相關(guān)技術(shù)概述
SOA(Service Oriented Architecture),面向服務(wù)的架構(gòu),是一種業(yè)務(wù)驅(qū)動的IT架構(gòu)方式,支持企業(yè)將業(yè)務(wù)整合為一系列相互銜接的服務(wù)或重復性業(yè)務(wù)任務(wù),從而使企業(yè)能夠高效重復地利用現(xiàn)有IT技術(shù)。soA技術(shù)標準有服務(wù)組件架構(gòu)(SCA,ServiceComponent Architecture)、服務(wù)數(shù)據(jù)對象(SDO,Service Data object)和業(yè)務(wù)流程執(zhí)行語言(BPEL,Business Process Execution Language),這三個技術(shù)分別解決了服務(wù)構(gòu)建、數(shù)據(jù)模型和流程編排領(lǐng)域的問題,被稱為“SOA鐵三角”。
SOA具有“整合創(chuàng)新,隨需應(yīng)變”的特征,多應(yīng)用的整合不但是跨平臺的,而且是松耦合的,被整合的應(yīng)用自身仍保持其自主,新增沒的業(yè)務(wù)功能,允許適應(yīng)變化,即隨需應(yīng)變。
采用SOA架構(gòu)有以下優(yōu)點:
(1)充分利用現(xiàn)有的資源,消除了信息孤島。
(2)更易于集成和管理復雜性?梢苑奖愕貙崿F(xiàn)企業(yè)之間的互通互連,對開發(fā)集成、維護和使用人員的素質(zhì)要求不高,使管理上大大簡化并且對復雜性可以通過中問件平臺將其隔離。
(3)更快地整合和實現(xiàn)?梢钥焖俚亻_發(fā)新的業(yè)務(wù)服務(wù),縮短開發(fā)時間,使企業(yè)迅速地對外界變化做出響應(yīng)。
(4)降低成本和增加重用。系統(tǒng)原有軟件和新增軟件都可整合在一個統(tǒng)一的架構(gòu)內(nèi),不管是哪個軟件或設(shè)備都可以融合在一個系統(tǒng)中,即使將來需要做大的動作,此基礎(chǔ)架構(gòu)仍舊可以保持不變。
以上優(yōu)點完全消除了整合異構(gòu)BOM面臨的所有困難,故本模型也是在SOA架構(gòu)思想下形成的。
2 BOM數(shù)據(jù)漫游模型
2.1漫游模型數(shù)據(jù)庫描述
采用關(guān)系數(shù)據(jù)理論和實體關(guān)系(Entity Relation.ship,ER)語義建模方法對本模型進行描述。根據(jù)該描述方法,數(shù)據(jù)庫模型描述如下:
(1)0={對象名稱(ON),實例表名(EN),對象信息描述(oD),技術(shù)參數(shù)I(KEYl),技術(shù)參數(shù)2(KEY2),?}
(2)R={關(guān)系名稱(RN),關(guān)系字段1(RFl),關(guān)系字段2(RF2),對象名稱1(ONl),對象名稱2(ON2),關(guān)系描述(RD)}
(3)A={權(quán)限名稱(AN),對象名稱(ON),權(quán)限類型(AT),權(quán)限描述(AD)}
其中:O為對象集;ON為對象名稱;EN為映射到各個系統(tǒng)的表名,目前關(guān)系數(shù)據(jù)庫支持的所有表,可為BOM結(jié)構(gòu)或非BOM結(jié)構(gòu);OD為對象作用或其它信息描述;KEY(1一n)為對象屬性信息,可用作成本或決策支持關(guān)鍵指標;R為關(guān)系集;RFl、RF2為對象關(guān)聯(lián)字段,該集合定義數(shù)據(jù)漫游初步業(yè)務(wù)流程;ON1、ON2為對象間關(guān)聯(lián)關(guān)系概要信息;RD為關(guān)聯(lián)關(guān)系概要信息描述;A為權(quán)限集,AN為對象(ON)操作權(quán)限,負責驗證對象查看、漫游等操作權(quán)限;AD為權(quán)限概要信息描述。
2.2基本術(shù)語
對象:從O中抽取的一個成員實例i,記為對象i(Oi),對象i屬性描述為記號Oi.KEYl表示對象關(guān)鍵指標字段1。
關(guān)聯(lián)關(guān)系:從R中抽取—個成員實例J,記為關(guān)系j(Rj),關(guān)系屬性描述為記號Rj.RFl,表示關(guān)系的第—個關(guān)聯(lián)字段。
權(quán)限:從A中抽取—個成員實例k,記為權(quán)限k(Ak),權(quán)限屬性同上,如Ak.AT。
2.3組件劃分
根據(jù)上述數(shù)據(jù)模型的描述,對本模型要抽象和實現(xiàn)的組件劃分如下:
(1)對象管理組件:對象Oi的定義、編輯刪除等操作及其展示;
(2)關(guān)聯(lián)關(guān)系管理組件:對上述Oi、Oi+1等對象進行關(guān)聯(lián)關(guān)系定義,提供友好界面;
(3)權(quán)限定義組件:對對象進行權(quán)限的定義,主要定義Oi的Ak.AT屬性。
(4)公共服務(wù):BOM查看、反查、列表展示,文件瀏覽等公共模塊組件。重慶斯歐信息技術(shù)有限公司產(chǎn)品STS中已經(jīng)開發(fā),這里可當做已注冊服務(wù)直接調(diào)用。
2.4業(yè)務(wù)邏輯定義
業(yè)務(wù)人員定義數(shù)據(jù)漫游首先應(yīng)有兩個以上對象,如Oi,Oi+l,Oi+2,...,這些對象之間關(guān)聯(lián)關(guān)系定義為R(i,j),R(i,j+1),R(i,j+2)....,業(yè)務(wù)邏輯要求對象兩兩之間都有關(guān)系,關(guān)系數(shù)量最大值應(yīng)為n*n-1(對象數(shù)量為n)。
對象和關(guān)聯(lián)關(guān)系定義完成后對這些對象賦予相應(yīng)的權(quán)限,如文件瀏覽權(quán)限、BOM反查權(quán)限等等。整個定義關(guān)聯(lián)關(guān)系的用例圖如圖1所示。
圖1 業(yè)務(wù)人員定義數(shù)據(jù)漫游用例圖
2.5組件實現(xiàn)
所有組件的實現(xiàn)都是在各自劃分的portlet上加以展示,實現(xiàn)也是基于portlet劃分而來,主要分為三個組件和自由公共服務(wù)。
組件的開發(fā)基本上同傳統(tǒng)WEB應(yīng)用開發(fā)一樣,可以采用經(jīng)典的WEB應(yīng)用開發(fā)模式進行開發(fā),然后開發(fā)好的應(yīng)用封裝成組件。這里特別提到IBM的Web Sphere Portlet Factory,使用此工具可以迅速實現(xiàn)—個portlet開發(fā),該工具思想也是完全依照SOA思想指導開發(fā)人員進行開發(fā),所以以上三個公共組件開發(fā)就非常簡單,工具使用可參考維基百科或IBM官方網(wǎng)站。
部分SQL如下(針對下面測試用例):
對象查看SQL:Select key1,key2,Keyn from Owhere ON=‘測試零件對象’,此SQL為對象配置時動態(tài)生成。
關(guān)聯(lián)關(guān)系SQL:Select RN from R where On1=‘測試零件對象’。
3測試用例
3.1業(yè)務(wù)流程定義
制造企業(yè)生產(chǎn)過程中,一般制造部門很難獲得零件的設(shè)計信息,發(fā)現(xiàn)設(shè)計失誤或者疑問時,不能及時有效地和設(shè)計部門溝通。本測試針對這個問題,設(shè)計—個業(yè)務(wù)流程,完成從制造BOM到設(shè)計BOM數(shù)據(jù)漫游,業(yè)務(wù)流程圖如圖2所示。
圖2 業(yè)務(wù)流程圖
3.2測試數(shù)據(jù)
測試的數(shù)據(jù)中間層采用IBM DB2II,將來自遠程DB2數(shù)據(jù)庫的MBOM和來自遠程的Oracle數(shù)據(jù)庫的EBOM表映射到本例DB2聯(lián)合數(shù)據(jù)庫中,從聯(lián)合數(shù)據(jù)庫中MBOM表和EBOM表摘取部分數(shù)據(jù)如表1、表2所示。
3.3關(guān)聯(lián)關(guān)系配置
配置上述兩個測試數(shù)據(jù)表對應(yīng)的BOM對象,分別是測試零件對象和測試文件對象,然后定義這兩個對象的關(guān)系如圖3所示。用戶配置這些信息后,可以通過對象展示查看BOM展示,如圖4所示。
3.4測試結(jié)果
用戶通過對象的公共服務(wù)(BOM查看)進入制造BOM信息瀏覽時(圖4),單擊關(guān)聯(lián)關(guān)系下拉菜單,找到用戶預先定義好的關(guān)聯(lián)關(guān)系(圖4中定義了9個),然后找到與設(shè)計BOM的關(guān)系,找到零.件的設(shè)計信息(如圖4中打開的設(shè)計圖紙)。
表1測試零件對象對應(yīng)的實例表(MBOM)
表2測試零件對象對應(yīng)的實例表(EBOM)
圖3關(guān)聯(lián)關(guān)系配置示意圖
圖4數(shù)據(jù)漫游實現(xiàn)效果圖
這樣制造部門的就可以共享設(shè)計部門的信息,在零件制造過程中隨時查閱圖紙,更好地指導生產(chǎn)。
4結(jié)論
本文探討的數(shù)據(jù)漫游模型,作為重慶斯歐信息技術(shù)有限公司“BOM容器”專利中關(guān)聯(lián)關(guān)系模塊的實現(xiàn)模塊,基于IBM WebSphere Portal服務(wù)器,最終成型產(chǎn)品,實現(xiàn)BOM容器管理的BOM對象之間數(shù)據(jù)漫游,基本解決了制造業(yè)個系統(tǒng)信息共享困難,屏蔽了信息孤島。但是由于本文引例論述簡單,沒有涉及到復雜的業(yè)務(wù)邏輯,也沒有闡述如何將模型幾個模塊封裝成服務(wù)以及與PLM 2.0等標準接軌,只是簡單闡述SOA思想下軟件組件化特點。隨后的工作中,將其封裝成公用服務(wù),接軌PLM2.0標準,并將其注冊到ESB上,結(jié)合BOM容器中其它組件,完全可以編排復雜流程,解決制造業(yè)整個產(chǎn)品生命過程信息共享和數(shù)據(jù)漫游。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/