国产激情久久久久影院小草_国产91高跟丝袜_99精品视频99_三级真人片在线观看

面向軟件測試過程的知識管理方法的研究與實現(xiàn)

時間:2024-07-06 07:52:44 計算機應用畢業(yè)論文 我要投稿
  • 相關推薦

關于面向軟件測試過程的知識管理方法的研究與實現(xiàn)

  論文關鍵詞:軟件測試,知識管理模型,知識地圖
  論文摘要:在軟件測試組織中,對測試過程中的知識進行有效的管理,是提升組織整體測試水平的關鍵。一個重要的研究問題是怎樣將知識管理過程與軟件測試過程有效集成,從而促進知識資產(chǎn)在軟件測試組織中的傳播與重用。給出了軟件測試領域知識管理子系統(tǒng)的體系結構、主要功能以及使用流程,對一些關鍵技術進行了探討。最后,給出了知識地圖模塊的設計與實現(xiàn),驗證了本文所實現(xiàn)的軟件測試領域知識管理系統(tǒng)的合理性和有效性。
  知識管理的本質是一個管理問題,但是知識管理的各種功能及服務最終都還得依靠知識管理技術來實現(xiàn)?梢哉f,沒有強大的知識管理技術支持,企業(yè)將很難有效實施知識管理,它是構建知識管理系統(tǒng)的基礎,也是實現(xiàn)知識管理的強大推動力。從廣義的角度看,知識管理技術并不局限于IT技術,但現(xiàn)代信息技術才是知識管理得以有效實現(xiàn)的基本前提。十多年的知識管理研究使得相當一部分的知識管理IT工具已經(jīng)推向商業(yè)市場,但是這些已有的產(chǎn)品并不都是和企業(yè)的具體需求結合在一起,特別是在特定領域的應用,這種脫節(jié)表現(xiàn)尤為突出。
  軟件測試是一個知識密集型的活動,測試人員都屬于知識工作者,他們的工作不僅僅是依據(jù)測試計劃對軟件進行測試,與測試相關的知識、技巧、經(jīng)驗和靈感在測試過程中有著重要的作用,測試人員如果沒有開闊的思路,沒有豐富的測試經(jīng)驗與測試技巧,測試的質量將無法保證。此外技術的飛速發(fā)展,不斷出現(xiàn)的新的待測軟件產(chǎn)品,常使軟件測試人員感到壓力重重,力不從心,他們有探尋新的測試知識和技術的緊迫需求。而知識管理的出現(xiàn)為我們提供了一種新思路和解決問題的新方法,但是軟件測試有其自身的特點,雖然現(xiàn)有的通用知識管理理論及技術已或多或少觸及了某些問題,但我們更需要用一種與本領域結合更緊密的理論和技術,來重新思考和審視我們的問題,以便尋找出一種解決問題的更有效的方法。
  本系統(tǒng)是目前北航軟件所的一個軟件測試管理平臺QESuite2.0項目中的一個子系統(tǒng),該項目是北航軟件所承擔的某型號任務的一個子課題。目前,該系統(tǒng)已經(jīng)完成了原型系統(tǒng)的構建,全部模塊及功能已經(jīng)實現(xiàn),并在實際工作中試用,達到了預期的效果。
  1軟件測試領域的知識管理
  1.1國內外研究現(xiàn)狀
  目前國內外在軟件測試領域內實施知識管理的相關研究很少,迄今為止并沒有找到在軟件測試中實施知識管理的實例。國內知識管理的研究起步晚,同時專門從事軟件測試的企業(yè)又很少,在測試領域內實施知識管理的需求剛剛出現(xiàn)。
  到目前為止,雖然沒有發(fā)現(xiàn)國外針對軟件測試領域實施知識管理的研究和案例,但是從事各領域通用的知識管理的研究已有了很多年的歷史,像IBM,Microsoft這樣居于軟件行業(yè)領先地位的公司,已經(jīng)投入了相當規(guī)模的資金與人力來進行知識管理的研究,提出了一整套的知識管理理論并開發(fā)出相應的軟件產(chǎn)品。
  此外,國外在與軟件測試最相近的軟件工程領域對知識管理也有比較深入的相關研究,已經(jīng)發(fā)表了相當數(shù)量的論文并開發(fā)出了一系列的軟件支持工具。目前,每年都舉行專門的基于知識的軟件工程年會(KBSE Knowledge-BasedSoftware Engineering Conference),探討知識管理在軟件工程領域的最新進展。
  進行軟件測試領域知識管理的研究實際上是一個知識管理思想在軟件測試領域的IT實現(xiàn)問題,也就是開發(fā)出一個軟件平臺來支持軟件測試中的知識管理活動。根據(jù)Gallupe在2000年對現(xiàn)有知識管理系統(tǒng)平臺、理論、案例等相關信息的較大范圍的研究,現(xiàn)有知識管理系平臺要真正實現(xiàn)有效的知識獲取、編碼、存儲和搜索還有相當長的一段路要走。

