浅析核安全级数字化仪控系统软件V&V的方法

2015-03-20 08:20:18叶王平唐建中陈卫华谷鹏飞王升超
原子能科学技术 2015年1期
关键词:控系统核电站工具

叶王平,唐建中,陈卫华,谷鹏飞,王升超

(中广核工程有限公司设计院,广东 深圳 518124)

随着数字化技术逐渐在核电站的应用,核电领域安全级软件的验证与确认(V&V)工作受到广泛关注,尤其是针对核安全级数字化仪控系统的软件V&V。核电站安全级数字化仪控系统的软件V&V 是保证核安全级数字化仪控系统安全性和可靠性的必要环节。国际原子能机构(IAEA)及中国核安全相关法规标准已明确规定新一代核电站采用核安全级数字化仪控系统,以确保核电站的安全性、可靠性、可用性、经济性[1-2]。目前国际上典型的核安全级数字化仪控系统有:日本三菱公司的MELTAC N+系统、美国西屋公司的CommonQ +Ovation系统及德国西门子公司的TELEPERM XP+XS系统等。我国正在大力推进核安全级数字化仪控系统产品的自主研发工作,而软件的V&V 已被业界公认为是决定自主研发核安全级数字化仪控系统成功的关键技术。

本文从国内外已有成熟堆型和新研制堆型安全级数字化仪控系统的功能出发,对软件V&V 模型、工具、方法及关键因素进行分析。

1 软件V&V的V字模型

核电站安全级数字化仪控系统软件的V&V活动为保证其有效性,必须遵循我国HAF 102—2004、HAD 102/16—2004等核安全法规和导则的要求,同时满足IEC 60880—2006、IEEE 7-4.3.2—2010等核安全标准的要求。在V&V执行过程和V&V方法上,普遍选择IEEE 1012—2012作为主要指导标准。根据IEEE 1012—2012对于软件V&V执行阶段的要求,本文从核安全级数字化仪控系统功能出发,针对已建堆型和新研制堆型的V字模型分别进行介绍。

1.1 已建堆型的V 字模型

对于已有成熟堆型,如应用于辽宁红沿河、福建宁德、广东阳江项目的CPR1000技术,其数字化仪控系统,不论是与电站过程控制直接相关的功能设计、总体结构、应用软件开发及编制的各种类型的规范书,还是与仪控设备直接相关的系统硬件配置及应用软件设计组态,均已经过工程实际机组的检验,仪控系统范围清晰,功能分配明确,数字化仪控设计平台成熟,在做软件V&V 时可直接将仪控系统需求作为起始点开展V&V 相关活动。

因此,软件V&V 的具体阶段可划分为:验证仪控系统需求到仪控系统设计,仪控系统设计到软件需求分析,软件需求分析到软件设计,软件设计到软件实现,软件实现到软件集成[3]。确认各阶段的需求在下一阶段是否均已得到满足,验证软件开发是否按照设计流程和要求开展,从用户的角度确认软件是否符合系统设计的真正需求。常用的已建堆型V 字模型如图1所示。

图1 已建堆型的V 字模型Fig.1 V&V model of reproduction design NPPs

1.2 新研制堆型的V 字模型

对于新研制堆型,其核安全级数字化仪控系统在仪控总体架构、仪控功能设计、系统架构、控制逻辑及系统需求方面还未与系统工艺需求完全分离,在某些功能分配方面仍存在不足,范围边界不明确,产生的核安全级数字化仪控系统需求不能完全满足工艺控制要求,针对这种情况,在进行软件V&V 时应增加工艺系统需求到仪控系统需求的转换过程的验证与确认过程,检验仪控系统的监测功能、控制功能、保护功能是否完整、正确[4]。新研制堆型的V字模型示于图2。

图2 新研制堆型的V 字模型Fig.2 V&V model of new design NPPs

1.3 V&V 活动的主要任务

核安全级数字化仪控系统软件V&V 活动的阶段和主要任务列于表1。在实施V&V 活动时参考文件和目标文件可根据受测软件的特性和范围进行择取,但V&V 各阶段的划分和阶段之间的承接关系不能省略或更改。

表1 软件V&V的主要任务Table 1 Main task of software V&V

2 V&V方法和工具

核电站安全级数字化仪控系统软件V&V方法的完备性和工具选择的合理性,直接影响到V&V活动的具体实施,决定着软件V&V 的成效。若方法选择不完备,在V&V 的前期阶段如概念阶段和需求阶段未发现的错误或缺陷,将在后续环节延续并放大,并会导致在后续阶段发现问题时查找原因困难、修改周期和代价很大,影响到软件开发和验证的进度。若工具选择不合理,可能导致V&V 工具无法发现已产生的错误或缺陷,甚至引入新的错误,从而对软件开发产生不利影响[5]。因此,应结合软件V&V 的不同阶段,选择适用的方法和工具,以确保软件V&V各项活动的有效性和可靠性。

2.1 V&V 方法

目前国内外关于软件V&V 的方法主要来自于国际通用标准IEEE Std 1012 的相关要求。本文将基于此标准的整体内容要求,以其他软件V&V 法规标准相关要素作为补充,结合目前国内核电站数字化仪控系统的实际特点,总结出适用于核电站数字化仪控系统软件V&V 的技术方法,详细分类如下。

