Sparx Systems Forum

Enterprise Architect => Uml Process => Topic started by: Gladio on July 18, 2016, 03:42:47 pm

Title: Object flow from ObjectNode to Action
Post by: Gladio on July 18, 2016, 03:42:47 pm

is there any restriction which does not allow an object flow from an ObjectNode to an ActionPin, like shown below?

All those examples I've seen, look like those below:

Thanks in advance..

Title: Re: Object flow from ObjectNode to Action
Post by: qwerty on July 18, 2016, 06:32:27 pm
None I could spot immediately. See Superstructures pp. 372.
Tokens are not explicitly modeled in an Activity, but are used for describing the execution of an Activity. An object token is a container for a value that flows over ObjectFlow edges (some object tokens can flow over ControlFlow edges, as specified by the modeler, see isControlType for ObjectNodes in sub clause 15.4). An object token with no value in it is called a null token. A control token affects execution of ActivityNodes, but does not carry any data, and flows only over ControlFlow edges. Each token is distinct from any other, even if it contains the same value as another.

ObjectNodes hold object tokens accepted from incoming ObjectFlows and may subsequently offer them to outgoing ObjectFlows (with a modeler-specified exception for ControlFlows, see isControlType for ObjectNodes in sub clause 15.4).

An ObjectFlow is an ActivityEdge that can have object tokens passing along it. ObjectFlows model the flow of values between ObjectNodes. Tokens are offered to the target ActivityNode in the same order as they are offered from the source. If multiple tokens are offered at the same time, then the tokens are offered in the same order as if they had been offered one at a time from the source. If the source is an ObjectNode with an ordering specified, then tokens from the source are offered to the ObjectFlow in that order and, consequently, are offered from the ObjectFlow to the target in the same order. (See also sub clause 15.4 on the offering of tokens from an ObjectNode.)

Unlike ControlFlows, ObjectFlows also provide additional support for multicast/receive, token selection from ObjectNodes and transformation of tokens, as described below.
[which I will no cite here :-)]

Title: Re: Object flow from ObjectNode to Action
Post by: Polymorph on August 03, 2016, 10:51:30 pm
If you have a copy, take a look at SysML Distilled by Lenny Delligatti, pp 96-97, 2014

Pins mean exactly what object nodes mean; pins are simply alternative notations that you can choose case-by-case to meet the specific needs of your target audience. Each has strengths and weaknesses

The object node notation lets you display compartments to convey the internal properties of the object tokens it holds. However, it takes up more real estate on an activity diagram than the pin notation. The pin notation does not allow you to display the compartments but it's a more space-efficient notation. As a rule, I recommend that you adopt the pin notation as your default option and switch to the object node notation only on those rare occasions when you need to show the internal properties of an object token.

Based on this advice, there's nothing to stop you showing an activity pin connecting to an object node, but to do so is to introduce redundant information... so it is best avoided.

EA is rather inconsistent in when it adds action pins to actions and when it does not. I'm not sure the behaviour is based on either the SysML or UML specs.