Author Topic: Display inherited relations in nested properties on an ibd (SysML)  (Read 349 times)

ahjustat

  • EA Novice
  • *
  • Posts: 6
  • Karma: +0/-0
    • View Profile
I know I can show inherited (sub-)properties of one of the property within an internal block diagram, but is it possible to show the inherited relations between them?

I have existing ibd-s of the block itself, with connector relations, but the connectors do not appear when adding this block as a property to another block.

If I try to re-add the connectors, they seem to be added as relations to the instances defined by the top-level block, which is probably not what I want.

Any pointers?

https://ibb.co/MPh46mc

https://ibb.co/0MLchkf

https://ibb.co/jhmJZtk


PeterHeintz

  • EA User
  • **
  • Posts: 812
  • Karma: +47/-17
    • View Profile
Re: Display inherited relations in nested properties on an ibd (SysML)
« Reply #1 on: February 19, 2019, 09:48:11 pm »
Hi,
Not sure if I understand right, what you want to do.

From your bdd I see that you have two blocks with some part properties.
If you have some classifiers for these properties, typically you do that roperty definition by defining a “compose” relationship between Block1 and Block2.
By doing so, you define that Block 1 is part of Block 2 (shown in the properties compartment) (has nothing to do with inheritance).
A property is similar to attributes of classes (not identical but not relevant for this explanation).
IBD are intended to show how those parts of the blocks interact with each other’s. You can show these interactions by connector from part to part or by connectors to ports of parts.
Parts do not have the concept of generalization in the same way as class attributes of classes do not have the concept of generalization.
What you can generalize is a classifier of you part.
Best regards,

Peter Heintz

ahjustat

  • EA Novice
  • *
  • Posts: 6
  • Karma: +0/-0
    • View Profile
Re: Display inherited relations in nested properties on an ibd (SysML)
« Reply #2 on: February 20, 2019, 05:53:35 am »
Maybe inherited is the wrong word, I just want to show the relations between properties one level down. They are defined in one ibd, but I want them visible in the higher-level block ibd as well.

PeterHeintz

  • EA User
  • **
  • Posts: 812
  • Karma: +47/-17
    • View Profile
Re: Display inherited relations in nested properties on an ibd (SysML)
« Reply #3 on: February 20, 2019, 10:26:25 pm »
Go to you higher level IBD.
Select the property representing the lower level
Choose „Structural Elements…“ feature.
Tick „Show Owned/Inherited
Select the properties you want to see
If you properties are connected by ports do the same „Structural Elements…“ to get you ports
By doing so, you will see your lower level connections within the parts of you higher level properties.
Best regards,

Peter Heintz

ahjustat

  • EA Novice
  • *
  • Posts: 6
  • Karma: +0/-0
    • View Profile
Re: Display inherited relations in nested properties on an ibd (SysML)
« Reply #4 on: February 22, 2019, 12:26:04 am »
Thank you for your suggestion. I cannot get it to work, though.

I have added images here:

https://ibb.co/album/nL8nTv

I get properties with inherited ports, but the relations between them do not appear.




PeterHeintz

  • EA User
  • **
  • Posts: 812
  • Karma: +47/-17
    • View Profile
Re: Display inherited relations in nested properties on an ibd (SysML)
« Reply #5 on: February 22, 2019, 02:59:03 am »
Ah! now I understand your issue.
When you define a Block1 having some Block1 properties and you define connectors within the Block1 IBD you want to see those connectors in an IBD of a Block2 having a property classified with Block1.
This is unfortunately not supported by EA. You can only synchronize the properties but not the connections. :'(
What would work, is if you would define the connectors within a Block2 IDB, than you could have different Block2 IBD reusing the connectors. But this is not your use case.

What I do in this scenario, is using the property of Block1 in the Block2 as a black box having a kind of diagram link to the Block1 IBD.
Unfortunately EA does not support “Select Composite Diagram” for properties for whatever reasons, so I use the diagram Hyperlink feature.
Another idea could be to use the “Show Composite Diagram in Frame” or “Show Composite Diagram in Compartment” feature.  However again you are not allowed to use that feature for properties. ::)

There are some areas in EA where Sparx spend presumably considerable effort to implement features and then they spend additional effort to block those features for stuff which could benefit from.
It is like a company would make a car, but only allow persons with name Fred to drive it.
Best regards,

Peter Heintz