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
ISSUE, LIMITATION Mathematica: Compile won't work with a Quantity with units Wolfram, Mathematica, Mathematica:Compile, compilation, performance, quantity, SI unit, units
CAVEAT, GOTCHA, ISSUE, LIMITATION, WARNING CoolProp: HOWTO reproduce a pressure vs specific enthalpy chart in Mathematica. Example: R32 refrigerant. CoolProp, equation-of-state, EoS, thermodynamics, chemistry, chemical properties, enthalpy, specific enthalpy, Wolfram, Mathematica, R32, refrigerant
CAVEAT, GOTCHA, ISSUE, LIMITATION, WARNING CoolProp: LIMITATION: DOES NOT accept specific enthalpy 'H' and vapor quality 'Q' as input pairs CoolProp, equation-of-state, EoS, thermodynamics, chemistry, chemical properties, enthalpy, specific enthalpy
TIP Fun fact: The normal boiling point of water isn't exactly 100 °C (at least not since 2019 when the definition of the Kelvin scale was changed to use the Boltzmann constant and decoupled from the triple point of water) thermodynamics, temperature, celsius, kelvin, Kelvins, water, boiling point, Boltzmann constant
TIP Mathematica: TIP: The ThermodynamicData function of Mathematica uses NIST's RefProp under the hood. Wolfram, Mathematica, thermodynamics, HVAC&R, RefProp
ISSUE, LIMITATION Mathematica: CoolProp wrapper binaries don't seem to be maintained past CoolProp 5.1.1 (and the PhaseSI and 2-args Props1SI functions do not work) Mathematica, Wolfram
ANTI-PATTERN, GOTCHA, ISSUE, LIMITATION, WARNING Mathematica: MTools: Argument pattern matching does not respect inheritance (undermines design-by-contract and heaps of Design Patterns) Wolfram, Mathematica, Mathematica:MTools, inheritance, object-oriented
PATTERN, TIP, TOOL Webel + Mathematica + MTools + SysML SysML-1.6, SysML-1.7 Wolfram, Mathematica, Mathematica:MTools, Wolfram Language, Systems Modeling Language, MD SysML, CATIA Magic:v2021xR1, MagicDraw SysML, MagicDraw, Cameo Systems Modeler, Webel:MathematicaSysML
TIP Mathematica: LINKS: Manipulating Strings and using RegularExpression Wolfram, Mathematica, String, regex, regular expression
GOTCHA, TIP Mathematica: GOTCHA: Null is tricky! Wolfram, Wolfram Language, Mathematica
FEATURE, ISSUE, LIMITATION, WISHLIST Mathematica: Wolfram Workbench: Basic variable name refactoring is not supported. (Or just use the IntelliJ IDEA Plugin for Mathematica, which does variable and function renaming well.) Webel:WISHLIST, Mathematica, Wolfram Workbench, Wolfram
QUESTION Mathematica: Objectica 3rd-party commercial package for OO in Mathematica. Earth calling Objectica, do you still exist? Mathematica, Wolfram, object-oriented
ISSUE, TOOL Mathematica: Wolfram Workbench: Sometimes the Outline view gets completely out of sync with the .m or .wl Package code Mathematica, Wolfram Workbench, Wolfram Language, Wolfram, Eclipse IDE
ISSUE, TOOL, WORKAROUND Mathematica: Wolfram Workbench: Sometimes the code syntax checking goes haywire (with red nearly everywhere) for no good reason (even when the code load and runs fine in Mathematica). WORKAROUND: Just restart Eclipse. Mathematica, Wolfram Workbench, Wolfram Language, Wolfram, Eclipse IDE
FEATURE, TIP, TOOL Webel vs Mathematica: The Very Good, The Bad, and The Ugly Mathematica, Wolfram, Wolfram Language, Mathematica:Dataset
FEATURE, TIP, TOOL Mathematica: TIP: Try //Dataset on just about anything and be amazed! Click on nearly anything to navigate through nearly anything in impressively interactive human-readable format. Mathematica, Wolfram, Wolfram Language, Mathematica:Dataset
GOTCHA, LIMITATION, TIP Mathematica: How mimic pattern matching of arguments for pseudo "Boolean" (including providing a default)? Wolfram, Mathematica, Wolfram Language
ASSERTION, TIP Mathematica: The awesome Quantity system for values with units is everything the SysMLv1.x Quantity/Unit system should have been (and hopefully SysMLv2 will be). But it comes at a high performance cost! Mathematica, Mathematica::Quantity, Wolfram, Wolfram Language, quantity, scientific unit system, SI unit, deep value
ASSERTION "Everything now uses functional, nobody uses object-oriented anymore ... " WRONG: Grow up! Dr Darren (Webel IT) functional, functional programming, object-oriented
TIP Mathematica: TIPS for living with the user-contributed MTools for Object-Orientation (until a vendor-supported OO solution is eventually provided) Mathematica, Mathematica:MTools, object-oriented, Wolfram, Wolfram Workbench
GOTCHA, ISSUE, LIMITATION, TOOL Wolfram Workbench for Mathematica: Limitation: Using more than one '$' sign within function names blocks navigation on function usages. Mathematica, Wolfram Workbench, Wolfram, Eclipse IDE
GOTCHA, ISSUE, LIMITATION, MODELLING, WARNING, WISHLIST Mathematica: GOTCHA: EntityFunction can only return a scalar (although its the 3rd decade of the 21st century) Wolfram, Mathematica, object-oriented, OOP
ISSUE, LIMITATION, MODELLING, TOOL Mathematica: The slightly less painful ultimate list of links on Object-Orientation (or the lack thereof) and a public plea to Wolfram Research Wolfram, Mathematica, object-oriented, OOP
TIP Mathematica: The Entity system: useful links Mathematica, Wolfram, Mathematica:Entity
TIP Mathematica: TIP: How to change a value within an Association inline within a Module (like pass by reference) Mathematica, Wolfram Language, Wolfram
GOTCHA, TIP, WARNING Mathematica: GOTCHA: Package usages (Needs) are not transitive Wolfram, Wolfram Language, Mathematica
TIP Mathematica: HOWTO Find the value of a symbol in all contexts Wolfram, Wolfram Language, Mathematica
CAPABILITY, FEATURE, TOOL Mathematica: TIP: LINKS: Filename chooser dialogs Wolfram, Mathematica, GUI, Mathematica::Manipulate
GOTCHA, ISSUE, TOOL GOTCHA/BUG: Cameo Simulation Toolkit v2021xR1 + Mathematica: Delegation to Mathematica from ConstraintBlocks FAILS if any of the input or output parameters are larger than 99999 because they get interpreted as 1.0e5 and that trips something! Aarrrggggh! Constraint ConstraintBlock, MD:ConstraintParameter, constraint parameter SysML, MD SysML, Mathematica, Wolfram, Cameo Systems Modeler, SysML Parametrics, calculation, CATIA Magic:v2021xR1
TIP MagicDraw/Cameo/CATIA Magic: Getting your software tools ready for the Webel IT training courses in SysML/MBSE CATIA Magic, MagicDraw SysML, MD SysML, Cameo Systems Modeler, training, Magic Model Analyst, Magic Model Analyst [Cameo Simulation Toolkit], SysML, Systems Modeling Language, MBSE, Model-Based Systems Engineering
TOOL LINKS: Wolfram Workbench for Mathematica (or just use the far superior IntelliJ IDEA Plugin) Wolfram, Wolfram Workbench, Wolfram Language, Mathematica, coding, code formatting, documentation
QUESTION, TIP, TOOL HOWTO access custom (user-defined) Mathematica functions using Mathematica v13.2 as an external maths engine for SysML Parametrics (ConstraintBlocks) in Magic Model Analyst (Cameo Simulation Toolkit) versions 2021x, 2021xR1, 2022xR1 Constraint ConstraintBlock, SysML Parametric Diagram Wolfram, JLink, Mathematica, MagicDraw SysML, SysML, MD SysML, SysML Parametrics, mathematics, CATIA Magic, Magic Model Analyst [Cameo Simulation Toolkit], CATIA Magic:v2021x, CATIA Magic:v2021xR1, JDK, Java Development Kit, Java, CATIA Magic:v2022xGolden, CATIA Magic:v2022xRefresh1
NAMING, PATTERN, TIP Mathematica: HOWTO Autoload the simplest possible .m or .wl Package file with a few custom functions Wolfram, Mathematica
GOTCHA, TOOL, WARNING Mathematica + Magic Model Analyst (Cameo Simulation Toolkit) for SysML Parametrics: GOTCHA: You must use a regular '=' on the SysML side, not the Mathematica '==' (or it will be intepreted as a constraint condition to test, not an equation to solve). Constraint ConstraintBlock, SysML Parametric Diagram Wolfram, JLink, Mathematica, MagicDraw SysML, SysML, MD SysML, SysML Parametrics, mathematics, CATIA Magic, Magic Model Analyst [Cameo Simulation Toolkit], CATIA Magic:v2021x, CATIA Magic:v2021xR1, JDK, Java Development Kit, Java
TIP, TOOL HOWTO use Mathematica v12.3.2 as an external maths engine for SysML Parametrics (ConstraintBlocks) in Magic Model Analyst (Cameo Simulation Toolkit) versions 2021x, 2021xR1, 2022xR1 Constraint ConstraintBlock, SysML Parametric Diagram Wolfram, JLink, Mathematica, MagicDraw SysML, SysML, MD SysML, SysML Parametrics, mathematics, CATIA Magic, Magic Model Analyst [Cameo Simulation Toolkit], CATIA Magic:v2021x, CATIA Magic:v2021xR1, JDK, Java Development Kit, Java
CAPABILITY, FEATURE, TIP, TOOL Mathematica: TIP: Package Editor mode: Use cell division between every function in .wl library files to make them more readable (and to make it easier to apply at least some degree automated code formatting per function). Wolfram, Mathematica
ASSERTION, MODELLING, TIP Webel: Domain Modelling in graphical SysML (and the best SysML tools) is massively, hugely, compellingly, better than in any other language (or tool). [OWL does something very useful but different.] SysML, Systems Modeling Language, SysMLv2, SysMLv1.x
ANTI-PATTERN, ASSERTION Webel: The single biggest disease in the world of IT is the idea that somehow mathematics is bad, or not useful, or not efficient, and that getting people who don't like maths to make stuff up (badly) in coding languages (rather than using maths) is ok. mathematics
ASSERTION, TIP Webel: Mathematica is functional programming on steroids (and has nearly everything else, except for decent in-built OO support, although you can make some progress with Abstract Data Types and even some inheritance). Mathematica, Wolfram, functional programming, functional
ASSERTION Webel: Programmers who can count higher than one (1) know that you don't have to choose exclusively between object-orientation (and classes) and functional programming. You can have your cake and eat it. It's not XOR! OO, OOP, object-oriented, functional, functional programming
LIMITATION, TOOL, WISHLIST Webel: Mathematica: WISHLIST: Support for EXTRACTABLE structured documentation for individual arguments to functions RIGHT IN/NEAR THE CODE. Yes it is needed. Really it is. Wolfram, Mathematica, Webel:WISHLIST
TOOL, WISHLIST Webel: Mathematica: WISHLIST: Support for decent vendor-supported, built-in, fully fledged, IDE-friendly, object-orientation (OO)! [With or without the use of state, which is a choice, not obligatory, and OO doesn't throw functional away] Wolfram, Mathematica, Webel:WISHLIST, inheritance, object-oriented, OOP, OO
NAMING, OPTION, PATTERN, TIP Mathematica: Webel: You CAN/MAY use $ in variable names and function names - just not as the first character before a Capital - and it's extremely useful. You won't get sent to Azkaban prison if do you use a $ character! Wolfram, Mathematica, Mathematica:Entity, Wolfram Language, notation
TIP Mathematica: Having trouble clearing a variable with complex formatting? Try =. Wolfram, Mathematica
TIP Mathematica: HOWTO Manage test data for functions using rules across multiple functions (and about the Webel '$0' variable suffix convention for substitution targets). Wolfram, Mathematica
TIP Mathematica: HOWTO: Strip an option from an OptionsPattern[] sequence before passing down (propagating) to a function with fewer options Wolfram, Mathematica
TIP, TOOL Mathematica: Nasser M. Abbasi's cheat sheet Wolfram, Mathematica
Mathematica: HOWTO Convert a list into a Sequence of arguments to a function (where each of the arguments to the function corresponds to a list item) Wolfram, Mathematica
DISPLAY, FEATURE, TIP, TOOL Mathematica: HOWTO Create collapsible control groups in Manipulate GUIs Wolfram, Mathematica, Mathematica::Manipulate
FEATURE, TIP, TOOL Mathematica: TIP: OverDot: Type CTRL & and then . to enter an OverDot directly Mathematica, Wolfram, notation
FEATURE, TIP, TOOL Mathematica: TIP: OverBar: Type CTRL & and then _ to enter an OverBar directly Mathematica, Wolfram, notation
TIP Mathematica: v12.3.1.0: How to obtain values of physical constants Mathematica, physical quantity, quantity, magnitude, units, Wolfram
GOTCHA, WARNING Mathematica: GOTCHA: MMA distinguishes between Kelvins and KelvinsDifference Mathematica, quantity, units, physical quantity, temperature, Kelvins, celsius, Wolfram
GOTCHA, ISSUE, TOOL, WARNING Cameo Simulation Toolkit: v19SP3: GOTCHA/BUG: When a Property is typed by an abstract Block an instance of a concrete specialising Block (where available) will automatically be created and assigned even when the lower multiplicity is 0 SysML-1.6, SysML-1.7, UML-2.5.1 Property, StructuralFeature, multiplicity, MultiplicityElement, MultiplicityElement::/lower Block, part property MagicDraw SysML, MagicDraw UML, Magic Model Analyst [Cameo Simulation Toolkit], Cameo Systems Modeler, SysML, MD SysML, Systems Modeling Language, Unified Modeling Language, UML, SysMLv1.x
COMPLICATION, DISPLAY, FEATURE, ISSUE, MODELLING, STYLE, TOOL, WARNING, WORKAROUND MagicDraw/Cameo 19SP3/v2022xGolden: [FIXED in v2022xRefresh1]: Activity Diagrams: Pin display mode 'Position of Labels' does not work correctly for 'Name And Type Labels Inside', only shows the Name inside (not the Label) [and WORKAROUND] SysML-1.6, SysML-1.7, UML-2.5.1 Activity, Pin, Activity Diagram, ObjectFlow SysML Activity Diagram MagicDraw, UML, MagicDraw UML, Unified Modeling Language, Systems Modeling Language, SysML, MD SysML, Cameo Systems Modeler, CATIA Magic, Mathematica, Webel:MathematicaSysML, CATIA Magic:v2022xGolden
CAPABILITY, FEATURE, TIP, TOOL Cameo Simulation Toolkit: You can assign the results of simulations calculations on instances to the default values of properties of the Classes/Blocks that type the instance. SysML-1.6, SysML-1.7, UML-2.5.1 instance, InstanceSpecification, Property::defaultValue, Slot, Slot::value, Slot::definingFeature Block, value property CATIA Magic, Cameo Systems Modeler, Magic Model Analyst [Cameo Simulation Toolkit], UML, Unified Modeling Language, Systems Modeling Language, SysML, MD SysML, MD:InstanceTable
GOTCHA, TIP, TOOL, WARNING TIP/GOTCHA: MagicDraw SysML/Cameo: In Parametric Diagrams create BindingConnectors involving part properties by selecting the constraint parameter symbol first and use the smart manipulator (otherwise you might accidentally create a regular Connector) Connector BindingConnector, SysML Parametric Diagram, constraint parameter, constraint property, part property MD SysML, MagicDraw SysML, Systems Modeling Language, SysML, SysML Parametrics, mathematics
ISSUE, TIP, TOOL UML/SysML: MagicDraw/Cameo: 19SP3: Instance Table Diagram sometimes does not display the values for nested value properties SysML-1.6, SysML-1.7, UML-2.5.1 InstanceSpecification, Slot, Slot::value, Property UML, SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, Magic Model Analyst [Cameo Simulation Toolkit], MD SysML, MD:InstanceTable
TIP, TOOL UML/SysML: MagicDraw/Cameo: Instance Table Diagrams are one of the most powerful features of MagicDraw/Cameo! Learn to use them to progressively test, debug, and evolve your models as you work! SysML-1.6, SysML-1.7, UML-2.5.1 InstanceSpecification, Slot, Slot::value UML, SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, Magic Model Analyst [Cameo Simulation Toolkit], MD SysML, MD:InstanceTable
GOTCHA, TIP, TOOL UML/SysML: MagicDraw/Cameo 19SP3: GOTCHA/TIP: An Instance Table will not display a row for instances typed by an abstract Class/Block (although one can show such instances as InstanceSpecification symbols on a Class Diagram or Block Definition Diagram) SysML-1.6, SysML-1.7, UML-2.5.1 Classifier::isAbstract UML, SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, Magic Model Analyst [Cameo Simulation Toolkit], MD SysML, MD:InstanceTable
GOTCHA, TIP, TOOL UML/SysML: Cameo Simulation Toolkit 19SP3: GOTCHA/TIP: ConstraintBlock constraints: Not every available constraint language can handle Enumeration literals (if in doubt choose 'English') Alf-1.1, fUML-1.3, fUML-1.4, SysML-1.6, SysML-1.7, UML-2.5.1 Enumeration UML, SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, Magic Model Analyst [Cameo Simulation Toolkit], MD SysML
ISSUE, LIMITATION, TOOL MagicDraw/Cameo: 19SP3: Although a 0..* or 1..* Property can carry more than one value, the interface only permits assignment of a single Property::defaultValue through the specification dialog Property, Property::defaultValue Unified Modeling Language, UML, SysML, Systems Modeling Language, MagicDraw, MD SysML, Cameo Systems Modeler
GOTCHA, ISSUE, TOOL, WARNING UML: Cameo Simulation Toolkit 19SP3: GOTCHA: CreateObjectAction ignores an Artifact as 'classifier' even though Artifact is a Classifier Alf-1.1, fUML-1.3, fUML-1.4, SysML-1.6, SysML-1.7, UML-2.5.1 DecisionNode, DecisionNode::decisionInput, DecisionNode::decisionInputFlow UML, Cameo Systems Modeler, Unified Modeling Language, Alf, fUML, Foundational UML
GOTCHA, TOOL GOTCHA: UML/SysML: Cameo Simulation Toolkit 19SP3: A [true] or [false] guard on an ActivityEdge MUST be a LiteralBoolean, not just characters typed in, or the evaluation may give unexpected or ill-defined results fUML-1.3, fUML-1.4, SysML-1.6, SysML-1.7, UML-2.5.1 ActivityEdge, ActivityEdge::guard, LiteralBoolean, LiteralBoolean::true, LiteralBoolean::false UML, SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, Alf, fUML, Foundational UML
GOTCHA, ISSUE, TOOL, WARNING UML/SysML: Cameo Simulation Toolkit 19SP3: A parent Activity with a DecisionNode that uses a Activity as a decisionInput Behavior terminates immediately after the decisionInput terminates (but OpaqueBehavior works) Alf-1.1, fUML-1.3, fUML-1.4, SysML-1.6, SysML-1.7, UML-2.5.1 DecisionNode, DecisionNode::decisionInput, DecisionNode::decisionInputFlow, Activity, Behavior UML, SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, Alf, fUML, Foundational UML
GOTCHA, ISSUE, TOOL UML/SysML: Cameo Simulation Toolkit 19SP3: GOTCHA: Will not evaluate a guard using a token from a decisionInputFlow UNLESS a decisionInput Behaviour is explicitly defined (but Alf does) Alf-1.1, fUML-1.3, fUML-1.4, SysML-1.6, SysML-1.7, UML-2.5.1 DecisionNode, DecisionNode::decisionInput, DecisionNode::decisionInputFlow UML, SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, Alf, fUML, Foundational UML
DISPLAY, MODELLING, TIP, TOOL Webel electronics modelling recipe for SysML: Diagrams can be made less verbose by using stereotype icon shape display mode, by not showing names and types on obvious Ports, by hiding context-specific values, and by omitting {net} tagged values. SysML-1.6, SysML-1.7 electronics, Webel Best Practice, SysML, Systems Modeling Language, MagicDraw SysML, Cameo Systems Modeler, micro-controller, Arduino
DISPLAY, MODELLING, POLICY, TIP, TOOL MagicDraw/Cameo: Rule: Internal Block Diagram and Block structure compartment: only one symbol for a given Property may be shown. SysML-1.6, SysML-1.7, UML-2.5.1 Stereotype, custom Stereotype, user defined Stereotype, MD:Customization, MD:Customization::isHideMetatype, internal structure compartment SysML Internal Block Diagram Unified Modeling Language, SysML, Systems Modeling Language, MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler
DISPLAY, MODELLING, OPTION, TIP, TOOL MagicDraw/Cameo: Display option: You can choose whether to show Domain Specific Language (DSL) stereotypes: 'None', 'All', 'Only Last' SysML-1.6, SysML-1.7, UML-2.5.1 Stereotype, custom Stereotype, user defined Stereotype, MD:Customization, MD:Customization::isHideMetatype Unified Modeling Language, SysML, Systems Modeling Language, MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler
DISPLAY, MODELLING, NAMING Webel: SysML: Electronics modelling: TIP: Use a custom Connector stereotype '<>' with the keyword '<>' to carry a 'net' property. (Use of punctuation in Stereotype names is not usually recommended and the keyword is not usually displayed.) SysML-1.6, SysML-1.7 Connector, Stereotype, custom Stereotype, tagged value electronics, SysML, Systems Modeling Language, WBP:electronics:<>, Webel Best Practice, WBP:electronics:<>
TIP Webel Parsing Analysis: It is not intended that you "parse and analyse" every sentence from every domain source document and map every word to your SysML model. The process adds incremental benefit; the more you use the WPA recipe, the better! Webel Parsing Analysis
DISPLAY, LIMITATION Webel Parsing Analysis: MagicDraw/Cameo: SysML1.6+: ElementGroup-based Snippets do not list in the compartment of Package/Model symbols because ElementGroup is based on the UML Comment, which does not list in Package/Model symbols. SysML-1.6, SysML-1.7, UML-2.5.1 Comment, Model, Package, symbol ElementGroup Webel Parsing Analysis, WPA:«snippet», MagicDraw SysML, Cameo Systems Modeler, SysML, Systems Modeling Language
DISPLAY, MODELLING, OPTION Webel Parsing Analysis: An "index" Parsing Analysis Diagram (PAD) showing a collection of Snippets may optionally (but need not always) show the /member tagged value of each Snippet. SysML-1.6, SysML-1.7 Diagram Webel Parsing Analysis, parsing analysis, WPA:«pa», WPA:PAD, WPA:«snippet»
GOTCHA, ISSUE, WARNING UML/SysML: MagicDraw/Cameo: WARNING: If you assign a value to a Slot for an untyped Property then assign a ValueType later it will DELETE your assigned value! Assign a type first . SysML-1.6, SysML-1.7, UML-2.5.1 Slot, Slot::definingFeature, Property, TypedElement, TypedElement::type ValueType, value property MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler, UML, Unified Modeling Language, SysML, Systems Modeling Language
TIP UML2/SysML1.x: Property: derived vs derived union vs subsetted SysML-1.6, SysML-1.7, UML-2.5.1 Property::isDerived, Property::isDerivedUnion, Property::subsettedProperty UML, Unified Modeling Language, SysML, Systems Modeling Language, SysMLv1.x
TIP UML2/SysML1.x: If AggregationKind 'shared' has meaning to you (and if you use it consistently without contradicting the use of 'composite' aggregation elsewhere in your model) by all means use it. Damn the purists! But it's going to die in SysMLv2 anyway. AggregationKind::composite, AggregationKind::shared, AggregationKind part property, reference property Systems Modeling Language, SysML, Unified Modeling Language, UML, UML-2.5.1, SysMLv1.x
ISSUE, LIMITATION, WARNING The SysML1.6 derived /tracedTo is only available on AbstractRequirement (but in MagicDraw/Cameo you can use derived relationships to achieve the same thing on other kinds of NamedElement). SysML-1.6, SysML-1.7 Trace, «trace», Property::isDerived Trace, Trace::getTracedFrom(in ref), AbstractRequirement::/tracedTo SysML, Systems Modeling Language, MagicDraw SysML, MD SysML, Cameo Systems Modeler
CAPABILITY, TIP The SysML Trace relationship can be used as a quick way to traceably elicit model elements from an identified diagram or table from a domain source document. You may visually remove the Trace symbols as each element is elicited to reduce clutter. SysML-1.6, SysML-1.7 Trace, «trace» Trace, Trace::getTracedFrom(in ref) SysML, Systems Modeling Language, Webel Parsing Analysis
ISSUE, LIMITATION, WARNING The UML «Trace» and SysML Trace can't be applied to a Slot as target (because Slot is just an Element, not a NamedElement). SysML-1.6, SysML-1.7 Trace, «trace», Slot, DirectedRelationship::/source, DirectedRelationship::/target, Dependency::client, Dependency::supplier, Abstraction Trace, Trace::getTracedFrom(in ref) SysML, Systems Modeling Language
TIP How to prounce Guillemet, those French-looking sideways double chevron quote thingies UML and SysML use to indicate a stereotype «keyword» (amongst other things). Stereotype, «keyword» Systems Modeling Language, SysML, Unified Modeling Language, UML, Guillemet, language, English, American English, British English, pronunciation
OPTION Webel Parsing Analysis for SysML: Track and display alternative names, human friendly names, organisation-specific names, and identifiers using tagged values for a custom stereotype «pa:term» (adapt or extend as required). SysML-1.6, SysML-1.7, SysMLv2 Stereotype, custom Stereotype, «keyword», user defined Stereotype parsing analysis, Webel Parsing Analysis, WPA:«pa:term», synonym
OPTION Webel Parsing Analysis: Formally, if «pa:implied» has been applied to indicate an implied elicited Element, the 'snippet' tagged value should bet set using at least one Snippet that implies it. (Note, the Snippet should have identical 'name' and 'body'.) Stereotype, custom Stereotype, «keyword», user defined Stereotype parsing analysis, Webel Parsing Analysis, WPA:«pa:implied», WPA:«snippet»
MODELLING, POLICY Webel Parsing Analysis: SysML: Pseudo Semantic Triple: A «pa:triple» may be applied to a uni-directional Association between SysML Blocks and/or Actors. Association, Actor Block Webel Parsing Analysis, semantic triple, WPA:«pa:triple»
MODELLING, POLICY Webel Parsing Analysis: SysML: Pseudo Semantic Triple: A «pa:triple» may be applied to a Dependency between SysML Blocks and/or Actors or Properties typed by them. Dependency, Actor Block Webel Parsing Analysis, semantic triple, WPA:«pa:triple»
DISPLAY, MODELLING, NAMING, POLICY, TIP Webel Parsing Analysis: Pseudo Semantic Triple: When «pa:triple» is applied to a named uni-directional Association the name and a consistent direction arrow should be displayed on the Association symbol in diagrams. Association, NamedElement Webel Parsing Analysis, semantic triple, WPA:«pa:triple»
DISPLAY, MODELLING, NAMING, POLICY, TIP Webel Parsing Analysis: Pseudo Semantic Triple: For «pa:triple» applied to a named one-to-one Dependency, the source is the subject, the name of the Dependency is the predicate, the target is the object. Association, NamedElement Webel Parsing Analysis, semantic triple, WPA:«pa:triple»
DISPLAY, MODELLING, NAMING, POLICY, TIP Webel Parsing Analysis: Pseudo Semantic Triple: For «pa:triple» applied to a named one-to-one or one-to-many uni-directional Association, the non-navigable end Property is the subject, the name is the predicate, the navigable end Property is the object. Association, NamedElement Webel Parsing Analysis, semantic triple, WPA:«pa:triple»
CAPABILITY, FEATURE, NAVIGATION, TIP, TOOL Webel Parsing Analysis: If you have a unique URL for a domain source «document» you MAY additionally set it as an external hyperlink in the MagicDraw/Cameo tool (as well as setting it as the unique 'url' tagged value that acts as the '/uri'). Webel Parsing Analysis, parsing analysis, WPA:«document», MagicDraw SysML, MagicDraw UML, Cameo Systems Modeler
CONVENTION, MODELLING, TIP Webel Parsing Analysis: It does not matter whether you use a Package or a Model package. (The informal Webel convention is that Models are used for systems engineering analysis with SysML and Packages are reserved for code-related software engineering.) SysML-1.6, SysML-1.7, UML-2.5.1 Model, Package Webel Parsing Analysis, WPA:«pa», SysML, Systems Modeling Language
POLICY Webel Parsing Analysis: A 'source' Document must have one (only) of a URL or a URN (includes ISBN or other unique identifier) for use as a URI Webel Parsing Analysis, parsing analysis, WPA:«document»
ASSERTION Webel Parsing Analysis: A stereotype with keyword «pa:from» may be applied to a Dependency from a Package to another Package within the Source Input Zone to indicate that all of its Elements were directly or indirectly elicited from source Documents. SysML-1.6, SysML-1.7, UML-2.5.1 Package, Model, Dependency, Stereotype, custom Stereotype, «keyword» Webel Parsing Analysis, WPA:«pa», WPA:«pa:from», WPA:TargetModelZone, WPA:SourceInputZone
MODELLING, NAMING, POLICY Webel Parsing Analysis: The name of a Parsing Analysis Diagram (PAD) may be drawn from a focus Snippet OR may simply indicate a topic of interest to the analysis SysML-1.6, SysML-1.7 Diagram, NamedElement, NamedElement::name Webel Parsing Analysis, parsing analysis, WPA:«pa», WPA:«snippet», WPA:PAD
MODELLING, NAMING, POLICY Webel Parsing Analysis: Where too many dashed line "anchors" from Snippets to elicited members lead to clutter they may be selectively omitted from a Parsing Analysis Diagram (PAD) once each member has been collected. SysML-1.6, SysML-1.7 Comment, Comment::annotatedElement, MD:anchor Webel Parsing Analysis, parsing analysis, WPA:«pa», WPA:PAD, WPA:«snippet»
MODELLING, NAMING, POLICY Webel Parsing Analysis: While Associations may be collected as elicited members of a Snippet this can quickly lead to clutter in the /member list display. Often just collecting an end Property as member is sufficient. SysML-1.6, SysML-1.7 Generalization ElementGroup, ElementGroup::/member Webel Parsing Analysis, parsing analysis, WPA:«pa», WPA:«snippet»
MODELLING, NAMING, POLICY Webel Parsing Analysis: While Generalizations may be collected as elicited members of a Snippet this can quickly lead to clutter in the /member list display. SysML-1.6, SysML-1.7 Generalization ElementGroup, ElementGroup::/member Webel Parsing Analysis, parsing analysis, WPA:«pa», WPA:«snippet»
MODELLING, NAMING, POLICY Webel Parsing Analysis: An anonymous Element may be collected as a /member of a Snippet (it is not important whether collected elements list with a clear name under /member, only that they are traceably elicited). SysML-1.6, SysML-1.7 Diagram ElementGroup, ElementGroup::/member Webel Parsing Analysis, parsing analysis, WPA:«pa»
DISPLAY, MODELLING, POLICY Webel Parsing Analysis: A "focus" Parsing Analysis Diagram (PAD) for one or more Snippets SHOULD always show the /member tagged value of every Snippet. SysML-1.6, SysML-1.7 Diagram Webel Parsing Analysis, parsing analysis, WPA:«pa», WPA:PAD, WPA:«snippet»
MODELLING, NAMING, POLICY Webel Parsing Analysis: Acronym: PAD = Parsing Analysis Diagram (may be nearly any diagram type, except those types that must be owned by an elicited model element) SysML-1.6, SysML-1.7 Diagram Webel Parsing Analysis, parsing analysis, WPA:«pa», WPA:PAD
MODELLING, POLICY, TOOL Webel Parsing Analysis: As StateMachine Diagrams are always owned by an element that is not eventually under the Source Input Zone they should not be used as «pa» diagrams. Elicit States instead via the /member section of the specification dialog. SysML-1.6, SysML-1.7 StateMachine Diagram, State, Element::owner SysML State Machine Diagram Webel Parsing Analysis, parsing analysis, WPA:«pa», WPA:PAD, MagicDraw SysML, Cameo Systems Modeler
ASSERTION, MODELLING Using Model-Based Systems Engineering with ANY version of Systems Modeling Language (SysML) is better than just doing drawings in a graphics tool or presentation tool SysML-1.6, SysML-1.7, SysMLv2 Systems Modeling Language, SysML, SysMLv1.x, SysMLv2, Model-Based Systems Engineering