Finish wideo 04
parent
749c2a4e16
commit
f2542ecc1a
|
@ -107,4 +107,52 @@ To test how the systems responds for a unknown error is to insert a failed accep
|
|||
* Go with default if no messages have been received
|
||||
* The acceptancetest must be good.
|
||||
|
||||
|
||||
|
||||
### Fault model
|
||||
|
||||
#### Example with storage functions.
|
||||
|
||||
**Step 1: Failure modes**
|
||||
|
||||
Find the failure modes: What could go wrong?
|
||||
|
||||
* **Write**: May return "I failed". Does not know why it faield
|
||||
* **Read**: May return "I failed". Does not know why it failed.
|
||||
|
||||
**Step 2: Detect, Simplify, Inject errors**
|
||||
|
||||
* Write information on where/what/how the process is doing.
|
||||
* All errors --> Fail
|
||||
* Inject errors
|
||||
|
||||
**Step 3: Handling with redundancy**
|
||||
|
||||
* Have multiple copies of the the information
|
||||
* Use only the newest
|
||||
|
||||
#### Example with communication function
|
||||
|
||||
**Step 1: Failure modes**
|
||||
|
||||
* Message
|
||||
* Lost
|
||||
* Delayed
|
||||
* Corrupted
|
||||
* DUplicated
|
||||
* Wrong recipient
|
||||
|
||||
**Step 2: Detection, Merging of errormodes and error injection**
|
||||
|
||||
* Adding information to message
|
||||
* Checksum
|
||||
* Session ID
|
||||
* Sequence number
|
||||
* Adding "ack" on well recieved messages
|
||||
* All errors will be treaded as "Lost message"
|
||||
* Injection
|
||||
* Occasionally throw away some messages
|
||||
|
||||
**Step 3: Handling with redundancy**
|
||||
|
||||
* Timeout
|
||||
* Retransmit message
|
Loading…
Reference in New Issue