◆施予 / 文
多年來,“GB/T 25000.51-2010《軟件工程 軟件產品質量要求和評價(SQuaRE) 商業現貨(COTS)軟件產品的質量要求和測試細則》”(簡稱老標準),已成為目前軟件檢測實驗室使用最廣泛的軟件檢測標準。但是,隨著軟件工程的迅猛發展,新的軟件質量標準“GB/T 25000.51-2016《系統與軟件工程系統與軟件質量要求和評價(SQuraRE) 第51部分:就緒可用軟件產品(RUSP)的質量要求和測試細則》”(簡稱新標準)已經發布并實施,替代了GB/T 25000.51-2010標準。在這種背景下,對于軟件檢測實驗室來說,進行檢測工作的標準,也要隨著國標的變化而變化。本文以一個就緒可用軟件產品“某機器人仿真與動力學分析系統V1.0”的測試為背景,運用新標準GB/T 25000.51-2016對其進行檢測和評價。通過這個實例,摸索并總結出一套基于新標準的軟件檢測實驗室測試方法。

隨著新的軟件測試國標GB/T 25000.51-2016的發布和實施,以及老國標GB/T 25000.51-2010的作廢,軟件檢測需要根據新的國標實施評測活動。因此,需要對新老國標進行一次比對,來確定實驗室的評測能力是否能夠滿足新國標的要求,以及哪些地方需要進行改進。
新國標GB/T 25000.51-2016是老國標GB/T 25000.51-2010的修訂版,保留了原有國標中的軟件質量要求的特性,但同時新的國標中增加了性能效率、兼容性、信息安全性、有效性、滿意度、抗風險和周境覆蓋特性,相關的子特性也做了修改、調整和補充。
這就要求評測實驗室針對新的國標進行研究,同時對比老國標的一些質量要求,更好地應用新的國標GB/T25000.51-2016,來規范、升級軟件實驗室評測活動。
新國標把軟件檢測的適用范圍,擴展到了就緒可用軟件產品(RUSP)。RUSP的含義是可以打包出售給對其主要特性和其他質量沒有任何影響的需求方的軟件產品。而老標準僅適用于商業現貨(COTS)軟件產品,因此新標準的范圍更大了一些。
在新的標準中對用戶文檔提出了一些新的要求:產品說明中,應該闡明所運行軟件的質量特性;當有軟件版本不同時,應該無歧義地予以指明;增加滿意度、抗風險、周境覆蓋相關描述。
在老標準中,對軟件產品所包含的7大項主要特性——功能性、可靠性、易用性、效率、維護性、可移植性、使用質量,進行了要求;而在新的標準中,增加了性能效率、兼容性、信息安全性、有效性、滿意度、抗風險、周境覆蓋這些特性。
(1)性能效率方面
標準沒有詳細說明性能效率包含哪些內容的陳述,但分析下來應該是并發用戶數、響應時間、吞吐量、CPU占用率等參數。
(2)兼容性方面
1)軟件應提供至少一種方式,來控制被安裝組件的兼容性;
2)軟件應按照用戶文檔集或產品說明中所規定的兼容性特性來執行;
3)應在用戶文檔集里說明軟件需要提前配置的環境和參數;
4)在用戶文檔集里應明確指明兼容性、功能、數據流的類型。
(3)信息安全性方面
1)保密性:授權用戶可以對系統進行訪問,非授權用戶無法訪問;
2)完整性:確保授權用戶能夠完整地訪問系統規定的所有功能;
3)抗抵賴性:軟件具有留痕功能,可以審核、追蹤用戶訪問信息以及重要的操作信息;
4)可核查性:審核記錄的內容應包括事件的日期、時間、發起者信息、類型、描述和結果等信息;
5)真實性:對信息的來源進行判斷,能對偽造來源的信息予以鑒別。
(4)有效性方面
1)軟件按照產品說明中陳述的使用質量的有效性特性來執行,并通過用戶文檔得到幫助;
2)軟件應能提供評價,對期望的依從性目標的影響手段。
(5)滿意度方面
1)軟件應按照產品說明中陳述的使用質量的滿意度特性來執行,并通過用戶文檔獲取幫助;
2)如果有維護合同,生效后,軟件應提供直接與供方進行溝通的渠道。
(6)抗風險
1)軟件應按照產品說明或用戶文檔集里陳述的使用質量的抗風險特性來執行,并通過用戶文檔獲得幫助;
2)對于存在風險的功能,軟件應提供明確的確認過程以及管理渠道;
3)對于存在風險的功能,軟件應有審計、跟蹤功能。
(7)周境覆蓋
1)軟件應按照產品說明中陳述的使用質量的周境覆蓋特性來執行,并通過用戶文檔取得幫助;
2)如果軟件使用參數,限制功能性覆蓋,用戶應了解當前使用的功能的所有覆蓋情況。
新標準中重點針對測試文檔集進行了一些更新,特別強調“產品標識”,并且對測試活動進行了舉例說明,主要包括:測試環境搭建、測試文檔編制、測試執行等。另外,為了適應ISO 9001-2015質量管理體系新版變化,提出了風險管理、人力資源、溝通理念。這些都將在測試文檔和過程中有所體現。相比之下,新標準更注重對測試文檔集的控制,通過測試文檔集來規范測試過程。
標準轉換一共分為六個階段。
(1)新老標準的交替過渡
新標準發布后,有一段時間的過渡期。在這個過渡期中,一方面,由業務部門使用原來的標準進行現有項目的正常檢測工作;另一方面,抽調一部分資深檢測人員和專門研究標準的人員,進行新老標準的比對和研究,制定出新的檢測規范流程。
(2)新老標準變更不同點的分析
主要由一部分資深檢測人員和專門研究標準的人員共同完成。由于檢測人員是測試體系的主要使用者,他們對于現有的日常體系的運行,相對熟悉;而標準人員對于標準更加熟悉,因此這樣兩種不同職能人員的組合,可以做好新老標準變更不同點的分析。

