
Hi Michael,
Ok... I looked up MSM's anonymous transitions again and now I don't like it (o;
It's probably because we don't talk about the same concept. And it's not an MSM concept. Sorry, I can't claim ownership for it ;-) Anonymous transitions are also called completion events in the standard (and both names are used in the excellent "Real-Time UML, 3rd Edition"). They are defined as a transition without explicit trigger and are generated after the entry actions. You can have a look at the tutorials to see how it is used.
Christophe ... as far as I can tell by looking at the docs, the MSM use of anonymous transitions transforms the source state to *almost* be a UML choice pseudo state
I disagree with this. The state itself is not concerned, it is only a state machine thing. If you reuse the same state in another context, it will not behave like a choice point. But in this special state machine context, yes, it behaves the same, which is why I didn't implement choice points yet. Now you see what I meant ;-) I was at first not convinced by this feature until I saw a project in a big automotive company making extensive use of it. At every processor time slice, they'd go through the whole fsm used in this context as an algorithm. They could this way easily estimate the time slice they needed. What you are talking about is a trigger, which has to be fired, whatever it is. I didn't find it in the standard, but I could have missed that too. And no, MSM doesn't support it for the moment. The reason is that it's not on my radar as I'm pretty unconvinced of its need. I have yet to see a good convincing use case for it. Now, I don't say it won't be done, but it's not high on my list, unless someone makes a convincing case for it. Its implementation might be not trivial though. Christophe