Can the valid UML pseudostates be added to state diagrams?

+5 votes
asked Nov 12, 2012 in Wanted features by anonymous
edited Nov 12, 2012

UML 2.4.1 allows for several "pseudostate" nodes in state machines.  The site below has the official UML specifications.  The "Superstructure specification" document contains descriptions of all the pseudostates under seciton 15.3.8. 

http://www.omg.org/spec/UML/2.4.1/

However, this link: http://www.uml-diagrams.org/state-machine-diagrams.html

Is a little less formal than the specification, but also contains sample pictures of what these "pseudostates" look like in diagrams.  Look down the page under "Pseudostates."  You have already been working on the entry and exit markers as I saw on forum threads.

A "choice" pseudostate looks just like the decision diamond that you support with if/then/else in Activity diagrams. It can have one arrow entering, and multiple arrows leaving it, each labeled with the condition under which they are taken.

A "fork" or "join" pseudostate is just like those in the Synchronization topic on your Activity diagrams page: --> ===B1===

A "junction" pseudostate looks just like the starting point that is currently supported in state diagrams.  It can have multiple arrows entering it and leaving it, though.  Perhaps using "(*)" might be a good way of specifying it, since [*] is already used for the starting/ending points.

I've not used the history pseudostates before, but they are apparently open circles with "H" or "H*" in the middle.

I found this diagram that shows examples of entry/exit/fork/join/choice/junction

Simple Example State Diagram

commented Mar 12, 2013 by st3ve (120 points)
This is a very impressive tool, I only wish I had found it sooner!

However, pseudostate elements such as choice/entry/exit points are quite important.

I saw on an old sourcefourge thread that the entry and exit points are working, what about choice nodes?

Thanks,
Steve.
commented Jul 4, 2014 by bond007 (400 points)
Fork/Join nodes are currently implemented, but still implementing choice pseudo-state would be an important and long expected update.
PlantUML is a remarkable tool. Thank it's creators for it!

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
Anti-spam verification:

[Antispam2 Feature: please please wait 1 or 2 minutes (this message will disappear) before pressing the button otherwise it will fail](--------)
To avoid this verification in future, please log in or register.
...