Released on: November 21, 2019
The 19.0 SP3 release is packed with a number of new capabilities and improvements. Now you can export SysML models and diagrams to Simulink, Stateflow, S-functions, Simscape, and Modelica. Simulink and FMU models can be imported or updated using a new import dialog with optional ports and property selection. Other noteworthy features include contextualized relationships in diagrams and matrices, flows, ports and instances management enhancements, structural text copy/paste as nested structures in IBD and more.
Also the release adds significant improvements to existing features: 1) the Product Line Engineering plugin and Suspect Links are expanded by implementing new capabilities; 2) we have introduced a brand new ISO 26262 Functional Safety Plugin; 3) users can now create Custom Hierarchy in Tables; and finally, 4) the latest MagicDraw version comes with bug fixes and many new enhancements to other features.
Collaborative modeling capabilities are extended with the main focus on work efficiency and agile modeling. The Lock-Free model editing mode and the Disconnected Team Collaboration UI are presented in this release. Additionally, other improvements have been made to enhance usability in Merge, Change Sets, Hidden Packages, and other collaboration-oriented features.
Download Cameo System Modeler today at nomagic.com, or contact your sales representative. And please don't forget to give us your feedback on LinkedIn, Twitter or Facebook. Also, please check the documentation and additional resources.
SysML model transformation to Simulink and Modelica
19.0 sp3 version allows users to export standard SysML models into Simulink (incl. Stateflow, Simscape) and Modelica models based on a standard mapping provided by new OMG SysPhS specification (SysML Extension for Physical Interaction and Signal Flow Simulation).
This one-way transformation supports both black-box or full implementation which includes parametrics, statemachines, internal structures with ports, interfaces and connectors.
Examples of Simulink export
- Exporting the SysML IBD to Simulink Block diagram.
- Exporting the SysML State Machine diagram to Stateflow
Example of Modelica export
The SysML plugin has undergone some major improvements. Simulink model files can now be imported and represented as SysML Blackbox Blocks. Once the file is imported, you can select input and output ports to be represented as Flow ports on the Block. Additionally, the imported Simulink model can be simulated using the Cameo Simulation Toolkit.
Importing external Simulink model
- Enhance your modeling experience – contextualize Allocate, Refine, Satisfy, Trace, and Verify relationships to consider the context the connected properties are used in. Beginning with this release, users can more easily create and keep contextual relationships up to date in diagrams and matrices.
Creating contextual relationships to define the context they are used in
You can now drag and drop the property directly on the Requirement shape in the symbol diagram to create the contextual Satisfy relationship automatically.
Creating the contextual Satisfy relationship by dragging-and-dropping it directly on the Requirement
- You can now drag and drop Requirements from the Model browser to the Internal Block diagram and then satisfy them in the IBD context.
Displaying and satisfying Requirements in the Internal Block diagram
- For your convenience, Requirements are now also shown within the elements that satisfy them in the Structure tree.
Flow Management Improvements
In the SysML Internal Block Diagram, the automatic delegation functionality:
creates a connector from the port to the nearest border.
creates connectors with relevant ports between the ports of the nested parts (delegate).
- realizes the existing flows on the newly created connectors.
The naming of the nested parts created by Create Instance wizard or in the Instance Table is improved.
- The new Clone with parts action in the Instance Table toolbar and selected row's shortcut menu copies not only the selected Instance but its nested parts as well.
- Pins for the Opaque Actions can now be created automatically. Learn more >>
Modeling and Infrastructure
Model-Based Product Line Engineering
Product Line Engineering has been significantly extended by implementing the Model-Based Product Line Engineering (MBPLE) capability. In addition to integration with PLE tools (Big Lever Software Gears and Pure Variants), it is now possible to perform PLE in modeling tools without using third-party tools.
ISO 26262 Functional Safety Plugin
We are proud to introduce the brand new ISO 26262 Functional Safety Plugin. This plugin tightly integrates functional safety with MBSE (requires SysML plugin or Cameo Systems Modeler) and supports the ISO 26262 standard (the adaptation of IEC 61508) designed to comply with needs specific to the application sector of Electric & Electronic (E/E) systems within road vehicles. The ISO 26262 Functional Safety Plugin provides end-users with the means to perform hazard analysis and risk assessment:
Define Malfunctioning Behaviors for each Function
Specify an Operational Condition Library
Define Operational Situations as a combination of Conditions
Combine Malfunctioning Behaviors with Operational Situations to define Accident Scenarios
Specify a Hazard Library
Define System Level and Vehicle Level Effects
Combine Hazards, Effects, and Accident Scenarios into Hazardous Events
The plugin also provides a way to define functional safety concepts (safety requirements and perform ASIL decomposition) as well as generate safety reports.
A HARA Table allows you to define Hazardous Events as a combination of Hazards, Effects, and an Accident Scenario. The description area shows all the information about the selected Hazardous Event.
Custom Hierarchy in Tables
Modelers now have more freedom to decide how to organize elements in tables. Simply choose one of the tree-view options to display elements hierarchically and see the changes in the table structure reflect the criterion you have specified:
• Containment: displays the decomposition of elements related by Containment.
• Structure: displays the decomposition of Part properties related by Composition.
• Custom: displays the decomposition of elements related by any specified criteria.
Building a custom hierarchy in a table
Stay up to date with the changes in your model by enabling the Suspect Links tracking. You can now track the changes applied to requirements linked to other model elements, as well as keep track of the changes that affect the selected model elements at the chosen end (source or target) of the specified dependencies.
Configuring Suspect Links tracking in the model
- Now you can create nested structures quickly by pasting structural lists on Composite Structure and Internal Block diagrams.
- To quickly create Activity Actions you can simply paste a copied list from any source of information. The Actions will be created and connected.
- ReqIF import/export has been improved as well. From now on, all existing images are attached to the model upon ReqIF import and added to the ReqIF file upon export.
ID prefixes no longer come with the applied HTML styles. Instead, all IDs are imported/exported as plain text.
It is now possible to specify the element properties to be shown on the shape by default in a few clicks.
You can now wrap long text into multiple lines to display all of it in a table cell.
The modeling tool now allows entering an unlimited number of entries into the table cell to enable displaying multiple values/plain text lines in a table cell.
- To save time, you can now create multiple relationships in matrices simultaneously.
- The redesigned Documentation property group in the Specification window allows you to have all comments annotating model elements in one place as well as create and manage them easily when needed.
Lock-Free Model Editing
Locking elements prior to modifying them is now a thing of the past with the introduction of the Lock-free model editing mode (a.k.a an optimistic locking). You can continue using locks if that is what suits your team’s needs best; however, the Lock-Free editing mode is a simple yet effective way to boost modeling productivity.
To start using the Lock-free editing mode, first enable it in the project, after which you can work on model elements freely, without locking them. Consequently, there is no need to wait until locks are released by other users to work on the same or related parts of the model. If conflicting changes occur, you can handle them in the Conflicting Changes panel to prevent data loss.
Handling conflicting changes in the Lock-free Editing mode
Disconnected Team Collaboration Usability
The Disconnected team collaboration UI has been rebuilt from the ground up. The improved feature usability allows distributed teams working on the same server project to update it with the changes from the locally exported .mdzip file more conveniently and with a significantly reduced amount of manual steps.
Not only can you now update projects without having the target ones open in the modeling tool, you can also manage used project changes more easily. Additionally, the newly-implemented smart branch selection algorithm ensures configuration-aware update of server projects and smoother project merging in the future.
Updating a server project from a local .mdzip file
Further Merge Usability Improvements
Along with improved Merge usability and bug fixes, the 19.0 SP3 release adds adjustments to common ancestor calculation algorithm rules. As a consequence, subsequent project merging iterations can be carried out more effectively without the need to repeat previously made merge decisions.
- For your convenience, we have moved an environment option Support Mount Points of Usages in Teamwork Cloud from Save/Load to the Collaboration node.
When working with change sets, you can now discard both suspended and all local changes in an active change set.
- The Maintain Mount Points of Used Projects option can now be accessed even more conveniently. It has been added to the Update from Local Project and Add Project to the Server dialogs.
- Indirectly used projects can now be hidden or unhidden automatically together with directly used projects when their status changes, such as upon the used project update, remove, or merge.
Report Wizard enhancements
- The Report Wizard allows selecting first and last hyperlinks in HTML text from cells in XLSX reports to apply them to the cells through a new Report Wizard Environment Option. Learn more how to use template.xlsx.html.link report property >>
- You can use curly brackets with the #else directive followed by text to include. Learn more about this style of code >>
- It is now possible to export images for TXT and HTML templates with or without returning relative paths or absolute paths. Learn more how to handle paths of exported images >>
- The -leaveprojectopen parameter helps reduce memory when loading or closing any large-size project for property files by leaving the project open per property file after generating reports. Learn more how to deploy this command for multiple report generation >>
The new template.docx.ignorechildstyle report property for the DOCX template is now available for ignoring template styles to be included into generated reports and applying matching styles in the main template instead. Learn more about this report property >>
Key issues fixed
The following key issues have been fixed with this version:
- An empty PDF was printed even though the diagram was fully filled
- The GanttChart diagram became empty after model obfuscation
- The SVG export did not export IDs for elements in a diagram preview
- The comments panel did not appear when the HTTP Protocol was used
- When it was impossible to create the symbol for DurationConstraint using API
- Project loading from TWC
- The Lost Message could not be created using Open API
- The MBPLE variant overwrite protection did not work on TWC
- Some expressions were not recalculated after reloading the project
Documentation in the Properties tab could be updated only after the project reload
- There was a delay when the element was renamed in the diagram
- The error message (java.lang.IllegalStateException: No UUID map object after save) no longer appears after cloning the project
Version news of servers and plugins
Plugins updated due to compatibility purposes