關于面向軟件測試過程的知識管理方法的研究與實現(xiàn)

  1.2存在的主要問題
  根據(jù)作者在北航軟件所參與的軟件測試項目工作經(jīng)驗,同時結合知識管理的基本原理分析國際上主流軟件測試過程,認為目前在軟件測試過程中存在五大問題:
  1)軟件測試知識重用率低。目前,軟件測試過程中公共測試知識的積累未能有意識地大規(guī)模開展,雖然企業(yè)內部有一些用于測試知識和經(jīng)驗積累的數(shù)據(jù)庫,但大多數(shù)員工忽視其存在,造成測試知識資源的閑置,導致測試知識和經(jīng)驗的重用率低。
  2)軟件測試知識傳遞不暢,F(xiàn)有測試知識的保管模式使得知識的傳遞不暢,測試知識被動地等人來閱讀,而使用者則在知識海洋中苦苦尋覓他所需要的知識,員工無法快速掌握新的測試知識。
  3)軟件測試知識共享環(huán)境差。企業(yè)內部尚沒有正式的、專用的、有組織的知識共享場所,員工之間缺乏相互溝通與交流的機會,溝通與交流的體制也沒有建立起來,軟件測試過程中的知識共享氛圍也有待于培養(yǎng)形成。
  4)軟件測試知識流失嚴重。許多專門經(jīng)驗和技能只是少數(shù)人所擁有,沒有真正成為企業(yè)的公共知識,這不僅使測試知識傳遞不暢,而且在人員變動時,這些測試知識會隨之流失,使企業(yè)的整體競爭力因人員流動而發(fā)生波動,給企業(yè)帶來嚴重損失。
  5)無法快速實現(xiàn)測試組織中人力資源優(yōu)化配置。知識管理是人、過程、技術的有機集成,其中人是最主要的,企業(yè)的管理者無法對組織中的人員技術特長、知識分布了如指掌,在遇到新的測試項目時,無法根據(jù)員工特長,快速搭建出最優(yōu)的項目團隊,從而無法實現(xiàn)組織中人力資源的優(yōu)化配置。
  由于上述問題的存在,造成了軟件測試企業(yè)的生產(chǎn)效率不高,對市場的整體響應速度慢,應變能力不強。本人認為以上問題的出現(xiàn)是源于在當前的軟件測試過程中缺乏對知識的科學管理,因此在該領域內實施知識管理就顯得很有必要。
  2系統(tǒng)體系結構及工作流程
  北航軟件所(SEI/BUAA)在多年從事軟件測試領域的研究與實踐的基礎上,對知識管理在測試領域中的應用進行了大量深入的調查、研究,提出了一套針對軟件測試領域實施知識管理的思想和方法。
  由于軟件測試領域的知識管理目前的研究甚少,特別是現(xiàn)成的軟件測試知識管理系統(tǒng)更是一片空白,因此本課題的研究只能參照通用的或相關領域的已有研究進行。觀察國內外知識管理平臺的研究,盡管提出的模式紛繁復雜,但基本上每個模式中都包含著諸如知識產(chǎn)生、分類、積累、共享、重用這樣的基本流程。
  2.1系統(tǒng)體系結構
  QESuite2.0在結構上采用的c/s方式,可支持群組協(xié)同工作,其中數(shù)據(jù)收集和分發(fā)的部分使用EJB實現(xiàn),容器使用JBoss。QESuite2.0的框架基于插件開發(fā)的思想創(chuàng)建,利用多態(tài)特性聲明可擴展的接口。框架與插件的連接、子類別的實例化過程則利用解釋引擎(也稱作連接器)在運行時動態(tài)完成,框架即可根據(jù)模板進行統(tǒng)一調用,具有良好的封裝性和可擴展性。基于測試管理平臺的以上特點,軟件測試過程知識管理系統(tǒng)的體系結構。

  本系統(tǒng)基于J2EE開放式架構,是一個面向軟件測試過程的架構彈性的知識管理平臺。系統(tǒng)依循知識生命周期管理,利用軟件測試組織中的知識文檔,有效幫助企業(yè)存儲、管理、搜尋、分享各種知識,并通過組織中的知識地圖,有效地評估員工的知識程度,使知識地圖成為知識型員工的地位象征,并通過統(tǒng)計工具對擁有知識的員工進行肯定,從而促進知識共享的企業(yè)文化。
  2.2系統(tǒng)工作流程
  系統(tǒng)的工作流程主要包括以下幾個方面,如圖2所示。

  (1)首先對本子系統(tǒng)進行初始化,在本系統(tǒng)預定義的基礎上,允許用戶對軟件測試知識分類、知識程度、組織職位定義、項目規(guī)模進行自定義。
  (2)在交流庫中添加文檔,用戶可以直接編寫文檔提交交流庫,或者在交流庫中提出問題,交流庫是整個系統(tǒng)的知識文檔來源。交流庫中篩選出的技術含量較高文檔,由知識分析員進行知識分類后,提交知識庫。
  (3)用戶可以自行對知識庫中的知識文檔進行評估,同時根據(jù)知識分析員對文檔的評定,以及作者的知識程度、文檔的鏈接程度等加權實現(xiàn)對文檔的評定。
  (4)知識分析員可以根據(jù)組織討論的結果直接設定組織成員的知識等級,也可以通過編輯組織成員的項目經(jīng)歷,來自動設置成員的知識等級,或者通過成員在組織中發(fā)表的知識文檔來自動設置成員的知識等級。
  (5)知識檢索,主要包括知識文檔檢索和專家檢索,通過知識文檔元數(shù)據(jù)可以任意檢索知識文檔,當用戶無法找到需要的知識文檔,可以通過專家檢索來告訴用戶組織中能夠解決問題的人。
  3幾個關鍵技術的研究與應用
  3.1基于本體的軟件測試領域知識表示方法
  本體(ontology)起源于哲學,是關于存在及其本質和規(guī)律的學說。在近一二十年,本體被計算機及建模領域所采用,用于知識表示、知識共享和重用。本體論是對概念化對象的明確表示和描述,是對客觀世界存在的現(xiàn)實系統(tǒng)化的描述。從本質上講,本體是一個或幾個領域的概念以及反映這些概念的關系的集合,關系反映了概念的約束和聯(lián)系,而關系本身也是概念,關系之間也可能構成新的關系。
  我們以本體來對軟件測試領域知識進行表示,描述領域中相關的概念、屬性,及其關系。這些本體概念、概念之間的關系定義在文檔、參考文獻、項目、人員、知識程度共5類本體中。根據(jù)以上屬性,軟件測試領域知識本體如圖3所示。


  3.2軟件測試領域知識管理模型的提出
  在針對軟件測試過程的知識管理中,需要實現(xiàn)積極、主動的知識傳遞,建立起組織級的人員之間溝通和交流的渠道,根據(jù)軟件測試活動中的知識需求,及時地實現(xiàn)相關知識的傳遞,通過有效的知識傳播來改善和提高知識的重用效果。由于組織所需要的知識處于動態(tài)變化中,因而需要通過一個有效的基礎設施,來滿足以上功能需求。
  根據(jù)以上分析,我們提出了一個面向軟件測試過程的知識管理模型,如圖4所示。本模型的要素是“測試組織人員”、“測試組織知識資產(chǎn)”、“測試組織交流場所”;舅枷胧窃谲浖䴗y試過程中,建立一個交流場所,記錄成員的提出的問題和問題解決過程,以及各種文檔。
  3.3軟件測試領域知識地圖的構建方法
  知識地圖,或稱知識分布圖(又稱作知識黃頁簿)是知識的庫存目錄。知識地圖所顯示的知識來源,可能是部門名稱、小組名稱、專家名字、相關人名字、文件名稱、參考書目、事件代號、專利號碼、或知識庫索引等,但卻不包含知識的內容本身,它是指南和向導,用以節(jié)省員工追蹤知識來源的時間。
  一個優(yōu)秀的軟件測試知識管理平臺軟件還應當能夠提供強大的軟件測試知識分類的能力。根據(jù)工程實踐經(jīng)驗及SWEBOK分類方法,我們對軟件測試領域增加了5大知識域:開發(fā)語言、數(shù)據(jù)庫、操作系統(tǒng)、軟件測試工具、測試項目相關知識。我們的知識地圖中,每一種能力都有5級知識程度:了解、熟悉、熟練、精通、專家級。每一級的程度定義都有描述,務求清晰及易于評價,并避免主觀的誤差。每個員工的實際能力也依此標準衡量,評估過程應由員工、小組、經(jīng)理及知識分析員互動完成。
  3.4基于本體的知識文檔智能檢索和排序方法
  本體在知識檢索子系統(tǒng)中主要扮演知識庫的角色,即首先對軟件測試領域的概念分類、建立概念之間關系約束的描述,然后以此為基礎構建詳細的軟件測試領域知識庫,主要包括軟件測試領域的具體概念、概念之間的屬性、概念之間的關系以及實例等知識。在知識檢索時,根據(jù)用戶請求的關鍵詞來查找相應的概念或屬性,并以此為出發(fā)點來檢索某條本體信息是否與這些概念或屬性相關,從而實現(xiàn)支持邏輯推理的智能檢索。
  在知識文檔檢索子系統(tǒng)檢索出結果后,必須首先研究檢索出來的文檔應該按照什么樣的順序進行排列。影響排序的因素有很多,根據(jù)研究,我們認為有5類因素是影響排序結果的關鍵:用戶對知識文檔的評價、知識分析員對文檔的評價、作者的知識程度、文檔的鏈接數(shù),以及文檔的打開次數(shù)。這五類因素的權值是按次序遞減的,可利用遞減加權公式來計算各因素的權值。下面是遞減加權公式:

  知識文檔的重要性按下公式來進行計算:
  知識文檔的重要性=P1×用戶對知識文檔的評價+P2×知識分析員對文檔的評價+P3×作者的知識程度+P4×文檔的鏈接數(shù)+P5×文檔的打開次數(shù)。
  通過計算出來的知識文檔重要性結果,然后對所有文檔按降序排列,就可以將最有價值的知識文檔排在前列。

  4系統(tǒng)實現(xiàn)
  限于篇幅,整個系統(tǒng)各個模塊的設計以及實現(xiàn),這里不做詳細介紹了。下面以簡單圖示的方式給出本系統(tǒng)的核心模塊——知識地圖模塊的類設計和實現(xiàn)界面。知識地圖模塊分為兩個部分:專家網(wǎng)絡和搭建測試項目團隊。普通用戶在該模塊可以編輯自己的項目經(jīng)歷,在編輯時可以選擇項目導人數(shù)據(jù),如果項目不存在,則可以自己編輯項目,然后導入項目數(shù)據(jù),再編輯自己的項目經(jīng)歷,包括使用的技術、工作時間,項目職位、項目規(guī)模等等。知識分析員有權限選擇其他用戶編輯項目經(jīng)歷。在項目經(jīng)歷編輯完成之后,系統(tǒng)會根據(jù)用戶對某些技術的使用時間來自行定義用戶在這些知識點的知識程度,但是用戶的知識程度最多達到熟練級別,要想達到精通和專家級,必須由知識分析員來編輯用戶的知識程度。圖5是系統(tǒng)中專家網(wǎng)絡定義模塊的編輯用戶知識程度活動圖。

  知識地圖模塊的客戶端的設計類圖如圖6所示。在知識地圖模塊的客戶端中,負責界面消息事務處理的類有三個:EditTechDialog,WorkingExperienceDialog,F(xiàn)indPersonToStartProject。EditTechDialog這個類用來編輯用戶的知識程度,只有知識分析員才有權限來調用這個類。WorkingExperi—enceDialog是普通用戶可以使用的一個類,用來顯示用戶的工作經(jīng)歷。類FindPersonToStartProject是管理人員,通過輸入一些數(shù)據(jù)來得到組織中比較適合新項目的人員,通過類FindResultDialog來顯示查找結果。
  結束語
  知識管理的出現(xiàn)為我們提供了一種新思路和解決問題的新方法,但是軟件測試有其自身的特點。雖然現(xiàn)有的通用知識管理理論及技術已或多或少觸及了某些問題,但我們更需要用一種與本領域結合更緊密的理論和技術,來重新思考和審視我們的問題,以便尋找出一種解決問題的更有效的方法Ⅲg]。進行軟件測試領域知識管理的研究,對于提升軟件測試組織的整體測試水平和軟件企業(yè)的整體應變能力,從而最終提高軟件產(chǎn)品的質量和企業(yè)的經(jīng)濟效益,加強軟件企業(yè)的核心競爭力無疑具有重大意義。
  本文在分析目前軟件測試領域存在的知識管理問題的基礎上,實現(xiàn)了一個面向軟件測試過程知識管理系統(tǒng),對軟件測試領域實施知識管理具有一定的意義,對其他領域的知識管理也有一定的參考價值。它是一個面向軟件測試過程的知識管理雛形,雖然系統(tǒng)中還有待進一步完善,缺少對郵件系統(tǒng)和消息系統(tǒng)的支持,以及圖形化的統(tǒng)計工具的支持,但是已經(jīng)具有了一定的使用性,并在實際項目QESuite2.0中得到了檢驗,可望在不久的將來進行商業(yè)化和產(chǎn)業(yè)化。

【面向軟件測試過程的知識管理方法的研究與實現(xiàn)】相關文章:

軟件性能測試研究03-28

面向網(wǎng)絡測試的嵌入式系統(tǒng)設計與實現(xiàn)03-07

在測試信號儀器中波形重建的理論實現(xiàn)研究03-07

淺析軟件項目過程管理矩陣模型研究與實踐03-01

軟件開發(fā)團隊的知識創(chuàng)新研究03-19

基于信號接口的自動測試系統(tǒng)軟件的設計與實現(xiàn)03-18

關于軟件項目實施過程中的進度管理研究03-01

知識管理與知識挖掘在情報研究工作中的實現(xiàn)03-21

面向AMT的統(tǒng)計過程質量控制03-21