Cameo Simulation Toolkit 18.4 Documentation
Web Server and HTML UI Mockups
Version 18.4 of Cameo Simulation Toolkit introduces the ability to monitor and control simulation processes remotely via a locally deployed server. This web server, in combination with a built-in web socket connection, allows for real-time communication with user-defined HTML 5 UI mockups. Your simulation can present user-defined UI mockups in an HTML page or other interfaces. In addition, the built-in web socket connection allows for two-way communication and value updates over those interfaces.
Figure 1: Three examples of different HTML 5 user interface mockups that can be deployed from Cameo Simulation Toolkit's new functionality.
Nested Property Selection for Configurations
In version 18.4 of Cameo Simulation Toolkit, configurations such as Time Series Charts, Timelines, Sequence Diagram Recorder, and CSV Export have been updated to support nested properties. Additionally, you can represent the classifier in your configuration, and allow your value property to take nested property values. Figure 2 illustrates the selection of the nested properties actualTemperature and boilingTemperature under the Steam Boiler root classifier.
Figure 2: The selection of multiple nested properties of the Kaffeeautomat sample model.
Deferred Events
Figure 3: A deferred clause used in an elevator state machine to defer the opening of its doors while in motion.
Version 18.4 of Cameo Simulation Toolkit introduces support for Deferred Events in State Machine diagrams. States can now specify whether an event should result in an action, or if it should be deferred. In Figure 3, the 'open' signal is deferred during the elevator's 'moving' state, so, as long as the elevator is in 'moving' state, the doors 'open' signal will never execute. This feature adds a new layer of complexity to your models by allowing unexpected events to occur while deferring expected events to a later time.
Recording Verification Status of Runtime Values
It's now possible to store the requirement verification status from a simulation runtime. You can now view the stored verification status in the Requirements table and Instance table. Status values can be either exported to an instance specification, or set as a default value. The verification of success or failure will now color-code their associated values in both Instance and Requirements tables as shown below in Figure 4.
Figure 4: Instance table showing that a stored verification status showing that the value (30.0) of the thruster does not satisfy Requirement 1 - "Estimated mass shall be less than allocated mass".
Automated Extraction of Constraints from Text-Based Requirements
Another addition to the Cameo Simulation Toolkit is the ability to automatically extract constraint equations from the text of a requirement. As seen in Figure 5 below, if a requirement text states that a car must have a mass less than or equal to 1500 kg, then the constraint equation “mass <= 1500” is automatically extracted from the requirement text, and evaluated upon execution of a simulation. This leverages MagicDraw's glossary mechanism to match commonly used phrases with mathematical constructs. Users can see this term glossary in the tool, as well as define their own condition phrases.
Figure 5: A requirement satisfied by a mass value property showing the underlined text from the Requirement Language Glossary.
Completion Events and Transitions
Cameo Simulation Toolkit has also added support for UML standard Completion Events and Transitions in state machines. A Completion Transition is triggered by the Completion Event which signifies that all behaviors associated with the source state of the Completion Transition have completed execution. Enabling this feature allows for more fine-tuned control over the creation and execution of state machines.
Figure 6: A state machine that utilizes the new support for Completion Events and Transitions. The above State Machine diagram has two states: 'off' and 'on' with a Completion Transition.
Execution of Incomplete/Dummy Models
In version 18.4 of Cameo Simulation Toolkit, you are now able to execute Incomplete or Dummy models. Whereas previously the execution would halt if any values were missing or properties were unspecified, now, the execution will continue, and a null value token will replace that pin. Different actions behave differently during execution. For example, Figure 7 below shows the execution of a Call Behavior Action in which all the Argument pins are either unspecified or absent. The updated feature will allow you to execute activity diagrams that are incomplete or are a component of dummy models. This is a powerful option for users to test their activities at all phases of design.
Figure 7: A Call Behavior Action with unspecified Arguments pins. A yellow warning box appears allowing the execution to continue.
CSV Export
Cameo Simulation Toolkit now features the ability to export simulation results to a CSV file. A new configuration named CSV Export has been added, which uses the following parameters:
Figure 8: The new executionListeners configuration property of the SimulationConfig and the CSV export to which it points.
- File Name – The name of the file in which to write the exported results. The path is the same as the project directory.
- Represents – Specifies the classifier represented by the configuration.
- Value - The values that will be recorded from the simulation, and written to CSV file. More than one value can be specified.
When a simulation runs, the selected values from the simulation results are written to the file name specified by the File Name parameter as illustrated in Figure 8.
More Improvements