專利名稱:一種基于領(lǐng)域本體的軟構(gòu)件分類注冊方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息資源集成應(yīng)用的語義互操作性管理與服務(wù)領(lǐng)域,特別涉及一種基于領(lǐng)域本體的軟構(gòu)件分類注冊方法。
背景技術(shù):
軟構(gòu)件(software component)是在軟件生命周期各階段可以被復用的軟件實體,它可以是被封裝的類(class)、功能模塊(module)、軟件框架(framework)、軟件構(gòu)架(architecture)、文檔和設(shè)計模式(pattern)等[1][2]。通過構(gòu)件的組裝和集成來構(gòu)造相應(yīng)的應(yīng)用軟件,可以提高開發(fā)者的開發(fā)效率、降低項目開發(fā)成本,并使得構(gòu)造的軟件系統(tǒng)更易擴充和維護。因此,軟構(gòu)件技術(shù)作為實現(xiàn)軟件復用技術(shù)的重要手段,為軟件產(chǎn)品的工業(yè)化和自動化生產(chǎn)提供技術(shù)保障和支持,引起了業(yè)界的普遍關(guān)注[3]。目前,基于構(gòu)件的軟件開發(fā)(component-based software development)已成為軟件開發(fā)的主流技術(shù),并將深刻地影響軟件生產(chǎn)方式的變革和軟件產(chǎn)業(yè)結(jié)構(gòu)的分工調(diào)整,因而被認為是促進軟件產(chǎn)業(yè)發(fā)展的關(guān)鍵因素。因此,軟構(gòu)件庫(component repository)作為影響整個軟件產(chǎn)業(yè)發(fā)展的關(guān)鍵共性軟件基礎(chǔ)設(shè)施應(yīng)優(yōu)先、著重發(fā)展。
現(xiàn)在,國外許多大的軟件公司都建立并擁有了屬于自己的軟構(gòu)件庫系統(tǒng)。如Geosoft公司建立了地理信息系統(tǒng)方面的軟構(gòu)件資源管理平臺,軟構(gòu)件的種類已擴展到桌面地理制圖系統(tǒng)、交通導航、GPS信號分析、地圖轉(zhuǎn)換及相關(guān)的應(yīng)用程序,而且這些軟構(gòu)件的編程語言、開發(fā)工具和應(yīng)用環(huán)境也各不相同。與此同時,國內(nèi)的一些高校和研究機構(gòu)也在積極開展軟構(gòu)件庫相關(guān)技術(shù)的研究,并取得了一定的成果。如北京大學開發(fā)了基于異構(gòu)平臺、具有多信息源接口的應(yīng)用系統(tǒng)集成(組裝)環(huán)境-青鳥系列(JB2[4]和JB3[5])構(gòu)件集成系統(tǒng),同時提出了一套青鳥構(gòu)件標準規(guī)范[6]和相關(guān)的開發(fā)方法[7]。但是,這些軟構(gòu)件庫及其支撐技術(shù)都存在如下一些缺點1)軟構(gòu)件的分類機制不靈活,導致構(gòu)件查詢不方便、構(gòu)件庫擴展性不強[8];2)注冊的構(gòu)件基于不同的標準,導致構(gòu)件庫互操作性(interoperability)不強,使得不同組織之間難以共享和復用軟構(gòu)件資源[9][10];3)沒有解決構(gòu)件庫相關(guān)標準與國際標準的兼容性問題,這將直接影響到構(gòu)件庫的開放性和通用性[11]。
隨著COM、CORBA和EJB等技術(shù)的廣泛應(yīng)用,軟構(gòu)件資源開發(fā)的方法與技術(shù)日趨標準化,使得互聯(lián)網(wǎng)上各領(lǐng)域的軟構(gòu)件資源越來越豐富。尤其隨著信息網(wǎng)絡(luò)時代的到來,電子商務(wù)、供應(yīng)鏈管理、電子政務(wù)等應(yīng)用興起,信息化發(fā)展對網(wǎng)絡(luò)應(yīng)用服務(wù)的需求日益迫切,高度依賴信息資源集成應(yīng)用和與之相關(guān)的構(gòu)件庫的互操作性管理與服務(wù)。然而目前的現(xiàn)狀是,雖然軟構(gòu)件注冊機制及其實現(xiàn)方法對軟構(gòu)件庫的構(gòu)造、使用和維護影響重大,但相應(yīng)的軟構(gòu)件(含中間件)資源管理的研究卻進展緩慢,仍然使用傳統(tǒng)的數(shù)據(jù)資源建設(shè)與管理的方法,已有的軟構(gòu)件分類、注冊技術(shù)(主要技術(shù)對比如表1所示)已不能有效適應(yīng)目前軟構(gòu)件資源的復雜信息結(jié)構(gòu)(屬性、接口)及其構(gòu)造、流通、管理與復用的要求[12],這成為阻礙軟構(gòu)件資源開發(fā)的方法與技術(shù)進一步發(fā)展的瓶頸。
軟構(gòu)件的屬性是非常復雜的,不僅涉及業(yè)務(wù)應(yīng)用領(lǐng)域的特征,還涉及到軟件領(lǐng)域的諸多方面,如模式、體系結(jié)構(gòu)、開發(fā)工具等。在這種情況下,建立一個大一統(tǒng)的分類注冊標準,不僅工作量大,而且難度極高;即使建立后能滿足軟構(gòu)件分類注冊的基本需要,也會因為標準過于復雜導致難以更新和維護,而不能滿足構(gòu)件庫快速發(fā)展的要求。另一方面,已有的分類注冊體系(標準)很多,但是彼此孤立,互操作性與可集成性較低,造成了管理上的無序性,嚴重影響了互聯(lián)網(wǎng)上軟構(gòu)件資源(庫)的有效管理和高效使用。因此,提供一種高效的軟構(gòu)件分類注冊方法,對于本領(lǐng)域技術(shù)人員來說是高難度的挑戰(zhàn)。
表1當前軟構(gòu)件庫采用的主要分類、注冊技術(shù)比較
文中涉及的參考文獻如下[1]楊芙清,梅宏,李克勤.軟件復用與軟件構(gòu)件技術(shù)[J].電子學報,1999,27(2)68-75. 楊芙清,王千祥,梅宏,等.基于復用的軟件生產(chǎn)技術(shù)[J].中國科學(E輯),2001,31(4)363-371. 孫昌愛,金茂忠,劉超.軟件體系結(jié)構(gòu)研究綜述[J].軟件學報,2002,13(7)1228-1237. 楊芙清,邵維忠,梅宏.面向?qū)ο蟮腃ASE環(huán)境JBII型系統(tǒng)的設(shè)計和實現(xiàn)[J].中國科學(A輯),1995,25(5)533-542. 楊芙清,梅宏,李克勤,等.支持構(gòu)件復用的青鳥III型系統(tǒng)概述[J].計算機科學,1999,26(5)50-55. 青鳥軟件生產(chǎn)線技術(shù)的引進、開發(fā)、應(yīng)用和示范工程.計算機軟件構(gòu)件復用屬性規(guī)范(QB-CAKL010516)[S].北京北京大學出版社,1996. 梅宏,陳鋒,馮耀東,等.ABC基于體系結(jié)構(gòu)、面向構(gòu)件的軟件開發(fā)方法[J].軟件學報,2003,14(4)721-732. Sugumaran V and Storey V C.A Semantic-Based Approach to Component Retrieval[J].TheDATA BASE for Advances in Information Systems,2003,34(3)8-24. Wallnau K C,Hissam S A,and Seacord R C.Building Systems from Commercial Components[M].New YorkAddisson-Wesley,2002. Xue Y J,Qian L Q,Peng X,et al.Using Abstract State Machine in Architecture Design ofDistributed Software Component Repository [A].In Proceedings of APWeb2006[C],Springer-Verlag LNCS3842,2006,pp.861-868. Song D,Liu W D,He Y F,et al.Ontology Application in Software Component Registry toAchieve Semantic Interoperability[A].In Proceedings of the International Conference onInformation TechnologyCoding and Computing[C],Las Vegas,2005,pp.181-186. Liu J,He K Q,Li B,et al.A Methodology for Acquisition of Software Component AttributeOntology[A].In Proceedings of 4thInternational Conference on Computer and InformationTechnology[C],Wuhan,2004,pp.1058-1064. 王淵峰,薛云皎,張涌,等.刻面分類構(gòu)件的匹配模型[J].軟件學報,2003,14(3)401-408.
發(fā)明內(nèi)容
本發(fā)明的目的在于針對現(xiàn)有技術(shù)中存在的問題,提供一種基于領(lǐng)域本體(domain ontology)的軟構(gòu)件分類注冊方法。
為實現(xiàn)本發(fā)明所述目的,包括以下步驟,(1)構(gòu)造一個軟構(gòu)件屬性公共本體,即各具體領(lǐng)域通用的軟構(gòu)件分類機制;(2)建立一個具體領(lǐng)域的領(lǐng)域模型,在領(lǐng)域模型的支持下,對軟構(gòu)件屬性公共本體進行細化,得到一個具體領(lǐng)域軟構(gòu)件屬性本體;(3)使用本體工具描述具體領(lǐng)域軟構(gòu)件屬性本體,并以標準格式輸出本體文件;(4)構(gòu)造具體領(lǐng)域軟構(gòu)件注冊元模型(meta-model),為獲得與異構(gòu)軟構(gòu)件庫的互操作性,制定軟構(gòu)件庫映射元模型;(5)在具體領(lǐng)域軟構(gòu)件注冊元模型和具體領(lǐng)域軟構(gòu)件屬性本體的基礎(chǔ)上,構(gòu)造面向具體領(lǐng)域的軟構(gòu)件注冊模型,在軟構(gòu)件庫映射元模型的基礎(chǔ)上,建立面向具體領(lǐng)域的軟構(gòu)件注冊模型與其它注冊模型間的映射關(guān)系;(6)使用開源工具解析本體文件,自動生成軟構(gòu)件注冊模版,使用軟構(gòu)件注冊模板進行構(gòu)件注冊。
而且,使用軟構(gòu)件注冊模板進行構(gòu)件注冊的步驟為,(6.1)輸入要注冊構(gòu)件的ID(構(gòu)件唯一標識符),如果構(gòu)件庫中存在相同的ID,提醒用戶更改構(gòu)件ID號;
(6.2)根據(jù)注冊模版中的各種屬性項(attribute item)填寫或選擇相應(yīng)的注冊信息;(6.3)根據(jù)注冊模型,使用Jena持久化構(gòu)件信息,將它保存到構(gòu)件庫中。
而且,采用ISO/IEC19763標準構(gòu)造軟構(gòu)件屬性公共本體。
而且,所述對軟構(gòu)件屬性公共本體進行細化,是在ISO/IEC19763-3本體注冊元模型的指導下,使用迭代式開發(fā)方法,對構(gòu)造的軟構(gòu)件屬性本體不斷細化。
而且,所述制定軟構(gòu)件庫映射元模型,是在ISO/IEC19763-2映射元模型的指導下,采用建立詞匯映射表的方式制定的。
而且,所述本體工具采用Protégé,所述標準格式采用OWL格式。
而且,所述開源工具采用Jena。
而且,所述其它注冊模型包括ebXML注冊模型和WSDL/UDDI注冊模型。
本發(fā)明使用領(lǐng)域本體作為軟構(gòu)件注冊的分類機制,分類靈活、易擴展,在相關(guān)本體工具的支持下,能夠自動實現(xiàn)注冊模版的生成,操作簡單;使用本體作為構(gòu)件庫邏輯上的存儲機制,整個構(gòu)件庫以及注冊的構(gòu)件會形成一個關(guān)于具體領(lǐng)域構(gòu)件信息的知識庫,能夠?qū)崿F(xiàn)基于語義的構(gòu)件查詢與推理。而且本發(fā)明構(gòu)造的領(lǐng)域本體基于國際標準,與其他標準的兼容性好,因此,建立的軟構(gòu)件庫開放性和通用性更強;并在較高層次建立與其他分類、注冊標準的映射關(guān)系,構(gòu)造的軟構(gòu)件庫因而具有更好的互操作性,便于軟構(gòu)件資源的共享與復用,也有利于跨地域、跨領(lǐng)域的集成應(yīng)用開發(fā)。
圖1本發(fā)明實施例的軟構(gòu)件注冊模型解決方案;
圖2本發(fā)明實施例的軟構(gòu)件屬性公共本體;圖3本發(fā)明實施例的具體領(lǐng)域(制造業(yè)信息化)軟構(gòu)件屬性本體;圖4本發(fā)明實施例的軟構(gòu)件注冊元模型;圖5本發(fā)明實施例的軟構(gòu)件庫映射元模型;圖6本發(fā)明實施例的具體領(lǐng)域(制造業(yè)信息化)軟構(gòu)件注冊模型。
具體實施例方式
參見附圖1,本發(fā)明包括以下步驟,(1)構(gòu)造一個軟構(gòu)件屬性公共本體,即各具體領(lǐng)域通用的軟構(gòu)件分類機制;(2)建立一個具體領(lǐng)域的領(lǐng)域模型,在領(lǐng)域模型的支持下,對軟構(gòu)件屬性公共本體進行細化,得到一個具體領(lǐng)域軟構(gòu)件屬性本體;(3)使用本體工具描述具體領(lǐng)域軟構(gòu)件屬性本體,并以標準格式輸出本體文件;(4)構(gòu)造具體領(lǐng)域軟構(gòu)件注冊元模型,為獲得與異構(gòu)軟構(gòu)件庫的互操作性,制定軟構(gòu)件庫映射元模型;(5)在具體領(lǐng)域軟構(gòu)件注冊元模型和具體領(lǐng)域軟構(gòu)件屬性本體的基礎(chǔ)上,構(gòu)造面向具體領(lǐng)域的軟構(gòu)件注冊模型,在軟構(gòu)件庫映射元模型的基礎(chǔ)上,建立面向具體領(lǐng)域的軟構(gòu)件注冊模型與其它注冊模型間的映射關(guān)系;(6)使用開源工具解析本體文件,自動生成軟構(gòu)件注冊模版,使用軟構(gòu)件注冊模板進行構(gòu)件注冊。
本發(fā)明的關(guān)鍵改進是應(yīng)用領(lǐng)域本體進行軟構(gòu)件分類注冊,構(gòu)造了軟構(gòu)件屬性公共本體、具體領(lǐng)域軟構(gòu)件注冊元模型以及軟構(gòu)件庫映射元模型。本發(fā)明實施例的具體領(lǐng)域為制造業(yè)信息化領(lǐng)域,即通過對制造業(yè)信息化領(lǐng)域知識的深入研究,借鑒已有分類注冊標準的優(yōu)點,采用ISO/IEC19763標準,在相關(guān)本體工具(如Protégé)的幫助下,首先構(gòu)造一個制造業(yè)信息化領(lǐng)域軟構(gòu)件屬性本體;然后,將該本體作為軟構(gòu)件注冊的元數(shù)據(jù)(模版)來管理具體的構(gòu)件注冊信息;最后,為了實現(xiàn)與制造業(yè)信息化領(lǐng)域其它軟構(gòu)件庫的互操作,在構(gòu)件庫映射元模型的基礎(chǔ)上,建立與基于其它分類標準或軟構(gòu)件屬性本體的注冊模型間的語義映射關(guān)系,并開發(fā)相應(yīng)的支撐系統(tǒng)。其他具體領(lǐng)域的軟構(gòu)件分類注冊方法相同。
本發(fā)明提供技術(shù)方案的理論基礎(chǔ)以便理解描述應(yīng)用系統(tǒng)中運行時實體及其關(guān)系的信息組成了系統(tǒng)的模型,而定義和表示這些模型的模型稱之為元模型。元模型定義了系統(tǒng)建模時用到的元信息,是對某一特定領(lǐng)域建模環(huán)境和內(nèi)容的規(guī)范定義,能夠表示該領(lǐng)域內(nèi)的所有或全部系統(tǒng)實例?,F(xiàn)在,隨著UML(UnifiedModeling Language)這樣的通用可視化建模語言的普及以及OMG(ObjectManagement Group)組織MOF(Meta-Object Facility)規(guī)范的發(fā)布,元模型在系統(tǒng)建模、異構(gòu)系統(tǒng)(模型)集成與互操作方面的應(yīng)用日益廣泛。元建模(meta-modeling)是一種更為抽象和系統(tǒng)化的建模技術(shù),用于創(chuàng)建和構(gòu)造元模型,便于模型、數(shù)據(jù)的格式和表現(xiàn)形式規(guī)范與統(tǒng)一。
隨著元建模技術(shù)的推廣和應(yīng)用,不同的領(lǐng)域(甚至同一領(lǐng)域)開始出現(xiàn)多種元模型格式,元模型的互操作成為信息資源共享、交換和復用要解決的關(guān)鍵問題。究其原因,主要是由于目前特定領(lǐng)域知識缺乏明確統(tǒng)一的表示和形式化的定義,造成領(lǐng)域內(nèi)的不同主體難以進行交流而達成共識。本體概念源于哲學中的本體論,用于表示概念內(nèi)涵的顯式表達和語義約定。本體能為不同范圍、不同層次的研究領(lǐng)域統(tǒng)一認識,從而消除由于應(yīng)用背景不同而造成的理解上的沖突和混亂,促進人-機、機-機之間的通信、資源共享和協(xié)同工作。因此,使用本體能很好地解決元建模存在的互操作問題,為兩者的有機融合提供了基礎(chǔ)。另一方面,本體中的基本組成元素是概念,從分析和組織一個領(lǐng)域知識的角度來看,傳統(tǒng)本體的樹型概念圖是半結(jié)構(gòu)化的,缺乏模型的描述和構(gòu)造能力。如果將本體中的概念視為對象,將對象作為本體建模的基本元素,那么概念就可以具有對象的結(jié)構(gòu),從而可以充分利用元模型框架的建模能力。因此,使用本體元建模理論與方法既能保證建模時模型應(yīng)用的本體或者建模概念間的互操作性,又能充分利用元建模技術(shù)的建模能力,便于實現(xiàn)基于模型的可復用軟構(gòu)件應(yīng)用開發(fā)。
為了能夠方便的進行軟構(gòu)件注冊,本發(fā)明提供了供用戶使用的軟構(gòu)件注冊模板。使用軟構(gòu)件注冊模板進行構(gòu)件注冊的步驟為,(6.1)輸入要注冊構(gòu)件的ID(構(gòu)件唯一標識符),如果構(gòu)件庫中存在相同的ID,提醒用戶更改構(gòu)件ID號;(6.2)根據(jù)注冊模版中的各種屬性項(attribute item)填寫或選擇相應(yīng)的注冊信息;(6.3)根據(jù)注冊模型,使用Jena持久化構(gòu)件信息,將它保存到構(gòu)件庫中。
注冊新的軟構(gòu)件只需重復由步驟(6.1)開始即可。具體實施時可根據(jù)用戶的角色(如普通用戶、開發(fā)人員和管理員)分配使用權(quán)限,對注冊的軟構(gòu)件信息和具體領(lǐng)域軟構(gòu)件屬性本體進行修改和維護。
基于國際標準實現(xiàn)本發(fā)明,由于與其他標準的兼容性好,建立的軟構(gòu)件庫開放性、通用性和互操作性更強。本發(fā)明采用ISO/IEC19763標準構(gòu)造軟構(gòu)件屬性公共本體。本發(fā)明所述對軟構(gòu)件屬性公共本體進行細化,是在ISO/IEC19763-3本體注冊元模型的指導下,使用迭代式開發(fā)方法,對構(gòu)造的軟構(gòu)件屬性本體不斷細化。軟件工程國家重點實驗室(武漢大學)主持制訂了ISO/IEC19763-3標準Metamodel for ontology registration,簡稱MFI。本發(fā)明所述制定軟構(gòu)件庫映射元模型,是在ISO/IEC19763-2映射元模型的指導下,采用建立詞匯映射表的方式制定的。ISO/IEC19763標準(全稱Informationtechnology-Framework for metamodel interoperability,中文為信息技術(shù)-元模型互操作框架)是信息技術(shù)領(lǐng)域一個重要的前置性標準,其理論基礎(chǔ)是本體元建模理論與方法,它為復雜信息資源的分類注冊、建庫管理、查詢以及互操作奠定了基礎(chǔ),因此受到了ISO官方的高度評價和推薦。ISO/IEC19763標準目前包含三部分,分別是核心模型(19763-1)、本體注冊元模型(19763-3)和映射元模型(19763-2)。核心模型由MOF和ISO/IEC11179融合構(gòu)成;本體注冊元模型繼承了核心模型,用來為本體注冊提供一個公共的元模型框架,從而統(tǒng)一各種元模型中使用的本體(特別是分類體系)的定義;映射元模型也繼承了核心模型,用來實現(xiàn)不同元模型描述和格式之間的轉(zhuǎn)換。這樣,MFI(作為最上層的核心基礎(chǔ),用來為軟構(gòu)件屬性公共本體的構(gòu)造、軟構(gòu)件庫的互操作、軟構(gòu)件注冊模型映射提供理論與實現(xiàn)基礎(chǔ)。因此,本發(fā)明具體實施時可直接采用ISO/IEC19763標準,而且采用這種已被官方認定的國際標準有利于在全球范圍內(nèi)推廣使用本發(fā)明提供的技術(shù)方案。當然,本方法并不限制于采用ISO/IEC19763標準,隨著國際標準不斷更新發(fā)展,出現(xiàn)更完善更科學的標準是可以預(yù)見的。
參見圖1,本發(fā)明實施例面向的具體領(lǐng)域為制造業(yè)信息化領(lǐng)域,基于ISO/IEC19763標準的制造業(yè)信息化軟構(gòu)件注冊模型解決方案包括三個層次MFI層,包括核心模型、本體注冊元模型、映射元模型及MFI其它部分;本體及元模型層,包括軟構(gòu)件屬性公共本體、具體領(lǐng)域(制造業(yè)信息化)軟構(gòu)件屬性本體、軟構(gòu)件注冊元模型、軟構(gòu)件庫映射元模型及ebXML注冊元模型和WSDL/UDDI注冊元模型;注冊模型層,包括具體領(lǐng)域(制造業(yè)信息化)軟構(gòu)件注冊模型(可以由不同的用戶1~N注冊視圖組成)、ebXML注冊模型和WSDL/UDDI注冊模型。
本發(fā)明具體實施例的實施過程可以是首先,進行步驟(1)~(3),制作出具體領(lǐng)域(制造業(yè)信息化)軟構(gòu)件屬性本體的文件。
綜合考慮現(xiàn)有軟構(gòu)件分類標準和應(yīng)用范圍,同時抽取和分析與軟構(gòu)件注冊相關(guān)的知識,采用ISO/IEC19763標準構(gòu)造一個軟構(gòu)件屬性公共本體,即各領(lǐng)域通用的軟構(gòu)件分類機制。該本體不僅定義和標識了各個軟構(gòu)件屬性涉及的概念及意義,還定義了概念之間的聯(lián)系和約束,使其成為一個有機的、一致的知識表示。本發(fā)明實施例的軟構(gòu)件屬性公共本體內(nèi)容和結(jié)構(gòu)如圖2所示,定義了軟構(gòu)件的各種屬性,包括功能屬性、管理屬性、注冊屬性等,還可根據(jù)具體領(lǐng)域知識添加其他子類關(guān)系的對象屬性。本發(fā)明具體實施例的功能屬性包括領(lǐng)域信息和功能信息;管理屬性包括廠商信息及相應(yīng)聯(lián)系信息(一般包括地址、聯(lián)系人、電子郵件、電話號碼、傳真號碼和主頁)和產(chǎn)品信息(一般包括附加信息、許可證、價格和版本);注冊屬性包括包(一般包括構(gòu)件的實體文件)和注冊對象(一般包括構(gòu)件在庫中的生命周期狀態(tài));技術(shù)屬性包括開發(fā)屬性(一般包括構(gòu)件的描述模型和運行時所依賴的構(gòu)件)、構(gòu)件公共屬性(一般包括編程語言、構(gòu)件容器、操作系統(tǒng)和計算機架構(gòu))和構(gòu)件技術(shù)屬性(一般包括構(gòu)件標準)。
獲取制造業(yè)信息化領(lǐng)域的基本知識(通常需要在該領(lǐng)域?qū)<覅f(xié)商下進行),建立相應(yīng)的領(lǐng)域模型(主要對概念和概念間的關(guān)系進行建模);同時,以本體樹的方式描述(表示)該領(lǐng)域模型。
以軟構(gòu)件屬性公共本體為基礎(chǔ),構(gòu)造制造業(yè)信息化領(lǐng)域軟構(gòu)件屬性本體,即將軟構(gòu)件作為領(lǐng)域模型中的一個概念與軟構(gòu)件屬性公共本體進行關(guān)聯(lián)。這是一個較為粗略的本體,還應(yīng)在領(lǐng)域模型的支持下,按照ISO/IEC19763-3的規(guī)范進行細化,得到一個更為精細的領(lǐng)域本體,同時使用Protégé進行描述,其類的層次關(guān)系如圖3所示。本發(fā)明具體實施例的制造業(yè)信息化軟構(gòu)件屬性本體包括聯(lián)系信息、聯(lián)系信息類型、可識別對象、命名類和軟構(gòu)件屬性,與圖2所示的軟構(gòu)件屬性公共本體相比,細化出了更多概念,主要是命名類,包括構(gòu)件容器、計算機架構(gòu)、開發(fā)工具、文件、文件包、許可證、操作系統(tǒng)(如Unixlike和Windows系列,例如Win32)、編程語言、軟構(gòu)件和構(gòu)件標準(包括構(gòu)件規(guī)約)。軟構(gòu)件屬性有所補充,如技術(shù)屬性,包括構(gòu)件公共屬性和構(gòu)件技術(shù)屬性,構(gòu)件技術(shù)屬性在本發(fā)明具體實施例中有三個子類Component_COM、Component_CORBA和Component_I2EE,分別表示現(xiàn)在流行的三種構(gòu)件規(guī)范COM(Component ObjectModel)、CORBA(Common Object Request Broker Architecture)和J2EE(Java2Platform,Enterprise Edition,目前更名為Java EE)。
然后進行步驟(4)、(5)??紤]軟構(gòu)件注冊作為信息分類領(lǐng)域的一種廣泛應(yīng)用,必須建立起完善的元模型才能保障不同領(lǐng)域內(nèi)軟構(gòu)件注冊機制的一致性。通過遵從ISO/IEC19763標準,軟構(gòu)件注冊元模型不僅在概念上能夠繼承該標準的規(guī)定,使不同應(yīng)用類型軟構(gòu)件的注冊可以相互理解,方便構(gòu)件檢索與查找,更重要的是能夠獲得與其它領(lǐng)域的注冊元模型的互操作性。
具體實現(xiàn)如下在MFI核心模型的基礎(chǔ)上,增加注冊屬性、注冊類和注冊模型三個類。其中,注冊模型表示一個特定領(lǐng)域的注冊模型,每個注冊模型由多個注冊類組成;注冊類表示可以注冊的對象,所有需要保存在資源庫中的可注冊對象都是其子類,一個注冊類可包含多個注冊屬性;注冊屬性表示可注冊對象的屬性,若干個注冊屬性組合在一起可以用來描述一個注冊類的信息。軟構(gòu)件注冊元模型如圖4所示。所有的模型元素(Model Element)都是元素(Element)的子類,并且每個模型元素都有相應(yīng)的約束,而特征(Feature)、可泛化元素(General izable Element)、命名空間(Namespace)、參數(shù)(Parameter)和約束(Constraint)都是模型元素的子類。特征分為兩種結(jié)構(gòu)特征(StructureFeature)和行為特征(Behavioral Feature),注冊屬性繼承于屬性(attribute),是結(jié)構(gòu)特征的子類。模型元素的集合構(gòu)成了命名空間,注冊模型繼承于包(Package),是命名空間的子類。分類器(Classifier)繼承于命名空間和可泛化元素,是所有特征的集合。注冊類繼承于類(Class),是分類器的子類。這樣,在MFI核心模型的基礎(chǔ)上構(gòu)造出了軟構(gòu)件注冊元模型。
由于不同的構(gòu)件庫使用的注冊模型不同,要實現(xiàn)與其它構(gòu)件庫之間的映射,必須在MFI映射元模型的指導下規(guī)范模型間的映射。為此,需要定義軟構(gòu)件庫的映射元模型,主要針對注冊屬性、注冊類和注冊模型三個類進行轉(zhuǎn)換。具體實現(xiàn)如下變換映射類表示注冊模型之間的映射;分類器映射類表示模型中各注冊類之間的映射;特征類表示各注冊屬性之間的映射。其中,變換映射和分類器映射之間有一對多的組合關(guān)系(即一個變換映射會包含一到多個分類器映射),分類器映射和特征映射之間也存在著一對多的組合關(guān)系。軟構(gòu)件庫映射元模型如圖5所示。每個變換映射會有一(1)到多個(*)注冊模型作為其源模型(關(guān)聯(lián)端),標記+表示公共、外部可見的,同時也會有一到多個注冊模型作為其目標模型(target),從而完成變換過程。相同地,每個分類器映射和特征映射也會分別對應(yīng)一到多個源、目標注冊類和注冊屬性,而且它們的公共的操作(過程表達式標)在初始狀態(tài)時可以為空。
在軟構(gòu)件注冊元模型和制造業(yè)信息化軟構(gòu)件屬性本體的基礎(chǔ)上,構(gòu)造面向制造業(yè)信息化的軟構(gòu)件注冊模型,如圖6所示。在該注冊模型中,注冊對象(繼承于注冊類)是所有類的父類,表示一切可注冊的實體,包含標識符(id)、名稱(name)和描述(description)三個屬性,標記-表示私有、外部不可見的;注冊對象之間有關(guān)聯(lián)關(guān)系,關(guān)聯(lián)包含源和目標兩個屬性;用戶(user)表示用戶信息;外部對象(Extrinsic Object)表示與軟構(gòu)件相關(guān)的外部文件;軟構(gòu)件(繼承于本體中的軟構(gòu)件概念)用來記錄軟構(gòu)件注冊信息,每個軟構(gòu)件可以含有數(shù)目不同的屬性,這些屬性由槽(slot,繼承于注冊屬性)類來記錄,每個槽含有名稱和值(value)兩個屬性;每個注冊對象可以指向或?qū)儆谙鄳?yīng)的分類(classification),包含模式和概念(concept)兩個屬性,分類又指向某個分類模式(classification scheme)中的分類節(jié)點(classification node);分類節(jié)點之間存在著聚合關(guān)系,以形成樹形結(jié)構(gòu),非常好地與本體結(jié)構(gòu)相對應(yīng)。附圖6中標記1和*與附圖5中的含義相同。
注冊模型間的映射主要解決各注冊模型之間的轉(zhuǎn)換問題,一般通過建立映射表的方式解決。在構(gòu)件庫映射元模型的基礎(chǔ)上,可以建立制造業(yè)信息化軟構(gòu)件注冊模型與ebXML注冊模型和WSDL/UDDI注冊模型間的映射關(guān)系,如表2所示。
表2三種注冊模型間的映射關(guān)系
最后進行步驟(6),生成構(gòu)件注冊模版,提供面向用戶的軟構(gòu)件分類注冊方案。
使用開源工具Jena解析制造業(yè)信息化軟構(gòu)件屬性本體,自動生成構(gòu)件注冊模版,即提供注冊人機交互界面,在計算機屏幕上顯示以下內(nèi)容構(gòu)造的制造業(yè)信息化領(lǐng)域模型;軟構(gòu)件(領(lǐng)域概念)的實例,包含注冊構(gòu)件的名字和ID,即注冊模型中軟構(gòu)件類的對象;根據(jù)本體文件自動生成的軟構(gòu)件屬性本體;軟構(gòu)件屬性本體中具體的屬性項(即注冊模型中的槽類),某些屬性項會組成一個屬性分類,即注冊模型中的分類模式類,在用戶界面以樹形控件的節(jié)點顯示(對應(yīng)注冊模型中的分類節(jié)點類);以及注冊構(gòu)件的詳細信息。
用戶根據(jù)提示輸入要注冊構(gòu)件的ID,如果構(gòu)件庫中存在相同的ID,提醒用戶更改構(gòu)件ID號;根據(jù)構(gòu)件注冊模版中展示的軟構(gòu)件屬性項,填寫(如主要功能介紹)或選擇(如何種編程語言)具體的注冊信息。用戶選擇保存后,將詳細的構(gòu)件信息(注冊模型的實例)通過Jena接口持久化,存儲到后臺構(gòu)件庫中。
根據(jù)用戶的角色(如普通用戶、開發(fā)人員和管理員)分配使用權(quán)限,用于對注冊的軟構(gòu)件信息和制造業(yè)信息化軟構(gòu)件本體進行修改和維護。
權(quán)利要求
1.一種基于領(lǐng)域本體的軟構(gòu)件分類注冊方法,其特征是包括以下步驟,(1)構(gòu)造一個軟構(gòu)件屬性公共本體,即各具體領(lǐng)域通用的軟構(gòu)件分類機制;(2)建立一個具體領(lǐng)域的領(lǐng)域模型,在領(lǐng)域模型的支持下,對軟構(gòu)件屬性公共本體進行細化,得到一個具體領(lǐng)域軟構(gòu)件屬性本體;(3)使用本體工具描述具體領(lǐng)域軟構(gòu)件屬性本體,并以標準格式輸出本體文件;(4)構(gòu)造具體領(lǐng)域軟構(gòu)件注冊元模型,為獲得與異構(gòu)軟構(gòu)件庫的互操作性,制定軟構(gòu)件庫映射元模型;(5)在具體領(lǐng)域軟構(gòu)件注冊元模型和具體領(lǐng)域軟構(gòu)件屬性本體的基礎(chǔ)上,構(gòu)造面向具體領(lǐng)域的軟構(gòu)件注冊模型,在軟構(gòu)件庫映射元模型的基礎(chǔ)上,建立面向具體領(lǐng)域的軟構(gòu)件注冊模型與其它注冊模型間的映射關(guān)系;(6)使用開源工具解析本體文件,自動生成軟構(gòu)件注冊模版,使用軟構(gòu)件注冊模板進行構(gòu)件注冊。
2.如權(quán)利要求1所述的軟構(gòu)件分類注冊方法,其特征在于使用軟構(gòu)件注冊模板進行構(gòu)件注冊的步驟為,(6.1)輸入要注冊構(gòu)件的ID,如果構(gòu)件庫中存在相同的ID,提醒用戶更改構(gòu)件ID號;(6.2)根據(jù)注冊模版中的各種屬性項填寫或選擇相應(yīng)的注冊信息;(6.3)根據(jù)注冊模型,使用Jena持久化構(gòu)件信息,將它保存到構(gòu)件庫中。
3.如權(quán)利要求1或2所述的軟構(gòu)件分類注冊方法,其特征在于采用ISO/IEC19763標準構(gòu)造軟構(gòu)件屬性公共本體。
4.如權(quán)利要求1或2所述的軟構(gòu)件分類注冊方法,其特征在于所述對軟構(gòu)件屬性公共本體進行細化,是在ISO/IEC 19763-3本體注冊元模型的指導下,使用迭代式開發(fā)方法,對構(gòu)造的軟構(gòu)件屬性本體不斷細化。
5.如權(quán)利要求1或2所述的軟構(gòu)件分類注冊方法,其特征在于所述制定軟構(gòu)件庫映射元模型,是在ISO/IEC 19763-2映射元模型的指導下,采用建立詞匯映射表的方式制定的。
6.如權(quán)利要求1或2所述的軟構(gòu)件分類注冊方法,其特征在于所述本體工具采用Protégé,所述標準格式采用OWL格式。
7.如權(quán)利要求1或2所述的軟構(gòu)件分類注冊方法,其特征在于所述開源工具采用Jena。
8.如權(quán)利要求1或2所述的軟構(gòu)件分類注冊方法,其特征在于所述其它注冊模型包括ebXML注冊模型和WSDL/UDDI注冊模型。
全文摘要
本發(fā)明涉及一種基于領(lǐng)域本體的軟構(gòu)件分類注冊方法,包括以下步驟構(gòu)造一個軟構(gòu)件屬性公共本體;建立一個具體領(lǐng)域的領(lǐng)域模型,在領(lǐng)域模型的支持下,對軟構(gòu)件屬性公共本體進行細化,得到一個具體領(lǐng)域軟構(gòu)件屬性本體;使用本體工具描述具體領(lǐng)域軟構(gòu)件屬性本體,以標準格式輸出本體文件;構(gòu)造具體領(lǐng)域軟構(gòu)件注冊元模型,制定軟構(gòu)件庫映射元模型;構(gòu)造面向具體領(lǐng)域的軟構(gòu)件注冊模型,建立面向具體領(lǐng)域的軟構(gòu)件注冊模型與其它注冊模型間的映射關(guān)系;使用開源工具解析本體文件,生成軟構(gòu)件注冊模版,使用軟構(gòu)件注冊模板進行構(gòu)件注冊。本發(fā)明設(shè)計的軟構(gòu)件分類機制靈活、易擴展,能夠自動實現(xiàn)注冊模版的生成,基于國際標準(ISO/IEC 19763)構(gòu)造的軟構(gòu)件庫開放性、通用性和互操作性強,便于軟構(gòu)件資源的共享與復用。
文檔編號G06F9/44GK101013363SQ20061012505
公開日2007年8月8日 申請日期2006年11月16日 優(yōu)先權(quán)日2006年11月16日
發(fā)明者何克清, 馬于濤, 何揚帆, 王翀, 劉瑋, 田精白 申請人:武漢大學