CN111338830B - 一种基于sfta的软件可靠性计算方法 - Google Patents
一种基于sfta的软件可靠性计算方法 Download PDFInfo
- Publication number
- CN111338830B CN111338830B CN202010107894.XA CN202010107894A CN111338830B CN 111338830 B CN111338830 B CN 111338830B CN 202010107894 A CN202010107894 A CN 202010107894A CN 111338830 B CN111338830 B CN 111338830B
- Authority
- CN
- China
- Prior art keywords
- component
- redundancy
- probability
- failure
- parallel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 19
- 230000009977 dual effect Effects 0.000 claims description 29
- 239000000126 substance Substances 0.000 claims description 3
- 238000013178 mathematical model Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/008—Reliability or availability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3608—Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明公开了一种基于SFTA的软件可靠性计算方法,包括:步骤S1:采用SFTA确定软件冗余结构中各个构件的故障率;步骤S2:确定软件冗余结构的冗余方案,并分别计算冗余方案的故障率,从中选择故障率最小的为最佳冗余方案。本发明通过SFTA来建立单个构件的软件可靠度计算模型,并建立对不同的软件构件的拓扑结构的故障概率数学模型,计算结果最小的为软件可靠性最佳的冗余方案。
Description
技术领域
本发明涉及软件可靠性设计技术领域,具体的说,是一种基于SFTA的软件可靠性计算方法。
背景技术
在软件容错技术中,其基本思想是通过软件构件冗余复算并通过不同的冗余拓扑结构来达到容错的目的。而现有技术中尚没有一种方法,能够准确计算构件的可靠性,也不能确定冗余拓扑结构的最佳方案。
发明内容
本发明的目的在于提供一种基于SFTA的软件可靠性计算方法,用于解决现有技术中无法准确计算构件可靠性以及无法确定冗余拓扑结构的最佳方案的问题。
本发明通过下述技术方案解决上述问题:
一种基于SFTA的软件可靠性计算方法,包括:
步骤S1:采用SFTA确定软件冗余结构中各个构件的故障率;
步骤S2:确定软件冗余结构的冗余方案,并分别计算冗余方案的故障率,从中选择故障率最小的为最佳冗余方案。
进一步地,软件构件是由n个软件单元组成,是一个独立发布的功能部分,通过SFTA(软件故障树分析法)对单个软件构件的可靠性进行建模,得到单个软件构件的可靠性计算方法,首先以构件故障为顶事件K,单元失效为底事件ti(i=1,2,···,n);
设顶事件K发生的概率为P(K),底事件ti发生概率为P(ti),而软件故障树有j个最小割集Gi,则故障树模型为:T=G1+G2+G3+…+Gj,其中Gi=t1*t2*…*tn;
进一步地,所述步骤S2包括:
步骤S21:确定冗余方案中的故障率计算公式,其中冗余方案包括串联双冗余结构1、串联双冗余结构2、并联双冗余结构1、并联双冗余结构2以及三取二结构,冗余方案中的构件i1、构件i2和构件i3为相同的冗余构件,构件j1和构件j2为相同的冗余构件,构件i1、构件i2和构件i3的故障概率为p1,构件j1和构件j2的故障概率为p2;构件i1、构件i2、构件i3、构件j1和构件j2的运行都是独立的,具体地:
串联双冗余结构1为构件i1和构件j1串联成一个支路,构件i2和构件j2串联成一个支路,然后两个支路再进行并联后连接检测器;
构件i1和构件j1串联时产生故障的概率为:
p1*(1-p2)+p2*(1-p1)+p1*p2=p1+p2-p1*p2;
此时,此时,构件i1、构件i2、构件j1和构件j2中只要有一个构件产生故障,检测器就是认为系统发生故障,串联双冗余结构1的故障概率为:
1-(1-(p1+p2-p1*p2))2;
串联双冗余结构2为构件i1与构件i2并联后连接一个检测器,再与并联的构件j1和构件j2串联后,再连接一个检测器;
构件i1和构件i2,构件j1和构件j2分别进行检测,运行中检测出故障的概率分别为1-(1-p1)2和1-(1-p2)2,由于两个冗余检测之间是串联关系,构件i1和构件i2检测出故障就不用运行构件j1和构件j2,因此构件j1和构件j2也不需要检测,只有构件i1和构件i2运行无故障时才需要运行构件j1和构件j2并对其进行检测,因此,串联双冗余结构2运行中检测出产生故障的概率为:
2*p1*(1-p1)+(1-2*p1*(1-p1))*(1-(1-p2)2);
并联双冗余结构1为构件i1与构件j1并联、构件i2与构件j2并联,并联后的两个支路再分别输入到检测器;
构件i1、构件i2、构件j1和构件j2的运行都是独立的,虽然构件i1和构件j1是并联关系,但是其中只要一个产生故障,均认为系统产生故障,因此,构件i1和构件j1并联时产生故障的概率为:
1-(1-p1)*(1-p2)=p1+p2-p1*p2;
此情况下,两组并联构件运行结果不一致,检测器检测的故障概率为:
1-(1-(p1+p2-p1*p2))2;
并联双冗余结构2为构件i1与构件i2并联后连接一个检测器、构件j1与构件j2并联后连接一个检测器;
构件i1和构件i2并联时产生故障的概率为:
1-(1-p1)2=2*p1-p12;
构件j1和构件j2并联时产生故障的概率为:
1-(1-p2)2=2*p2-p22;
此情况下,只要一个检测器检测出故障,均认为出现故障,因此并联双冗余结构2的故障概率为:
(2*p1-p12)+(2*p2-p22)-(2*p1-p12)(2*p2-p22);
三取二结构为三个完全冗余的构件i1、构件i2和构件i3并联再连接检测器,三取二冗余结构产生故障的概率为:
p13+(1-p1)*3p12;
步骤S22:将步骤S1得到的构件故障率代入步骤S21的冗余方案的概率求解公式中,计算结果最小的冗余方案为最佳冗余方案。
本方案中的五种冗余方案是在软件的性能和可靠性之间做权衡之后而确定的,所以最多采用三模冗余。
本发明与现有技术相比,具有以下优点及有益效果:
本发明通过SFTA来建立单个构件的软件可靠度计算模型,并建立对不同的软件构件的拓扑结构的故障概率数学模型,计算得出可靠性最佳的冗余方案。
附图说明
图1为本发明中SFTA的流程图;
图2为串联双冗余结构1的示意图;
图3为串联双冗余结构2的示意图;
图4为并联双冗余结构1的示意图;
图5为并联双冗余结构2的示意图;
图6为三选二结构的示意图。
具体实施方式
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例1:
一种基于SFTA的软件可靠性计算方法,包括:
步骤S1:确定软件冗余结构中各个构件的故障率;
步骤S2:确定软件冗余结构的冗余方案,并分别计算冗余方案的故障率,从中选择故障率最小的为最佳冗余方案。
进一步地,软件构件是由n个软件单元组成,是一个独立发布的功能部分,通过SFTA(软件故障树分析法)对单个软件构件的可靠性进行建模,得到单个软件构件的可靠度计算模型,首先以构件故障为顶事件K,单元失效为底事件ti(i=1,2,···,n);如附图1所示,设顶事件K发生的概率为P(K),底事件ti发生概率为P(ti),而软件故障树有j个最小割集Gi,则故障树模型为:T=G1+G2+G3+…+Gj,其中Gi=t1*t2*…*tn;
进一步地,所述步骤S2包括:
步骤S21:确定冗余方案中的故障率计算公式即故障概率数学模型,其中冗余方案包括串联双冗余结构1、串联双冗余结构2、并联双冗余结构1、并联双冗余结构2以及三取二结构,冗余方案中的构件i1、构件i2和构件i3为相同的冗余构件,构件j1和构件j2为相同的冗余构件,构件i1、构件i2和构件i3的故障概率为p1,构件j1和构件j2的故障概率为p2;构件i1、构件i2、构件i3、构件j1和构件j2的运行都是独立的,具体地:
如图2所示,串联双冗余结构1中构件i1和构件j1串联时产生故障的概率为:
p1*(1-p2)+p2*(1-p1)+p1*p2=p1+p2-p1*p2;
此时,此时,构件i1、构件i2、构件j1和构件j2中只要有一个构件产生故障,检测器就是认为系统发生故障,串联双冗余结构1的故障概率为:
1-(1-(p1+p2-p1*p2))2;
如图3所示,串联双冗余结构2中构件i1和构件i2,构件j1和构件j2分别进行检测,运行中检测出故障的概率分别为1-(1-p1)2和1-(1-p2)2,由于两个冗余检测之间是串联关系,构件i1和构件i2检测出故障就不用运行构件j1和构件j2,因此构件j1和构件j2也不需要检测,只有构件i1和构件i2运行无故障时才需要运行构件j1和构件j2并对其进行检测,因此,串联双冗余结构2运行中检测出产生故障的概率为:
2*p1*(1-p1)+(1-2*p1*(1-p1))*(1-(1-p2)2);
如图4所示,并联双冗余结构1中构件i1、构件i2、构件j1和构件j2的运行都是独立的,虽然构件i1和构件j1是并联关系,但是其中只要一个产生故障,均认为系统产生故障,因此,构件i1和构件j1并联时产生故障的概率为:
1-(1-p1)*(1-p2)=p1+p2-p1*p2;
此情况下,两组并联构件运行结果不一致,检测器检测的故障概率为:
1-(1-(p1+p2-p1*p2))2;
如图5所示,并联双冗余结构2中构件i1和构件i2并联时产生故障的概率为:
1-(1-p1)2=2*p1-p12;
构件j1和构件j2并联时产生故障的概率为:
1-(1-p2)2=2*p2-p22;
此情况下,只要一个检测器检测出故障,均认为出现故障,因此并联双冗余结构2的故障概率为:
(2*p1-p12)+(2*p2-p22)-(2*p1-p12)(2*p2-p22);
如图6所示,三取二结构产生故障的概率为:
p13+(1-p1)*3p12;
步骤S22:将步骤S1得到的构件故障率代入步骤S21的冗余方案的概率求解公式中,计算结果最小的冗余方案为最佳冗余方案。
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。
Claims (1)
1.一种基于SFTA的软件可靠性计算方法,其特征在于,包括:
步骤S1:采用SFTA确定软件冗余结构中各个构件的故障率;
步骤S2:确定软件冗余结构的冗余方案,并分别计算冗余方案的故障率,从中选择故障率最小的为最佳冗余方案;
所述步骤S1具体为:
以构件故障为顶事件K,单元失效为底事件ti,其中,i=1,2,···,n;
设顶事件K发生的概率为P(K),底事件ti发生概率为P(ti),而软件故障树有j个最小割集Gi,则故障树模型为:T=G1+G2+G3+…+Gj,其中Gi=t1*t2*…*tn;
所述步骤S2包括:
步骤S21:确定冗余方案中的故障率计算公式,其中冗余方案包括串联双冗余结构1、串联双冗余结构2、并联双冗余结构1、并联双冗余结构2以及三取二结构,冗余方案中的构件i1、构件i2和构件i3为相同的冗余构件,构件j1和构件j2为相同的冗余构件,构件i1、构件i2和构件i3的故障概率为p1,构件j1和构件j2的故障概率为p2;构件i1、构件i2、构件i3、构件j1和构件j2的运行都是独立的,具体地:
串联双冗余结构1为构件i1和构件j1串联成一个支路,构件i2和构件j2串联成一个支路,然后两个支路再进行并联后连接检测器;
则构件i1和构件j1串联时产生故障的概率为:
p1*(1-p2)+p2*(1-p1)+p1*p2=p1+p2-p1*p2;
此时,串联双冗余结构1的故障概率为:
1-(1-(p1+p2-p1*p2))2;
串联双冗余结构2为构件i1与构件i2并联后连接一个检测器,再与并联的构件j1和构件j2串联后,再连接一个检测器;
构件i1和构件i2故障概率为1-(1-p1)2;
构件j1和构件j2故障概率为1-(1-p2)2;
因此,串联双冗余结构2运行中检测出产生故障的概率为:
2*p1*(1-p1)+(1-2*p1*(1-p1))*(1-(1-p2)2);
并联双冗余结构1为构件i1与构件j1并联、构件i2与构件j2并联,并联后的两个支路再分别输入到检测器;
构件i1和构件j1并联时产生故障的概率为:
1-(1-p1)*(1-p2)=p1+p2-p1*p2;
检测器检测的故障概率为:
1-(1-(p1+p2-p1*p2))2;
并联双冗余结构2为构件i1与构件i2并联后连接一个检测器、构件j1与构件j2并联后连接一个检测器;
构件i1和构件i2并联时产生故障的概率为:
1-(1-p1)2=2*p1-p12;
构件j1和构件j2并联时产生故障的概率为:
1-(1-p2)2=2*p2-p22;
并联双冗余结构2的故障概率为:
(2*p1-p12)+(2*p2-p22)-(2*p1-p12)(2*p2-p22);
三取二结构为三个完全冗余的构件i1、构件i2和构件i3并联再连接检测器,三取二冗余结构产生故障的概率为:
p13+(1-p1)*3p12;
步骤S22:将步骤S1得到的构件故障率代入步骤S21的冗余方案的概率求解公式中,计算结果最小的冗余方案为最佳冗余方案。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010107894.XA CN111338830B (zh) | 2020-02-21 | 2020-02-21 | 一种基于sfta的软件可靠性计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010107894.XA CN111338830B (zh) | 2020-02-21 | 2020-02-21 | 一种基于sfta的软件可靠性计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111338830A CN111338830A (zh) | 2020-06-26 |
CN111338830B true CN111338830B (zh) | 2023-04-14 |
Family
ID=71185534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010107894.XA Active CN111338830B (zh) | 2020-02-21 | 2020-02-21 | 一种基于sfta的软件可靠性计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111338830B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573275A (zh) * | 2015-01-28 | 2015-04-29 | 太原重工股份有限公司 | 一种基于故障维修数据的大型矿用挖掘机可靠性分配方法 |
CN105157487A (zh) * | 2015-09-01 | 2015-12-16 | 四川航天系统工程研究所 | 基于解析冗余的导弹舵机故障容错控制方法 |
CN105607616A (zh) * | 2015-12-16 | 2016-05-25 | 华东理工大学 | 一种对冗余系统进行可靠性分析的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10423884B2 (en) * | 2015-06-04 | 2019-09-24 | The Mathworks, Inc. | Extension of model-based design to identify and analyze impact of reliability information on systems and components |
-
2020
- 2020-02-21 CN CN202010107894.XA patent/CN111338830B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573275A (zh) * | 2015-01-28 | 2015-04-29 | 太原重工股份有限公司 | 一种基于故障维修数据的大型矿用挖掘机可靠性分配方法 |
CN105157487A (zh) * | 2015-09-01 | 2015-12-16 | 四川航天系统工程研究所 | 基于解析冗余的导弹舵机故障容错控制方法 |
CN105607616A (zh) * | 2015-12-16 | 2016-05-25 | 华东理工大学 | 一种对冗余系统进行可靠性分析的方法 |
Non-Patent Citations (3)
Title |
---|
可靠性设计软件的调研及其问题分析;刘国才等;《电子产品可靠性与环境试验》;20080820(第4期);19-23 * |
基于DSP软加固下的功耗优化方法;姚天问等;《集成技术》;20131115;第2卷(第6期);31-35 * |
基于Semi-Markov的模块化多电平换流器的可靠性分析及其冗余配置策略;黄守道等;《电力自动化设备》;20180703;第38卷(第07期);128-133 * |
Also Published As
Publication number | Publication date |
---|---|
CN111338830A (zh) | 2020-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6050754B2 (ja) | 信号処理に基づく故障検出、分離、及び修正のためのシステム、方法、及び装置 | |
JP2002168661A (ja) | センサ故障の検出、分離及び調整法 | |
JP2013540326A (ja) | 冗長センサ信号でシフトを検出するためのシステム、方法、及び装置 | |
CN111104293A (zh) | 用于支持盘故障预测的方法、设备和计算机程序产品 | |
JP2013520740A (ja) | 故障検出および位置特定システムおよび該システムを搭載したエンジン | |
CN106411617A (zh) | 电力通信网络故障告警关联处理方法 | |
CN111338830B (zh) | 一种基于sfta的软件可靠性计算方法 | |
CN106777719B (zh) | 双模冗余的故障检测装置的故障检测方法 | |
CN111596317A (zh) | 一种多维故障的检测和识别方法 | |
CN111121823B (zh) | 一种基于并行导航解算的冗余捷联惯组故障检测方法 | |
CN112968804B (zh) | 一种基于容错哈密顿圈的数据中心网络故障诊断方法 | |
CN105721209A (zh) | 一种有噪网络的故障检测方法 | |
CN108088495B (zh) | 多传感器监测数据驱动的复合系统故障定位方法 | |
CN102195826A (zh) | 一种检测根源告警的方法及设备 | |
Yu et al. | Permanent fault repair for FPGAs with limited redundant area | |
CN111027721B (zh) | 一种系统故障定位方法 | |
CN104698833B (zh) | 冗余控制方法和系统 | |
US20210320736A1 (en) | Fault Tolerant Design For Clock-Synchronization Systems | |
Hu et al. | A probabilistic method for certification of analytically redundant systems | |
CN1893339B (zh) | 连续中值故障控制系统和方法 | |
CN114545133B (zh) | 一种基于电流检测的单相级联h桥整流器的故障诊断方法 | |
CN109116219A (zh) | 一种电路系统的分布式故障诊断方法 | |
CN107908557B (zh) | 一种嵌入式软件可信属性建模与验证方法 | |
KR20210031060A (ko) | 연료전지 시스템의 다단계 고장 진단 방법 및 장치 | |
CN112613269A (zh) | 一种基于无关性覆盖模型的系统最佳冗余度计算方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231221 Address after: 610000 R & D building 201, Hangtian North Road Industrial Zone, Longquanyi District, Chengdu City, Sichuan Province Patentee after: SICHUAN AEROSPACE SYSTEM ENGINEERING INSTITUTE Patentee after: SICHUAN ACADEMY OF AEROSPACE TECHNOLOGY Address before: 610000 R & D building 201, Hangtian North Road Industrial Zone, Longquanyi District, Chengdu City, Sichuan Province Patentee before: SICHUAN AEROSPACE SYSTEM ENGINEERING INSTITUTE |