




已阅读5页,还剩59页未读, 继续免费阅读
(计算机应用技术专业论文)基于对比环境的铁路信号监控软件安全测试方法的研究与应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于对比环境的铁路信号监控软件安全测试方法 的研究与应用 摘要 随着科学技术的不斯进步和电子与计算机技术的迅速发展,铁路信号联锁软 件也由继电器联锁向计算机联锁过渡,并逐步走向成熟。在计算机联锁系统中, 联锁关系用联锁软件实现。但软件的小确定性给整个系统带来危害。凶此,对联 锁软件进行安全性测试对提高系统的安全性起到了重要的作用。 本文在分析了安全系统软件的安全性和风险度量概念的基础上,详细讨论了 黑箱条件f 的软件风险度量等问题。接着,针对联锁软件的安全性提出一种基于 对比环境的黑箱测试方法,并构建了一个对联锁软件实施安全性测试的测试平 台。随后,讨论,测试、卜台内部的静态数据交换策略及铁路信号仿真技术。最后, 本文介绍j ,测试软件的应用情况。 关键词:联锁软件安全性铁路信号黑箱对比环境 r e s e a r c ha n d a p p i i c a t l o n 0 n s a f b t y7 r e s t i n g b a s e d c o n t r a s t e n v i r o n m e n tf o rr a i l w a ys i g n a lc o n t r o l a b s t r a c t w i t ht h et e c h n i c a ld e v e l o p m e n to ft h ee l e c t r o na n dc o m p u t e t h ec o m p u t e r i n t e r l o c k i n gs y s t e mh a sr e p l a c e dt h er e i a yi n t e r l o c k i n gs y s t e mi nt h er a i l w a ys i g n a i f i e l d t h ei n t e r l o c k i n gs o f t w a r ei su s e dt oi m p l e m e n tt l l ei n t e r l o c k i n g1 0 9 i c b u tt l l e u n c e r t a i n t yo fs o f t w a r eb “n g sh 搬射dt om ew h o l es y s t e m s oi t i s i m p o r t a n tt o i m p r o v es a f c t yo f t h ei n t e r l o c k i n gs o 矗w a r e a f t e ,a n a l y z i n gt h es o r w a r cr i s kc o n c e p to fs a f c t y c r i t i c a ls y s t e ma n dm e t “c s d e n n i t i o no fs o n w a r er i s k ,t h i sp a p e rd i s c u s s e sm e t r i c sd e t i n i t i o no fs o f h v a r er j s k b a s e d o nb l a c k b o x w e 口u t f o r w a r db i a c k - b o xt e s tm e t h o db a s e do n c o n t r a s t e n v i r o n m e n t 明dd e s i g nat e s tp l a t f o m lo ft h ei n t e r l o c k i n gs y s t e m b e s i d e s , t h ep 印e rd i s c u s s e ss t a l j cd a t ae x c h a n g cs 仃a t e g ya i l ds i m u la t i o no ff a i l w a ys i g n a l | a t l a s t , i td e s c r i b e sa p p l i c a t i o no f t h et e s ts o f t w a r e k e vw o r d s : i n t e r l o c k i n g s o r w a r e ,s a t e t y r a i l w a ys i g n a l , b l a c k - b o x , c o n t r a c t - e n v i r o n m e n t 图1 一l 图1 2 图1 3 图l 一4 图1 5 表2 1 表2 2 表2 3 表2 4 表2 5 表2 6 图3 1 图3 2 图3 3 图3 4 图3 5 图3 6 图3 7 图3 8 图3 9 图3 1 0 图4 1 图4 2 图4 3 图5 1 图5 2 图5 3 图5 4 图5 5 图6 1 图6 2 图6 3 表6 1 图6 4 表6 2 表6 3 图表目录 车站信号控制系统结构图2 微机联锁控制系统的软件结构图3 h j 0 4 a 计算机联锁系统硬件结构4 软件测试的组成表7 软件测试的信息流图8 车站计算机联锁系统等级划分1 1 分级的失效危害严重度1 2 计算机联锁系统事故一后果对应表1 8 联锁系统危害输出的分级定量指标2 0 联锁系统危害输出的分级要求2 0 可接受的联锁软件事故失效率2 l 基于对比环境的黑箱测试评估系统结构2 3 基于安全性测试的使用剖面2 8 微机联锁系统多模块体系结构2 9 软件总体框图3 0 人机对话层软件功能框图3 0 测试评估平台系统结构图3 4 平台黑箱测试方式3 4 测试系统结构图3 5 上位机示意图3 6 下位机示意图3 6 平台内部数据流向3 8 平台静态数据安全模式示意图4 0 联锁数据生成校验流程图4 1 出站兼调车信号机的马氏模型4 5 道岔仿真模型的马氏模型4 5 轨道区段的马氏模型4 6 实体树结构4 7 现场仿真软件控制流程4 8 被测软件系统自动测试和测试用例生成的程序流程图5 0 铁路联锁软件测试系统主界面5 0 铁路联锁软件测试系统测试模块界面5 0 某站场联锁软件测试结果的统计数据5 2 j m 模型某种数据最大似然法结果5 3 某车站计算机联系锁系统的主要测试项目5 4 解镇测试结果分析5 4 独创性声明 本人声明所呈交的学位沦文是本人在导师指导、f 进行的研究工作及取得的 研究成果。据我所知,除了文中特别加以标注和致谢的地方外,另外中不包含其 他人已经发表或撰写过的研究成果,也不包含未获得金趟工些盔堂或其他教 育机构的孑:位或证书l f u 使用过的材料。与我一矧上作的涮志刈本研究所做的任伺 贞献均已往沦义 - 叫确的泌f 刿j i :表示感谢。 学位沦文作者签名:王行 签字口期耕7 月侈日 学位论文版权使用授权书 本学位论文作者完全了解金目墨王、业太堂有关保留、使用学位论文的规 定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查 阅和借阅。本人授权盒胆王业厶堂可以将学位论文的企部或部分内容编入有 关数据库进行榆索可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文存觯密后适用本授权t is ) 学位论文作者签名: 王行 导师签名 签字日期:知,移年7 月f 多日 签字日期:1 4 1 年7 月l ;日 学位论文作者毕业后去向: 工作单位: 通讯地址: 电话 邮编 k x 、,t 、 v 乙 ) ,、 致谢 首先感谢我的导师张维勇研究员,在这三年的研究生学习期间,张老师在学 习和工作上对我进行了悉心的指导,我所取得的每一点成绩都包含着他的心血。 张老师严谨的治学态度、忘我的下作精神、渊博的知识和锲而不舍的科研精神都 深深地感染了我,存此,向张老师致以袋心的感谢 特别感谢微机所的魏臻研究员和鲍红杰老朋j ,他们对我的毕业课题提出丁,许 多建设性意见,在此表示感谢。 我还受感谢我的同学方涤非、祝庚、程凡的帮助。 最后,我要感谢我的父母和家人,在他们的支持和帮助f ,我得以顺利完成 竹:者:于琦 2 0 0 3 年6 月2 8 口 近年来,随着计算机应用领域的迅速扩大,计算机软、硬件新技术的不断 涌现,人们对软件质量提出了新的更高的要求,而计算机已广泛地应用于航天、 航空、工业控制、交通、金融等领域,在这些领域中,软件质量往往关系到人 民生命财产和生态环境的安危,一旦软件发生故障,就可能造成极大的损失“1 。 经过多年的软件开发实践,积累了许多成功的开发经验同时也总结了不少失败 的教训。在此过程中,软件测试的重要意义逐渐被人们普遍认识,在许多大型 工程项目中不可靠的软件所造成的严重后果已经显而易见。特别在航天、航空、 铁路控制等领域。1 。 目前计算机联锁系统是车站联锁系统的发展且已被广泛应用到国家铁路, 在计算机联锁系统中联锁软件是执行联锁拥塞的核心机构。他的失效将直接导 致列车的相撞或颠覆等事故,因此联锁软件的安全性成为开发计算机联锁系统 的重要课题。 本文针对合肥工业大学微机所开发的“h j 0 4 a 铁路信号计算机联锁系统”, 对联锁软件的安全性进行了大量的理论分析,并构造了联锁软件的测试平台。 论文共分为六个部分。 第一章主要对计算机联锁系统进行了全面系统的介绍并对“h j 0 4 a 铁路信 号计算机联锁系统”进行了简单的介绍,在此基础上我们进一步对软件测试的 技术与策略的研究进行了分析。 第二章重点是研究联锁软件的安全性完善度等级,并对黑箱条件下的软件 风险度进行了分析。 第三章分析了基于对比环境的黑箱测试技术并建立的测试软件平台。 第四章主要讨论了联锁软件测试平台的静态数据交换策略。 第五章为联锁软件的安全性测试平台提供了一个站场仿真系统。 第六章使用测试平台对联锁软件进行了测试且对测试结果进行了分析,并 对联锁软件的安全性进行了定量分析。 第七章作为论文的结束语,介绍了本人在论文工作阶段完成的主要工作以 及本课题需进一步研究和改进之处。 由于本人水平有限,时间仓促,错误和不足之处在所难免,敬请各位师长 和同学不吝赐教。 第一章联锁系统软件测试技术与策略的研究 1 1 联锁系统系统结构 铁路信号控制系统是用来指挥铁路列车安全可靠运行的自动控制系统,系 统的各项性能将直接影响列车运行的安全和效率。旧时的控制系统是继电电气 集中联锁系统,其电路结构是逐步改进并定型了的网络式继电器电路,人机界 面采用按钮控制和光管显示的控制台。系统的结构框图如图卜l 所示。 控 控制台 操作信息上t 表示信息 i联锁机构 l 图1 1车站信号控制系统结构图 继电电气集中联锁系统的设计比较简单、操作简便、造价较低,但由于继 电电气集中联锁系统在可靠性、安全性、可维护性等方面存在着许多固有的缺 陷,因此,以计算机技术为核心的联锁系统应运而生,用以实现铁路信号设备 控制和行车作业指挥,它是以技术手段实现信号、道岔和进路之问的相互制约 的。1 。主要采用上下位机,室外设备回执信息( 轨道电压、道岔表示、信号条件) 经室内具有故障一安全特性的采集电路送下位机,经下位机预处理后送往上位 机,同时接受上位机的控制命令,通过联锁运算后向具有故障一安全特性的动态 接口电路输出控制命令,上位机显示信息并处理控制信息和进行联锁运算,向 下位机输出控制命令。软件结构如图卜2 所示,系统软件完成联锁运算与控制 的功能。 甲t 图1 2 微机联锁控制系统的软件结构图 1 2h j 0 4 计算机联锁系统 1 2 1 系统结构和工作原理 h j 0 4 a 计算机联锁系统是在对铁路信号及故障一安全要求进行深入研究并结 合实际项目特点的基础上研制的,其基本硬件结构如图卜3 所示。 从叮0 4 a 计算机联锁系统的体系结构来看,它属于二级集散式系统,具有 模块化、层次化等特点。模块化是指联锁主机模块、p l c 模块、信号模块等,层 次化是指系统具有人机对话层、联锁运算层、复合驱动层、结合层和监控对象 层等五个物理层次。 这种结构的优点在于可根据车站规模的大小、作业需求的不同,在不改变 联锁软件的基础上,通过修改站场静态数据和增加p l c 模块和信号结合模块, 即可满足系统扩容的要求。 表示界面 操作界面 k 机对话层 1 r 联锁主机a联锁主机b s w i t c h ( 冷各) 联锁运算层 r p l c 扩展g e n i u sn e t t j r上上 复合驱动层 模件i的模件i ii ,o 模件m ttt 上山0 道岔结合模件信号结合模件 轨道结合模件 结合层 十十十 道岔设备信号机轨道电路 图1 - 3m 0 4 a 计算机联锁系统硬件结构 ( 1 ) 人机对话层 将来自键盘、鼠标等的操作输入,由串行口送达联锁计算机,同时用图形显 示器显示联锁计算机提供的站场表示信息。在联锁计算机负担较重的情况下, 可考虑设置人机对话计算机进行操作命令输入的有效判别,并转换成约定格式 送给联锁计算机。h j 0 4 a 计算机联锁系统中因为联锁计算机的选型档次较高且站 场规模、作业频度适中,就没有设置人机对话计算机。 h j 0 4 a 计算机联锁系统的人机对话层具有以下几个特点: 基本排除了误操作的可能性:例如对“选排进路”操作采用按压多个按钮, 并结合人工确认才能使操作命令生效,极大地避免了由于失误或误操作形成操 作命令的可能性。 对于那些需要值班人员慎重对待的操作命令,如“故障解锁”、“单操道岔” 等采用鼠标左键拖动、右键确认的方式输入并加以人工确认,这样可以增加值 班人员的责任感,克服了操作失误带来的问题。 ( 2 ) 联锁运算层 联锁计算机是系统的核心部分,承担着操作输入的判别、联锁信号的调理 及分析、逻辑运算、控制命令生成、故障诊断等主要任务,其可靠性、安全性 对系统的总体故障一安全性能有很大的影响。系统设置了两台联锁计算机,其中 台为冷备机。在系统操作人员判别出联锁计算机故障( 如操作失灵、表示异 常、事故电铃警告等) 时,可进行人工切换。由于绝大部分的站场信号设计不 是以满负荷作业为目标的,因而人工切换尽管可能稍微延误作业时机,但不至 于危及行车安全,是一种比较经济及安全的硬件冗余方案。 ( 3 ) 复合驱动层 复合驱动层有p l c ( 可编程逻辑控制器) 构成,系统选用的是日本光洋公司 生产的s u 一6 b 型p l c ,每一台s u 一6 b 的c p u 基架相当于p l c 所支持的g e n i u sn e t 网络的一个子局,g 刚i u sn e t 最多可支持3 2 个子局,因此系统扩展方便且余地 很大。 p l c 承担着采集表示信息并将联锁计算机下达的操作命令转化为脉冲驱动 信号的任务。作为系统故障一安全实现的重要措施之一,p l c 还承担着对联锁计 算机形成的操作命令进行复核检查的屏障作用。由于p l c 所采用的复核检查算 法完全不同于联锁计算机操作命令的形成方式,因而系统由于联锁主机的硬、 软件缺陷等引起的错误输出可能性极小。 每个p l c 基本基架( c p u ) 可外接三个i o 模块扩展基架,最大i 0 配置点 数为1 0 2 4 点。按每组道岔对i 0 的需求数量为l o 点计算。每个s u 一6 bc p u 基 本基架可监控约1 0 0 组道岔,这相当于四个大型编组站的水平,当然系统的最 大配置还要受到p l c 内部其它资源及通讯实时性的影响。经计算,h j 0 4 a 计算机 联锁系统在仅使用一台p l c 基本基架情况下的最大监控配置不少于6 4 组道岔。 p l c 卓越的可靠性指标也是被选中承担复核驱动任务的重要原因,日本光洋公司 承诺的p l ch r r b f 指标为2 0 万小时。 复核驱动层选用p l c 的另一个重要原因在于其编程的方便及易读性,由于 p l c 采用梯形逻辑或级式语言编程,有利于继电器逻辑的转化和替代。 ( 4 ) 结合层 结合层的主要任务之一是实现现场监控设备的电平斗动静转换以及 p l c 输出的脉冲驱动信号的动静卜电平转换。使p l c 的输入、输出信息具有 故障一安全性能。 结合层的任务之二是用专用电路规范监控设备的测控过程,包括表示信息采 集原理与设备驱动流程。 h j 0 4 a 计算机联锁系统研制了专用的信号结合电路、轨道结合电路、道岔结 合电路,并通过一定的工艺设计使之模块化、标准化。 ( 5 ) 监控对象层 监控对象层是指计算机联锁系统的主要控制设备,即: 色灯信号机:作为列车或车列信号指示用,具有双灯丝冗余、自动切换等特 点。 转辙机:转动道岔用,选用j d 型交流电动转辙机,具有无火花、防挤岔、 维护工作量小等特点。 轨道龟路:用于检测站场内轨道区段空闲、占用状态的专用设备,选用非电 码化交流连续式轨道电路。 1 2 2 技术措施 在h j 0 4 a 计算机联锁系统的设计过程中主要融入了以下技术措施: 结构模块化、标准化,便于系统扩展并提高可维护性; 采用故障一安全的输入输出接口电路,防止涉及安全的信息在接口电路 的流通过程中因故障而导向危险侧; 采用各种故障检测技术,当发现危及安全的故障时强制系统导向安全; 实现联锁机和p l c 二级算法冗余,最大限度地减少因联锁逻辑运算错误 而造成的危险侧输出; 系统丰富的诊断、报警提示功能。 1 3 软件测试策略的研究 软件测试在软件开发中具有非常重要的作用“3 。软件测试的目的在于按照规 6 定的步骤,采用适当的方法,对程序进行严格的检验,以发现和改正软件的错 误,使软件的质量在测试过程中不断提高,逐渐达到规定的要求,能交付用户 使用。测试设计涉及测试策略、测试进度、测试案例选择、预期结果及文档, 并应与软件设计同步。 1 3 1 软件测试 软件测试是为了发现错误而执行程序的过程,主要考虑软件的正确性、效 率、健壮性等因素。软件测试的组成表如图卜4 所示。 软件测试 可接受性测试诊断信息测试 效率测试 有用性 健壮性性能 理论课题测试工具 l 广 路径制导符号执行 图卜4 软件测试的组成表 软件测试包含以下几种测试覆盖: 功能覆盖 输入域覆盖 输出域覆盖 函数交互覆盖 代码执行覆盖 1 3 2 测试的研究方向 验证技术:验证的目的在于证明在软件生命期各个阶段,以及阶段间的逻 辑协调性和正确性。验证技术目前仅适用于特殊用途的小程序。 静态测试:正逐步地从代码的静态测试往高层开发产品的静态视试发展。 测试数据选择:也就是测试用例的选择。 测试技术的自动化:这是一个最新的发展方向。自动测试也是一门技术 但与测试技术存在很大的区别。 1 3 3 测试策略 软件测试的重要性及其对软件质量的好坏的预计是非常重要的,它是软件 质量保证的关键元素,代表了规约、设计和编码的最终检螽。 软件测试策略是把软件测试用例的设计方法集成到一系列已经周密计划过 的步骤中去,从两使得软件的开发得以成功的完成。因此,任何测试策略都必 须和测试计划、测试用例设计、测试执行、还有测试结果数据的收集与分析结 合在一起。 软件测试的方法多种多样,( 结构测试是基于程序结构特征,以实现某种测 试覆盖为目的的一种测试方法) 。不同的出发点、不同的思路以及采用不同的手 段和方法就会产生不同的测试策略。从用户的观点出发,在完全不考虑程序内 部结构和内部特性的情况下,依靠该程序输入和输出之间的关系和程序功能的 需求规格说明书考虑确定测试用例,以次推断测试结果的正确性。因此,我们 采用基于功能的测试,也即基于黑箱的测试。 1 3 4 测试的过程 软件测试的过程可由软件测试的信息流图表示,如图1 4 所示。 图卜5 软件测试的信息流图 实施测试时给出三类信息 软件配置:这是测试的对象,包括软件需求规格说明书、设计规格说明书 和被调的源程序。 测试配置:包括测试计划、测试步骤、测试用例( 测试数据) ,以及具体 实施测试的测试程序等。 测试工具:为高效率完成测试所采用的测试工具软件。 1 3 5 测试的步骤 软件测试过程按测试的先后次序可分为4 个步骤进行:单元测试、集成测试、 确认测试和系统测试,最后举行验证测试。 单元测试:分别完成每个单元的测试任务,以确保每个模块能正常工作。 单元测试大量的采用了白盒测试方法,尽可能发现模块内部的程序差错。 集成测试:把已测试过的模块组装起来,进行集成测试。其目的在于检 验与软件设计相关的程序结构问题。这时较多地采用黑盒测试方法来设计测试 用例。 确认测试:完成集成测试以后,要对开发工作初期制定的确认准则进行 检验。确认测试是检验所开发的软件能否满足所有功能和性能需求的最后手段, 通常均采用黑盒测试方法。 系统测试:完成确认测试以后,为检验其能否与系统的其他部分协调工 作,需要进行系统测试。 1 4 面向对象的软件测试 在面向对象的程序设计中,由于相同的语义结构( 如类、属性、操作和消 息) 出现在分析、设计和代码阶段,因此,可以扩大测试的视角,重视o o 分析 和设计模型的复审将特别有用。在分析阶段发现类属性定义中的问题将遏制其 延伸至设计和编码阶段,反之,如在分析阶段及设计阶段仍未被检测到,则问 题将传送到编码中,要花费大量的精力和时间去实现一个不必要的属性、不必 要的操作、驱动对象间通信的消息以及其他相关的代码,然后再花费更多的精 力去发现它,而且,必须对系统进行相关的修改,修改有可能导致更多的潜在 问题“1 。 面向对象的测试策略是从“小型测试”直至“大型测试”,即从单元测试开 始,逐步展开,最后对有效性和系统测试,但在测试中要考虑面向对象的因素。 1 5 本章小结 本章首先介绍了计算机联锁系统结的组成结构,接着介绍了h j 0 4 a 铁路信 号计算机联锁系统,主要讲述该系统的硬件结构、工作原理,对软件的测试进 行了研究,包括软件测试的组成、研究方向、策略、途径、方法、过程、步骤 等,最后提出面向对象的软件测试方法。 9 2 1 安全性 第二章联锁软件的安全性和风险度量 近年来,随着计算机应用领域的迅速扩大4 1 ,计算机软、硬件新技术的不断 涌现,人们对软件质量提出了新的更高的要求,而计算机已广泛地应用于航天、 航空、工业控制、交通、金融等领域,在这些领域中,软件质量往往关系到人 民生命财产和生态环境的安危,一旦软件发生故障,就可能造成极大的损失。 6 0 年代中期,美国的首次金星探测计划,就因为在用f o r t r o n 语言编写的d o 语句中漏掉了一个逗号而惨遭失败。1 :8 0 年代,首次发射的航天飞机在发射前 2 0 分钟突然发现一个软件错误,致使发射被迫推迟。因此,安全性对软件来说 具有至关重要的意义“”。铁路信号联锁系统中的软件故障,会造成人员伤亡和 大量财产的损失,所以对在铁路计算机控制和防护系统实用的安全软件有更高 的安全性要求。 安全性是一个不只局限于时间和空间的概念。对它的态度是主观的并随时间 和环境而变化的,对于安全性表述应基于如危害、风险等这些有比较客观地定 义的术语1 。铁路信号计算机联锁软件的安全性评估即为判断和决定某一具体 联锁软件产品在软件安全性方面是否可接受或可投入实际使用的过程。 2 2 软件安全性完善度等级 铁路信号联锁软件的评价依据是软件的安全性完善度等级“。安全性完善度 等级和安全性之间的差别在与安全性完善度等级本来并不直接评价安全性,而 是根据开发人员对被开发系统安全性问题的估计、防范设计的完善性出发的一 种安全性评价。若就黑箱测试而言,测试方无法了解软件系统内究竟采用什么 技术,而铁路安全软件验证制度要求被测方提供必要的文档作为检验的一个部 分,因此根据安全性完善度的要求来考察被测软件是软件检验的重要部分。另 一方面,根据欧洲铁路信号软件标准,安全性完善度等级蕴涵了每个等级对安 全性的定量要求,软件中每一个被检测出的差错都可以根据它造成危害的可能 性和危害带来的损失,来评价被测软件的安全性。 2 2 1 等级划分 安全性完善度及其等级是一个安全系统设计、开发的准绳,是对系统评价的 l o 依据。 安全性完善度( s a f e t yi n t e g r i t y ) 在安全系统中体现确保安全的能 力。其定量指标采用在给定时刻系统维持安全功能完善的概率表示。 软件安全性完善度等级( s o f t w a r es a f e t yi n t e g r i t yl e v e l ) 对软件 所要求的安全性完善水平的一种定量指标。是将安全性完善度根据软件关键功 能失效的频率和产生的危险严重程度划分出的等级。 现今国内、外一般将软件分为4 个软件安全性完善度等级: a 级( 4 级) :软件失效将造成人员伤亡和( 或) 大宗财产损失的严重后果, 一般称之为灾难性的或致命的后果; b 级( 3 级) :软件失效将造成人员伤残、引起严重职业病和( 或) 一般财 产损失,通常称之为关键性的或严重的后果; c 级( 2 级) :软件失效将导致较小人身伤害、引起轻度职业病或可治愈疾 病或造成较小财产损失,一般称之为边缘性的事件或状况或轻度后果; d 级( 1 级) :软件失效仅导致轻微损失或损坏后果。 对a 级的安全性要求最高。通常将a 、b 两级的软件定为安全性关键软件。 有的领域加一个e 级( o 级) ,将e 级定为非安全性软件。 在每一个铁路安全控制和防护系统中,可将作用不同的软件分为不同的安全 性完善度等级。以车站计算机联锁系统为例,其联锁系统软件安全性完善度等 级划分见表2 1 。 表2 1车站计算机联锁系统等级划分 安全性完安全性系统名称 善度等级要求 4 极高 联锁运算软件,冗余模块比较、表决、切换软件安全传输 软件,执行表示软件 3 局调度集中( c t c ) 软件、检测软件、检测软件、传输管理软件 2 中维护指示软件 l 低 当要求的软件安全性完善度等级确定后,在进行设计时要采用与等级相适应 ( 及等级要求的) 技术和措施。 2 2 2 分级的软件安全性 软件的内在缺陷称为故障,它们在一定的环境条件下暴露出来,导致系统 运行中出现可感知的不正常、不正确、不按规范执行的状态,即软件出现错误。 此时若没有及时有效的容错措施,必将导致系统的输出背离需求规格说明,亦 即软件出现了一次失效。因此,软件失效机理可描述为:故障一错误一失效“”。 软件失效会造成软件可靠性和安全性的降低,任何失效的发生都将造成软 件运行不可靠,可以认为它们对可靠性危害的严重程度是相同的,但是不同的 失效所造成后果的危险程度并不一定相同,所以不同失效对安全性的影响程度 也可能不相同。由于软件安全性是软件本身的一种内在质量属性,而与外界的 发生条件并无关联,因此,在评估软件的安全性时,对软件失效后果的危害严 重程度基于最不利条件( 如果该软件失效出现了,那么引发最严重后果的外界 条件也必然出现) 下考虑是可行的。 2 2 3 软件失效 定义1一个失效的危害严重度( h a z a r ds e v e r i t y ) 指当该失效发生后,对软 件安全性最不利影响的一种度量。 失效的危害严重度可以通过危害分析得到。所谓危害分析是按每一故障模 式的危害严重度类别,将软件失效划等分类,以便全面评价各种可能出现的失 效的影响。危害分析法目前已有十多种,如因果关系图( c c d ) 、事件树分析( e t a ) 和故障树分析( f t a ) 等。参照国内外标准可以得到失效危害严重度的一种典型 定性度量,见表2 2 。 表2 ,2 分级的失效危害严重度 等级事故说明 i 灾难的人员死亡或大宗财产损失或系统报废或使局面处于失控状 态 i i 严重的人员严重受伤或引起严重职业病或一定数额的财产损失或 系统严重损坏 轻度的人员轻度受伤或轻度职业病或部分财产损失或系统轻度损 坏 轻微的低于“”项危害严重性的损失 当然,这种失效危害严重度的等级划分并非一成不变。根据软件应用领域 的不同,可以通过吸收领域专家和现场实际经验进行适当调整和细化。但为了 讨论方便,文中假定软件失效全集是按表2 2 进行危害严重度分级的。 设软件失效全集为f ,其中的灾难性失效子集为f 。,严重性失效子集为f 。,轻度的失效子集为f 。,轻微的失效子集为f ,那么f 、f 。f 和f 。 构成了f 的划分。 根据失效危害严重度的概念,同一失效子集中所有失效的危害严重度级别相 同,因此,可以对该级别失效子集的出现概率建立相应的分级安全性概念,而 避开传统安全性概念中既要考虑失效概率又要考虑危害程度的困难。 1 2 定义2 分级的安全性是指软件运行时不出现该级别危害严重度的软件失效的 概率。 根据表2 2 ,软件失效可以分成四种危害严重度等级,软件失效集也划分 成相应的四个子集,因此,分级的安全性实质上是一个由四个级别的安全性概 率参数组成的向量。 定义3 设e 。为导致灾难性事故的软件失效率,e ,为严重性事故的失效率, e 。为轻度事故的失效率,o 。为轻微事故的失效率,则向量( o ,e 。e 。 e 。) 被称为软件失效率向量,记为o 。 软件失效率向量的概念和分级的安全性概念是互补的,当已知第i 级事故 的失效率ei 时,能够很容易得到相应的安全性s i ,即满足: s i = l oi , i i ,i i ,i i i , ( 2 一1 ) 因此,可以用软件失效率向量来表征分级的软件安全性。 相对于风险的概念,软件失效率向量所表示的安全性概念更清晰、更客观、 更科学,从中还能方便地得到软件其它的一些质量参数,例如对于软件的可靠 性r 有: 2 2 4 贝叶斯推断 令e 为软件的失效率,并将e 视为一个随机变量。而关于e 的先验知 识则表示成概率密度函数f ( o ) 。如果n 次测试中有x 次软件失效,那么根 据贝叶斯定理,o 的验后概率密度函数为: 朋2 赫 _ 3 ) 其中: ( 工i 口) :l n b ( 1 一目) 一, ,。:o ,l ,。 表示在失效率为。的条件下,n 次测试中有x 次失效的概率密度。 若假设f ( e ) 服从参数为a 和b 的b e t a 分布: 朋,= 号茅删乱跏m 。 则。的验前均值为 j :删) 班熹 ( 2 4 ) 那么。的验后分布是系数为x + a 和n x + b 的b e t a 分布,因此,o 的验后均 值为: o :兰竺 捍+ 口+ 6 2 3 基于测试的软件安全性评估 对于安全软件,人们不仅要关注其功能是否达到要求,而且还要关注其是 否会产生后果严重的失效。因此,在测试中可以采用根据失效危害严重度,调 整测试用例出现概率的分级测试方法。一般来说,对于可能产生严重危害的软 件输入,通过加大其在测试中的出现概率进行“加压测试”( s t r e s s t e s t i n g ) “, 而对于那些仅可能产生较小危害甚至无危害的软件输入,缩小其在测试中的出 现概率进行测试。 设d 为软件的输入空间,其运行剖面为: ,i d ) ,见= l 拒d 测试剖面为: ( 2 5 ) ,f d ,吐= 1 ( 2 6 ) e d 其中d = z 。p ,z ,为根据失效危害严重度将测试输入出现概率放大或缩 小的调整因子,对于划分为相同失效危害严重度的输入取相同的调整因子,也 即将d 划分成f c ,c 。cm ,c 。 ,对于每一输入子空间c 。,j ( i ,i i , i i i ,i 、) ,取同一调整因子,令其分别为z - 、z u 、z m 和z 。又设总测试次 数为n ,其中c ,进行了n ,次测试,且有x j 次失效,e ,为第j 级错误的失效率, 其运行剖面下的验前分布是参数为a j 和b ,的b e t a 分布。那么在测试剖面下有: n = 乃 ( 2 7 ) n ,一艺p ,z ,h ,j i ,i i ,i i i , 面 在运行剖面下,若任4c ,也需进行n 。次测试,设测试总数为 n7 ,则需满足: 咒,= 见胛。 ,j ( i ,i i i ,) ( 2 8 ) i i 所以,在运行剖面下,对于每个c 。,相应所需的测试总数n 为 根据贝叶斯推断, ej 2 o ,的验后分布为 q i + x i 礁zj n i + b j 2 4 在黑箱条件下分析安全软件风险 2 4 1 基于黑箱测试的软件风险 ( 2 9 ) 定义1 软件安全性是指软件风险不大于其可接受水平的能力。设r 是某软件 的风险度量值,r 是该软件可按受的风险水平,当 r r ( 2 1 0 ) 时,称该软件为软件安全性合格软件,否则为软件安全性不合格软件。 为了能实现软件间的安全性比较,可定义软件的风险相对差概念。 定义2 设p 是一个安全软件,r 、r 分别是p 的风险度量值和可接受风险水 平,则 积:! 型l o ( 2 一1 1 ) 上式( 2 一1 1 ) 定义为p 的风险相对差。当p 为安全性合格软件时,d 越大, 则p 的安全性越好:当p 为安全性不合格软件时,dr ,越大,则p 离安全性 目标越远。 定义3 设f = f f j i i i ) 为安全系统的软件故障集合,d = d j i j i ) 为安全系统的 事故集合,i = 1 ,2 ,3 ,) ,p ,= p ( f ;) 为在给定的运行时间内软件故障f 。 被激活的概率,p “= p ( d j f 。) 为软件故障转移概率,即因软件故障f i 而引 发系统事故d j 的可能性,c 。,为事故d j 所产生的危害后果参数,当软件故障集合 f 中的元素相互独立时,软件的风险凡可用下式度量 r = 【巳( 气, ) ( 2 一1 2 ) 但对于一个黑箱软件,芜法直接找到软件的所有故障和对软件故障的出现概 率进行估计。所以,对于黑箱软件应对定义3 作修改。 定义4 设e = e 。i k = 1 ,2 ,n ) 为因软件故障而引发的软件错误输出集, d 2 d 1 j 3 l ,2 ,r 为因软件错误输出而引发的系统事故集, 尸( ) = p ( z ) p ( 吒;) 为软件错误输出e “的概率,f 为软件故障集,p d j ,。产p ( d j e 。) 7 为因软件错误输出e 。而引发系统事故d 的转移概率,c 。为事故d j 所产 生的危害后果,则黑箱条件下的安全软件风险度量为 r = 暖( 气,。) 】 ( 2 1 3 ) 可以证明,定义4 是定义3 的一种变形,它并不改变软件风险度量的实质。 2 4 2 联锁软件的风险分析与计算 铁路信号联锁系统是一种安全控制及防护系统“”,它是在保证铁路车站列、 调车作业安全的基础上,提高铁路运输的效率和降低作业人员的劳动强度。铁 路信号联锁软件是指联锁系统中实现实时联锁逻辑运算及控制安全设备的安全 软件,它是联锁系统的核心和保障系统安全性的关键部件“。联锁软件的质量, 特别是安全性要素,将直接影响联锁系统的可信性。 国内的联锁软件是在原有继电联锁功能的基础上研制开发的,其安全性需 求大多依据继电联锁系统的有关技术条件、设计规范及计算机联锁暂行技术条 件等文件中涉及安全性要求的条款。虽然,目前已取得了微机控制信号设备安 全软件技术条件、设计规范、管理方式的研究成果,并正在制订“计算机联锁 系统技术条件”等技术性法规,但尚未见到一个严格按软件工程化需求格式书 写的计算机联锁软件安全性需求规格说明书实例。另外,考虑到技术保密、文 档不规范等因素,目前计算机联锁软件对于测试及评估人员来讲完全是一个“黑 箱”,所以在对铁路车站计算机联锁软件进行安全性风险分析时,只能采用基于 黑箱的软件风险分析方法。 按照基于黑箱的软件风险分析方法,首先要对软件失效进行定义。从联锁 软件的安全性出发,原则上计算机联锁软件的失效可被定义为有可能引发系统 进入不安全状态或严重影响系统作业效率的软件错误输出。对于一个具体的计 算机联锁车站,其联锁软件的失效可被进一步细化或具体化。 定义5 设o u t ,为联锁软件p 的第i 种软件失效,如果存在对应于失效叫t 。的 输入i n 。k = 1 ,2 ,m ,则称i n 。= i n 。l k = 1 ,2 ,3 ,m ) 为对应于失效o u t i 的输入子空间,记为i n _ 1 ;,m 为输入子空问i n 的秩。 由定义5 可得失效o u t ,的概率p ,为 只= p d u 正 = p m ( 2 1 4 ) 式中,p ;。为软件实际运行中出现输入in i 。的概率。 软件的输入与输入事件的出现概率可通过软件的运行剖面来表述。 定义6 运行剖面是一个作用在输入域d 上的概率分布q ,即 q :d 一 o ,1 且 q ( f ) = l ( 2 1 5 ) i e d 如果能获得联锁软件的运行剖面,则根据对应于失效的输入记录就能按式 ( 2 1 4 ) 求得联锁软件的失效概率分布。 联锁软件的失效可能会引发撞车、尾追、翻车、出轨、中断行车及中断调 车作业等造成人员伤亡或重大财产损失的系统事故。这就存在一个从联锁失效 到系统出现事故的转移概率问题。研究表明这一转移概率可采用故障树定量分 析计算方法来估算,并在考虑最不利环境条件下可由联锁软件失效概率直接估 算出其引发的联锁系统事故的概率。经安全性分析、引用专家知识与积累的经 验而获得的车站计算机联锁系统的主要事故集见表2 3 。 在求得联锁系统事故的概率后,还需确定联锁系统事故的危害后果。计算机 联锁系统的事故后果严重性可划分为4 级。 灾难性后果,指造成数名人员死亡、大宗财产损失、装备报废和运输能力 丧失的事故后果; 严重性后果,指有人员伤亡、较多财产破坏、装备报废以及运输能力损失 的事故后果; 轻度事故,指有一定程度的财产、装备及运输能力损失的事故后果; 轻微事故,指未造成财产、装备损失的事故后果。 依据这种事故后果划分原则,在表2 3 中增加了事故一后果对应关系。在计 算联锁软件的风险时。联锁系统事故概率可取其最不利环境条件下的出现概率, 例如,联锁系统事故d j 的出现概率为 p d j = p m a x ( d j ) ( 2 一1 6 ) 这种用最不利环境条件下的事故出现概率来计算失效风险的方法可称为最 不利环境下的风险计算法。在估计出由联锁软件失效而导致的联锁系统事故概 率分布及危害后果后便可计算出对应联锁软件的风险值。 设:c 。为灾难性事故后果的严重性参数;c 。为严重性事故后果的严重性 参数;c 。为轻度事故后果的严重性参数;c 。为轻微事故后果的严重性参数。 则可得联锁软件的风险为 r = ( ) = 【k ( d ,) 】= pc ,+ p cu + pc - u + pc w( 2 一1 7 ) 式中,p 。为联锁软件失效可能导致联锁系统灾难性后果的概率;p 。为联锁软 件失效可能导致联锁系统严重性后果的概率:p 为联锁软件失效可能导致联锁 系统轻度事故后果的概率;p 为联锁软件失效可能导致联锁系统轻微事故后果 的概率。 表2 3 计算机联锁系统事故一后果对应表 序号联锁系统事故后果严重性等级 l 列车与列车正面相撞 一级( 灾难性) 2 列车与车列正面相撞 一级( 灾难性) 3 车列与车列正面相撞级( 灾难性) 4 列车与列车侧面相撞级( 灾难性) 5 列车与车列侧面相撞 一级( 灾难性) 6 车列与车列侧面相撞一级( 灾难性) 7 列车与列车尾追一级( 灾难性) 8 列车与车列尾追一级( 灾难性) 9 车列与车列尾追一级( 灾难性) 1 0 列车与停留车辆相撞一级( 灾难性) l l 车列与停留车辆相撞一级( 灾难性) 1 2列车颠覆一级( 灾难性) 1 3 车列颠覆一级( 灾难性) 1 4 中断行车满2 h一级( 灾难性) 1 5 中断行车在l 2 h 之内二级( 严重性) 1 6 中断行车不满1 h三级( 轻度) 1 7 列车冒进信号三级( 轻度) 1 8 车列冒进信号三级( 轻度) 1 9列车挤岔四级( 轻微) 2 0 车列挤岔四级( 轻微) 2 l 调车作业受影响但不影响行车作业四级( 轻微) 2 2 其他事故四级( 轻微) 2 4 3 联锁软件的安全性评估 ( 1 ) 联锁软件的安全性投放与比较准则 针对我国计算机联锁系统开发和使用的现状,我认为联锁软件的安全性评 估可通过黑箱测试与风险分析计算获得能反映联锁软件安全性的风险度量值, 并依据它判定联锁软件的安全性是否已达到可投放水平或在达到投放水平后比 较不同制式安全性水平的高低。 定义7 ( 联锁软件的安全性投放准则)设r 。为联锁软件故障导致联锁系统灾 难性事故后果的可接受概率,r ,。为联锁软件故障导致联锁系统严重性事故后 果的可接受概率,r 。为联锁软件故障导致联锁系统轻度事故后果的可接受概 率,r 。为联锁软件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年金融犯罪法律顾问聘用合同范本
- 2025年河北衡水滏阳中学招聘各学科教师若干名备考练习试题及答案解析
- 2025年度金融租赁抵押反担保合同模板
- 2025年合肥国先控股有限公司及子公司社会招聘20名备考练习题库及答案解析
- 2025版生猪养殖与饲料销售代理服务合同模板
- 2025年度基础设施挖掘机租赁与工程安全监管服务合同
- 2025年秋季学期广西防城港市理工职业学校合同制教师招聘7人备考练习试题及答案解析
- 2025南平市延平区某机关单位招聘仓管员备考练习试题及答案解析
- 2025河南工业大学招聘(博士研究生)150人考试参考试题及答案解析
- 2025金华武义县政务服务管理办公室编外招聘3人备考练习题库及答案解析
- 2025年玻璃钢行业当前发展趋势与投资机遇洞察报告
- 成品油安全知识培训课件
- 2025年新闻记者资格证及新闻写作相关知识考试题库附含答案
- 2025年期权开户考试题库及答案(内附考试信息)
- 2025-2026学年湘鲁版(2024)小学英语四年级上册(全册)教学设计(附目录)
- 肺中下叶恶性肿瘤的个案护理
- 2025年山东省统一高考英语试卷(新高考Ⅰ)
- 年产8万吨DN900-DN1600mm球墨铸管项目可行性研究报告
- 幼儿园手工介绍课件
- 人教版五年级数学上册第三单元小数除法教学设计(表格式)和单元测试题
- 2025年湖南省中考地理试题(解析版)
评论
0/150
提交评论