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