4

Considering the following block diagram:

enter image description here

I would like to model a continuous flow from PressureSensor.pressure to LPF.input.

Is it compliant to the SysML 1.4 specification to model this flow without using ports like in the following diagram?

enter image description here

Or do I have to use ports like in the following diagram? enter image description here enter image description here

Irr
  • 656
  • 1
  • 9
  • 19

2 Answers2

4

From the SysML spec (1.3):

The main motivation for specifying ports and flows is to enable design of modular, reusable blocks with clearly defined ways of connecting and interacting with their context of use.

In other words: you can of course use direct connectors, but you will loose the ability to specify more details about what is going on along those connectors.

qwerty_so
  • 35,448
  • 8
  • 62
  • 86
  • Do I loose the ability to specify any detail in the simple case of my example? If so, what details do I look the ability to specify? Thanks – Irr Feb 27 '16 at 22:35
  • Since your simple example does not show any details you certainly will loose nothing. With ports you have e.g. the ability to show the flow direction. – qwerty_so Feb 28 '16 at 00:22
2

There is a difference between a non-abstract block and a port typed with an interface. A non-abstract block cannot be substituted. In contrast, something with a matching interface is easily substituted.

Think about two analogies:

  • One brand of HDTV will only work with one brand of cable TV box. If you want to use another brand of HDTV, you would have to emulate the original brand of HDTV completely because of some undocumented inter-dependency.
  • Any brand of HDTV that has an HDMI interface will work with any brand of cable TV box that has an HDMI interface.

Which situation would you rather have in your living room?

Jim L.
  • 6,177
  • 3
  • 21
  • 47