APP下载

数字化核安全级仪控系统软件验证和确认平台的设计与实践

2014-05-29北京广利核系统工程有限公司张亚栋程建明

自动化博览 2014年4期
关键词:控系统软件测试

北京广利核系统工程有限公司 张亚栋 程建明

随着数字化核安全级仪控系统在核电站安全系统中的应用和普及,系统中的软件承担着越来越重要的安全功能,对执行安全功能的软件进行验证和确认(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任务执行子平台提供覆盖核级仪控系统全范围的测试支持。可实现对数字化核安全级仪控系统测试环境的构造和驱动运行,全面支持各类测试活动,包括软件代码检查、单元测试、集成测试、系统测试和验收测试等。同时,辅助实现测试设计、测试用例管理、测试自动执行、测试结果分析等工作,还提供测试覆盖率分析、故障插入测试以及专用网络/硬件测试等功能。可适应核安全级仪控系统专用技术多、响应速度快、处理精度高、高安全性和高可靠性等特点。

可靠性验证基于可靠性分析工具(如Isograph)实现,可用于执行危险分析时辅助进行可靠性建模、分析、计算等。

形式化验证基于专门的形式化验证工具(如NuSMV、Spin等)实现,用于辅助分析人员建立验证对象的行为模型并自动验证对象的属性。

需求追踪管理基于需求管理工具(如IBM Rational RequisitePro)实现,可用于实现三个纬度的追踪管理,包括需求、设计及实现之间的研发追踪管理,从需求项到测试设计间的追踪管理,测试设计、测试用例、测试规程以及测试记录之间的测试追踪管理。

2.7 V&V信息化工作子平台

V&V信息化工作子平台用于支持V&V工作全过程的信息管理,该平台基于流程管理软件工具(如IBM Rational 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) .

猜你喜欢

控系统软件测试
禅宗软件
关于DALI灯控系统的问答精选
幽默大测试
联调联试中列控系统兼容性问题探讨
数字电视播控系统关键技术探究
“摄问”测试
软件对对碰
“摄问”测试
“摄问”测试
基于Arduino的智能家居灯控系统设计