1)追溯分析。追溯分析包括正向追溯分析和反向追溯分析。正向追溯分析是指从上一阶段的需求文件(如安全级仪控系统需求)向下一阶段的设计文件(如安全级仪控系统设计)进行追溯,目的在于验证上一阶段需求文件中定义的所有需求在下一阶段设计文件中是否都得到了有效落实。反向可追溯分析是指从下一阶段的设计文件(如安全级仪控系统设计)向上一阶段的需求文件(如安全级仪控系统需求)进行追溯,目的在于验证下一阶段的文件(如安全级仪控系统设计)有据可依。

2)文档分析与评价。文档分析与评价通过对文档的人工审查,检查软件开发各阶段文档是否满足完备性、准确性、一致性、无二性、规范性及易读性的要求。此方法不需太多的测试准备工作,也难以进行考量,测试效果很大程度上依赖于测试人员的技术水平和测试经验。

3)设计图对比分析。对于核电站数字化仪控系统,本方法主要指通过人工方法验证系统逻辑图/模拟图(即LD/AD)的功能需求、接口需求、性能需求等,在分散控制系统(DCS)实现的功能图(FD)中均已得到满足。反之,确认系统功能图中实现的所有功能是否都有需求来源,具体可划分为正向图纸审查(以LD/AD 为基准向FD 追溯)和反向图纸审查(以FD 为基准向LD/AD 追溯)。

4)静态分析。静态分析包括控制流分析、数据流分析、接口分析、表达式分析。此方法是在不执行程序的情况下对软件代码进行分析,包含程序规模、模块数、注释率、模块圈复杂度等信息的分析。代码静态分析开展前,应对自动化测试工具和测试标准/规范的选取进行分析,以确保其适用于核电站安全级数字化仪控系统的要求。

5)代码走查。代码走查是指依据软件行业主流标准(如MISRA-C—2004、GJB 5369—2005等)和开发部门确定的编码规范,通过人工方法沿程序逻辑进行审查,查找其缺陷,如语法检测、代码书写规范检查等,验证代码实现与软件功能需求的一致性。

6)黑盒测试。黑盒测试是指依据软件行业主流标准,将程序看作是内部不可见的黑盒,不考虑内部/编码结构和语句路径,通过专用工具从程序输入与输出间的关系检查测试结果是否满足预期要求。此方法依靠软件设计说明书中的功能来设计测试用例,以检验软件的功能完整性,测试用例设计应具有代表性,覆盖各种合理的和不合理的、合法的和非法的、边界的和越界的及极限的输入数据和期望输出。

7)白盒测试。白盒测试是指依据软件行业主流标准,通过专用工具设计测试用例分析程序内部逻辑/编码结构,覆盖程序的每个语句、每个条件分支、每个控制路径,检验其是否存在缺陷或错误。此方法根据软件内部构造设计测试用例,检验代码测试的完整性。对于核电站核安全级数字化仪控系统的模块测试必须达到100%的覆盖率要求。

8)危害与风险分析。危害分析的内容包括鉴别系统的潜在危害源、评估每个危害的后果、评估每个危害发生的可能性、制定每个危害的缓解策略。风险分析包括鉴别系统的技术和管理风险、制定消除或减轻风险严重性的建议。危害与风险分析作为确保软件安全性、可靠性及质量保证的重要手段,应贯穿于安全级数字化仪控系统软件开发及V&V生命周期的全过程。

2.2 V&V工具

HAD 102/16—2004、IEC 60880—2006、IEEE 7-4.3.2—2010、IEEE 1012—2012 等 法规标准均对软件V&V 的工具使用提出了具体的要求,总体原则为V&V 工具应满足预期应用的可靠性要求,且明确其应用范围[2-7]。核电站数字化仪控系统控制逻辑、系统结构复杂,应用软件可靠性、安全性要求很高,特别是国内核电站仪控系统开发平台还不够完善,依据图形化设计工具而自动生成的软件代码可读性较差,无论是软件开发人员,还是第三方V&V 人员,对V&V 工具的选择非常重要。对于软件V&V 工具的使用,本文从以下3 个方面介绍应关注的事项。

1)成熟工具的使用。目前市场上使用的第三方独立V&V 工具种类繁多,功能和适用范围差别很大,软件研发人员应结合核电站数字化仪控系统应用软件的类型和测试阶段(白盒测试或黑盒测试)选择测试工具,并明确规定V&V 自动化工具的应用范围,选择兼容于软件开发平台和其他V&V 工具,且具有充分安全可信性的自动化工具(入侵程度小的工具,即尽量避免以任何方式修改代码或控制操作环境),保证工具不危害最终产品的安全。同时,应在软件开发初始阶段,从全盘考虑,结合软件开发各阶段的特点,依据纵深防御和多样化原则选择多种V&V 工具,以降低对单个V&V工具的可靠性要求。

