0 引言
復雜產品的復雜性不僅體現在產品的組成復雜、技術復雜,同時體現在其客戶需求復雜、項目管理過程復雜等方面。產品數據管理技術能夠為復雜產品研發(fā)過程中的數據管理、文檔管理等需求提供有效支持。從產品數據管理系統的功能、體系結構、數據模型等方面做了研究,這些研究主要通過面向對象技術進行產品數據建模,由于模型中數據對象的屬性、操作與數據對象之間的關聯關系處于代碼級別的緊耦合狀態(tài),當業(yè)務邏輯發(fā)生變化時,系統修改成本很高。一些學者針對此問題進行了研究。提出業(yè)務基元的概念,以滿足數據管理的靈活性。業(yè)務基元是指包含一類設計對象以及與之相關的屬性和業(yè)務操作的單元,其包含的內容可以進行自由配置。從廣度、深度、粒度三個維度全面描述了產品的生命周期信息,在此基礎上從版本和映射兩個角度研究了產品的動態(tài)演化過程。研究通過領域綱要與領域模板定義元模型,以及動態(tài)實例化生成應用模型的方法,以實現模型驅動下的系統快速開發(fā)。結合代理技術與模型驅動軟件架構,研究了如何提高系統的適應性與擴展能力。結合元模型建模技術,研究了可定制的產品數據模型。復雜產品研發(fā)過程中不同設計人員可能使用不同的系統,這對產品數據管理又提出了異構數據共享與集成的需求。在這方面,將元數據建模與本體結合,通過產品數據本體保證產品數據的一致性;研究構建了網絡化協同設計平臺,使用標準數據格式進行異構系統集成;研究了基于單一數據源的飛機產品工程數據集成。本研究在以上研究的基礎上,建立了面向復雜產品數據管理的適應性模型(adaptive model for complex product data management,APDM),該模型具有良好的表達能力與靈活性,能夠快速響應復雜產品數據管理需求變化,提高產品數據管理系統的適應性。本文對APDM以及基于該模型設計的適應性產品數據管理系統的系統結構、基于可擴展標記語言(extendable markup language,XML)格式的異構系統數據交換接口進行了闡述與分析,并給出了所開發(fā)的系統在集成電路裝備研發(fā)團隊的應用實例。
1 APDM
傳統產品數據管理系統通常建立在面向對象的模型基礎之上,數據實體由類作封裝,類中的屬性反映了實體的特征,類中的操作反映了業(yè)務規(guī)則。基于這種建模手段,大量領域知識被封裝到系統的代碼中,修改成本很高。適應性對象模型對類、屬性和關系等通過元模型進行進一步抽象,并在元模型的基礎上建立領域模型,元模型和領域模型記錄在數據庫或文件系統中,在運行時通過解釋機制將模型動態(tài)實例化。這樣當業(yè)務需求發(fā)生變化時,通過配置領域模型即可以實現系統的動態(tài)修改,而不需要重新部署。本節(jié)借鑒了適應性對象模型的設計思想,首先給出了ADPM的元模型,然后在元模型的基礎上建立了ADPM的領域模型,并對APDM模型的性能進行了分析。
1.1 ADPM元模型
元模型是對模型域的抽象,也是建立領域模型的基礎。復雜產品數據管理的適應性模型的元模型包括4個基本類:實體類、屬性類、關聯類、操作類。
(1)實體類。實體類是對具體產品數據的抽象,產品零部件、CAD文檔、仿真分析文檔、工藝文檔等都是實體類的實例。實體類定義如下:
其中EnID為實體對象的唯一確定標識;Set{(Att,Vatt)}為二元組(Att,Vatt)的集合,其中Att表示屬性對象,Vatt為屬性對象的值;Set{Rel}為實體中包含的關系對象的集合;Set{Oper}表示實體中包含的操作對象的集合。屬性、關系以及操作類的定義將在下文闡述。
(2)屬性類。屬性是對實體特性的描述。產品零部件的材料、性能參數,CAD圖文檔的創(chuàng)建時間、版本、圖號等,都是屬性類的實例。屬性類的定義如下:
其中Att ID為屬性對象的唯一確定標識;Att Name為屬性對象的名稱;Att Value Type為屬性對象的取值類型,如整型、字符串、浮點型等;Domain為屬性對象取值的有效范圍。
(3)關聯類。關聯表示實體之間的聯系,零部件之間的裝配關系、零部件實體與圖文檔的依賴關系等都是關聯類的實例。在傳統面向對象模型中,實體之間的關聯關系通過一個實體對象作為另一個實體的數據成員體現,是一種緊耦合的實現方式,本文中的元模型將關聯作為獨立的對象加以定義,完成實體的松散耦合與靈活配置。關聯類的定義如下:
其中ReIID為關聯對象的唯一確定標識;Relype為關聯類型的語義描述,如版本關聯類型、聚合關聯類型等;subject和object分別為關聯關系的主體和客體,它們均是實體類對象實例,關聯關系的客體可以為多個,故用集合的形式描述。Set{object}為非空集合,其包含的元素個數大于1時,表明為一對多的關聯類實例,如零部件的聚合關聯,因為一個部件可以由多個部件或零件組成;當其包含元素個數為1時,標明為一對一的關聯類示例,如零部件的網格劃分文檔與零部件的仿真結果之間的關聯必須是一一對應的。
(4)操作類。操作類是對產品數據實體的操作的抽象,更新文件版本、配置產品結構都是操作類實例。操作類的定義如下:
其中Oper ID為操作類對象的唯一確定標識;Input{object}與Output{object}分別操作的輸入輸出對象集合,這里的對象可以是上述實體類、屬性類以及關聯類的實例;OperImpl為操作的實現。
上述的元模型中實現了實體與屬性、實體與關聯、實體與操作的分離。將屬性、關聯與操作以集合的形式裝入實體中,具體實體對象中包含的屬性、關系與操作都可以在配置文件中進行動態(tài)配置并在運行時解釋執(zhí)行,從而避免了修改源代碼,能夠更快適應業(yè)務的變化,滿足復雜產品數據管理的需求。
在復雜產品開發(fā)過程中,往往需要多個設計主體的協同合作,每個設計主體的關注點是不同的,為此引入“切面”的概念來描述產品不同類型的信息。切面是設計主體感興趣的某一類實體和與其相關的關聯類對象與操作類對象的集合,產品的需求定義、仿真信息、工藝信息等都是產品的不同切面。切面的定義如下:
其中Set{En}表示設計主體關注的實體對象集合;Rel(Set{En})和Oper(Set{En})分別是與集合中實體相關的關系類對象與操作類對象。
1.2 APDM領域模型的建立與分析
在元模型定義的基礎上,建立面向復雜產品數據管理的領域模型。從信息變化的角度來看,產品的設計過程是以產品結構為中心的設計信息不斷豐富的過程,故以產品結構作為APDM領域模型的組織所有工程數據與文檔的中心。產品零部件實體之間通過聚合關聯類實例組成產品結構樹,產品的功能定義文檔、CAD模型文件、仿真分析結果、工藝加工文檔、供應商信息等文檔實體都通過依賴關聯類實例與產品結構樹的零部件實例產生關聯,不同類型的文檔實體與數據組成產品數據的不同切面,同時切面中的數據實體通過關聯類進行映射與交互。APDM領域模型的整體框架如圖1所示。
圖1 APDM領域模型框架
在APDM領域模型中,最重要的兩類實體模型是產品零部件實體和文檔實體。下面通過產品結構管理和文檔的版本管理兩個角度分析APDM模型的性能。
產品結構管理是產品數據管理中一項重要內容,在復雜產品的研發(fā)過程中,產品結構樹處于不斷演化之中。在APDM中,產品結構樹通過零部件實體對象與聚合關聯類對象組成,產品結構管理在APDM中表現為對聚合關聯類對象中關聯客體集合中包含的零部件實體的操作。定義聚合關聯類為Rel=(ReIID,ReIType=‘COMPOSE’,subject,Set(object)>,其中subject表示裝配關系中部件實體,Set(object)為裝配關系中組件實體的集合。如圖2所示,部件A由零件A和零件B構成,其聚合關聯類中客體集合包含兩個元素,即Part_A和Part_B,當為部件A添加零件C時,只需要修改原聚合關聯類中的客體集合,將零件Part_C放入Set(object)中即可。由于將零部件實體與其之間的聚合關聯解耦,調用操作類修改上述聚合關聯類時,對零部件實體本身或其他相關數據不需要做任何改變。
圖2 產品結構管理的APDM描述
文檔版本反映了產品數據的動態(tài)演化過程,文檔的版本演化規(guī)則一般有兩種:線型模型與樹狀模型。線型模型是指一個文檔的版本有至多一個前驅版本和至多一個后繼版本,沒有前驅版本的文檔為初始文檔,沒有后繼版本的文檔為最終文檔,其他文檔均為中間版本文檔。如果規(guī)定同一個文檔可能派生出多個后繼版本,這時版本演化規(guī)則將變?yōu)闃錉钅P汀T贏PDM中,使用版本關聯類來完成文檔版本的管理與控制。定義版本關聯類為Rel=<RelID,RelType=‘VERSION’,subject,Set(object)>,其中subject實體表示低級版本,而Set(object)表示該subject的后繼高級版本集合,當Set(object)被約束為單元素集合時,版本管理規(guī)則為線性模型,而當Set(object)可以包含多個實體元素時,版本演化將演化為一個樹狀模型,如圖3所示。
圖3 版本規(guī)則的APDM描述
2 基于APDM的系統結構
基于APDM,本文設計了面向復雜產品的數據管理系統的體系結構,如圖4所示。
圖4 基于APDM的復雜產品數據管理系統體系結構
系統結構分為數據層、對象層、服務層、界面層以及APDM模塊與異構系統數據交換接口模塊兩個模塊。數據層中包括產品數據庫與文檔柜,存放產品的所有工程數據與文檔。APDM模塊包含元模型,領域模型和解釋引擎三部分。其中領域模型是基于元模型定義并針對具體的業(yè)務而構建的數據模型,是對元模型的實例化。復雜產品數據管理的領域模型包括零部件實體、文檔實體、聚合關聯、依賴關聯、版本關聯、各種屬性類以及操作類等的定義。解釋引擎則根據定義好的領域模型在運行時完成模型的實例化,并結合產品數據庫中的數據生成數據對象與業(yè)務操作對象,它們構成了系統的對象層。服務層包括支撐服務與應用服務,界面層負責調用相應服務并與用戶交互。
基于APDM的系統架構與一般的分層系統架構的主要區(qū)別在于,其數據對象與業(yè)務操作對象構成的對象層并不是對產品數據的直接抽象,而是基于產品數據由APDM的解釋引擎將領域模型動態(tài)實例化生成。當需求發(fā)生變化時,領域專家可以快速修改與配置領域模型,并通過解釋引擎重建持久化對象,快速滿足復雜產品數據管理的變化需求。
復雜產品研發(fā)通常為多個設計主體的協同合作,各設計主體之間可能使用不同的設計系統。為了滿足異構系統中產品結構數據能夠共享,使產品結構作為組織所有的工程數據和文檔的中心數據,本文設計了基于XML中性文件的異構系統的數據接口。如圖5所示,用戶系統通過XML轉換器將自身產生的數據轉換成XML格式的中性文件,系統通過XML轉換器將XML中性文件轉換成結構化數據并存人數據庫中,XML轉換器必須滿足事先定義好的XMLScheme文件規(guī)范,以保證XML中性文件中數據的正確性與完備性。
圖5 異構系統產品數據交換接口
3 工程應用
集成電路(integrated circuit,IC)裝備是典型的工業(yè)復雜產品,已經成為一個國家科技發(fā)展的制高點之一。IC裝備的研發(fā)受到國家重大科技專項的支持,正處于快速發(fā)展階段,但由于技術并未成熟,數據管理需求在研發(fā)的不同階段呈現不同的狀態(tài),另一方面,IC裝備研發(fā)過程需要多領域多學科的研究人員參與,其數據管理必須滿足不同領域異構系統的集成需求。本文開發(fā)了面向IC裝備研發(fā)的適應性產品數據管理系統,并應用于某IC裝備研發(fā)團隊。系統以J2EE作為技術支持平臺,結合Struts2、Spring,Hibemate等開源框架、XML序列化與反序列化工具、工作流引擎等技術開發(fā)。
首先根據IC裝備研發(fā)團隊的具體數據管理需求定制其初步領域模型。構建數據實體類對象,包括產品對象、部件對象、零件對象、設計文檔對象、仿真文檔對象、訂單對象、外協外購對象,等等;分析需要管理的各數據實體對象的屬性,構建材料、日期、名稱、地址等等屬性對象;構建關聯類對象,如構建聚合關聯類來完成產品結構樹建立,構建依賴關聯類以描述設計文檔與零部件的依賴關系,構建版本關聯類以表示文檔的版本演進關系;構建對以上數據對象、屬性對象、關聯對象的操作類對象,如版本操作,產品結構配置操作等;最后構建不同的切面對象,為不同用戶提供不同的視圖,如圖文檔管理視圖、仿真信息視圖等。本文構建的領域模型使用XML文件定義,解釋引擎基于XML解析技術與java的反射機制開發(fā),在系統運行時完成XML領域模型的動態(tài)實例化。領域模型中零部件實體對象以及其引用的材料屬性對象與聚合關聯對象的XML定義片段如圖6所示。
圖6 零部件實體的領域模型定義
由于產品的復雜性,IC裝備研發(fā)中的數據管理需求處于不斷迭代之中。相比于傳統的數據管理系統,本文開發(fā)的適應性產品數據管理系統能夠更好地響應需求的變化,降低系統實施成本。系統的適應性包含三個層次:(1)元模型的適應性。系統使用的元模型中將數據實體、屬性、操作、關聯關系解耦,當對數據實體進行操作時,不會對其他對象產生影響,如產品結構配置,只需要調用相應的操作修改聚合關聯對象,而產品數據本身不需要發(fā)生變化。(2)可配置領域模型的適應性。系統的領域模型通過外部的配置文件保存,系統功能需要修改時,只需要對配置文件進行相應修改,通過解釋引擎重建數據對象,系統無需再次部署即可生效。例如添加新的文檔類型,擴充材料屬性的可選項等,這些操作制度要修改領域模型的XML配置文件。(3)可配置切面提供的適應性。切面類定義了一類實體及其相關的關聯、操作等。不同的切面可以為關注點不同的設計人員提供不同的數據管理視圖。切面類在配置文件中保存,當設計人員的視圖需求發(fā)生變化時,如需要增加查看外協訂單的視圖,則可以動態(tài)新建外協訂單切面,令其包含的外協訂單文檔實體及其相關對象,可快速為設計者提供所需視圖。
IC裝備研發(fā)團隊的結構設計工程師主要使用Solidworks軟件進行建模。為了和其他設計仿真及工藝軟件完成數據交互與集成,根據圖5所示的異構系統產品數據交換接口設計方案,實現了Solidworks Workgroup PDM與本系統的產品結構數據集成。在此基礎上,本系統以產品結構樹為中心,完成了產品數據管理、文檔管理、仿真信息管理等數據管理需求。圖7中右上方為設計人員在Solidworks Workgroup PDM中模型的裝配結構樹,通過基于XML異構系統接口導入至本系統,并通過產品結構樹管理各個零部件的需求定義文檔。
圖7 Solidworks Workgroup PDM的系統接口及文檔管理實現
4 結論
本文結合適應性對象建模思想,建立了面向復雜產品數據管理的適應性模型(APDM),給出了其元模型定義與領域模型框架,并開發(fā)了基于該模型的產品數據管理系統。對模型的分析表明其相比于面向對象具有更強的靈活性與表達能力,并通過在IC裝備這一典型工業(yè)復雜產品研發(fā)中的應用,證明了通過將領域模型定義獨立于程序代碼,能夠快速重建數據對象,及時滿足IC裝備研發(fā)中不穩(wěn)定的產品數據管理需求。同時基于XML的產品數據交換接口能夠完整實現異構系統的產品結構數據交互,系統可以構建單一的產品數據樹,并通過將不同類型的數據實體與產品結構中的零部件關聯,完成了IC裝備研發(fā)中的產品數據管理任務。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:面向復雜產品數據管理的適應性模型研究