Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » Papyrus » SysML activity diagram output pins.
SysML activity diagram output pins. [message #1639718] Fri, 27 February 2015 19:49 Go to next message
Stephen Blackwell is currently offline Stephen BlackwellFriend
Messages: 138
Registered: March 2014
Senior Member
I have a SysML activity diagram (my recreation of Figure 3.6 from A Practical Guide to SysML, 3rd edition) which has some output pins on it. Today I checked for updates and downloaded the latest changes and when Eclipse restarted, the arrows from the ouput pins had disappeared.

If a create a new ouput pin it has the arrow. I went through all the properties and could not find any reason why one would have an arrow and one would not.

In the book, none of the pins (or ports if that is the correct name) have arrows and they can be used for both input and output. I'm guessing that this is a change for SysML 1.4.

Has today's update mistakenly or even purposefully, addded some changes intended for the 1.4 release?

Steve

OK, I did some more experimenting and I found that when an output pin is first attached to an Opaque Action it contains the outgoing arrow icon. When a control flow is attached to the pin, the arrow disappears. Perhaps it also worked this way before the update and I just didn't notice it. I also found that 2 output pins can be connected by a control flow, making one of the output pins, logically, an input pin. In either case, the arrow disappears.

Is this the expected behavior? If so, what is the purpose of the arrow in the pin?

One more thing, how can I hide the control flow label?

Thanks,
Steve
Re: SysML activity diagram output pins. [message #1644991 is a reply to message #1639718] Mon, 02 March 2015 09:20 Go to previous messageGo to next message
Camille Letavernier is currently offline Camille LetavernierFriend
Messages: 932
Registered: February 2011
Senior Member
Hi Stephen,

The arrow is used to display the direction of the pin (InputPin and OutputPin are two different objects). When the Pin is connected to a flow, the arrow of the flow is redundant with the arrow on the pin, so the arrow of the pin is hidden. I see nothing in the UML Specification related to this, so it's probably specific to Papyrus (Or I missed it).

Also, Ports and Pins are two different concepts (Even if their notation is the same, they have different roles/semantics)

I think you shouldn't be able to connect two output pins with the same control flow. Papyrus is probably too permissive here (Especially if this doesn't result in a Validation Error).

The Activity Diagram in Papyrus is the standard UML one; it has nothing to do with SysML (I'm not sure how much SysML customizes/extends/restricts the UML Activity Diagram, but Papyrus doesn't provide any specific support for SysML Activities)

To hide the name Label for all control flows, you can use the following CSS rule:

ControlFlow > Label:name {
    visible: false;
}


If you want to hide only a few labels, you can right click on a Control Flow > Filter > Manage Connector Labels

Regards,
Camille


Camille Letavernier
Re: SysML activity diagram output pins. [message #1645467 is a reply to message #1644991] Mon, 02 March 2015 14:25 Go to previous messageGo to next message
Stephen Blackwell is currently offline Stephen BlackwellFriend
Messages: 138
Registered: March 2014
Senior Member
Hi Camille,

Thanks for those answers and that all sound great.

There is just one problem.
There is no Input Pin available in the Pallet for the activity diagram!
I'm guessing that there is supposed to be one. Is it possible that I've managed to hide just that one node in the Palette?

FYI. I was able to connect to output pins with a control flow but then the model does not validate.

Thanks,
Steve
Re: SysML activity diagram output pins. [message #1645590 is a reply to message #1645467] Mon, 02 March 2015 15:40 Go to previous messageGo to next message
Camille Letavernier is currently offline Camille LetavernierFriend
Messages: 932
Registered: February 2011
Senior Member
Hi,

The Input Pin (And other pins) is in the same stack as the Output Pin. There should be a small arrow next to the Output Pin, and you can unfold the stack to select other kinds of Pins

If the Input Pin doesn't appear there, then maybe you've actually hidden it. It can be restored via right click on the Palette > Customize... > Nodes > Pins > Input Pin, and uncheck "Hide"

HTH,
Camille


Camille Letavernier
Re: SysML activity diagram output pins. [message #1645618 is a reply to message #1645590] Mon, 02 March 2015 15:58 Go to previous messageGo to next message
Stephen Blackwell is currently offline Stephen BlackwellFriend
Messages: 138
Registered: March 2014
Senior Member
Aha!
I didn't realize that the nodes could expand and reveal other nodes. I also just found the Final Activity by expanding the Initial Node. I thought that that was missing too.

I don't think that it is very intuitive to have Input Pin as a child of Output Pin. Logically, they are both at the same level.

Thanks for the info though.
Steve
Re: SysML activity diagram output pins. [message #1645705 is a reply to message #1645618] Mon, 02 March 2015 16:54 Go to previous messageGo to next message
Camille Letavernier is currently offline Camille LetavernierFriend
Messages: 932
Registered: February 2011
Senior Member
Hi,

Quote:
I don't think that it is very intuitive to have Input Pin as a child of Output Pin. Logically, they are both at the same level.


It's not exactly a "child of". The widget is a Stack, presenting a set of elements, and the last element used is displayed at the top of the stack for quick access. So they are really all on the same level (The stack itself is called "Pins", but this name is not displayed, except in the customization tool).

Camille


Camille Letavernier
Re: SysML activity diagram output pins. [message #1645816 is a reply to message #1645705] Mon, 02 March 2015 18:08 Go to previous message
Stephen Blackwell is currently offline Stephen BlackwellFriend
Messages: 138
Registered: March 2014
Senior Member
Quote:
I see nothing in the UML Specification related to this, so it's probably specific to Papyrus (Or I missed it).

I found this in the UML 2.5 spec in section 16.2.4.
Quote:
When ActivityEdges are not present to distinguish InputPins and OutputPins, an optional arrow may be placed inside the Pin
rectangle, as shown below. InputPins have the arrow pointing toward the Action and OutputPins have the arrow pointing away
from the Action.


A couple more things about pins and then I'll shut up about them.

When I drop a pin on an opaque action I would expect it to get placed under the cursor but it gets placed just about anywhere except where I want it. What are the rules for their placement?

It seems that pins cannot be aligned like other drawing objects. All alignment options are greyed out.

How can I hide the pin label? All options under filters are greyed out.

I have some questions about decomposing activities but I will start a different topic for that.

Thanks,
Steve
Previous Topic:Serialization order?
Next Topic:Activity and CallOperationAction question
Goto Forum:
  


Current Time: Fri Dec 04 08:54:41 GMT 2020

Powered by FUDForum. Page generated in 0.02743 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top