資源描述:
《軟件測試信息領(lǐng)域本體構(gòu)建研究》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、軟件測試信息領(lǐng)域本體構(gòu)建研究摘要:為了對軟件測試領(lǐng)域的信息進(jìn)行冇效管理,對軟件測試領(lǐng)域進(jìn)行了深入分析;引入本體技術(shù)并總結(jié)了領(lǐng)域本體的構(gòu)建方法,探索了測試信息領(lǐng)域本體構(gòu)建方法;為軟件測試建立測試信息領(lǐng)域本體,實現(xiàn)信息的有效表示、存儲和共享。關(guān)鍵詞:軟件測試;領(lǐng)域本體;本體構(gòu)建;信息共享中圖分類號:TP301文獻(xiàn)標(biāo)識碼:A文章編號:16727800(2013)009002903基金項目:四川教育廳項目(13ZB0037);阿壩師范高等??茖W(xué)校項Fl(ASB12-27)作者簡介:韓仙玉(1985-),女,碩
2、士,阿壩師范高等??茖W(xué)校助教、CCF會員,研究方向為軟件工程、軟件測試、信息處理。0引言軟件測試是保障軟件質(zhì)量的有效手段,其過程實質(zhì)上是測試知識共享和重用的過程。因此,對軟件測試信息的有效收集、表示和存儲,不僅能為重復(fù)測試提供方便,也可以為評估軟件質(zhì)量提供參考。近年來,作為知識表示工具的木體論(Ontology)由于其具備良好的概念層次結(jié)構(gòu)和邏輯推理能力,使其在信息檢索等多個領(lǐng)域得到了廣泛應(yīng)用。因此,為軟件測試信息建立領(lǐng)域本體,可以為信息的表示、存儲和共享提供知識管理框架,也可以為軟件的復(fù)用者提供參考
3、。1本體和構(gòu)建方法本體論源于哲學(xué)上的概念,廣泛認(rèn)可的定義是Studer等人在前人基礎(chǔ)上提出:本體是共享概念模型、明確形式化的規(guī)范說明[1,2],包含概念模型、明確性、形式化和共享性4個含義[3]。木體的建模元語有類(classes或concepts)>關(guān)系(retations)>函數(shù)(functions)>公理(axioms)和實例(instance)[4]。概念并非單純意義上的概念,可以是任務(wù)、功能、行為、策略、推理過程等。關(guān)系表示概念之間的關(guān)聯(lián)關(guān)系,可形式化表示為R:ClXC2X-XCn表示概念類
4、Cl,C2,…,Cn之間存在n元關(guān)系R。函數(shù)是一種特殊的關(guān)系。公理用于表示永真式。實例是某概念類的基本元素,即某概念類所指的具體對象。為了便于對本體的有效分類,Guarino提出以詳細(xì)程度、領(lǐng)域依賴程度作為本體劃分的基礎(chǔ)[4]。根據(jù)領(lǐng)域依賴度,可劃分為頂級、領(lǐng)域、任務(wù)和應(yīng)用本體4類。其屮領(lǐng)域本體(DomainOntology)描述的是特定領(lǐng)域(如測試、圖書、航空航天)中概念及概念之間的關(guān)系。建立本體的依據(jù)標(biāo)準(zhǔn)最具影響力的是Gruber在1995年提出的5條規(guī)則[5]:明確性和客觀性、安全性、一致性、可
5、擴(kuò)展性和最小本休承諾。領(lǐng)域木體概念提岀以來,目前比較有名的構(gòu)建方法有:IDEF5方法>Uschold和King的“骨架法Gruninger和Fox的“評估法”(又稱TOVE)>Bernaras方法和METHONTOLOGY方法等。木文通過參考Gruber提出的木體構(gòu)造原則以及斯坦福大學(xué)的NatalyaF.Noy和DeborahL.McGuinness提出的建議[11],領(lǐng)域本體構(gòu)建過程如下:①確定本體的領(lǐng)域與范圍;②考慮對已存在的木體的重用;③列舉領(lǐng)域中重要的術(shù)語、概念;④定義類和類層次;⑤定義類的屬
6、性;⑥創(chuàng)建實例;⑦本體的檢驗評價。冃前,本體的構(gòu)建工具之一Protege是可擴(kuò)展、可跨平臺的和能支持概念層次、屬性及原則和約束定義的,為本體的一致性檢測和組織概念提供自動分類。利用Protege建立的木體知識庫能很方便地與外界系統(tǒng)實現(xiàn)知識共享和互操作。另外,Protege能擴(kuò)展OWL插件成為當(dāng)下優(yōu)秀的OWL本體構(gòu)造工具,其中OWL(WebOntologyLanguage)是W3C[6]最新推薦的Ontology描述語言。冃前,Protege已有很多的版本,本文中用到的是Protege3.1.1[7],
7、帶冇Protege-OWL插件和OWLWizards插件。它適合用于構(gòu)造一個OWL木體,同時結(jié)合推理機(jī)Race譏6]能夠?qū)?gòu)建的木體進(jìn)行推理。2基于SWEBOK的軟件測試知識域1983年IEEE指出軟件測試的定義是[8]:“使用手動或者自動的手段執(zhí)行或測試特定系統(tǒng)的過程,測試目的是驗證系統(tǒng)是否滿足預(yù)期的需求,或者驗證預(yù)期結(jié)果和實際結(jié)果間的差別。G.J.Maryer則定義軟件測試是為了發(fā)現(xiàn)錯誤而運行的程序,目的是為了查找程序的錯誤,而非證明程序的正確性[9]。軟件工程知識體系(SoftwareEngin
8、eeringBodyofKnowledge,SWEBOK)把整個體系分解為10個知識域(KnowledgeArea)[10]。其屮,軟件測試知識域包折5個子域[11],如圖1所示。由圖1可以看出軟件測試的5個子域依次是:軟件測試基礎(chǔ)、測試級別、測試技術(shù)、測試相關(guān)的度量和測試過程。通過對測試領(lǐng)域分析,可知測試信息主要包括:①測試對象的信息;②伴隨著軟件測試產(chǎn)生的測試計劃、測試用例、缺陷報告以及其它相關(guān)文檔信息;③測試過程運用的測試技術(shù)、方法、經(jīng)驗等相關(guān)知識