摘要:在針對數字化核安全級儀控系統中的軟件進行驗證和確認(V&V)過程中,為了確保V&V工作可信、有效、高效地開展,構建一個軟件V&V平臺,支持包括準備、執行和管理等全過程的V&V活動。該V&V平臺基于通用數據庫,通過集成定制工具與商用工具,來提供V&V工作所需的方法和手段。通過多個核級軟件的V&V項目的應用實踐,證明該平臺對于開展V&V活動發揮了重要作用,使得數字化核安全級儀控系統具有清晰證據支持的高安全性與高可靠性。
關鍵詞:數字化核安全級儀控系統;軟件驗證和確認平臺
Abstract: In the process of performing verification and validation (V&V) for software of digital safety I&C system used in nuclear power plant, this paper proposes to build a software V&V platform to support V&V activities such as preparation, implementation and management etc., in order to ensure acredibly, effectively and efficiently V&V. The proposed V&V platform which is based on common database, can provide methods and means required of V&V by integrating customized and commercial tools. The application practice of this V&V platform in multiple projects of nuclear safety software V&V have demonstrated its important role in carrying out V&V activities, making the digital safety I&C system used in nuclear power plant possess a clear evidence to support high safety and reliability.
Key words: Digital safety I&C System used in nuclear power plant; Software V&V
隨著數字化核安全級儀控系統在核電站安全系統中的應用和普及,系統中的軟件承擔著越來越重要的安全功能,對執行安全功能的軟件進行驗證和確認(V&V)工作,是保證軟件質量的必要手段之一。為確保有效地開展V&V活動,從而使得軟件具備清晰證據支持的高可信度,一個系統而完善的V&V平臺將不可或缺。北京廣利核系統工程有限公司的V&V團隊基于對V&V理論的深刻領悟以及對V&V活動的不斷實踐,逐漸構建出一個完整的V&V平臺,并在應用中不斷完善與優化。
1 V&V活動特點
核安全級軟件的驗證和確認是基于相關法規和標準的指導,貫穿于軟件生命周期全過程的、用于驗證軟件生命周期各個階段活動的輸出滿足此活動的要求并確認系統可以執行其預期的功能且滿足用戶需求的一組系統化、工程化的活動。
針對核電站數字化核安全級儀控系統中軟件的V&V活動必須遵循HAF 102[1]、HAD 102/16[2]等核安全法規和導則的要求,同時滿足GB/T 13629[3]及IEC 60880[4]等核安全相關標準的要求。在V&V執行過程和方法上,選取IEEE Std 1012[5]作為主要指導標準。
遵循以上法規、標準的要求,V&V活動既包含對軟件開發過程的評價,也包含對軟件產品質量的評價。其目的包括:
(1)盡可能發現軟件缺陷;
(2)提供證據表明軟件滿足了儀控系統分配給軟件的要求;
(3)提供證據表明避免軟件失效的方法已得到應用;
(4)提供證據表明發現軟件殘余缺陷(包括編譯時和運行時缺陷)的方法已得到應用;
(5)提供證據表明控制已發現缺陷的方法已得到應用;
(6)提供證據表明適用的法規標準已成功應用;
(7)提供獲得應用許可的初始知識;
(8)減少電站安全評估的工作量。
同時,V&V活動涉及多個領域的知識,除軟件設計、編碼及測試外,還包括核工藝、質量保證、配置管理、安全分析等多個領域,因此需要具備這些領域的知識和經驗。
另外,V&V活動應具有較高的獨立性,其中技術獨立性要求V&V活動選用的輔助工具應盡可能不同于開發工具,其活動過程也應相對獨立于軟件開發活動。為保證V&V工作自身的有效與可信,還要求各V&V任務協同進行并提供可核查的證據。
基于上述V&V活動的特點,為支持V&V工作開展,有必要為V&V 工作建立一個V&V平臺以提供相應支持。這一V&V平臺應具備以下特點:
(1)提供豐富的核安全級儀控系統行業以及V&V專業的知識和經驗;
(2)提供V&V工作所需的流程、規范等,保證V&V活動有序開展;
(3)提供V&V工作所需的工具,提高V&V活動的有效性和效率;
(4)支持并引導V&V所發現的異常在受控的流程下進行處理;
(5)支持并引導在V&V活動執行的同時,記錄V&V活動的必要信息,保證V&V報告可信,并支持V&V活動的可核查,從而最終提高針對核安全級儀控系統安全性和可靠性的信心水平;
(6)支持V&V團隊成員間的協同工作等。
2 V&V平臺設計
2.1 V&V平臺概念的提出
V&V活動的有效開展離不開V&V方法的指導以及V&V手段的支持,V&V方法與V&V手段二者共同組成全面支持V&V活動的V&V平臺[6],其關系如圖1所示。
圖1 V&V平臺與V&V活動的關系圖
2.2 V&V平臺架構設計
2.2.1 V&V方法
V&V方法指為達到V&V目的而遵循的理論、思路、途徑、方式、步驟等。V&V技術體系集成V&V工作所需的全部方法,可劃分為V&V知識經驗和V&V規范兩部分。其形成過程如圖2所示。
圖2 V&V技術體系形成過程
2.2.2 V&V手段
V&V手段是支持V&V活動按V&V方法得以執行并實現V&V目的的一系列工具。
V&V工具的使用除提高V&V效率外,還可引導V&V工作有序開展,保證V&V活動的完整性、可重復性,從而提高V&V工作自身的可信性,最終提高核安全級軟件的安全性和可靠性。
2.2.3 V&V平臺架構
V&V平臺提供V&V全部工作所需的V&V方法和V&V手段的有機結合,全面支持V&V工作的開展。V&V平臺架構如圖3所示。
圖3 V&V平臺架構圖
V&V技術體系由V&V知識經驗庫和V&V規范庫管理,V&V手段分別由V&V信息化工作子平臺、V&V任務執行子平臺、V&V支持子平臺三個子平臺提供。V&V平臺各部分的設計見2.3~2.7描述。
2.3 V&V知識經驗庫
V&V知識經驗庫用于管理V&V活動相關的知識和經驗,包括V&V參考信息、V&V研究成果以及V&V經驗信息,是進行V&V規范建設的基礎,也可用于直接指導V&V實踐工作,確保V &V方向正確、方法有效、技術無誤。其中:
(1)V&V參考信息指V&V研究和V&V工作過程中可能用到的參考材料,包括:
• V&V對象及V&V工作所需遵循的法規、標準等行業規范性文件;
• V&V對象及V&V工作的行業現狀及良好實踐資料;
(2)V&V研究成果指在V&V理論、技術、方法以及工具等方面的研究成果。V&V研究成果一般包括以下內容:
• 采標分析報告;
• 可行性分析報告;
• V&V技術方案;
• V&V特別技術實施方法(如形式化分析技術、故障插入測試技術等);
• 工具選型報告;
• 適用性分析報告;
(3)V&V經驗信息指V&V團隊在V&V工作實踐及對外交流過程中積累的經驗。既包括良好V&V實踐的經驗,也包括失敗V&V實踐的經驗。V&V經驗信息以經驗單、工作總結、培訓材料、對外交流材料等多種形式存在。V&V經驗信息對于改進V&V活動發揮著不可替代的作用。
2.4 V&V規范庫
V&V規范庫用于管理直接指導V&V活動開展所需的規范類文件,為各項活動建立行動規范和判定準則。V&V規范類文件包括以下三個層次:
(1)工作流程,用于規定依據軟件生命周期所需開展的V&V活動,以及各項活動包含的任務以及依據技術規范,此外還包含偏離策略、迭代策略等處理原則。
(2)技術規范,用于規定某項V&V工作的工作方法、步驟、工具、策略、輸入、輸出等要求,確定某項V&V任務如何開展。
(3)模板/檢查單等,用于具體指導某項V&V任務的執行。其中,模板規定了不同類型的文件所需描述的內容、方式等,從而使得該類文件具有統一的展現形式;檢查單規定了針對某類文件審查過程中所需檢查的條目,從而使得有效的實踐經驗能被廣泛而統一的進行應用。
2.5 V&V支持子平臺
V&V支持子平臺用于對全部V&V工作提供基礎性的支持,提供相關工具,實現文件配置管理、項目管理、郵件服務等功能。
文件配置管理基于配置管理工具(如IBM Rational ClearCase)實現,用于相關文件管理、版本控制、發布管理、過程控制以及變更控制等,文件配置管理工具為文件管理提供了便利、受控、可核查的手段。
項目管理和郵件服務功能用于支持V&V團隊成員協同工作,項目管理支持V&V工作的項目化管理,郵件服務支持V&V團隊成員之間正式的信息交換。
2.6 V&V任務執行子平臺
V&V任務執行子平臺用于支持具體V&V任務項的執行,提供相關工具,實現測試、分析、需求管理等功能。
集成了通用測試工具與定制測試工具的V&V任務執行子平臺提供覆蓋核級儀控系統全范圍的測試支持??蓪崿F對數字化核安全級儀控系統測試環境的構造和驅動運行,全面支持各類測試活動,包括軟件代碼檢查、單元測試、集成測試、系統測試和驗收測試等。同時,輔助實現測試設計、測試用例管理、測試自動執行、測試結果分析等工作,還提供測試覆蓋率分析、故障插入測試以及專用網絡/硬件測試等功能??蛇m應核安全級儀控系統專用技術多、響應速度快、處理精度高、高安全性和高可靠性等特點。
可靠性驗證基于可靠性分析工具(如Isograph)實現,可用于執行危險分析時輔助進行可靠性建模、分析、計算等。
形式化驗證基于專門的形式化驗證工具(如NuSMV、Spin等)實現,用于輔助分析人員建立驗證對象的行為模型并自動驗證對象的屬性。
需求追蹤管理基于需求管理工具(如I BM RationalRequisitePro)實現,可用于實現三個緯度的追蹤管理,包括需求、設計及實現之間的研發追蹤管理,從需求項到測試設計間的追蹤管理,測試設計、測試用例、測試規程以及測試記錄之間的測試追蹤管理。
2.7 V&V信息化工作子平臺
V&V信息化工作子平臺用于支持V&V工作全過程的信息管理,該平臺基于流程管理軟件工具(如IBM Rat ional ClearQuest),以及數據庫軟件(如Microsoft SQL Server)和報表軟件(如Crystal Reports)這兩個支持性軟件經二次開發而建立,主要功能包括:
(1)信息準備,導入或錄入用以支持工作開展的各類基礎信息,是任務執行前的準備工作,包括:
• V&V對象信息:包括項目信息、文件版本信息、需求及設計的條目信息等;
• V&V規則信息:包括審查規則、檢查單、分析提示單、失效模式庫等信息;
• V&V管理信息:包括項目人員的姓名、角色及權限等信息;
(2)流程引導,對于諸多V&V活動中存在時序約束的任務,將引導執行人員按照預設的流程開展工作,此外還針對部分任務提供相應的提示信息,如:任務提示、操作提示、方法提示、相關設計及規則提示等;
(3)信息收集,支持并約束V&V執行人員在V&V工作過程中記錄必要的過程信息,包括:
• 評估信息:依據審查規則針對評估對象進行審查,并記錄審查意見等;
• 分析信息:在開展追蹤性分析、危險分析、安保分析等諸多V&V專項分析的過程中,記錄分析結論及分析過程中的一些關鍵信息;
• 測試信息:記錄測試設計、測試規程、測試用例及測試結論等信息,并建立相互之間的鏈接關系;
• 操作信息:在本平臺上的操作活動均會自動進行記錄,報告操作人員、操作動作以及操作時間等信息。所有的活動都將是可復現的,可用于查找錯誤操作以及對新員工進行操作培訓等。
(4)異常處理,支持并約束V&V執行人員隨時將V&V工作所發現的異常記錄到V&V信息化工作子平臺數據庫中。支持并約束異常按照設定的處理流程進行處理,并記錄處理過程信息。
(5)數據分析,支持對V&V信息化工作子平臺中的各類數據進行自動統計、分析等,并按照預設的公式自動生成統計圖表以便支持進一步的人工分析。如V&V工作狀態分析、V&V對象質量狀態分析等。
(6)報告生成,支持主要V&V報告按照預設的格式自動生成。
通過V&V信息化工作子平臺的使用,可確保V&V活動真正實現:規范、可信、高效、可核查。
3 基于V&V平臺的應用實踐
在V&V平臺的支持下,V&V團隊開展了多項核安全級儀控系統中的軟件V&V工作。所涉及到的軟件類型包括基于CPU運行的軟件,也包括HPD邏輯。
以某核級主控板卡上的CPLD芯片中的HPD邏輯設計文檔評審工作為例,該項工作的主要執行過程如圖4所示。
圖4 HPD邏輯設計文件評審過程
評審過程中各步驟的工作描述以及與V&V平臺的交互關系說明如下:
(1)在啟動HPD邏輯V&V前,啟動HPD邏輯V&V研究課題,收集CPLD/FPGA應用于核安全儀控系統相關的法規、標準和行業經驗等,整理并存入V&V知識經驗庫。然后研究HPD邏輯V&V關注焦點,比較HPD邏輯設計和一般軟件(基于CPU運行的軟件)設計的區別,特別研究HPD邏輯與核安全相關的可靠性設計的分析檢查方法和可接受準則。再將全部研究成果整理并存入V&V知識經驗庫。
(2)在HPD邏輯V&V研究的基礎上,制定HPD邏輯設計文件評審技術規范,制定HPD邏輯設計文件評審檢查單,存入V&V規范庫。
(3)將檢查單的條目通過V&V信息化工作子平臺錄入數據庫。
(4)在V&V支持子平臺的文件配置管理工具的控制下,獲得研發關于該模塊的HPD邏輯需求和設計文件。使用V&V支持子平臺中的需求追蹤管理工具自動提取需求項條目和設計項條目,同時建立需求項和設計項之間的追蹤性關系。
(5)通過V&V信息化工作子平臺將該模塊條目化后的HPD邏輯需求項和設計項錄入數據庫。
(6)在V&V信息化工作子平臺的流程引導下,選擇要進行的評審任務(選擇任務類型和評審對象),V&V信息化工作子平臺順序給出HPD邏輯設計項,同時提示適用的檢查單條目,評審人員執行檢查、判斷。
(7)在V&V信息化工作子平臺的控制下,評審人員記錄重要的判斷理由和檢查過程。除在V&V信息化工作子平臺控制下執行的評審外,還可執行多人參加的會議評審,評審記錄和結論也可通過V&V信息化工作子平臺錄入數據庫。
(8)評審人員發現異常時,在V&V信息化工作子平臺的控制下,評審人員錄入異常描述的全部必要信息以及需要的補充信息。
(9)異常提交完成后進入異常處理流程,直至最終關閉。異常處理過程和信息的記錄全部自動存入數據庫。
(10)在V&V信息化工作子平臺的支持下,V&V人員可對已評審的HPD模塊進行質量狀態分析。
(11)V&V人員在V&V信息化工作子平臺的支持下自動生成該模塊的HPD邏輯設計評審報告,存入V&V支持子平臺的文件配置管理數據庫中,提交開發團隊。
在上述HPD邏輯設計文檔評審活動的各個步驟中,V&V任務執行與V&V平臺密切交互。通過V&V知識經驗庫和V&V規范庫支持了HPD邏輯V&V研究和HPD邏輯V&V規范建設等一次性工作。同時,還通過V&V任務執行子平臺輔助提取開發文檔條目,通過V&V信息化工作子平臺支持和控制設計評審中的分析判斷過程、異常處理過程以及評審報告編制過程等,通過V&V支持子平臺管理了評審過程中的全部信息的后臺管理及工作協同。在V&V平臺的支持下,HPD邏輯設計文檔評審活動得以有序、深入地執行,評審過程中所有重要信息得以有效收集、管理和報告,評審中發現的異常得以受控處理,分析判斷過程得到有效的信息提示,評審效率得以提高。
4 結束語
本文介紹了用于數字化核安全級儀控系統的軟件V&V平臺的設計與應用實踐,該V&V平臺提供V&V工作全過程所需的方法和手段。使用該平臺完成了數字化核安全級控制保護系統產品(FirmSys)中的軟件V&V,以及基于FirmSys產品的某定制工程應用系統的應用軟件V&V。在該平臺的支持下,V&V工作在受控狀態下有序開展,V&V工作效率得到較大提高,V&V工作得以深入開展并完整地記錄了V&V活動的重要信息,最終確保數字化核安全級儀控系統具有清晰證據支持的高安全性與高可靠性。
參考文獻:
[1] HAF 102-2004. 核動力廠設計安全規定 [S]
[2] HAD 102/16 2004. 核動力廠基于計算機的安全重要系統軟件[S]
[3] GB/T 13629-2008. 核電廠安全系統中數字計算機的適用準則 [S]
[4] IEC60880-2006 Nuclear power plants – Instrumentation and control systems important to safety – Software aspects for computer-based systems performing category A functions
[5] IEEE Std 1012-2004, IEEE Standard for Software Verification and Validation
[6] 張亞棟等. 數字化核安全級儀控系統軟件的驗證與確認[J].核科學與工程, 2012 (S2) .
作者簡介
張亞棟(1975-),男,山西人,畢業于西安電子科技大學,獲計算機應用碩士學位,高級工程師,現主要從事于核級軟件的驗證和確認工作。