If the system ';misbehaves'; I may have found a serious bug that is present, and a safety risk, in normal operation, but simply shows up more easily under stressed conditions.To test safety-critical software, wouldn't I want to also run some UNREALISTIC test cases in a simulator ?
Are you seeing things, when under stressed conditions.
Is your mind simulating unrealistic cases.
How could one test, unrealistic cases. It would be infinite.To test safety-critical software, wouldn't I want to also run some UNREALISTIC test cases in a simulator ?
Absolutely. I think you should run all your tests without using your arms. You never know when all the operators' arms might fall off. I'm sure this is of critical importance to your system.
That is a good point, but if the circumstance is ';unrealistic'; then maybe there is a good chance that it will never happen. Perhaps increase testing conditions, so that you can discover the glitches. Better safe than sorry.
If you have automated testing software, then you can set up the test to try every possible combination someone can dream up, and log the results to compare in some chart ... this action had this result vs. what results were expected.
In testing voting machines, some students were putting their hands outside the touch screen places, and poking at various other combinations %26amp; that's how they found that some are rigged so that if you poke two diagonal corners simultaneously, you get access to a hidden program that lets you change other people's votes.
I recognize that SOME people might think voting machines are not critical ... but give some thought to the makeup of the Supreme Court after one political party has controlled the White House and Congress for like 10 years.
Thorough testing may be impractical, until there is a real disaster. In recent bad weather, there were power outages. Various equipment supposed to run off of electric generators supplied by fuel trucks that could not get a refuel because electricity was needed to operate fuel pumps.
To prevent hijacking, a system has been developed so that the military can take over controls of a commercial airplane while it is in flight. Only problem, that system can be hacked.
Rounding errors can go undetected for years.
I know this because I have found rounding errors %26amp; back tracked they were in that code for over 10 years before anyone spotted that something did not seem quite right.
Yes, it's called failure or fault testing. You push the system to a breaking point to see how much of a load it can take before crashing.
Some of the tests may seem unrealistic, but it is generally a given that any system will grow once installed, so you will need to know your upper limits.
Knowing the upper limits before hand will allow you to pre-emptively plan for how to get around the failure point onc you start appraoching the point where you know the system will break down.
In this way you keep surprises down to a minimum and have mitigation plans to deal with a lot of the ';what ifs';.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment