本文已参与「新人创作礼」活动,一起开启创作之路。
介绍
整理了EMV2进行错误树分析的基本语法,用最简单直观的样例介绍EMV2和错误树分析
@TOC
test1.aadl
package test1 public annex EMV2 {** error types error_type_1: type; end types; **}; end test1;
事件A和事件B同时发生的概率

package test3 public device device_1 features out_feature_1: out feature; annex emv2 {** use types test1; error propagations out_feature_1: out propagation {error_type_1}; end propagations; component error behavior events events_1: error event; events_2: error event; propagations all -[events_1 and events_2]-> out_feature_1 {error_type_1}; end component; properties EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.05;] applies to events_1; EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.02;] applies to events_2; **}; end device_1; system system_1 features system_1_out_feature_1: out feature; annex emv2 {** use types test1; error propagations system_1_out_feature_1: out propagation {error_type_1}; end propagations; **}; end system_1; system implementation system_1.implementation_1 subcomponents subcomponents_1: device device_1; annex emv2 {** use types test1; component error behavior propagations propagations_1: all -[subcomponents_1.out_feature_1]-> system_1_out_feature_1 {error_type_1}; end component; **}; end system_1.implementation_1; end test3;
事件A或事件B最少一个发生的概率

package test4 public device device_1 features out_feature_1: out feature; annex emv2 {** use types test1; error propagations out_feature_1: out propagation {error_type_1}; end propagations; component error behavior events events_1: error event; events_2: error event; propagations all -[events_1 or events_2]-> out_feature_1 {error_type_1}; end component; properties EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.05;] applies to events_1; EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.02;] applies to events_2; **}; end device_1; system system_1 features system_1_out_feature_1: out feature; annex emv2 {** use types test1; error propagations system_1_out_feature_1: out propagation {error_type_1}; end propagations; **}; end system_1; system implementation system_1.implementation_1 subcomponents subcomponents_1: device device_1; annex emv2 {** use types test1; component error behavior propagations propagations_1: all -[subcomponents_1.out_feature_1]-> system_1_out_feature_1 {error_type_1}; end component; **}; end system_1.implementation_1; end test4;
流A或流B最少一个发生的概率

package test5 public device device_1 features features_out_data_port: out data port; annex emv2 {** use types ErrorLibrary, test1; error propagations features_out_data_port: out propagation {error_type_1,BadValue}; flows flows_1: error source features_out_data_port {error_type_1,BadValue}; end propagations; properties EMV2::OccurrenceDistribution => [ ProbabilityValue => 2.0E-2;] applies to flows_1.BadValue; EMV2::OccurrenceDistribution => [ ProbabilityValue => 5.0E-2;] applies to flows_1.error_type_1; **}; end device_1; system system_1 features system_1_out_feature_1: out feature; annex emv2 {** use types test1; error propagations system_1_out_feature_1: out propagation {error_type_1}; end propagations; **}; end system_1; system implementation system_1.implementation_1 subcomponents subcomponents_1: device device_1; annex emv2 {** use types test1; component error behavior propagations propagations_1: all -[subcomponents_1.features_out_data_port]-> system_1_out_feature_1 {error_type_1}; end component; **}; end system_1.implementation_1; end test5;
事件A和B只有一个发生的概率

package test4 public device device_1 features out_feature_1: out feature; annex emv2 {** use types test1; error propagations out_feature_1: out propagation {error_type_1}; end propagations; component error behavior events events_1: error event; events_2: error event; propagations all -[1 ormore (events_1 , events_2)]-> out_feature_1 {error_type_1}; end component; properties EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.05;] applies to events_1; EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.02;] applies to events_2; **}; end device_1; system system_1 features system_1_out_feature_1: out feature; annex emv2 {** use types test1; error propagations system_1_out_feature_1: out propagation {error_type_1}; end propagations; **}; end system_1; system implementation system_1.implementation_1 subcomponents subcomponents_1: device device_1; annex emv2 {** use types test1; component error behavior propagations propagations_1: all -[subcomponents_1.out_feature_1]-> system_1_out_feature_1 {error_type_1}; end component; **}; end system_1.implementation_1; end test4;
设备1的事件AB至少发生一个,设备2的事件CD至少发生一个,两种设备的至少有一个事件发生的概率

package test6 public device device_1 features out_feature_1: out feature; annex emv2 {** use types test1; error propagations out_feature_1: out propagation {error_type_1}; end propagations; component error behavior events events_1: error event; events_2: error event; propagations all -[events_1 or events_2]-> out_feature_1 {error_type_1}; end component; properties EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.05;] applies to events_1; EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.02;] applies to events_2; **}; end device_1; device device_2 features out_feature_1: out feature; annex emv2 {** use types test1; error propagations out_feature_1: out propagation {error_type_1}; end propagations; component error behavior events events_1: error event; events_2: error event; propagations all -[events_1 or events_2]-> out_feature_1 {error_type_1}; end component; properties EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.07;] applies to events_1; EMV2::OccurrenceDistribution => [ ProbabilityValue => 0.09;] applies to events_2; **}; end device_2; system system_1 features system_1_out_feature_1: out feature; annex emv2 {** use types test1; error propagations system_1_out_feature_1: out propagation {error_type_1}; end propagations; **}; end system_1; system implementation system_1.implementation_1 subcomponents subcomponents_1: device device_1; subcomponents_2: device device_2; annex emv2 {** use types test1; component error behavior propagations propagations_1: all -[subcomponents_1.out_feature_1 and subcomponents_2.out_feature_1 ]-> system_1_out_feature_1 {error_type_1}; end component; **}; end system_1.implementation_1; end test6;
关于FTA的门/事件的类型

样例

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)