Webel's "super-relational" Note pages!

A Note is a short categorised statement, claim, policy, tip, or issue tracker Throughout this site, content is often related to supporting Notes, and each Note page links back to the content pages that reference it! The Note and Snippet concepts are very closely related and they support each other.
Look for "super-relational" Note page links at the bottom of most content pages!
Note kind Note Spec tag UML keywords SysML keywords Keywords
CAPABILITY, TIP, TOOL MagicDraw SysML/Cameo: You can customise the generic query table diagram kind to check that the context Blocks of your Parametric Diagrams only contain BindingConnectors (not Connectors) SysML-1.6, SysML-1.7 Connector BindingConnector, constraint parameter MagicDraw SysML, Cameo Systems Modeler, SysML, Systems Modeling Language
ISSUE SysPhS-1.1: Annex A.5: Humidifier: Constraints on HeatingCalculationConstraint not consistent between BDD Figure 79 and Par Figure 88 (does not have 'c1') SysPhS-1.1 SysPhS
ISSUE SysPhS-1.1: Annex A.5: Humidifier: Constraints on RelativeHumidityCalculationConstraint not consistent between BDD Figure 79 and Par Figure 84 (does not have 'c2') SysPhS-1.1 SysPhS
CONVENTION, MODELLING, NAMING Block naming: If you find you've got similar blocks named 'Thing' and 'Thing2' then 'Thing' is probably better renamed 'Thing1' SysML-1.6, SysML-1.7 SysML, Systems Modeling Language, Webel Best Practice
ISSUE, MODELLING SysPhS-1.1: Annex A.5: Humidifier: Use of UML-style direct Port conjugation not permitted since SysML-1.6, prefer ~InterfaceBlock type-based conjugation (example requires migration) SysML-1.6, SysML-1.7, SysPhS-1.1 Port::isConjugated ~InterfaceBlock SysPhS
ISSUE SysPhS-1.1: Annex A.5: Humidifier: Naming not very consistent across parts, input/output Port name, value properties, or constraint parameters SysPhS-1.1 Port "standard" Port, Block, block property, constraint parameter, value property SysPhS
ISSUE, NAMING, TOOL MagicDraw/Cameo: v19SP3: Property created by dragging onto a Class or Block a symbol of a Classifier named with a single letter capital name 'N' has a poor name 'N:N' SysML-1.6, SysML-1.7, UML-2.5.1 Property, NamedElement::name, Classifier, Class Block MagicDraw SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, MagicDraw UML, MD SysML, UML
CAPABILITY, FEATURE, TIP, TOOL MagicDraw/Cameo: You can drag a Class symbol onto a Class symbol (in a Class Diagram) or a Block symbol or ValueType symbol onto or Block symbol (in a Block Definition Diagram) to create a new part property or value property SysML-1.6, SysML-1.7, UML-2.5.1 Property, Class, Class Diagram, attributes compartment, AggregationKind, AggregationKind::composite, ActivityPartition, receptions compartment, Signal, symbol Block, block property, SysML Block Definition Diagram, part property, parts compartment, values compartment, ValueType, value property MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler, Unified Modeling Language, UML, SysML, Systems Modeling Language, drag-n-drop
ANTI-PATTERN, MODELLING The use of an additional «port» keyword on a Port is usually redundant and causes clutter. The use of an additional «port» keyword on a basic Property is an obsolete trick. Please don't imitate it even if you see it in some specification sample diagrams! Port, Stereotype, «keyword», custom Stereotype, user defined Stereotype "standard" Port Webel Best Practice, SysML, Systems Modeling Language, UML, Unified Modeling Language
CAPABILITY, FEATURE, TIP, TOOL MagicDraw/Cameo: You can drag out a Property (or Port) from a Class or Block symbol to create an Association with the Property (or Port) as one end SysML-1.6, SysML-1.7, UML-2.5.1 Port, Property, Association, Association::memberEnd, Association::ownedEnd, Class Block, block property, "standard" Port MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler, Unified Modeling Language, UML, SysML, Systems Modeling Language, drag-n-drop
ANTI-PATTERN, ISSUE, WARNING There is no «port» stereotype keyword for Port or Property in UML-2.5.1 or SysML-1.6. It is assumed to be introduced in some SysML and SysPhS specification diagrams as a custom or user-defined stereotype for special illustration purposes. SysPhS-1.1 «keyword», Port, Association, Association::memberEnd, Association::ownedEnd, user defined Stereotype, custom Stereotype "standard" Port, SysPhS specification figure SysPhS
ISSUE, MODELLING, STYLE SysPhS-1.1: Apparent use of part Property with «port» keyword (instead of standard SysML Port) leads to property path symbols appearing inside the boundary of context blocks (instead of within a Port symbol on the boundary) in IBDs and Parametric Diagrams SysPhS-1.1 «keyword», Port, Stereotype "standard" Port, block property, part property, SysML Internal Block Diagram, multi-level property path, pathname dot notation SysPhS
MODELLING, STYLE Webel vs SysPhS-1.1: Recommend use standard SysML Ports instead of block part property with «port» keyword SysPhS-1.1 «keyword», Port, Stereotype "standard" Port, block property, part property SysPhS
ISSUE SysPhS-1.1: p.81: 'resistance:ViscousResistance' (in Figure 60) has to be treated as a PhSVariable not a PhSConstant, otherwise get an invalid system with 6 variables and 7 equations. Constraint ConstraintBlock SysPhS, hydraulics, fluid flow
DISPLAY, MODELLING, TOOL, WARNING MagicDraw/SysML vs SysPhS-1.1: Can't reproduce the "shortcut" property path representation of some properties nested within Ports as shortcut symbols fully inside the diagram frame. (Might be a specification diagram style issue.) SysML-1.6, SysML-1.7, SysPhS-1.1 Port, Property DirectedRelationshipPropertyPath, ElementPropertyPath::propertyPath, ElementPropertyPath, SysML Internal Block Diagram, multi-level property path, SysML Parametric Diagram, "shortcut" MagicDraw SysML, Cameo Systems Modeler
ISSUE SysPhS-1.1: The correct ValueTypes should be used throughout instead of just Real for constraint parameters in 'Figure 61: Hydraulics model constraint blocks' SysPhS-1.1 ValueType, Real SysPhS
ANTI-PATTERN SysPhS-1.1: In the specification model for Figure 59 the handling of the initial values for some value properties (such as for 'gravity') in Tank usages within context block ConnectedTanks is WET not DRY (breaks Single Source of Truth). SysPhS-1.1 Don't Repeat Yourself, WET, We Enjoy Typing, Single Source of Truth, SSoT
TIP SysML/SysPhS + Modelica: The variable 'time' is known to Modelica and need not be explicitly declared as a constraint parameter for a Constraint on a SysML ConstraintBlock SysPhS-1.1 Constraint SysPhS, SysML, Systems Modeling Language, Modelica
ISSUE SysPhS-1.1 spec version of 'Figure 48: Internal structure of the signal processor' shows an ItemFlow for Real on an overlapping Connector line section, which is impossible to interpret. SysPhS-1.1 Connector SysPhS
ANTI-PATTERN, WARNING Webel vs SysPhS-1.1: Diagramming style: DO NOT recommend overlapping Connectors with "phantom" fork (or junction) as shown in in 'Figure 48: Internal structure of the signal processor' SysML-1.6, SysML-1.7, SysMLv2, SysPhS-1.1 Connector SysPhS, SysML, Systems Modeling Language
ISSUE SysPhS-1.1: The correct ValueTypes for Current, Voltage, Resistance, Capacitance, and Inductance should be used throughout instead of just Real in 'Figure 40: Circuit constraint blocks' SysPhS-1.1 ValueType, Real SysPhS
ISSUE SysPhS-1.1 spec version of 'Figure 38: Internal structure of the circuit example' shows some bi-directional ItemFlows for Charge on overlapping Connector line sections, which are impossible to interpret. SysPhS-1.1 Connector SysPhS
ANTI-PATTERN, ISSUE GOTCHA: A SysML/SysPhS Connector (or Modelica connection) in an electronics model is NOT a wire! It's a contract between connected Ports. SysPhS-1.1 Connector ItemFlow SysPhS, SysML, antipattern
ANTI-PATTERN, ISSUE Webel vs SysPhS-1.1: Diagramming style: DO NOT recommend overlapping Connectors as shown in 'Figure 38: Internal structure of the circuit example' SysPhS-1.1 Connector ItemFlow SysPhS, SysML, antipattern
PROPOSAL SysPhS-1.1: TwoPinElectricalComponent in 'Figure 39: Electrical blocks, ports & component properties' could be marked abstract SysPhS-1.1 Classifier::isAbstract Block SysPhS, SysML
ISSUE, PROPOSAL SysPhS-1.1: Suggest use connector forms 'Modelica.Blocks.Interfaces.RealInput u;' and 'Modelica.Blocks.Interfaces.RealOutput y;' not 'input Real u;' and 'output Real y;' in Modelica code examples (otherwise not connectable). SysPhS-1.1 SysPhS
ISSUE, PROPOSAL SysPhS-1.1: p.38: 10.9.4 Modelica modeling, signal flow: Suggest kick start Spring with something like 'position=5' (otherwise get flat line when run). SysPhS-1.1 SysPhS
ISSUE SysPhS-1.1: p.38: 10.9.4 Modelica modeling, signal flow: Modelica code: the equation 'der(velocity)=(u-springcst*position)/m;' should use variable 'mass' not 'm' SysPhS-1.1 SysPhS, Modelica
ISSUE, TOOL MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: RealVectorSignalIn2Element extends RealVectorSignalElement not RealVectorSignalInElement, RealVectorSignalOut2Element extends RealVectorSignalElement not RealVectorSignalOutElement (and so on) SysPhS, SysML, MD SysML, Cameo Systems Modeler, MagicDraw SysML
DISPLAY, FEATURE, ISSUE, MODELLING, TOOL, WARNING MDSysML/Cameo 19SP3: Showing stereotype keywords on FlowProperty rows is UNSUPPORTED FlowProperty MagicDraw SysML, MD SysML, SysML, Systems Modeling Language, Cameo Systems Modeler
COMPLICATION, TOOL, WARNING MDSysML/Cameo 19SP3 SysPhSLibrary vs SysPhS-1.1: SimulinkBlock and ModelicaBlock specialise ExternalModel not Block
ISSUE, TOOL, WARNING MDSysML/Cameo 19SP3: The SysPhS versions of Conductance, Frequency, siemens, and hertz, are not explicitly provided in the MagicDraw/Cameo model library ValueType, ValueType::unit, Unit SysPhS, MagicDraw SysML, Cameo Systems Modeler, current, resistance, voltage
ISSUE, TOOL MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: Does not represent the elements in 'Figure 32: Elements for signal flows of electrical quantities' SysPhS, MagicDraw SysML, Cameo Systems Modeler, current, resistance, voltage
MODELLING, NAMING Concerning definitions: "a connector end" vs "a connector between 2 ends" vs "connection" vs "connect" in various technologies Connector, ConnectorEnd Modelica, Systems Modeling Language, electronics, Unified Modeling Language, Simulink, SysPhS
TIP, WARNING Modelica: GOTCHA: Sometimes the name 'p' is used for any Pin (such as on Ground) and sometimes 'p' is used for a specifically PositivePin (as opposed to 'n' for NegativePin). Modelica
CONVENTION, MODELLING, NAMING Modelica: Naming convention: Why does the OnePort family of electrical components have 2 Pins? Where is the "one port"? "standard" Port Modelica
ISSUE SysPhS-1.1: p.60: table for routing components: row for Switch: equivalents Modelica.Blocks.Logical.Switch (for Modelica) and Switch (for Simulink) missing SysPhS-1.1 SysPhS, Modelica, Simulink
ISSUE, TOOL SysPhS-1.1: Use of 'Criteria = u2~=0' for Simulink for Real.Routing.Switch::u2 inconsistent with BooleanInput of control port Modelica.Blocks.Logical.Switch::u2 SysPhS-1.1 SysPhS, MagicDraw SysML, Cameo Systems Modeler, Modelica, Simulink
ISSUE, TOOL SysPhS-1.1 (and MDSysML/Cameo 19SP3 SysPhSLibrary): Use of RealSignalInElement for Real.Routing.Switch::u2 inconsistent with BooleanInput of control port Modelica.Blocks.Logical.Switch::u2 SysPhS-1.1 SysPhS, MagicDraw SysML, Cameo Systems Modeler, Modelica
CAVEAT SysPhS-1.1: SourceAndSink.Clock does not have 'offset' or 'startTime' to match Modelica's Clock SysPhS-1.1 SysPhS, Modelica
ISSUE MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: SourceAndSink.Constant: Wrong Real (UML version not SysML version) has been used for 'k', so sorts in the 'properties' compartment instead of the 'values' compartment SysPhS-1.1 Real Real, value property, ValueType SysPhS, MagicDraw SysML, Cameo Systems Modeler
ISSUE SysPhS-1.1: p.57: Table 11.3.2.5 Mathematical components: Modelica Parameters for the Subtraction row should indicate (k1 and) k2 required to achieve subtraction via Math.Add (or the correct exported values should be explained). SysPhS-1.1 SysPhS, Modelica, Simulink
TIP, WARNING MDSysML/Cameo: SysPhSLibrary: GOTCHA: You must set the additional 'k2' parameter for Modelica to be minus to achieve subtraction SysPhS-1.1 SysPhS, Modelica
TIP, WARNING SysPhS-1.1: p.57: GOTCHA: Table 11.3.2.5 Mathematical components: Mathematical.Subtraction maps to Math.Add (in Modelica) and Sum (in Simulink) SysPhS-1.1 SysPhS, Modelica, Simulink
ISSUE MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: Mathematical.Subtraction: Wrong Real (UML version not SysML version) has been used for 'k2', so sorts in the 'properties' compartment instead of the 'values' compartment SysPhS-1.1 Real Real, value property, ValueType SysPhS, MagicDraw SysML, Cameo Systems Modeler
ISSUE MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: Mathematical.Gain: Wrong Real (UML version not SysML version) has been used for 'gain', so sorts in the 'properties' compartment instead of the 'values' compartment SysPhS-1.1 Real Real, value property, ValueType SysPhS, MagicDraw SysML, Cameo Systems Modeler
ISSUE MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: SPELLING/TYPO: VariableDelay: parameter 'maxDelay' should be 'delayMax' SysPhS-1.1 SysPhS, MagicDraw SysML, Cameo Systems Modeler
ISSUE, TOOL MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: Continuous.Integrator is missing the 'init' PhSConstant (maps to y_start in Modelica) SysPhS, Cameo Systems Modeler, MagicDraw SysML, MD SysML
ISSUE MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: NonLinear.Saturation: Wrong Real (UML version not SysML version) has been used for 'lower' and 'upper', so sorts in the 'properties' compartment instead of the 'values' compartment SysPhS-1.1 Real Real, value property, ValueType SysPhS, MagicDraw SysML, Cameo Systems Modeler
ISSUE MDSysML/Cameo 19SP3 vs SysPhS-1.1: The Continuous.TransferFunction and Discrete.TransferFunction have Ports 'u : RealVectorSignalInElement [1]' or '[*]' and 'y : RealVectorSignalInElement [1]' or '[*] instead of RealSignalInElement/RealSignalOutElement SysPhS-1.1 SysPhS, MagicDraw SysML, Cameo Systems Modeler
MODELLING, TIP, TOOL SysPhS: MagicDraw/Cameo: In the sysphs_profile the properties for PhSVariable have multiplicity [1], so the defaults always appear explicitly (but may be overridden): isContinuous: Boolean = true, isConserved: Boolean = false, changeCycle: Real = 0 SysML-1.6, SysML-1.7, SysPhS-1.1 stereotype Property, Stereotype, multiplicity SysPhS, SysML, Systems Modeling Language, Cameo Systems Modeler, MagicDraw SysML
ISSUE SysPhS-1.1: p.30: text and Figure 22: Incorrect references to 'RealInSignalElement' and 'RealOutSignalElement' (should be RealSignalInElement, RealSignalOutElement) SysPhS-1.1 SysPhS
ISSUE SysPhS-1.1: p.53: Figure 30: Incorrect references to RealInSignalElement, RealOutSignalElement, IntegerInSignalElement, IntegerOutSignalElement, BooleanInSignalElement, BooleanOutSignalElement (should be RealSignalInElement, RealSignalOutElement, ...) SysPhS-1.1 SysPhS
TIP SysML v2 (unlike SysML v1.x) is not directly based on Unified Modeling Language (UML) SysMLv2 SysMLv2, SysML, Systems Modeling Language
ISSUE As of 2021-01-11 OpenModelica no longer has DMG install bundles for Mac, and currently does NOT install on Mac Big Sur using MacPorts! Modelica, OpenModelica, macOS, macOS Big Sur
PATTERN SysML: HOWTO Use an explicit converter between different Unit systems SysML-1.6, SysML-1.7, SysPhS-1.1 ConstraintBlock, constraint parameter, ValueType, value property, Unit, ValueType::unit Systems Modeling Language, Cameo Systems Modeler, SysML, MD SysML, MagicDraw SysML, ISO-80000, SysPhS
PATTERN SysML: HOWTO Safely incorporate ConstraintBlock equations from a library into a project with local ValueType variants: CASE: SysPhS vs ISO-80000 ModelLibrary SysML-1.6, SysML-1.7, SysPhS-1.1 ConstraintBlock, constraint parameter, ValueType, value property, Unit, ValueType::unit Systems Modeling Language, Cameo Systems Modeler, SysML, MD SysML, MagicDraw SysML, ISO-80000, SysPhS
ISSUE SysPhS-1.1: p.47: 10.12.2 SysML modeling: The states StandBy and On in 'Figure 29: State machine in SysML' should probably use 'entry' not 'doActivity'. SysPhS-1.1 State::entry, State::doActivity, StateMachine SysPhS, SysML, Systems Modeling Language
TIP SysPhS-1.1: When RealSignalInElement or RealSignalOutElement are used to type a SysML Port, assignments to the FlowProperty 'rSig' map to the Port name (only) when mapped to Modelica. SysML-1.6, SysML-1.7, SysPhS-1.1 Port FlowProperty
ISSUE SysPhS-1.1: p.47: 10.12.2 SysML modeling: References to 'u.sigsp' and 'y.usigsp' should be 'u.rSig' and 'y.rSig'. SysPhS-1.1 SysPhS
ISSUE SysPhS-1.1: p.47: 10.12.2 SysML modeling: TYPO: Incorrect spelling of RealInSignalElement (should be RealSignalInElement) and RealOutSignalElement (should be RealSignalOutElement) SysPhS-1.1 StateMachine SysPhS
COMPLICATION, TIP, WARNING GOTCHA: MD SysML/Cameo 19SP3 vs SysPhS-1.1: Export to Modelica does not see a 'doActivity' on a State (does not write it to a Modelica algorithm), you MUST use an 'entry'! SysML-1.6, SysML-1.7, SysPhS-1.1 State::doActivity, State::entry, State SysML, SysPhS, Systems Modeling Language, Cameo Systems Modeler, MD SysML, MagicDraw SysML
ISSUE SysPhS-1.1: 10.12.2 SysML modeling: p.47, p.48: References to .sig and .rsig in 'Figure 29: State machine in SysML' and Modelica code example should be .rSig SysPhS-1.1 StateMachine SysPhS
ISSUE SysPhS-1.1: 10.12.2 SysML modeling: p.47: Name of StateMachine in 'Figure 29: State machine in SysML' should be ComputerSM (not Computer) for consistency with the Modelica code example SysPhS-1.1 StateMachine SysPhS
ISSUE SysPhS-1.1: p.45: 10.11.2 SysML modeling: Reference to 'the units library in Figure 20, Subclause 11.2.2' is wrong SysPhS-1.1 SysPhS
ASSERTION, OPTION SysML: Although not encouraged, you can still use a DataType to type a Property of a Block, it just won't be listed in the 'values' compartment. Prefer the SysML ValueType versions of primitives! SysML-1.6, SysML-1.7 DataType, properties compartment, attributes compartment ValueType, values compartment SysML, Systems Modeling Language
ISSUE SysPhS-1.1: p.44: 10.10.3 Modelica modeling: Reference to 'The following Modelica code corresponds to Figure 15' should probably be 'to Figure 27'. SysPhS-1.1 SysPhS
ISSUE SysPhS-1.1: p.42: 10.9.8 Modelica modeling, physical interaction: Modelica code has 'forcediff=springcst*lengthchg;' should be 'forcethru=springcst*lengthchg;' SysPhS-1.1 SysPhS, Modelica
ISSUE, MODELLING, TIP, WARNING GOTCHA: MagicDraw SysML/Cameo 19SP3: Export to Modelica: 'entry', 'doActivity', or 'exit' Behaviors of a State must be directly owned (not just "wrapped") or they won't be seen on export! SysML-1.6, SysML-1.7, SysPhS-1.1, UML-2.5.1 State, State::entry, State::doActivity, State::exit, Behavior Modelica, MD SysML, MagicDraw SysML, Cameo Systems Modeler, SysPhS
ISSUE SysPhS-1.1: p.41: 10.9.8 Modelica modeling, physical interaction: Reference to 'the bindings in Figure 14' should probably be 'the bindings in Figure 26'. SysPhS-1.1 SysPhS
ISSUE SysML-1.6: p.43: 8.3.1.2.1 Property types 'Four general categories of properties of blocks are recognized in SysML ...' does not cover FlowProperty SysML-1.6 FlowProperty
ASSERTION, COMPLICATION, ISSUE SysML-16: Taken literally the text and OCL of constraint 'Block::6_valueproperties_composite' imply that every FlowProperty typed by a ValueType should have AggregationKind 'composite' SysML-1.6, SysML-1.7 AggregationKind, AggregationKind::composite FlowProperty, ValueType, value property, Block SysML, Systems Modeling Language
ISSUE, TOOL MDSysML/Cameo: 19SP3: SysPhSLibrary: Has value properties with aggregation kind 'none' SysML-1.6, SysML-1.7 AggregationKind, AggregationKind::composite, AggregationKind::none, AggregationKind::shared SysML-1.6, value property SysML, MagicDraw SysML, Cameo Systems Modeler
ISSUE, TOOL MDSysML19SP3: Validation engine does not report value properties with AggregationKind other than composite SysML-1.6, SysML-1.7 AggregationKind, AggregationKind::composite, AggregationKind::none, AggregationKind::shared SysML-1.6, value property SysML, MagicDraw SysML, Cameo Systems Modeler
ISSUE SysPhS-1.1: Typos: Numerous references to 'rsig' lower case should be 'rSig' (including Figure 25 and Figure 29) SysPhS-1.1 SysPhS
ISSUE SysPhS-1.1: p.38: 10.9.4 Modelica modeling, signal flow: Modelica code: the keyword should be 'equation' not 'equations'. SysPhS-1.1 SysPhS, Modelica
ISSUE SysPhS-1.1: p.38: 10.9.4 Modelica modeling, signal flow: Example Modelica model should be for SpringMassSys not Spring SysPhS-1.1 SysPhS
ISSUE SysPhS-1.1: [TRIVIAL] p.11: If property 'm:Mass' is named then ':Ground' should also be named for consistency in 'Figure 2: Association block with internal structure and connector properties in SysML' SysPhS-1.1 SysPhS
ISSUE SysPhS-1.1: p.28: 10.6.3 Modelica modeling: An assigned value “...” is shown for v3 in the Modelica code but none is shown in the SysML model in 'Figure 21: PhSVariables and PhSConstant in SysML' (and “...” is not compatible with Real). SysPhS-1.1 SysPhS, Modelica, Wolfram SystemModeler
CAVEAT, ISSUE, TOOL MagicDraw SysML/Cameo: 19SP3: Does not seem to support export to Modelica from a Package [use a SysML Block as root instead] SysML-1.6, SysML-1.7, SysPhS-1.1 Package Block MagicDraw SysML, MD SysML, Cameo Systems Modeler, Modelica, SysPhS, Modelica::model
TIP, TOOL MagicDraw SysML/Cameo: SysPhS: Export to Modelica: It does not seem to matter whether you give the language of Constraints as 'Modelica' or 'sysphs' (although SysPhS specifies a restricted SysPhS expression grammar) SysML-1.6, SysML-1.7, SysPhS-1.1 MD SysML, MagicDraw SysML, Systems Modeling Language, SysML, SysPhS, Modelica
COMPLICATION, TIP, WARNING MagicDraw SysML/Cameo: GOTCHA: Export to Modelica only includes owned Constraints (not just applied Constraints) under the 'equation' export SysML-1.6, SysML-1.7, SysPhS-1.1 Modelica, Modelica::equation, SysPhS, MagicDraw SysML, MD SysML, Cameo Systems Modeler, SysML, Systems Modeling Language
COMPLICATION, FEATURE, MODELLING, TIP, TOOL, WARNING MagicDraw SysML/Cameo: GOTCHA: A Constraint created and applied to a ConstraintBlock via the sidebar menu is NOT owned by the ConstraintBlock! SysML-1.6, SysML-1.7 Constraint ConstraintBlock MagicDraw SysML, Cameo Systems Modeler, Systems Modeling Language, MD SysML, SysML
ISSUE SysPhS-1.1: p.32: 10.7.8 Modelica modeling, physical interaction: Type Real for 'f' and 'lV' in example Modelica code for Spring do not correspond to 'Figure 23: Ports for physical interaction in SysML', should be Force and Velocity. SysPhS-1.1 SysPhS, Modelica, Wolfram SystemModeler
ISSUE SysPhS-1.1: p.30: 10.7.4 Modelica modeling, signal flow: Example Modelica code for Spring corresponding to 'Figure 22: Ports for signal flow in SysML' is invalid [should probably be 'input Real u;' and 'output Real y;' not 'in ...' and 'out ...'] SysPhS-1.1 SysPhS, Modelica, Wolfram SystemModeler
ASSERTION, TIP SysPhS: GOTCHA: By default PhSConstant maps to a Modelica parameter (not to a Modelica constant) SysPhS-1.1 value property SysPhS, Modelica
ISSUE, TOOL MagicDraw SysML/Cameo: 19SP3: Export to Modelica from TestBed (for SignalProcessor) sample does not validate in Wolfram SystemModeler SysML-1.6, SysML-1.7, SysPhS-1.1 Wolfram SystemModeler, MagicDraw SysML, MD SysML, Cameo Systems Modeler, Modelica, SysPhS
ISSUE, TOOL MagicDraw SysML/Cameo: 19SP3: Export to Modelica from SysPhS sample for HumidifierSystem does not execute in Wolfram SystemModeler Simulation Centre SysML-1.6, SysML-1.7, SysPhS-1.1 Wolfram SystemModeler, MagicDraw SysML, MD SysML, Cameo Systems Modeler, Modelica, SysPhS
ANTI-PATTERN, MODELLING, STYLE Webel Best Practice: SysML/SysPhS: DO NOT use overlapping Connector lines from/to one Port (can be misunderstood as "summed" flow and/or physical node/fork/junction). SysML-1.6, SysML-1.7, SysPhS-1.1 Connector, Port Webel Best Practice, SysPhS, SysML, Systems Modeling Language, physical interaction, signal processing
TIP MagicDraw SysML/Cameo: For export of more complex physical interaction and flow cases to Modelica or Simulink/Simscape/Stateflow load the SysPhS ModelLibrary using SysPhSLibrary.mdzip as a shared project. SysML-1.6, SysPhS-1.1 SysPhS, Modelica, Stateflow, Simulink, Simscape, MD SysML, SysML, Systems Modeling Language, Cameo Systems Modeler, simulation, execution, MagicDraw SysML
TIP MagicDraw SysML/Cameo: You do not always need to load the entire SysPhS ModelLibrary for simpler black box exports to Modelica or Simulink/Simscape/Stateflow (sometimes the sysphs_profile within the MD Customization for SysML is enough) SysML-1.6, SysPhS-1.1 Profile SysPhS, Modelica, Stateflow, Simulink, Simscape, MD SysML, SysML, Systems Modeling Language, Cameo Systems Modeler, simulation, execution, MagicDraw SysML
CONSTRAINT, POLICY Webel Twin Pattern: DigitalTwin: The multiplicity of 'digitalEntity:@Entity' and 'physicalEntity:PhysicalEntity' MUST be [1] when the DigitalTwin is in the state Attached, the @Entity is in the state Bound, and the PhysicalEntity is in the state Exists. State, oclInState, Constraint Webel Twin Pattern, WTP:PhysicalEntity, WTP:DigitalEntity, WTP:@Entity, WTP:DigitalTwin
MODELLING, TIP UML/SysML: A Boolean "state flag" attribute corresponding to a State can be useful for indicating states in some diagram types (but must be synchronised with Transitions to States carefully). SysML-1.6, SysML-1.7, UML-2.5.1 State, Boolean Webel Best Practice, UML, Systems Modeling Language, SysML, Unified Modeling Language, state flag
SysMLv2 will have a completely new way of dealing with instances. SysMLv2 instance, InstanceSpecification SysMLv2 SysML, Systems Modeling Language
CAVEAT CAVEAT: The UML-2.5.1 InstanceSpecification does not support Ports! UML-2.5.1 instance, InstanceSpecification, Port UML, Unified Modeling Language, Systems Modeling Language, SysML
POLICY Webel Twin Pattern: The information and data in AssetSpecification leveraged for creation of a new ActualPhysicalAsset need not necessarily only be «digital». Webel Twin Pattern, digital twin
TIP UML/SysML: During modelling it can really help to create little instance (object) diagrams as you go! This can also help communicate with non-SysML stakeholders. SysML-1.6, SysML-1.7, UML-2.5.1 instance, InstanceSpecification Webel Best Practice
POLICY UML/SysML: If you have a Boolean "state flag" attribute corresponding to a State you MUST set it on an 'entry' of the State, not on the 'effect' of a Transition into the State (otherwise with multiple incoming Transitions it could be WET and breaks SSoT). fUML-1.3, fUML-1.4, SysML-1.6, SysML-1.7, SysMLv2, UML-2.5.1 StateMachine, State::entry, Transition, attribute value property Webel Best Practice, Systems Modeling Language, Unified Modeling Language, DRY, WET, SSoT, Single Source of Truth, state flag
TIP UML/SysML: When you use an AddStructuralFeatureValueAction to set one end of a bi-directional Association it also sets the other end. fUML-1.3, fUML-1.4, SysML-1.6, SysML-1.7, UML-2.5.1 AddStructuralFeatureValueAction, Association, Property Unified Modeling Language, Systems Modeling Language
TIP Not every task in Activity Diagrams is well-suited to graphical modelling; consider using Action Language Helper (ALH) or Action Language for Foundational UML (Alf) Alf-1.1 LoopNode, ConditionalNode, StructuredActivityNode Alf, Action Language Helper, Cameo Systems Modeler, Magic Model Analyst [Cameo Simulation Toolkit]