一種智能構(gòu)件庫管理方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種智能構(gòu)件庫管理方法。
【背景技術(shù)】
[0002] 構(gòu)件是在軟件生命周期各階段可以被復(fù)用的軟件實(shí)體,它可以是被封裝的類、功 能模塊、軟件框架、軟件構(gòu)架、文檔和設(shè)計(jì)模式等。通過構(gòu)件的組裝和集成來構(gòu)造相應(yīng)的應(yīng) 用軟件,可以提高開發(fā)者的開發(fā)效率、降低項(xiàng)目開發(fā)成本,并使得構(gòu)造的軟件系統(tǒng)更易擴(kuò)充 和維護(hù)。因此,構(gòu)件技術(shù)作為實(shí)現(xiàn)軟件復(fù)用技術(shù)的重要手段,為軟件產(chǎn)品的工業(yè)化和自動(dòng)化 生產(chǎn)提供技術(shù)保障和支持,引起了業(yè)界的普遍關(guān)注1基于構(gòu)件的軟件開發(fā)己成為軟件開 發(fā)的主流技術(shù)。目前在構(gòu)件數(shù)量增長(zhǎng)、構(gòu)件特征豐富、構(gòu)件間關(guān)系復(fù)雜的情況下,如何科學(xué) 地管理構(gòu)件成為一個(gè)很重要的問題。構(gòu)件庫為管理構(gòu)件提供了一種基礎(chǔ)設(shè)施。
[0003] 在國外,可復(fù)用構(gòu)件庫管理的研究包括ComponentRand、CodeBroke,以及 N.Ohdugi等人提出的以構(gòu)件查詢研究為主的系統(tǒng)等。其中,CodeBroke能夠推斷對(duì)構(gòu)件 的需求,并借助與預(yù)測(cè)相匹配的實(shí)例主動(dòng)推薦構(gòu)件。S.Tangsripairoj等人將S0M的概念 應(yīng)用于構(gòu)件庫的構(gòu)造。Frank等人將基于協(xié)同過濾的方法引入構(gòu)件查詢,提出了一個(gè)推薦 系統(tǒng),實(shí)現(xiàn)了即時(shí)學(xué)習(xí)以支持開發(fā)者快速發(fā)現(xiàn)所需要的構(gòu)件,該研究針對(duì)Java開源軟件庫 SoureForge進(jìn)行挖掘,搜集構(gòu)件使用歷史,以更好地向用戶提出建議。
[0004] 與此同時(shí),國內(nèi)的一些高校和研究機(jī)構(gòu)也在積極開展構(gòu)件庫相關(guān)技術(shù)的研究,例 如北京大學(xué)的青鳥構(gòu)件庫,該項(xiàng)目致力于構(gòu)件庫概念模型的研究,提出了包括構(gòu)件管理、查 詢、度量的框架。上海市政府也提出了構(gòu)件庫的研究項(xiàng)目,以拓展其在軟件工業(yè)上的應(yīng)用。
[0005] 但這些構(gòu)件庫管理及其相應(yīng)技術(shù)均存在一些缺點(diǎn):1.構(gòu)件庫相關(guān)標(biāo)準(zhǔn)與國際標(biāo) 準(zhǔn)的兼容性問題,這將直接限制了基于互操作性的構(gòu)件庫管理技術(shù);2.構(gòu)件的分類機(jī)制不 靈活,不能和構(gòu)件涉及的領(lǐng)域知識(shí)的演化同步;3.缺少對(duì)基于語義推理的查詢機(jī)制的支 持,構(gòu)件庫中的構(gòu)件資源,它是特定領(lǐng)域的資源集合,不同資源即使在表述上毫無關(guān)系,仍 可能存在語義上的聯(lián)系,而已有的構(gòu)件查詢方法(如關(guān)鍵詞,刻面等)都無法支持基于語義 推理的查詢機(jī)制。
[0006] 表1當(dāng)前構(gòu)件庫采用的主要查詢技術(shù)比較
目前,基于構(gòu)件的軟件幵發(fā)逐步確立了它在軟件幵發(fā)方法學(xué)中的核心地位,而且隨著COM、CORBA和EJ8等技術(shù)的廣泛應(yīng)用,構(gòu)件資源開發(fā)的方法與技術(shù)日趨標(biāo)準(zhǔn)化,使得互聯(lián)網(wǎng) 上各個(gè)領(lǐng)域的構(gòu)件資源越來越豐富,分布式構(gòu)件庫越來越普遍。另一方面,雖然構(gòu)件查詢機(jī) 制及其實(shí)現(xiàn)方法對(duì)構(gòu)件庫的管理和維護(hù)影響重大,但相應(yīng)的構(gòu)件資源管理的研究卻進(jìn)展緩 慢,還仍然使用傳統(tǒng)的數(shù)據(jù)資源建設(shè)與管理的方法,特別是構(gòu)件查詢技術(shù)(主要技術(shù)對(duì)比如 表1所示)已不能有效適應(yīng)目前構(gòu)件資源的復(fù)雜信息結(jié)構(gòu)(屬性、接口)及其構(gòu)造、流通、管 理與復(fù)用的要求,這將成為阻礙國內(nèi)外軟件企業(yè)進(jìn)一步發(fā)展的瓶頸。由此構(gòu)件庫查詢機(jī)制 的研究成為構(gòu)件庫管理技術(shù)發(fā)展的關(guān)鍵,有效的分布是構(gòu)件庫管理機(jī)制能夠降低構(gòu)件查找 和理解的成本,而構(gòu)件的跨庫查詢技術(shù)正是實(shí)現(xiàn)高效的分布式構(gòu)件庫管理的基礎(chǔ)。
【發(fā)明內(nèi)容】
[0007] 為解決上述現(xiàn)有的缺點(diǎn),本發(fā)明的主要目的在于提供一種實(shí)用的智能構(gòu)件庫管理 方法,支持基于語義推理的查詢機(jī)制。
[0008] 為達(dá)成以上所述的目的,本發(fā)明的一種智能構(gòu)件庫管理方法采取如下技術(shù)方案: 一種智能構(gòu)件庫管理方法,其特征在于,包括以下步驟: (1) 構(gòu)造構(gòu)件注冊(cè)知識(shí)庫概念模型,包括構(gòu)件注冊(cè)屬性以及構(gòu)件應(yīng)用領(lǐng)域的分類屬 性; (2) 構(gòu)造構(gòu)件注冊(cè)知識(shí)庫實(shí)例模型,模型中構(gòu)件的注冊(cè)信息根據(jù)概念模型的屬性組織 而成; (3) 根據(jù)復(fù)雜查詢的要求定義構(gòu)件注冊(cè)知識(shí)中的語義關(guān)聯(lián); (4) 由構(gòu)件注冊(cè)知識(shí)庫派生得到滿足不同查詢要求的查詢本體; (5) 由查詢本體解析得到的信息資源作為查詢和理解構(gòu)件的基礎(chǔ),為用戶提供基于語 義推理的構(gòu)件查詢機(jī)制。
[0009]所述語義關(guān)聯(lián)包括最優(yōu)分析和版本兼容,最優(yōu)分析描述不同構(gòu)件之間的依賴關(guān) 系,版本兼容描述同種構(gòu)件的不同版本之間的兼容關(guān)系,最優(yōu)分析和版本兼容這兩種關(guān)聯(lián) 在語義上都定義為傳遞關(guān)系,使用本體工具集仏朋的推理規(guī)則形式化表示,構(gòu)件注冊(cè)知識(shí) 庫的內(nèi)容隨著構(gòu)件應(yīng)用領(lǐng)域知識(shí)的演化而變更。
[0010] 采用如上技術(shù)方案的本發(fā)明,具有如下有益效果: 本發(fā)明一方面能夠保證構(gòu)件注冊(cè)信息的共享,另一方面為基于語義推理的查詢機(jī)制 提供了理論和可操作的基礎(chǔ),實(shí)現(xiàn)了高效智管理構(gòu)件庫方案,提供了靈活的構(gòu)件分類機(jī)制, 可滿足與其他標(biāo)準(zhǔn)的兼容性,建立的構(gòu)件庫開放性和通用性更強(qiáng)。
【附圖說明】
[0011] 圖1本發(fā)明分布式構(gòu)件庫管理示意圖。
[0012] 圖2本發(fā)明基于推理的知識(shí)派生實(shí)例示意圖。
[0013] 圖3本發(fā)明實(shí)施例的構(gòu)件屬性公共本體示意圖。
【具體實(shí)施方式】
[0014] 為了進(jìn)一步說明本發(fā)明,下面結(jié)合附圖進(jìn)一步進(jìn)行說明: 參見附圖1,本發(fā)明包括以下步驟, (1)構(gòu)造構(gòu)件注冊(cè)知識(shí)庫概念模型,包括構(gòu)件注冊(cè)屬性以及構(gòu)件應(yīng)用領(lǐng)域的分類屬 性; (2) 構(gòu)造構(gòu)件注冊(cè)知識(shí)庫實(shí)例模型,構(gòu)件的注冊(cè)信息根據(jù)概念模型的屬性組織而成,即 在屬性和具有該屬性的構(gòu)件之間建立語義關(guān)聯(lián); (3) 根據(jù)復(fù)雜查詢的要求定義構(gòu)件注冊(cè)知識(shí)中的語義關(guān)聯(lián),這些語義關(guān)聯(lián)是定義在概 念層上,但可以應(yīng)用在和概念相對(duì)應(yīng)的實(shí)例上; (4) 由構(gòu)件注冊(cè)知識(shí)庫派生得到滿足不同查詢需求的查詢本體,查詢本體中包含構(gòu)件 注冊(cè)知識(shí)庫中未明確表達(dá)的信息; (5) 由查詢本體解析得到的信息資源作為査詢和理解構(gòu)件的基礎(chǔ),為用戶提供構(gòu)件語 義推理查詢機(jī)制。
[0015] 本發(fā)明首先使用本體作為構(gòu)件庫邏輯上的存儲(chǔ)機(jī)制,構(gòu)造構(gòu)件注冊(cè)知識(shí)庫概念模 型和構(gòu)件注冊(cè)知識(shí)庫實(shí)例模型。本發(fā)明提供理論基礎(chǔ)以便理解這種方案的技術(shù)效果:本體 概念源于哲學(xué)中的本體論,用于表示概念內(nèi)涵的顯式表達(dá)和語義約定。本體能為不同范圍、 不同層次的研究領(lǐng)域統(tǒng)一認(rèn)識(shí),從而消除由于應(yīng)用背景不同而造成的理解上的沖突和混 舌L促進(jìn)人-機(jī)、機(jī)-機(jī)之間的通信、資源共享和協(xié)同工作。本體信息是對(duì)特定領(lǐng)域知識(shí)的 共同認(rèn)識(shí),以便實(shí)現(xiàn)領(lǐng)域相關(guān)應(yīng)用之間的互操作。本體提供的靈活分類機(jī)制和以描述邏輯 語義為基礎(chǔ)的推理機(jī)制,成為解決目前構(gòu)件庫管理諸多問題的關(guān)鍵所在。
[0016] 本發(fā)明構(gòu)造的構(gòu)件注冊(cè)知識(shí)庫正是基于本體論,知識(shí)庫的概念模型定義了構(gòu)件注 冊(cè)屬性及其關(guān)聯(lián),即各具體領(lǐng)域通用的構(gòu)件分類機(jī)制。在構(gòu)件注冊(cè)知識(shí)庫概念模型的基礎(chǔ) 上構(gòu)造構(gòu)件注冊(cè)知識(shí)庫實(shí)例模型,即在屬性和具有該屬性的構(gòu)件之間建立對(duì)應(yīng)關(guān)系。構(gòu)件 查詢時(shí)在概念層查找和分析屬性,確定好查找目標(biāo),然后通過該對(duì)應(yīng)關(guān)系獲得能夠滿足查 找要求的構(gòu)件,這種信息管理方法極大地降低了查詢的工作量。由于構(gòu)件注冊(cè)知識(shí)庫概念 模型不僅定義了構(gòu)件注冊(cè)屬性概念集還定義了這些概念之間的語義關(guān)聯(lián),能夠通過語義推 理機(jī)制自動(dòng)地找到和某個(gè)概念相關(guān)的所有相關(guān)概念,這種方法實(shí)現(xiàn)了基于語義推理的查 詢機(jī)制。構(gòu)造查詢本體能夠避免由于語義推理產(chǎn)生的推理信息可能帶來的信息規(guī)模不斷擴(kuò) 大所帶來的問題?;趪H標(biāo)準(zhǔn)實(shí)現(xiàn)本發(fā)明,由于與其他標(biāo)準(zhǔn)的兼容性好,建立的構(gòu)件庫開 放性、通用性和互操作性更強(qiáng)。因此本發(fā)明實(shí)施例采用IS0/IEC1976