戈 軍(北京全路通信信號研究設計院有限公司,北京 100073)
隨著信息產(chǎn)業(yè)的不斷發(fā)展,我國軟件產(chǎn)業(yè)已逐漸成為信息產(chǎn)業(yè)的核心和靈魂。許多軟件企業(yè)和項目管理者都意識到軟件測試的重要性,但在實際項目開發(fā)過程中,由于缺乏有效的項目計劃和管理,軟件測試往往不夠充分,不能有效地進行,造成軟件測試工作難以正常運轉(zhuǎn)。
2012年12月1日,哈大高鐵正式運營通車,它是我國《中長期鐵路網(wǎng)規(guī)劃》“四縱四橫”客運專線網(wǎng)中京哈客運專線的重要組成部分,是我國目前在最北端的嚴寒地區(qū)設計建設標準最高的一條高速鐵路。同時也帶動了整個東北地區(qū)的經(jīng)濟發(fā)展。信號系統(tǒng)在高速鐵路安全運營中扮演著重要角色。2012年5月起開始的信號系統(tǒng)的測試順利開展與否,將直接影響哈大高鐵能否順利進入試運行階段?,F(xiàn)場測試過程中缺陷的跟蹤管理將起著決定性作用。
1984年,IEEE提出的軟件工程標準術語中將軟件測試定義為使用人工和自動手段來運行或測試某個系統(tǒng)的過程,其目的在于檢驗它是否滿足規(guī)定的需求或是弄清預期結果與實際結果之間的差別。完整的測試過程應包括:測試需求、測試計劃、測試執(zhí)行、缺陷跟蹤管理、回歸測試等過程。其中缺陷跟蹤階段主要任務是報告程序的軟件缺陷,并跟蹤其修改過程。
測試模型是包含了軟件測試全部過程、活動和任務的結構框架。目前常用的測試模型有V模型、W模型、H模型。以具有普適性的V模型為例,如圖1所示,圖1中橫軸代表測試周期,每個模塊是測試過程必不可少的各個
戈軍,男,畢業(yè)于北京交通大學大學,助理工程師。主要研究方向包括信號系統(tǒng)集成測試,曾參與武廣客專、京滬高鐵、哈大客專等項目。環(huán)節(jié)。本文將針對集成測試與系統(tǒng)測試過程中缺陷跟蹤管理過程進行深入探討。
在測試過程中,測試人員將發(fā)現(xiàn)的問題稱為缺陷,它可能指的是軟件開發(fā)中出現(xiàn)的問題、故障、錯誤、疑問等。它還可能出現(xiàn)在設計,用戶正常使用過程中,那些不符合設計要求或用戶使用習慣等問題也可以稱為缺陷。
測試的最終目的是發(fā)現(xiàn)軟件中存在的缺陷,對缺陷進行跟蹤管理就可以確保每個被發(fā)現(xiàn)的缺陷能夠被及時處理,也就保證了測試工作的有效性。
在武廣高鐵信號系統(tǒng)現(xiàn)場調(diào)試期間,采取用《問題匯總表》的方式來跟蹤和管理缺陷。如圖2所示,《問題匯總表》包含以下主要內(nèi)容:問題序號、問題描述、原因分析、解決方案、問題歸類、整改單位、負責人和問題狀態(tài)等。
《問題匯總表》需要測試人員每天在問題分析例會上進行更新,并將問題匯總與相關測試記錄與測試log日志上傳至FTP,各子系統(tǒng)專業(yè)人員對每個問題逐項進行分析,必要的測試log日志登錄FTP下載或從測試人員處拷貝。由各專業(yè)分析人員將已分析過或已經(jīng)處理解決、待驗證的問題反饋給測試人員,由測試人員更新問題狀態(tài),并著手安排回歸測試進行復測、驗證。當驗證的問題通過后,將問題關閉,并在問題匯總及時更新。形成簡單的問題缺陷跟蹤與管理過程。
IBM Rational Change是一款面向W eb、基于瀏覽器的應用程序,用于提交和跟蹤變更請求。通過IBM Rational Change,可以跟蹤任何內(nèi)容的變更,從源代碼,到公司工作站的地點。
在哈大高鐵信號系統(tǒng)現(xiàn)場調(diào)試過程中,應用了基于Rational Change軟件二次開發(fā)的Change管理平臺V5.2(以下簡稱Ch an ge平臺,NCR定義為不符合報告:Non-con form ity Report)跟蹤和管理現(xiàn)場測試過程中發(fā)現(xiàn)的系統(tǒng)缺陷,極大地提高了現(xiàn)場問題缺陷解決的效率,有效地保證了調(diào)試過程的順利進行。
3.1.1 主要功能
如圖3所示,Change平臺具有以下主要功能:提交NCR、分配任務、上傳log、關聯(lián)NCR、郵件提醒、關閉NCR等,同時它還提供導出報表、查詢、幫助等輔助功能。登陸平臺后,左側為導航欄區(qū)域,右側為相應的功能區(qū)域。登陸后可直接顯示出近三個月的NCR列表。
3.1.2 不同角色的任務與權限
Ch ange平臺規(guī)定了不同角色的分工、任務及使用權限,完善明確各角色職責。主要分為5種角色:NCR提交人,NCR測試負責人,NCR負責人,NCR解決人,NCR驗證人。各角色的任務、權限及組成如表1所示。
表1 Change平臺不同角色的分工與任務
3.1.3 NCR狀態(tài)定義及狀態(tài)間轉(zhuǎn)換關系
如表2所示,NCR在平臺提交后,隨著NCR的遷移,Ch ange平臺明確定義了各NCR的11種狀態(tài)及各狀態(tài)間的轉(zhuǎn)換關系。
NCR各狀態(tài)間的遷移關系,如圖4所示。3.1.4 自動化平臺缺陷跟蹤管理工作流程
當各角色間的任務及權限明確后,形成相應的在Change平臺上跟蹤管理缺陷的工作流程。
表2 NCR狀態(tài)定義表
Ch an ge平臺的維護人員對所有用戶分別分配平臺權限,并分別關聯(lián)至每名用戶的個人郵箱,以便平臺發(fā)送NCR生存周期的相關消息,完成客專項目的添加、修改等任務。
NCR遷移完整的工作流程如圖5所示。
1)當測試人員提交NCR后,Ch ange平臺會自動生成NCR編號,同時NCR的狀態(tài)更新為NCR_N ew,并郵件通知NCR測試負責人,由測試負責人繼續(xù)分配任務;
2)NCR測試負責人登錄平臺后,進行分析及審核NCR,NCR測試負責人將對NCR進行相應處理:
a.如果是新發(fā)現(xiàn)的缺陷,則將該NCR分配給相關子系統(tǒng)的NCR負責人,同時NCR的狀態(tài)將變?yōu)镹CR_Opened,等待相關子系統(tǒng)NCR負責人分配NCR解決人及NCR驗證人;
b.如果是已有的NCR問題,NCR測試負責人將新提交的NCR關聯(lián)至已有NCR后拒絕,同時NCR的狀態(tài)將變?yōu)镹CR_Refused;
c.如果不是NCR,由NCR測試負責人直接廢棄該NCR,同時NCR的狀態(tài)將變?yōu)镹CR_Obsoleted。
3)NCR負責人繼續(xù)對NCR進行處理,分配解決人及驗證人,NCR的狀態(tài)轉(zhuǎn)變?yōu)镹CR_Assigned;
4)當NCR解決人進行了深入分析,并提出解決方案后,NCR的狀態(tài)將變?yōu)镹CR_Fixed,NCR成為待驗證的狀態(tài);
5)NCR驗證人根據(jù)解決人提出的方案,進行有針對性的回歸測試,測試通過后,在平臺處理NCR,NCR的狀態(tài)將變?yōu)镹CR_Validated,并將結果反饋至NCR負責人處;當缺陷無法解決或驗證不通過時,返回步驟4),NCR負責人將重新分配任務;
6)NCR負責人根據(jù)驗證人提交的驗證情況,酌情申請關閉該NCR,進入NCR_applyclose狀態(tài);
7)NCR測試負責人在充分考慮解決方案、驗證結果及NCR負責人的關閉NCR申請后,將對NCR進行處理:
a.驗證通過,關閉該NCR,同時NCR狀態(tài)將進入NCR_Closed,完成缺陷的跟蹤管理閉環(huán)控制;
b.驗證不通過,則返回步驟2)重新對NCR分配任務。
Change平臺還規(guī)定了測試人員提交NCR時必填項目,其中包括:測試項目、NCR名稱、嚴重程度、優(yōu)先級、發(fā)現(xiàn)地點、發(fā)現(xiàn)方式、發(fā)現(xiàn)時間、發(fā)現(xiàn)人、詳細描述及建議措施等,并需要測試人員提交相關軟件或數(shù)據(jù)版本。而這一切只需幾分鐘即可完成缺陷問題的提交。
采用Ch ange平臺進行缺陷管理,測試人員登陸平臺提交問題,分配任務,在任務下達后,分析人員根據(jù)提供的描述與測試記錄,在平臺上對問題進行回復。測試人員依據(jù)問題回復,有針對性的進行復測、驗證。在問題得到解決之后,由負責人關閉問題,形成對缺陷問題的閉環(huán)控制。
基于信息平臺的缺陷管理技術,解決了時間和地域的矛盾,使測試相關人員脫離拖沓、冗長的會議,極大地提高了缺陷跟蹤管理的效率,保障了系統(tǒng)測試的質(zhì)量。
由上文可以明確總結出利用軟件平臺跟蹤管理缺陷的優(yōu)點。
1)完備:Change平臺可以生成Ex cel表格并導出,用戶還可以根據(jù)需求導出相應內(nèi)容,完全具備傳統(tǒng)的《問題匯總表》功能;
2)簡捷:Ch ange平臺定義了不同用戶的角色,所有角色各司其職,有效地減少了測試人員的統(tǒng)計工作;并且NCR提交人在提交缺陷時除發(fā)現(xiàn)人、詳細描述、建議措施3項外,其他必填項目都可以通過下拉菜單直接選擇,操作簡便、快捷,直接提高了問題描述的效率與準確程度;
3)有效覆蓋:平臺直接發(fā)送NCR鏈接至相關角色用戶個人郵箱,不會使跟蹤缺陷的過程產(chǎn)生斷鏈;并且有效避免提交人在匯總缺陷后群發(fā)郵件產(chǎn)生不必要的遺漏;
4)高效:通過平臺可以上傳相關測試日志log,高速、有效地對應至NCR解決人,僅僅幾分鐘就可以完成從提交NCR到分析的過程;使不同缺陷的管理進入并行狀態(tài),每提交一個NCR即可進入相應分析、解決過程,而不需完成全部缺陷匯總后再進入解決缺陷的環(huán)節(jié);
5)持續(xù)跟蹤:當缺陷被關閉后,NCR負責人仍可通過每個環(huán)節(jié)平臺自動生成的修改記錄來查詢整個缺陷處理過程;這些記錄可以直觀的反映整個測試工作的過程,使項目負責人及時掌握測試工作的工作量,而對于缺陷的詳細記錄也成為項目的寶貴技術資源。
由此可見,Ch ange平臺細化了工作流程,使各部門職責更加明確,解決缺陷的效率得到持續(xù)、有效地改進。利用軟件平臺可以更高速有效地完成現(xiàn)場缺陷的跟蹤與管理。
由于信號系統(tǒng)軟件復雜、龐大且直接影響安全,手工管理缺陷變得越來越困難,利用缺陷跟蹤系統(tǒng)簡化了這些工作。首先,利用自動化軟件可以實現(xiàn)地域上分散項目人員高效協(xié)同工作,有效降低項目成本,提高工作效率;其次,通過設置不同的用戶權限,安全、準確地實現(xiàn)缺陷的管理和跟蹤,且便于項目結束后的存檔,以備將來參考;再次,系統(tǒng)維護簡單,采用B/S結構(Brow ser/Server,瀏覽器/服務器模式)只需要維護服務器終端,節(jié)約項目成本。
利用軟件跟蹤、管理、解決信號系統(tǒng)中的缺陷,在目前我國高速鐵路快速發(fā)展的進程中,將扮演著無可替代的角色,也必將成為我國高速鐵路健康發(fā)展不可避免的一部分。
[1]楊潔.軟件測試技術與缺陷跟蹤管理的應用研究[D].北京:北京郵電大學,2007.
[2]聶兆琳.軟件開發(fā)項目缺陷跟蹤管理系統(tǒng)的設計與實現(xiàn)[D].大連:大連理工大學,2007.
[3]柯磊.中小企業(yè)缺陷跟蹤管理系統(tǒng)[J].西安文理學院學報:自然科學版,2009,12(1):1.
[4] GB/T 16260.1-2003 軟件工程產(chǎn)品質(zhì)量 第1部份,質(zhì)量模型[S].