SysML 1.7 RTF Avatar
  1. OMG Issue

SYSML17 — The 'initialValues' compartment needs to be renamed 'contextValues' and they need to be referred to as 'context-specific values'

  • Key: SYSML17-347
  • Status: open  
  • Source: Webel IT Australia ( Dr. Darren Kelly)
  • Summary:

    I have never liked the term 'initial values' or the compartment name 'initialValues' for what were originally called 'context-specific values'.

    I propose instead they be called 'context-specific values' because that is what they in fact are (values within the context of a top-level configuration block), and a compartment 'contextValues'.

    In most cases the values as used have nothing to do with "initial". Even the spec example Figure D.41 has nothing to do with initial, it is about a test configuration.

    I helped supervise development and testing of this feature many years ago in the MagicDraw tool (along with Nerijus at No Magic). It was the first tool to implement the feature. Back then we referred to the feature as context-specific values (and it used to be called that in the tool menu).

    I have been using this feature a lot for some years with real world clients. Nearly all of them find the term 'initialValues' completely confusing, especially after just having been introduced to the 'defaultValue' concept.

    Case: Am using SysML for a construction group. They use initialValues to describe multiple "deep" configurations of buildings in different modes and customer configurations. They find the term initialValues completely confusing.

    Case: The mobile phone initialValues sample available for MagicDraw/Cameo is in fact a "deep" configuration example (and an excellent one) and has nothing to do with "initial values".

    I also have a course session dedicated to how to use this feature for "deep" configuration of systems. Attendees find the term 'initialValues' completely confusing, I tell them to call it 'contextValues' instead.

    And as for time? If you want to use the feature to show the value state of a system at different times: t0, t1, t2, t3 in different block contexts you can't; because the compartment name 'initialValues' makes it sound like every time slice is the initial time t0.

    It truly has to go. It does not work. The compartment name 'contextValues' works for all cases.

    I have even taken to "painting over" the term 'initialValues' in some diagrams.

    This SysML feature/capability itself is extremely important and useful; it's an absolutely critical extension over UML.

  • Reported: SysML 1.6 — Sun, 28 Jun 2020 00:41 GMT
  • Updated: Mon, 6 Jul 2020 17:11 GMT