Author Topic: Modeling complex component associations and interfaces  (Read 165 times)

miktaylor

  • EA Novice
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Modeling complex component associations and interfaces
« on: February 07, 2018, 07:48:15 am »
Hello,

for my thesis I am optimizing a functional architecture of an IoT application. Currently, the view is not user friendly with several components and each one having many I/O ports and associations. I would like to simplify the functional view with only one association between each component and a specification of those associations within a different view. How would you implement this ?

Functional view example:

https://ibb.co/khPakc

Ports realizing interface example:

http://ibb.co/fXcHyx

In addition, I would like to check if each component, which realizes several interfaces, fits to the counter part, is there any way to do this without scripting ?


Thanks
« Last Edit: February 07, 2018, 07:49:51 am by miktaylor »

qwerty

  • EA Guru
  • *****
  • Posts: 9086
  • Karma: +138/-126
  • I'm no guru at all
    • View Profile
Re: Modeling complex component associations and interfaces
« Reply #1 on: February 07, 2018, 07:55:20 pm »
No. I once wrote me a script to distribute ports evenly and also to align ports with opposite components. Worked a charm. However, things like crossing connections needed manual sorting at first hand (your first picture).

q.

Helmut Ortmann

  • EA User
  • **
  • Posts: 893
  • Karma: +38/-1
    • View Profile
Re: Modeling complex component associations and interfaces
« Reply #2 on: February 12, 2018, 10:53:49 pm »
Hello Miktaylor,

I think what you call an association is a connector (connector between ports). An association is in UML/SysML a different concept.

In doing a functional view, I would avoid using Components. Components are more an implementation concept. Not a thing a Functional View should focus on. Personally, I would use a stereotype <<func>> or so to make it clear that's a pure Functional Class/Block or whatever.

To visualise and check the Port/Connectors you can use SQL ModelViews, and I also think Matrix Views.

In my opinion to combine small interfaces is a good idea.

In EA you can visualise those interfaces on Ports by either:
- Lolipop notation of Required/Provided Interfaces
- Visualize the port type, the interface (port:IMyAggregatedInterface)

The difference here in my opinion and usage are:
- The Lolipop notation emphasises more a software architecture.
- Port types stresses more the flow of information

To see such things in practice, or get some other ideas, a look into SysML may help. Personally, I like the SysML BDD (Block Definition Diagram) and the IBD (Internal Block Diagram). In UML Class Diagram and Composite Structure Diagram. From my first view, such concepts would fit into the world of IoT.

Best regards,

Helmut
Coaching, Training, Workshop (Addins: hoTools, Search&Replace, LineStyle)

Richard Freggi

  • EA User
  • **
  • Posts: 54
  • Karma: +2/-1
    • View Profile
Re: Modeling complex component associations and interfaces
« Reply #3 on: February 13, 2018, 02:26:05 am »
Hello Miktaylor,

a good UML diagram shown only the minimum required to convey clearly and unambiguously the concept it wants to express.  For example, what is a functional architecture, who needs it and what for?

You need to ask yourself exactly what is the purpose of your diagram, who is the audience and what they will get out of your diagram.  This will help you choose the right diagram for your idea.

Experienced modelers break down large complex diagrams into several simple ones, each with a specific and clear message.  A very short book "The elements of UML 2.0 stlye" is a great reference.