fUML1.4: Cameo Simulation Toolkit: LIMITATION: CreateObjectAction is not allowed to instantiate a UML DataType or a SysMLValueType, only a Class as the CreateObjectAction::classifier! WORKAROUND: Use a ValueSpecificationAction instead with an instance.
fUML1.4: 7.11.2.5: CreateObjectAction [1] fuml_create_object_action_is_class: The given classifier must be a class. self.classifier.oclIsKindOf(Class) Source Semantics of a Foundational Subset for Executable UML Models 1.4
For some kinds of Classifiers, optionally in the right hand corner an icon denoting the kind of Classifier can be displayed. Source Unified Modeling Language 2.5.1
If a role is typed by a classifier other than Class, the name compartment of the part box symbol contains the appropriate keyword (e.g., «component») above the name. Source Unified Modeling Language 2.5.1
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'
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
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
Computed category membership test values are sometimes adequate and can prevent Class/Block explosion. However, a dedicated Class/Block encapsulating a clear domain concept offers a clear documentation point and can carry other characterising features.
Behavior StateMachines can be used to specify any of the following Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:03: UML Behavior: StateMachines quick start Slide kind UML Class Diagram
MagicDraw: Has an additional tool-specific notation and feature sometimes called "ball-and-socket dependency wiring" for use with provided and required Interfaces in Class Diagrams and some other definition-level diagrams.
Required/Provided Interface notation: Ball-and-Socket "dependency wiring" [tool specific] Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:02: UML 101 for model-based systems engineering with SysML Slide kind UML Class Diagram
BehavioredClassifier and provided and required Interfaces Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:02: UML 101 for model-based systems engineering with SysML Slide kind UML Class Diagram
Internal Structure Compartment vs Composite Structure Diagram Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:02: UML 101 for model-based systems engineering with SysML Slide kind hybrid diagram UML Class Diagram UML Composite Structure Diagram
InstanceSpecifications with links and Slots Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:02: UML 101 for model-based systems engineering with SysML Slide kind UML Class Diagram
Association and Property - some cases Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:02: UML 101 for model-based systems engineering with SysML Slide kind UML Class Diagram
Inherited Feature indicator Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:02: UML 101 for model-based systems engineering with SysML Slide kind UML Class Diagram
Generalization and VisibilityKind example Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:02: UML 101 for model-based systems engineering with SysML Slide kind UML Class Diagram
The operations compartment of a Class contains notation for its ownedOperations ... Source Unified Modeling Language 2.5.1
Class compartments Gallery Tutorial TRAIL: Webel's ultimate guide to Systems Modeling Language (v1) with MagicDraw/Cameo Section 01:02: UML 101 for model-based systems engineering with SysML Slide kind UML Class Diagram
MagicDraw/Cameo: The ordering of feature in a SysML IBD :features compartment may differ from that in its defining Block (and there are no corresponding display options for controlling sorting).
MagicDraw/Cameo: BUG: Sometimes the 'Show Inherited' display feature does not work immediately on Class and Block compartments or SysML IBD :features compartments unless you toggle a compartment (close then re-open it).
MagicDraw/Cameo: If you want to show a Property or Port listed both in its corresponding compartment on a Class or Block symbol and as the end of an Association in the same diagram, set the display option Show Association Ends As Attributes/Ports to 'all'
MagicDraw/Cameo: You can set a Property as redefined/subsetted by another in a Class Diagram or BDD by dragging its label from an Association end onto the label of another Property on an Association end then choosing 'Set As Redefined/Subsetted Property'
MagicDraw/Cameo: Has a symbol display option 'Show Inherited' applicable to (amongst others) Features of Class and Block symbols, Property symbols, and underlying Featured of Property symbols in SysML IBDs when using SysML Feature Compartments
If using "French style" post-adjective naming in English use a trailing underscore after the noun and before the adjective or qualifier: Vin_rouge, Cable_digital. Can be combined with TLA acronyms: Player_DVD.
If an abstract Block or Class in a domain model has Associations to Blocks or Classes that are not also abstract, it's often a hint that you have not identified a correct abstraction layer.
Classifier::isAbstract : Boolean [1..1] If true, the Classifier can only be instantiated by instantiating one of its specializations. An abstract Classifier is intended to be used by other Classifiers e.g., as the target of Associations or Generalizations Source Unified Modeling Language 2.5.1
SysML Blocks also extend the capabilities of UML classes and connectors with reusable forms of constraints, multi-level nesting of connector ends, participant properties for composite association classes, and connector properties. Source OMG Systems Modeling Language (SysML) 1.6
SysML blocks always include an ability to define internal connectors, regardless of whether this capability is needed for a particular block. Source OMG Systems Modeling Language (SysML) 1.6
SysML blocks are based on UML classes as extended by UML composite structures. Some capabilities available for UML classes, such as more specialized forms of associations, have been excluded from SysML blocks to simplify the language. Source OMG Systems Modeling Language (SysML) 1.6
A subject of a UseCase could be a system or any other element that may have behavior, such as a Component or Class. Source Unified Modeling Language 2.5.1
A Class has four mandatory compartments: attributes, operations, receptions ... and internal structure ... A Class may also have optional compartments as described for Classifiers in general Source Unified Modeling Language 2.5.1
A Class is shown using the Classifier symbol. As Class is the most widely used Classifier, no keyword is needed to indicate that the metaclass is Class. Source Unified Modeling Language 2.5.1
A requirement is defined as a stereotype of UML Class subject to a set of constraints. Source OMG Systems Modeling Language (SysML) 1.6
Figure 16-1: Abstract Syntax for Requirements Stereotypes Gallery Tutorial TRAIL: The SysML-1.6 Hybrid SUV sample and specification diagrams in MagicDraw/Cameo (with annotations) [UNDERGOING UPDATE to SysML1.7] Section Section: SysML-1.6 specification diagrams: 16 Requirements Slide kind UML Profile Diagram
DO NOT use Property names that are identical to the names of the Classifier (Class, DataType, Block, ValueType) that type them!
Figure 9-9: Internal structure of Water Delivery association block Gallery Tutorial TRAIL: The SysML-1.6 Hybrid SUV sample and specification diagrams in MagicDraw/Cameo (with annotations) [UNDERGOING UPDATE to SysML1.7] Section Section: SysML-1.6 specification diagrams: 09 Ports and Flows Slide kind SysML Internal Block Diagram (IBD)
Figure 9-8: Water Delivery association block Gallery Tutorial TRAIL: The SysML-1.6 Hybrid SUV sample and specification diagrams in MagicDraw/Cameo (with annotations) [UNDERGOING UPDATE to SysML1.7] Section Section: SysML-1.6 specification diagrams: 09 Ports and Flows Slide kind SysML Block Definition Diagram (BDD)
Figure 8-2: Abstract syntax extensions for SysML blocks Gallery Tutorial TRAIL: The SysML-1.6 Hybrid SUV sample and specification diagrams in MagicDraw/Cameo (with annotations) [UNDERGOING UPDATE to SysML1.7] Section Section: SysML-1.6 specification diagrams: 08 Blocks Slide kind UML Profile Diagram
A Stakeholder stereotype can only be applied to UML::Actor or UML::Class which are not a UML::Association. Source OMG Systems Modeling Language (SysML) 1.6
A stakeholder represents a role, group, or individual who has concerns that will be addressed by the View of the model. Source OMG Systems Modeling Language (SysML) 1.6
It is expected that an «allocate» relationship between model elements is a precursor to a more concrete relationship between the elements, their properties, operations, attributes, or sub-classes. Source OMG Systems Modeling Language (SysML) 1.6
DO NOT use spaces in Property names or Class/Block names! If you want to communicate familiar names of elements within an organisation use a custom stereotype and tagged values (such as 'aka')!
Subrequirements shall be accessed through the "nestedClassifier" property of a class. Source OMG Systems Modeling Language (SysML) 1.6
The default interpretation of a compound requirement, unless stated differently by the compound requirement itself, is that all its subrequirements shall be satisfied for the compound requirement to be satisfied. Source OMG Systems Modeling Language (SysML) 1.6
Compound requirements can be created by using the nesting capability of the class definition mechanism. Source OMG Systems Modeling Language (SysML) 1.6
A requirement is a stereotype of both Class and Abstract Requirement. Source OMG Systems Modeling Language (SysML) 1.6
Note how the relationships in this diagram are also reflected in the Automotive Domain Model Block Definition Diagram, Figure D.15. Source OMG Systems Modeling Language (SysML) 1.6
The associations among the classes may represent abstract conceptual relationships among the entities, which would be refined in subsequent diagrams. Source OMG Systems Modeling Language (SysML) 1.6
When using acronyms in names of Classifiers either treat them as a word 'TlaLikeThis' or suffix with an underscore 'TLA_LikeThis', except at the end of the name 'LikeThisTLA' is admissable.
Use 'UpperCamelCase' (a.k.a. PascalCase) names for Classifiers such as UML Classes and SysML Blocks) to avoid confusion with 'lowerCase' Property names [see however special naming conventions for acronyms and SysML contract and flow Blocks]
Overview: Controller class (and its Activity), Dialer Class (and its StateMachine), Number class Gallery Tutorial HOWTO simulate UML-2.5.1 'Figure 14.7 Composite State with two States' in Cameo Simulation Toolkit - Operation-driven Transition case study Section Slide kind UML Class Diagram
Class diagram for comparing action language access to an operation for a guard Gallery Tutorial HOWTO invoke an operation as a Transition guard in Cameo Simulation Toolkit Section Slide kind UML Class Diagram
Cameo Simulation Toolkit DOES NOT leverage a Reception on a Class/Block at all! Use an AcceptEventAction with a SignalEvent trigger or an 'effect' on a Transition instead. There is a formal fUML restriction that a Reception should not have a method.