I'm really happy with class, activity, and sequence diagrams in EA, but I think the state machine implementation is a mess. EA keeps twisting my layout on saving and reloading, automatically adds transitions without my consent, hides triggers from upper levels in subdiagrams, ignores regions in state machines a.s.o.
I keep reporting the obvious bugs, but what I would really like to have is a proper view of the state machine structure in the project browser. I mean one which reflects the UML structure. Currently EA hides too much for my taste (maybe they think it's easier for beginners this way, but it makes setting up a complex state machine very tedious).
Here's an example: In a package, create a state machine diagram, add two states, and in the second state, define two regions with two substates each. The project browser will show:
package
----diagram
----state1
----state2
--------state3
--------state4
--------state5
--------state6
were I would like it to show:
package
----statemachine
--------diagram
--------default_region
------------state1
------------state2
----------------region1
--------------------state3
--------------------state4
----------------region2
--------------------state5
--------------------state6
Not only are the regions not shown as nodes in the browser: the information which states belong to which region is not even saved within the model, but only in the diagram, and you need a diagram to change it. I think this is not only against the grain from an XMI point of view, but also inconsistent with the way EA handles other objects like classes, activities, lifelines a.s.o