Author Topic: [sysML1.4] How to type a connector with EA  (Read 3618 times)

NiclasB

  • EA Novice
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile
[sysML1.4] How to type a connector with EA
« on: January 16, 2018, 09:14:21 pm »
According to http://www.pslm.gatech.edu/events/frontiers2011/1.3_Friedenthal.pdf page 24, interfaces can be described with association blocks in block definition diagram and with typed connectors in internal block diagrams.

I have tried to do that in enterprise architect, but typing a connector with a block seems to be not possible. I have clicked on "connector > context menu > Advanced > Set Connector Type...". But there is only the option between types "<anonymous>" or "none". If I put the connector in a boundary, surprisingly I can choose a block. But then my boundary gets a class assigned instead, even if I have chosen "set connector type...".

Here is my bdd
And here is my ibd

can you help?
Thanks!
« Last Edit: January 16, 2018, 09:20:38 pm by NiclasB »

PeterHeintz

  • EA User
  • **
  • Posts: 817
  • Karma: +49/-17
    • View Profile
Re: [sysML1.4] How to type a connector with EA
« Reply #1 on: January 16, 2018, 11:44:10 pm »
I assume you want to type a connector between two properties in an IBD, right?
What you are doing, from my perspective is right but what EA does is wrong. You should rise a bug report.
Best regards,

Peter Heintz

Uffe

  • EA Practitioner
  • ***
  • Posts: 1304
  • Karma: +95/-8
  • Flutes: 1; Clarinets: 1; Saxes: 5 and counting
    • View Profile
Re: [sysML1.4] How to type a connector with EA
« Reply #2 on: January 17, 2018, 12:03:24 am »
Look like regular ol' ports to me.

Not sure if they're available in the SysML diagram toolboxes, but you can add them as child elements on classes.

/Uffe
My theories are always correct, just apply them to the right reality.

NiclasB

  • EA Novice
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile
Re: [sysML1.4] How to type a connector with EA
« Reply #3 on: January 17, 2018, 12:26:22 am »
I assume you want to type a connector between two properties in an IBD, right?
What you are doing, from my perspective is right but what EA does is wrong. You should rise a bug report.

That's correct.

In the IBD I can type a port
>with right click on it>Properties>Property>Type


But the "Properties>Property" menue seems to be not available for connectors.


I will raise a bug report! Thanks for help.

Guillaume

  • EA User
  • **
  • Posts: 816
  • Karma: +22/-0
    • View Profile
    • www.umlchannel.com
Re: [sysML1.4] How to type a connector with EA
« Reply #4 on: January 18, 2018, 03:59:29 am »
Hi,
Having created the association block (K-Matrix on your BDD -> association between Gateway & Radar), I tried to set the connector type in the IBD between the corresponding parts.
A right click on the IBD connector between the parts > Advanced > Set Connector Type lets me choose the matching connector on the BDD. If you name that connector, it will no longer appear as anynomous - but this is not what you wanted i.e. it should display the name of the association block.
So my understanding is that Sparx only implemented a link between the BDD & IBD connectors based on the BDD connector name. I think the SysML association block is simply not implemented in EA.

Sounds like a SysML feature request.

A workaround would involve using Geert ea-Matic to set the connector's name when an association block is created (I tried it and it works).
Guillaume

Blog: www.umlchannel.com | Free utilities addin: www.eautils.com


NiclasB

  • EA Novice
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile
Re: [sysML1.4] How to type a connector with EA
« Reply #5 on: January 24, 2018, 09:09:20 pm »
This issue is solved!

I got a response from EA support. Typed connectors are possible to create in EA. What I have made wrong: I have forgotten to name the connector of association in BDD. As I have only named the block but not the association itself, the option in "set connector type menu" in IBD was <anonymous>.

I have found this in step 3 the mail from EA ("Also name the Association Block relationship Plumbing"):

To follow up on your points - you can do this with the following steps:

1    Add a BDD.
2    Add 3 Blocks on it. Name them Water Delivery, SpigotBank and Faucet Inlet.
3    Add an Association Block relationship to connect from SpigotBank to Faucet Inlet. Name the block associated with it Plumbing. Also name the Association Block relationship Plumbing.
4    Add an IBD to the block "Water Delivery".
5    Add two Property to the IBD with their names suppliedByInLink and deliveriedToInLink.
6    Add two ports hot and cold on both properties respectively.
7    Add two Connectors to connect from hot to hot, cold to cold from suppliedByInLink to deliveriedToInLink.
8    Set source role and target role into from and to respectively on two connectors.
9    Name the hot connector p1 and the cold connector p2.
10    Set p1 connector type to select Plumbing. Same work for p2.

Pegasus

  • EA User
  • **
  • Posts: 38
  • Karma: +0/-0
    • View Profile
Re: [sysML1.4] How to type a connector with EA
« Reply #6 on: March 20, 2018, 08:01:33 pm »
I do not aggree with your statements, because in example from Friedenthal (p 24, Plug <-> Socket) the connector between proxy ports of the two parts is typed by the association block (A1) used in BDD. The solution you describe is valid inside ibd of Association block (A1) itself (participant properties) but this does not have added value, because you need to model the information that the connection between the parts (:Appliance, :Power Source) or rather the proxy ports linking inside the parts to :Plug and : Socket is constructed as described by association block A1. What will happen, if there is another association block (A2) definition with e.g. additional parts. How will you be able to specify which block to use.  So I assume that there is a fault or missing functionality in EA too (actual checked with EA 13.5), because I am also not able to call "Set Connector Type ..." on connector between the part properties