Calculation of FailureMode Probabilities seems to be wrong
Running the attached Project in the ReliabilitySolver leads to a correct SucessProbability of 0.375. However the FailureMode Probability of the one FailureType used (multiple times) in this scenario is 0.5.
From my understanding this value should either be 0.625 (1-sucessProbability) or 1 as it is the only used FailureType.
Changing the probability of the first occurance of the failure (which is not encaspulated within a RecoveryBlock) results in the coreect sucess Probability of 0.75, however no FailureMOde Probability is shown.
Great that you investigated this issue and found its root cause!
I have added a test with this example model (slightly modified) at PALLDIO-366
fixed in revision: 28960
The tables in the HTML reporting compared rows only by the name of the internal actions and failure type and thus discarded any rows were the internal action name (e.g. "aName"...) and the failure type (e.g. SWFailure) were the same. Now, the InternalAction id is also considered when comparing (change in MarkovFailureType). The comparison is based on the id attribute of MarkovFailureType, which is composed of the id of the PCM model element and the failure type, so that should also work for hardware failures etc. To not get duplicate rows in the table, the table now also shows the internal action ids (change in MarkovReporting). Interestingly, equals and compareTo of MarkovFailureType were not compatible (now they are), which might be one cognitive cause for the bug.
It seems that the problem still exists in the nightly PCM.
I added an updated project.
Does this problem still occur in PCM4.0? Can someone test that?