2)专用工具的使用。在核安全级仪控系统软件开发过程中,软件开发团队的内部V&V 人员为提高效率,节省工作时间,会根据开发软件的特点,有针对性地开发配套的专用软件测试工具,采用图形化建模、仿真等手段设计专用测试装置。此类工具不像市场成熟的工具经过产品鉴定、认证,没有经过专业的性能测试和质量评估,在使用这类工具前,应评估其可靠性及引入错误的可能性,并针对其开发环境和开发过程是否满足法规标准的要求和其测试准确性进行评估,在确保专用测试工具的可靠性和安全性后,方能引入到仪控系统软件的V&V 过程中。

3)鉴定测试。在做第三方独立V&V 时,技术独立性意味着V&V 工具应区别于开发人员所使用的工具,若IV&V 人员与开发人员使用相同的工具,则应对该工具进行鉴定测试,以保证相同的工具不会包含可能掩盖用于分析和测试系统错误的错误。对于有广泛应用业绩的成熟工具产品,一般不要求进行鉴定测试。

3 软件V&V活动的关键因素

核电站安全级数字化仪控系统软件对安全性、可靠性有很高的要求,虽然依据相同的标准,但是不同的V&V 团队会有不同的成效,本文从核电站实际项目的经验反馈出发,针对软件V&V 人员在测试过程中应重点关注的事项,总结得到如下关键因素。

1)人员的经验与能力。目前代码测试普遍采用的方法是人工走查和自动化测试工具相结合的做法,几乎80%的代码问题是由人工走查发现,20%的代码问题由测试工具查出,对于V&V 人员的软件检测能力和测试经验要求很高。另外,V&V 人员在开展工作前应对测试对象(数字化仪控系统功能)进行深入了解,若是具备核电仪控设计经验的人员参与V&V 活动效果将会更佳。

2)软件质量管理。在软件V&V 过程中,即使有先进的检测工具,成熟的技术,但缺乏质量管理仍不能确保软件V&V 的效果和有效性,尤其是在进度和资源的压力下,很容易出现质量管理流于形式、管理混乱的现象。所以,在软件V&V 开始时就应将质量管理提上高度,提高授权,专人专管,并将质量管理贯彻始终。

3)经验反馈。在开展核电站安全级数字化仪控系统软件V&V 工作前,应充分针对航天、军工等安全关键软件的V&V 活动进行调研,吸取其在V&V 项目进行过程中的经验反馈,如可靠性测试如何有效开展、软件开发过程中容易出现的错误、测试用例设计方法、自动测试工具的选取、测试阶段的划分、测试报告的编制等。

4)介入时机。软件V&V 活动若在软件开发初期介入,其缺陷识别成本、缺陷解决成本将大幅降低,避免开发初期引入的错误或缺陷被层层放大,极大地提高V&V 活动的成效,同时,V&V 活动应伴随着软件生命周期的全过程,形成V&V 小循环,且V&V 团队在人员设置上应与软件开发团队相近。

4 结语

软件V&V 作为软件质量验证最有效的手段之一,贯穿于整个软件开发生命周期,在软件开发完成后也可进行独立的第三方V&V。针对每项V&V工作任务,IV&V 工作均应采用多样化的技术、方法和工具,以保证任务完成的质量,并满足相关国家、国际标准对于核安全级数字化仪控系统软件V&V 的可靠性要求。本文所阐述的方法不仅适用于核电站安全级数字化仪控系统软件,也适用于核电站其他关键设备软件的V&V,对于非核项目也具有很好的通用性。

[1] HAF 102—2004 核动力厂设计安全规定[S].北京:国家核安全局,2004.

[2] HAD 102/16—2004 核动力厂基于计算机的安全重要系统软件[S].北京:国家核安全局,2004.

[3] IEEE Std 1012—2012 IEEE standard for system and software verification and validation[S].New York:IEEE,2012.

[4] 刘真,江国进,孙永滨.核电安全级仪控系统软件V&V 活动及其方法研究[J].核科学与工程,2011,12(S2):45-50.LIU Zhen,JIANG Guojin,SUN Yongbin.The V&V activities and techniques for safety-class I&C system in the nuclear power plant[J].Chinese Journal of Nuclear Science and Engineering,2011,12(S2):45-50(in Chinese).

[5] 刘斌.软件验证与确认[M].北京:国防工业出版社,2011.

[6] IEC 60880—2006 Nuclear power plants instrumentation and control systems important to safety-software aspect for computer-based systems performing category functions[S].Switzerland:IEC,2006.

[7] IEEE 7-4.3.2—2010 IEEE standard criteria for digital computers in safety systems of nuclear power generating stations[S]. New York:IEEE,2010.

猜你喜欢
控系统核电站工具
如果离我不远的核电站出现泄漏该怎么办
飞碟探索(2022年2期)2022-05-31 01:28:03
关于DALI灯控系统的问答精选
波比的工具
波比的工具
联调联试中列控系统兼容性问题探讨
核电站护卫队
“巧用”工具
读者(2017年18期)2017-08-29 21:22:03
核电站的“神经中枢”
中国核电(2017年2期)2017-08-11 08:01:12
海上核电站提速
能源(2016年3期)2016-12-01 05:11:05
一种新型列控系统方案探讨