Re: [boost] [msm] eUML guard/action location

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

Christophe Henry wrote:
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").
Thank you for setting me straight on this. It should have dawned on me that they were completion transitions as described in 15.3.14. I have a love/hate feeling about them... I don't personally like the concept of leaving a state via implicit trigger. It just makes me feel uncomfortable. However, I also see the power they can afford and use them for exactly your example... stepping along algorithms. <snip>
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.
Yes, it is the trigger. Sorry I got sloppy with the terminology. I hope to start sending some example machines and my perceptions later tonight. They will have several use-cases of these types of things. Right now I'm pushing on the edges of what I'm learning from the docs and a little bit of playing so I can determine how to convert basic constructs I use a lot from the model to the implementation. Thanks for putting up with me. michael -- ---------------------------------- Michael Caisse Object Modeling Designs www.objectmodelingdesigns.com
participants (2)
-
Christophe Henry
-
Michael Caisse