09.08.2013 Views

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Architecture</strong> <strong>Modeling</strong><br />

The component ValidSwitch takes these signals and decides whether the BSCU is considered<br />

to deliver valid commands. The SelectSwitch finally takes the commands send by<br />

the respective control units. In normal operation mode, it relays the commands from the first<br />

control unit to the hydraulic system. If the first units fails, SelectSwitch switches over to<br />

the second unit. In order to keep the example simple, the redundancy concept of the hydraulic<br />

system is not shown here.<br />

PedalPos1<br />

BSCU1<br />

CMD_AS1<br />

C<br />

always not(fail(PedalPos1))<br />

&& not(fail(PedalPos2))<br />

BSCU<br />

Valid1 Valid2<br />

Valid<br />

Switch<br />

Select<br />

Switch<br />

PedalPos2<br />

BSCU2<br />

CMD_AS2<br />

always not(fault(BSCU1)) or<br />

always not(fault(BSCU2))<br />

C1<br />

always<br />

not(fail(PedalPos1))<br />

C2<br />

always<br />

not(fail(PedalPos2))<br />

CMD_AS<br />

Valid<br />

Hydraulic<br />

always not(fail(CMD_AS1)) or<br />

always not(fail(CMD_AS2))<br />

always not(fault(BSCU1))<br />

always not(fault(BSCU2))<br />

Wheel<br />

Figure 4.9: VIT Example with Safety Contracts<br />

always not(fail(CMD_AS1))<br />

always not(fail(CMD_AS2))<br />

Figure 4.9 also shows some safety contracts. The top-level contract C = (As,Aw,G) defines as<br />

the strong assumption that the brake pedals never fail to send correct position values. The weak<br />

assumption of C states that the contract holds for such situations where not both redundant control<br />

units fail together. In this case, the contract guarantees that at least one of the command lines<br />

delivers correct commands to the hydraulic. Note, that this safety case is strongly simplified. A<br />

comprehensive safety analysis usually would incorporate much more complex situations. For<br />

example, none of the components ValidSwitch and SelectSwitch are considered here.<br />

It is furthermore a rather unrealistic requirement that both brake pedals never fail.<br />

We however assume that a further outcome of safety analysis are two local contracts for the<br />

redundant control units. C1 strongly assumes that PedalPos1 never fails. The weak assumptions<br />

captures situations where BSCU1 does not have a fault. In this case, C1 = (A1s,A1w,G1)<br />

guarantees that the commands send by BSCU1 are correct. A similar contract C2 is defined for<br />

BSCU2.<br />

Showing satisfaction of VIT for this example is simple. We can firstly observe that As =⇒<br />

A1s ∧ A2s, since As equals to A1s ∧ A2s. This proofs the strong VIT condition. Furthermore, it<br />

holds that Aw =⇒ A1w ∨ A2w because Aw equals to A1w ∨ A2w. Assuming satisfaction of C1<br />

and C2, we get A1s ∧ A1w =⇒ G1 for C1, and A2s ∧ A2w =⇒ G2 for C2 by definition.<br />

If we put all four implications together, we can derive As ∧ Aw =⇒ G1 ∨ G2. Since G1 ∨<br />

G2 =⇒ G because of, again, equivalence, we have shown dominance. This concludes the VIT.<br />

59/ 156

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!