[SystemSafety] Difference between software reliability and astrology
Paul Sherwood
paul.sherwood at codethink.co.uk
Wed Aug 14 11:07:54 CEST 2024
Hi Peter
Thank you for your clarifications - please see my comments below
On 2024-08-13 18:59, Prof. Dr. Peter Bernard Ladkin wrote:
>> Which statistical processes are generally recognised to model software
>> behaviour?
>
> We are talking safety-critical software.
>
> The answer is memoryless processes. "Memoryless" here is a technical
> term of statistics. https://mathworld.wolfram.com/Memoryless.html It
> should not be thought to have much if anything to do with "computer
> memory". Some of us have had years-long "discussions" with engineers
> who were convinced it must have somehow to do with it, somehow.
I had not heard of "memoryless" before. Is there a rationale for
considering software/system failure probabilities as exponential, or
geometric?
Incidentally if anyone is following along I found
https://en.wikipedia.org/wiki/Memorylessness easier to understand than
the Wolfram page.
> Not all software is used in a manner which can be claimed to be
> memoryless. It obviously needs to be so used if you are going to model
> it with memoryless processes.
>> From previous discussions here and elsewhere (and prior consideration
>> of ISO26262) I was under the impression that software is 'generally
>> recognised' to be (ideally) deterministic?
>
> Did you read the note I forwarded?
I confess I was put off when I saw the opening statement "Software
execution is deterministic; therefore it is not stochastic;..." etc.
But now I've digested the note (I can't claim to fully follow the
arguments, but I think I get the gist), the concluding paragraph states
"Even if complex software is deterministic in principle, there is often
so much uncertainty
concerning the environment and the precise mode of use of the software
system, and even the
versions of various software subsystems in use, that considering the
software under conditions of
uncertainty is the manifest way to approach reasoning effectively about
it. That entails using the
mathematics of uncertainty."
I find myself agreeing with this wholeheartedly - although I don't
accept that complex software can be deterministic, even in principle.
br
Paul
More information about the systemsafety
mailing list