(3)建立檢測規范流程
通過分析和比較后,把標準變更和本實驗室的特點結合起來,基于業務應用進行梳理,在前期建設基礎上通過流程、崗位職責、管理規范等優化完善,進而制定出在新標準體系下以業務應用為導向的實驗室檢測流程規范,并作用于相關測試模板,使其得到落實和完善。同時,還需要考慮未來需求變化,盡可能留有余地,為后續拓展和修訂奠定基礎,以實現快速反應和及時維護,實現模板的增刪減功能。
(4)測試文檔模板的修訂
根據前面制定的檢測規范,進行測試文檔模板的修訂,主要包括測試計劃、測試報告、測試異常報告等相應的檢測模板。
(5)新測試體系的落實
新測試體系修訂完成后,由獨立于修訂體系的質量部門進行體系的審核,并提出修改意見,根據意見進行修改。修改完成后,體系正式落地實施。
(6)新測試體系的運行及差異對比
通過新體系的運行,找出和原有體系運行的差異之處,通過直觀的數據進行比對,查看是否有需要改進的地方。
(1)測試內容調整
根據3.1~3.3,對測試內容進行調整。
(2)測試文檔要求調整
在原有基礎上,對測試文檔進行以下調整:
1)產品標識:增加產品型號或版本、商標等標識性信息,確保被測物品的唯一性;
2)風險管理:對風險進行識別、分析、控制;
3)人力資源:詳細列出測試過程中參與的工程師、審核人員等,以及占用的時間、百分比等信息;
4)溝通:列出測試方和被測方的溝通人員、職責、郵箱、電話等聯系信息,確保溝通暢通。
根據本文提出的方法,我們在某第三方檢機構實驗室選擇了一個就緒可用軟件產品“某某機器人仿真與動力學分析系統V1.0”,于2019年11月至2019年12月分別運用老、新標準,對該軟件產品進行了軟件測試,驗證體系轉換的有效性。
使用兩個不同標準進行檢測,主要差異如下。
基本說明和測試范圍與老標準相同。
測試標準和參考依據:GB/T 25000.51-2016系統與軟件工程系統與軟件質量要求和評價(SQuraRE) 第51部分:就緒可用軟件產品(RUSP)的質量要求和測試細則。
針對功能模塊進行的功能測試,共使用了98個測試用例。比原來老標準下的測試用例多了98-86=12個。這些測試用例主要表現在體系轉換內容方面。
本文介紹了軟件工程中的軟件產品質量要求和評價GB/T 25000.51-2016標準下的軟件檢測實驗室的測試管理方案,通過對比原有的GB/T 25000.51-2010與新標準GB/T 25000.51-2016的區別,對軟件檢測實驗室的測試工作規范進行了新的定義,并通過應用新舊兩個不同標準,對同一個就緒可用軟件產品進行了比對測試,驗證了體系轉換的有效性。
進一步的研究將結合更多實例,對GB/T 25000.51-2016標準下的軟件檢測實驗室的測試工作展開研究。

表5-1 異常情況表