轨道交通行业的嵌入式软件测试| CENELEC
确保轨道交通行业的嵌入式软件始终符合CENELEC 标准
若要符合轨道交通行业严苛的标准,就必须进行可预见的和可重复的软件操作。轨道交通业的要求是欧洲电工标准化委员会(CENELEC)规定的。满足由CENELEC出台的三个标准:EN 50126, EN 50128, EN 50129的要求,是证明轨道系统安全的支柱流程。
EN 50128概括了出现危险失效的最大可能性及降低综合风险的相关方法。它提供了5个不同的软件完整性等级(SIL),这些等级应用在各种铁路系统,包括从SIL 0的系统(如:不影响安全性的管理信息的系统),到SIL4的系统(如:控制开关和信号传递的系统)。
EN 50126可以确保嵌入式软件适合在高安全性的设置下使用。EN 50129与EN 50128有相似的指导方针,主要适用于进行信号传递的电子系统。
TÜV SÜD认证的工具用以进行基于ISO 26262标准的与安全相关的开发
EN 50128
针对轨道控制和防护系统的软件标准EN 50128和与安全相关的控制信号传递的电子系统标准EN 50129,代表了铁路应用对于国际标准的特定解释——IEC 61508(与安全相关的电气/电子/可编程电子系统的功能安全)。
EN 50128标准描述了软件安全完整性等级,并规定了对于人员及其职责、生命周期、文件材料方面的要求。内容还对目标、输入文件、输出文件进行了详细描述,并对软件需求规范、体系结构、设计和执行、验证和测试,以及软件/硬件集成、软件确认、质量保证和维护提出了要求。
EN51028将5个软件安全完整性等级(SIL)均考虑在内,即从安全完整性非常高的SIL-4(如安全信号)到安全完整性不高的SIL-0(如管理信息系统)。
安全完整性等级 |
危险失效概率 |
风险降低系数 |
SIL 4 |
≥ 10-5 to < 10-4 |
100,000 to 10,000 |
SIL 3 |
≥ 10-4 to < 10-3 |
10,000 to 1,000 |
SIL 2 |
≥ 10-3 to < 10-2 |
1,000 to 100 |
SIL 1 |
≥ 10-2 to < 10-1 |
100 to 100 |
EN 50128 安全完整性等级的定义
基于IEC 61508的其他标准可能会执行关于安全完整性等级的两个定义中的任何一个。IEC 61508的要求模式定义适用于一些经常进行间歇性操作的系统(如EN 51028所涉及的系统),而持续模式定义则适用于那些在一段时间内会进行持续操作的系统。下表体现了两个定义之间的不同之处,并说明了在不同安全完整性等级下出现系统故障可能引发的后果
安全完整性等级 |
要求模式 |
持续模式 |
出现故障造成的结果 |
|
等级 |
有效性 |
要求失效概率 |
每小时的危险失效概率 |
- |
SIL 4 |
>99.99% |
≥ 10-5 to < 10-4 |
≥ 10-9 to < 10-8 |
可能导致大面积伤亡 |
SIL 3 |
99.99% |
≥ 10-4 to < 10-3 |
≥ 10-8 to < 10-7 |
可能导致多例伤亡 |
SIL 2 |
99%-99.9% |
≥ 10-3 to < 10-2 |
≥ 10-7 to < 10-6 |
可能导致重伤甚至一人死亡 |
SIL 1 |
90-99% |
≥ 10-2 to < 10-1 |
≥ 10-6 to < 10-5 |
可能导致轻伤 |
SIL 0 |
无要求 |
N/td> |
合规A
保证嵌入式软件测试的完整性
为了保证软件操作的可预见性,很多组织需要确定他们的应用代码已经百分之百完成了测试。VectorCAST/Cover只需通过收集系统测试过程中的覆盖率信息就可以轻松完成这一步。VectorCAST/Cover可以帮助您确定您所做的系统测试是否充分。如果部分代码未被覆盖,那说明可能需要对该系统的这部分代码进行更多的测试。
为什么系统测试不能保证系统的可靠性为百分之百
因为很多函数都有错误处理代码,如果要通过使用完全集成的应用程序来激发这些函数就会比较难,甚至不太可能,所以系统测试就不能保证100%的覆盖率。要解决这个问题,就可以用VectorCAST/C++ 或 VectorCAST/Ada对这些函数进行单元和集成测试。因为VectorCAST/Cover与VectorCAST共享C/C++和Ada的覆盖率信息,所以可以轻松生成覆盖率报告来显示所有测试用例综合的覆盖率信息。
符合最高的铁路标准
我们的工具已经被众多客户成功应用,而且这些客户都需要遵循严苛的行业规范,包括轨道交通行业的规范。