Cameo Requirements Modeler Plugin UserGuide
Cameo Requirements Modeler Plugin UserGuide
Cameo Requirements Modeler Plugin is dedicated for business analysts and architects, software
engineers, enterprise architects, systems engineers, and other users, who work in model-based
requirements engineering. The plugin supports the requirements part of the OMG SysML standard and
provides means to import, export and manage requirements in the model.
The plugin supports Requirements Interchange Format (ReqIF), the industry standard enabling users to
interchange requirements among different requirements management tools. The standard is managed
by the Object Management Group and supported by major tool vendors.
• Import and export requirements to ReqIF files to use them with other requirements
management tools, such as
• IBM DOORS 9.4, 9.5, and 9.6
• IBM DOORS Next Generation
• PTC Integrity
• Polarion REQUIREMENTS
• Siemens Teamcenter
• Dassault Systemes Reqtify.
• Trace from requirements to other model elements of business, software, or systems architecture
and align requirements with your model.
• Analyze the impact of changes.
• Track metrics.
• Capture requirements in dedicated diagrams, matrices, and tables.
• Document requirements.
• Extend the plugin by creating new requirement types and customizing the plugin's functionality.
The Cameo Requirements Modeler Plugin documentation consists of the following sections:
1 https://docs.nomagic.com/display/CRMP184/Cameo+Requirements+Modeler+Plugin+Documentation
2 https://docs.nomagic.com/display/CRMP183/Cameo+Requirements+Modeler+Plugin+Documentation
In this section, you will learn about the system requirements, basic concepts, and installation and
licensing procedures.
Related pages
System requirements
Modeling Tools*
Resource Recommended
RAM 16GB
3 https://docs.nomagic.com/display/CRMP182/Cameo+Requirements+Modeler+Plugin+Documentation
4 https://docs.nomagic.com/display/NMDOC/Installation+and+licensing
1
the project elements count is different due to the profiling data storing metamodel
optimized in 2021x (decrease by 40-80% in SysML and UAF projects).
2
these memory requirements are indicative and may vary by project specifics.
The operations that require more memory (1, 2, and 3.5 million of 2021x project elements
respectively):
Disk space The recommended disk space for installation and configuration files is 3GB or more
depending on used plugins, project type (local or server), and project size. In addition to
this, large server projects require extra disk space for configuration files:
Note: Element History and Content History features usage requires significantly more disk
space due to intensive caching at the client-side.
Depending on the feature usage scenario (e.g., retrieving content history from old/distant
project versions multiple times), the disk space might increase by up to 100GB.
* Magic Software Architect, Magic Cyber Systems Engineer, Magic Systems of Systems Architect,
MagicDraw, Cameo Systems Modeler, Cameo Enterprise Architecture
Earlier versions
Windows XP and earlier versions are not supported.
Mac OS 10.6 Snow Leopard and earlier versions are not supported.
Basic concepts
Concept Description
The maximum license borrowing period is 2 months. If you would like to limit the
maximum borrowing period, please contact your sales representative.
The files where your defined settings and environment options are stored.
Configuration When upgrading your software, you can choose one of the following:
files
• If you want to import the environment options from an earlier modeling
tool or server version, select the location and click Import.
• If you are installing the software for the first time and/or do not want to
use earlier environment options, click Use Default.
5 https://docs.nomagic.com/display/NMDOC/Java+version+support
6 https://docs.nomagic.com/display/NMDOC/Downloading+installation+files
The floating license allows you to install and use the same license on multiple
machines. The FlexNet license server is used to manage floating licenses.
Floating license
A combination of 12 numbers and letters (also known as the MAC Address or Physical
Address), which identifies the network card of a machine. It is used to tie the license
Host ID/Target ID to a particular machine.
Seat (Nodelock). The license of a modeling tool dedicated to one working place.
License type Floating (Shareable). Allows you to install and use the same license of a modeling
tool on multiple machines.
Please note, the license type of a modeling tool and a plugin used by this
tool must be the same.
Plugin installation
Choose one of the following ways to install a plugin in a modeling tool:
• Install a plugin bundle (.rdzip) that comes with a modeling tool directly via the Resource/Plugin
Manager dialog.
• Install an individually purchased archived plugin file (.zip) via the Resource/Plugin
Manager dialog.
• Install a plugin manually
• Obtain and install a plugin from a web server
To install an individual plugin from an archive file (.zip) via the Resource/Plugin Manager dialog
1. Extract an archived plugin file (.zip) file to the same directory where your modeling tool is
installed.
2. Start the modeling tool. The plugin is applied to your modeling tool.
You can also obtain the needed resources from a web server if you do not have the .rdzip file but have
been provided with an URL by your license manager.
To specify the server where the resources and their descriptor file are located
4. Click OK.
The resources from the selected location are listed in the Resource/Plugin Manager.
Getting help
If you run into any installation related problems, try the following:
checking the FAQ section8 for known problems
checking the No Magic Community forum9
contacting customer support10
Plugin licensing
The product license is identified by the license key. There are two types of license keys:
• seat (Nodelock)
• floating (Shareable)
Additionally, special licenses for the academic community are available: https://www.nomagic.com/
services/academic-research.
7 https://docs.nomagic.com/display/MD2021x/Resource+Manager
8 http://www.nomagic.com/support/faq.html
9 https://community.nomagic.com/
10 https://docs.nomagic.com/display/NMDOC/Support
Licensing workflow
Seat license
15
Uninstalling plugins
• In the <modeling tool> installation > UninstallerData folder, double-click the Uninstall <modeling
tool> file.
Uninstall on OS X
• Right-click the <modeling tool> installation folder and from the shortcut menu, select Move to
Trash.
Uninstall on Unix
• In the <modeling tool> installation > UninstallerData folder, double-click the Uninstall <modeling
tool> file.
11 https://docs.nomagic.com/display/NMDOC/Determine+the+Host+ID
12 https://docs.nomagic.com/display/NMDOC/Adding+the+license+key
13 https://docs.nomagic.com/display/NMDOC/
Determine+the+Host+ID+or+Target+ID+of+the+machine+on+which+the+FlexNet+license+server+is+installed
14 https://docs.nomagic.com/display/NMDOC/Obtaining+a+floating+license+for+a+modeling+tool
15 https://docs.nomagic.com/display/NMDOC/Modeling+tools+and+plugins+licensing
• Right-click the <modeling tool> installation folder, and then, from the shortcut menu, select Move
to Trash.
Unix
Uninstalling plugins
1. Start the modeling tool.
2. In the Help menu, select Resource/Plugin Manager.
3. In the Resource/Plugin Manager dialog, click to select the plugin.
4. Click the Remove button.
5. When you receive the message asking if you want to remove the plugin, click OK.
6. Restart the modeling tool.
16
Updating plugins
To update your modeling tool and plugin, first, uninstall the earlier version, then install a later version
you have obtained from the 3DS software download page.
17
Related pages
21
16 https://docs.nomagic.com/display/NMDOC/Uninstalling+modeling+tools+and+plugins
17 https://docs.nomagic.com/display/NMDOC/Updating+modeling+tools+and+plugins
18 https://docs.nomagic.com/display/NMDOC/Uninstalling+modeling+tools+and+plugins
19 https://docs.nomagic.com/display/NMDOC/Downloading+installation+files
20 https://docs.nomagic.com/display/NMDOC/Installing+modeling+tools+and+plugins
21 https://docs.nomagic.com/display/NMDOC/Updating+modeling+tools+and+plugins
• Relating requirements.
(see page 80)This section explains how to create specific relationships between Requirements
(including Derive, Refine, Satisfy, or Verify) directly on the Requirement Diagram pane or in the
Requirement Matrices.
22 https://docs.nomagic.com/display/MD2021xR2/UML+Profiling+and+DSL+Guide
Getting started
The Cameo Requirement Modeler Plugin implements the requirements part of the OMG SysML
standard that is widely used in the system engineering. All concepts and modeling approaches that are
used in requirement modeling with the plugin are from the requirement part of the SysML standard
which can be found at http://www.omgsysml.org23. The SysML requirement part provides clear
essential means for the model-based requirements management independently from the system
engineering domain, so it could be easily adopted for all other domains as software, business, and
enterprise.
The article Requirements Writing in SysML Guide24 presents one of a possible requirements modeling
process which is adopted by No Magic, Inc. company internally for the development of all the products.
To start working with the Cameo Requirement Modeler Plugin it must be installed in the
MagicDraw tool. How to install plugin to a modeling tool >>25
If you use the Cameo Systems Modeler26 or Cameo Enterprise Architecture27 you can start
using requirement features at once.
How to start:
23 http://www.omgsysml.org/
24 https://blog.nomagic.com/requirements-writing-in-sysml-guide/
25 https://docs.nomagic.com/display/SYSMLP2021xR2/Installing+SysML+Plugin
26 https://docs.nomagic.com/display/CSM185/Cameo+Systems+Modeler+Documentation
27 https://docs.nomagic.com/display/NMDOC/Cameo+Enterprise+Architecture
• Main menu28
• Main toolbars29
• Model Browser30
• Diagram toolbars31
• Diagram palette32
Watch this demo to get familiar with MagicDraw working environment, main concepts, and
functions.
28 https://docs.nomagic.com/display/MD2021xR2/Main+menu
29 https://docs.nomagic.com/display/MD2021xR2/Toolbars
30 https://docs.nomagic.com/display/MD2021xR2/Model+Browser
31 https://docs.nomagic.com/display/MD2021xR2/Toolbars
32 https://docs.nomagic.com/display/MD2021xR2/Customizing+diagram+palette
https://www.youtube.com/watch?v=0B76lH-QtrM&
Related pages
Main menu
The main menu located at the top of the modeling tool window contains the following elements:
Menu Description
element
File Contains basic project management related commands, e.g., New Project33, Open Project34,
and Save Project35. Among other actions, this menu also allows you to import data from external
sources, export a project, or print diagrams36.
Edit Use this menu when working with diagrams on the Diagram pane. The Edit menu contains the
commands for selecting, cutting, copying and pasting37 symbols or entire diagrams, and finding
elements in the current project.
View Contains commands allowing you to zoom in or zoom out38 of a diagram, use and customize a
diagram grid39, manage diagram tabs (if you have several open diagrams) and customize the
toolbars40 of your modeling tool.
Layout Use this menu for managing the layout41 of the symbols on an active diagram. To enable certain
Layout menu commands, you must select more than one symbol.
Diagrams Allows you to create a new diagram42, access diagram wizards and history, and create a custom
diagram type43.
33 https://docs.nomagic.com/display/MD2021xR2/Creating+a+new+project
34 https://docs.nomagic.com/display/MD2021xR2/Opening+projects
35 https://docs.nomagic.com/display/MD2021xR2/Saving+projects
36 https://docs.nomagic.com/display/MD2021xR2/Printing
37 https://docs.nomagic.com/display/MD2021xR2/Copying+and+pasting+objects
38 https://docs.nomagic.com/display/MD2021xR2/Zooming
39 https://docs.nomagic.com/display/MD2021xR2/Using+the+grid
40 https://docs.nomagic.com/display/MD2021xR2/Toolbars
41 https://docs.nomagic.com/display/MD2021xR2/Layout
42 https://docs.nomagic.com/display/MD2021xR2/Creating+diagrams
43 https://docs.nomagic.com/display/MD2021xR2/Customizing+diagrams
Options Use this menu to specify project options44 and environment options45, select or customize
perspectives46, and choose the style for your modeling tool.
Tools Contains the set of commands allowing you to execute model transformations47 for converting
models between different modeling domains, generate reports48, evaluate expressions49 on the
actual testing model, generate code for the selected model data, create and organize macros50,
access the DataHub plugin51 and more.
Analyze Use this menu to access the wizards of different types of diagrams52, create implementation
matrices, analyze and show model dependencies, compare two project versions53, validate a
project54, display paths55 or related elements56, and perform other model analysis related
actions.
Window Allows you to manage the layout of different windows in your modeling tool.
Help Among other actions, this menu allows opening online documentation, managing resources, and
accessing modeling tool-related information.
Customizable menus
You can choose which of these menus are shown/hidden by customizing modeling tool
perspectives58.
Related pages
44 https://docs.nomagic.com/display/MD2021xR2/Setting+project+options
45 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
46 https://docs.nomagic.com/display/MD2021xR2/Customizing+Perspectives
47 https://docs.nomagic.com/display/MD2021xR2/Model+Transformation+Wizard
48 https://docs.nomagic.com/display/MD2021xR2/Generating+Reports+from+Report+Wizard
49 https://docs.nomagic.com/display/MD2021xR2/Expression+Evaluation
50 https://docs.nomagic.com/display/MD2021xR2/Macro+Engine+Documentation
51 https://docs.nomagic.com/display/CDH185
52 https://docs.nomagic.com/display/MD2021xR2/Model+Visualizer
53 https://docs.nomagic.com/display/MD2021xR2/Comparing+projects
54 https://docs.nomagic.com/display/MD2021xR2/Validation
55 https://docs.nomagic.com/display/MD2021xR2/Displaying+paths
56 https://docs.nomagic.com/display/MD2021xR2/Displaying+related+elements
57 https://docs.nomagic.com/display/MD2021xR2/Collaborative+modeling
58 https://docs.nomagic.com/display/MD2021xR2/Customizing+Perspectives
Toolbars
Toolbars help to speed up your work when performing commonly used tasks. Your modeling tool has
two types of toolbars:
• Main toolbars - contain commands for basic project related tasks and are located at the top of
the modeling tool window, right under the main menu.
• Diagram toolbars - contain commands for working with diagram symbols and are located at the
top of the diagram pane.
• In the main menu, click View, select either Main Toolbars or Diagram Toolbars, and in the
showed menu select/clear the check boxes of the toolbars that you want to show/hide.
• Right-click the desired toolbar area and in the shortcut menu select/clear the check boxes of the
toolbars that you want to show/hide.
Customizing toolbars
You can customize existing toolbars by adding or removing buttons, and also create new custom
toolbars.
After completing the above steps, a new toolbar is created in the selected toolbar group, and you can
choose to show/hide it in the shortcut menu of the respective toolbar area. Note that the newly created
toolbar does not have any buttons, so you need to add them after creating it.
A new button is added to the selected toolbar. To add more than one button, repeat steps 2 and 3 as
many times as you need.
After completing the above steps, the selected toolbar or button is removed from the respective
toolbar area or toolbar. Toolbars that have been removed do not appear in the menu for selecting
which toolbars you want to show.
Related pages
Model Browser
Model Browser provides a visual representation of the hierarchy of your model elements.
• Compressed – a plus sign next to an icon indicates that the icon is compressed. This is the
default setting. It means that the element contains other model elements. Click the plus sign to
expand the icon and view its subordinate items.
• Expanded – a minus sign next to an icon indicates that the icon is fully expanded. Click the
minus sign to collapse the item.
If there is no plus or minus sign next to an icon, it does not contain other model elements.
The Model Browser is a hierarchical navigation tool that allows you to manage your model data,
including packages, components, classes, all UML diagrams, extension mechanisms, and other data.
The Model Browser may be used as an alternative tool to the MagicDraw menus and toolbars. It is
easier to work with project diagrams and data elements using the Model Browser.
The Search Results tab is not displayed by default. It appears after you perform searching.
• Lock View tab represents locked elements of the server project.
The Lock View tab is not displayed by default. It can appear if you are working on a server
project. For more information, see Representation of locked elements59.
Related pages
59 https://docs.nomagic.com/display/MD2021xR2/Locking+model+for+edit
• Using the Window menu, choose the Model Browser tab you want to close or open.
• From the Window menu, choose the Reset Windows Configuration command.
1. From the Options menu, select Environment. The Environment Options dialog opens.
2. Click the Browser option group.
3. In the Browser options pane, set the Sort Alphabetically value to true (the default value is true).
Containment tab
The Containment tab displays model data grouped in logical sets. Using the Containment tab, you can
quickly access each model element, change a model element specification, or create a new model
element.
You can change some Containment tab properties in the Environment Options dialog60
the Browser options group.
60 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
Along with model elements that are created by the user, the root package Model may contain the
following default items:
• The Relations branch. This branch appears when at least one relationship is created in the
project. The Relations branch collects all relationships from the particular owner. For example, if
the Relations branch is in the root package Model, that means, all relationships from the root
package Model are listed in the Relations branch owned by the root package Model. The Relations
branch can exist in other elements which may have inner elements and relations among these
elements. For example, in packages, classes, and others.
• The UML Standard Profile package. This is a profile that is included in every MagicDraw project.
It contains a list of stereotypes, data types, and other elements from the UML 2 metamodel. By
default, the UML Standard Profile is hidden. To display the UML Standard Profile, click the Options
button, and in the shortcut menu, choose Show Auxiliary Resources.
We highly recommend not to modify our provided standard profiles and libraries as it
could cause problems with version updates, plugins, core MagicDraw tool malfunctions,
and model corruptions.
• The File View package. This package appears when at least one code engineering set is created.
The File View package contains components that are created on code reverse and represents
source files.
• The Hyperlinks branch. This branch appears when at least one hyperlink is added to the
particular element. The Hyperlinks branch contains the list of hyperlinks to the file, element/
symbol, or web page.
Code engineering sets can be considered a gateway between your source code and model data. Using
these sets, you can perform Java, C++, IDL, CORBA IDL, and EJB 2.0 round-trip code engineering, that is,
code generation and reverse engineering.
• In the Containment tab toolbar, click the Options button, then click to select the Show
Code Engineering Sets check box.
In the Code engineering Set branch, you can create a new code engineering set, generate code, and
perform other actions.
Collapse Selected Recursively Collapses only selected node and all subnodes in that
node.
Open in New Tree Opens the contents of the selected element in a new
tab of the Model Browser. The selected element
becomes the root node of the new tree.
The same actions you may perform using the shortcut menu of the Containment tree.
You can work with elements in the Containment tree using the commands available from the selected
element's shortcut menu.
Command Function
61 https://docs.nomagic.com/display/MD2021xR2/Working+with+model+elements
62 https://docs.nomagic.com/display/MD2021xR2/Creating+diagrams
Specification64 Opens the element Specification window wherein you can specify
various element properties.
Go To66 Opens or selects the item associated with the selected element. The
item may be a diagram, model element, or hyperlink.
Related Elements68 Opens a list of functions available for the selected element.
Tools Opens a list with tools that are available for the selected element.
Depends on the selected element.
Stereotype69 Opens the drop-down list, wherein you can apply an existing
stereotype, or create a new one.
63 https://docs.nomagic.com/display/MD2021xR2/Creating+a+relationship
64 https://docs.nomagic.com/display/MD2021xR2/Specification+window
65 https://docs.nomagic.com/display/MD2021xR2/Validation
66 https://docs.nomagic.com/display/MD2021xR2/Manage+Navigation
67 https://docs.nomagic.com/display/MD2021xR2/Changing+diagram+type
68 https://docs.nomagic.com/display/MD2021xR2/Analyzing+usages+and+dependencies
69 https://docs.nomagic.com/display/MD2021xR2/Stereotype
70 https://docs.nomagic.com/display/MD2021xR2/Find+dialog
Generate Code Generates code for the selected item. Opens the Notification
Framework Window with the information.
Check Syntax Checks syntax in the model according to the default code
engineering language. Opens the Notification Window with the
information.
Reverse from Classpath This command is available in the Class shortcut menu.
Related pages
Structure tab
The Structure browser allows you to browse for deep nested structures of the structure classifier in
your model. For example see the image below, the node: diameter : mm represents the property:
diameter : mm of the classifier: Wheel and also the property: w : Wheel is the property of the
classifier: WheelAssembly.
71 https://docs.nomagic.com/display/MD2021xR2/Managing+used+projects
72 https://docs.nomagic.com/display/MD2021xR2/Generating+reports+from+the+Containment+tree
To display inherited structures from the generalization classifier in the Structure tree
Related pages
Inheritance tab
The Inheritance tab represents classifiers (e.g., packages, data types, and stereotypes) hierarchy within
your project. Inheritance according to the UML Specification is shown using the generalization
relationship.
You can change some Inheritance tab properties in the Environment Options dialog73 the
Browser options group.
Collapse Selected Recursively Collapses only selected node and all subnodes in that
node.
73 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
You can work with elements in the Inheritance tree using the commands available from the selected
element's shortcut menu. The shortcut menu contains the following commands:
Select in Containment Tree Opens the Containment tab and selects the
current element in the Containment tree.
Select in Structure Tree Opens the Structure tab and the structured classifier is selected.
On this page
Related pages
In the Diagrams tab, diagrams are by default grouped by their types (see the image above).
You can change some Diagrams tab properties in the Environment Options dialog74 the
Browser options group.
Collapse All Collapse all of the current elements in the Containment tree.
74 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
Group by Diagram Groups diagrams into packages by the first symbol of their name when the
Name model contains more than 99 diagrams.
Some of these actions may be performed right in the shortcut menu of the Diagrams tree.
Command Function
Select in Containment Opens the Containment tab and selects the current element in the Containment
Tree tree.
Group by Diagram Name Groups diagrams into packages by the first symbol of their name when the model
contains more than 99 diagrams.
On this page
Related pages
• At the top of the Model Browser, click the Model Extensions tab.
• If the Model Extensions tab is hidden, from the Window menu, select Model Extensions
Collapse Selected Recursively Collapses only selected node and all subnodes
in that node.
The same actions you may perform using the shortcut menu of the Model Extensions tree.
75 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
Related pages
76 https://docs.nomagic.com/display/MD2021xR2/Working+with+model+elements+in+the+Model+Browser
77 https://docs.nomagic.com/display/MD2021xR2/Find+dialog
78 https://docs.nomagic.com/display/MD2021xR2/Quick+Find+dialog
Collapse Selected Recursively Collapses only selected node and all subnodes in that
node.
Save Search Results Saves as a smart package either the search options or
the search results.
• Found in loaded diagrams – symbols that have been found in the diagram(s) are displayed in
this package.
• Found in model – elements that have been found in the model data are displayed in this
package.
On this page
Related pages
The Lock View tab is displayed only when working with server projects80.
The Lock View tab is used to display what was locked in the project (locked elements, project structure,
symbol styles) and by which users. Next to the locked element, you can see the name of the user who
79 https://docs.nomagic.com/display/MD2021xR2/Working+with+model+elements+in+the+Model+Browser
80 https://docs.nomagic.com/display/MD2021xR2/Collaborative+modeling
• At the top of the Model Browser, click the Lock View tab.
• If the Containment tab is hidden, from the Window menu, select Lock View.
The Locked Elements tab consists of the following two components:
Command Function
On this page
Zoom tab
The Zoom tab enables you to preview a selected diagram. To select a diagram, go to the Containment
or Diagram tab. You can also use the Zoom tab to zoom in or out of the active diagram.
• In the Zoom tab, drag the blue square to the desired part of the diagram.
The selected diagram part will be displayed on the diagram pane.
• In the Zoom tab, on the blue square , click the Fit in Window button or press CTRL+W.
1. From the Options menu, select Environment. The Environment Options window opens (see
the figure above).
2. Select the Browser options group.
3. In the Browser category, select the Show Diagram Zoom Slider check box.
The Diagram Zoom Slider is displayed in the Zoom tab (see the figure above).
Related pages
Documentation tab
The Documentation tab shows information associated with a selected model element in the Model
Browser or on a diagram pane.
If there is no documentation for the selected element, the text area is empty.
• In the Documentation tab, click the text area and type the text.
Related pages
Multiple selection
• If multiple elements or symbols of different kinds are selected, only their common
properties are displayed in the Properties tab.
• If more than 10 elements in the Containment tree or symbols on the diagram pane are
selected, properties are displayed only by request. You need to click the link Show
common properties for the selected items.
When you click the Show Only Applied Stereotypes Tags button,
only the tabs with values are listed.
Language properties Contains the same data as the Language Properties property
group in the element's Specification window.
This tab is available only for the elements used for code
generation, that is, class, attribute, operation.
Traceability Contains the same data as the Traceability property group in the
element's Specification window.
Related pages
Command Function
To copy/cut and paste the selected model element between different projects
• Compress a folder (.zip) with a set of desired images and place it in the MagicDraw installation
directory: \data\imagelibraries\commonsymbols.
Image formats
You can add images of the following formats: .gif, .jpg, .jpeg, .svg, .png, .wmf.
Using the Image Library tab, you can apply an image on symbol82.
81 https://docs.nomagic.com/display/MD2021xR2/Writing+plugins
82 https://docs.nomagic.com/display/MD2021xR2/Applying+image
For example, type "*Bank" if you want to find "Bank" somewhere in the hierarchy.
Related pages
1. In the main menu of a modeling tool, select Options > Look and Feel.
2. Select the desired style from the list of available styles.
Important
• The selected style may not look exactly like the style in related operating systems.
• Depending on your operating system, some style options may be unavailable.
1. In the main menu of a modeling tool, select Options > Look and Feel > Metal.
2. In the same menu, select Options > Look and Feel > Look and Feel Themes > Custom.
3. In the open dialog, change the values of the desired style properties.
4. Click OK.
On this page
Related pages
You can create requirements using the the Requirements Project template. It contains predefined
packages, elements, and diagrams to start creating your own requirements in the model.
The Requirements Project template is only available in MagicDraw with Cameo Requirement
Modeler Plugin installed.
Related pages
Opening projects
83 https://docs.nomagic.com/display/MD2021xR2/Working+with+projects
• From the File menu, select Open Project. In the Open dialog, select the project and click Open.
• On the main toolbar, click the Open Project button.
• Drag the project from the open window of your file system to modeling tool. The project starts
immediately.
• Double-click the project file with the *.mdxml or *.mdzip extension. A new modeling tool window
opens.
To start modeling tool with the last project you worked on, select Options > Environment and
set Open Last Project on Startup to true.
XMI 2.4 / UML 2.4 is the main file format, used by MagicDraw for storing models. This format does not
specify how to store diagrams, so MagicDraw stores and opens diagram data in XMI extension sections.
Thus if you use MagicDraw to open an XMI file exported from another UML tool, only the model will be
opened, but not diagrams or views.
Accordingly, if you open a MagicDraw file in another UML tool, diagrams or views will not be opened in
that tool (unless the tool supports MagicDraw-specific file extensions).
You may open more than one project within the same MagicDraw window. A separate workspace will
be created for each opened project.
If you convert only the project and leave the used projects saved in an old format, you will not be able
Related pages
• From File menu, select Switch Projects and then click the name of the project you want to
switch to.
• On the main toolbar, click and then select the name of the project you want to switch to.
84 https://docs.nomagic.com/display/MD2021xR2/Working+with+projects
Yes The project you are currently closing will be saved (its name appears in the question). The dialog is
displayed again when the next project closes.
Yes To Save all projects without prompting. The Save dialog will not appear for each open project.
All
No To All All the projects will be closed without saving or further prompting.
• Use the Cut, Copy, and Paste commands from the Edit menu or the selected element's
shortcut menu, or the appropriate shortcut keys: Ctrl + X, Ctrl + C, Ctrl + V.
Creating requirements
On this page
You can create and represent text-based requirements and relate them to other modeling elements.
The requirements can be depicted in graphical, tabular, or tree structure format. This page provides
instructions for creating requirements in the model. You can create requirements in the:
1. Open an existing or create a new Requirement Diagram. How to create a new diagram >85
2. In the Containment tree(see page 25), right-click the package, or another Requirement where you
want to create or nest a new Requirement.
3. From the shortcut menu, click Create Element.
4. In the Create Element dialog, select any type of Requirement.
If you have created your own custom Requirement types, they appear under the Custom
Requirements group.
1. Open an existing or create a new Requirement Diagram. How to create a new diagram >86
2. On the diagram pallet(see page 17), select a Requirement or other type of requirement button and
click on the diagram pane.
The element is created in the same package where the diagram is stored.
3. On the Requirement shape, type a name, ID, and description.
The Requirement is created and added in the table.
1. Open an existing or create a new Requirement Table. How to create a table >88
2. On the Requirement table toolbar, click the Add New button or press Insert (Ctrl+I for Mac
users). The list of Requirement types opens.
3. Click a desired requirement type. A new line above the first numbered requirement appears.
4. In that empty line, type a requirement name and specify other requirement properties.
1. Open an existing or create a new Requirement Table. How to create a table >89
2. Do one of the following:
• On the Requirement table toolbar, click the Add Existing button or press Ctrl + Insert
(Ctrl+I for Mac users). In the Select Requirement dialog, select the requirements you
want to represent in the table and click OK.
• Drag the entire requirements Package from the Containment tree(see page 17) and drop it
on the empty Requirement table to represent all its content in the table.
87 https://docs.nomagic.com/display/MD2021xR2/Diagramming
88 https://docs.nomagic.com/display/MD2021xR2/Creating+diagrams
89 https://docs.nomagic.com/display/MD2021xR2/Creating+diagrams
If you have created your own custom Requirement types, they appear under the Custom
Requirements group in the drop-down menu.
More information about how to work in tables you can find in the following pages:
• Table toolbars90
• Table Criteria area91
• Basic tasks in tables92
Related pages
• Creating diagrams93
• Opening diagrams94
• Dragging objects95
• Relating requirements(see page 80)
• Table toolbars96
• Table Criteria area97
• Basic tasks in tables98
Importing requirements
It is recommended that you import requirements into a separate project which can be used in
other models as a used project. How to manage used projects >>99
90 https://docs.nomagic.com/display/MD2021xR2/Table+toolbars
91 https://docs.nomagic.com/display/MD2021xR2/Table+Criteria+area
92 https://docs.nomagic.com/display/MD2021xR2/Basic+tasks+in+tables
93 https://docs.nomagic.com/display/MD2021xR2/Creating+diagrams
94 https://docs.nomagic.com/display/MD2021xR2/Opening+diagrams
95 https://docs.nomagic.com/display/MD2021xR2/Dragging+objects
96 https://docs.nomagic.com/display/MD2021xR2/Table+toolbars
97 https://docs.nomagic.com/display/MD2021xR2/Table+Criteria+area
98 https://docs.nomagic.com/display/MD2021xR2/Basic+tasks+in+tables
99 https://docs.nomagic.com/display/MD2021xR2/Managing+used+projects
Related pages
On this page
100 https://docs.nomagic.com/display/MD2021xR2/Sync+with+Excel+or+CSV+files
101 https://docs.nomagic.com/display/MD2021xR2/Importing+data+from+Excel+or+CSV+files
102 https://docs.nomagic.com/display/MD2021xR2/Basic+tasks+in+tables#Basictasksintables-
Copyingandpastingdata
103 https://docs.nomagic.com/display/MD2021xR2/Creating+elements+from+other+resources
If Requirements in the ReqIF file have ID prefixes, they are set automatically after import only
for imported Requirements. Manage ID prefixes when numbering Requirements(see page 93).
https://www.youtube.com/watch?v=w12dprJkT_0
When the ReqIF file is imported, a notification message appears, stating the quantity of imported or
updated elements. If you import a ReqIF file without specification, the message doesn't contain the line
that indicates new or updated specifications. You also see no option Show imported specification
table(s).
If you imported a ReqIF file with the specification, you can view the list of imported elements. To do
that, click the Show imported specification table(s) link in the opened notification message. The list is
displayed in a generic table format.
To change import options, click the You can change import and mapping options here link in the
opened notification message.
The notification message is displayed for a fixed duration, but you can find all project
notification messages in the Notification Window. To open the Notification Window, click
Window > Notification Window, or press Ctrl + M.
If there are images or files attached to the ReqIF file, they are marked with the «AttachedFile»
stereotype and placed in a separate package as model elements after the import.
All images in the BMP file format are automatically converted to the PNG format.
If there are any deleted elements in the source file, they are automatically marked with the
«deprecated» stereotype once imported onto the modeling tool.
• Specify an element type to create for the objects you are importing
• Specify a relationship type to create for the relationships you are importing
• Specify a path to the resource location
• Choose whether to import all properties into the model or not and form a list of ignored and not
imported properties
Updating requirements
It is common to modify requirements after importing them. Importing requirements in a ReqIF format
allows updating the requirements present in the model without any data loss – all changes are
identified.
During update, no elements are removed, only new elements are added and statuses of all elements
are updated. Elements not present in an updated ReqIF file are marked as obsolete.
In the model, obsolete elements are marked with an exclamation mark in a yellow triangle. A
«deprecated» stereotype is applied to such requirement elements automatically.
Related pages
• Applying automated post-processing scripts after ReqIF file import(see page 71)
• Importing ReqIF files from the command-line interface(see page 72)
In order to see the scripts and execute them, you must be using ReqIF Profile. To set the
profile, go to File > Use Project, then scroll to select ReqIF Profile.mdzip and click Finish.
Fill Empty Requirement Name When applied to a requirement with an unspecified Name
property, the rule picks the data from Element ID and uses
it as the element name.
If there is a space in a path, surround the argument and its value with escaped
quote (\").
• owner is the hyperlink or qualified name of the owner element. If newly imported
elements are not contained by the Specification element, they are placed under the
specified owner. Note that the owner argument is optional.
How to get the hyperlink of an element?
4. Press Enter.
Now after opening the project you have imported the ReqIF file into, the imported data is already
present in the Containment tree of the project.
To import a ReqIF file from the command-line interface using a properties file
1. Create a properties file and specify the values of the following arguments:
• project_descriptor
• reqif_file
• owner
1 project_descriptor=file:/C:/Users/johnsmith/Downloads/MagicDraw_185/
samples/requirements/MagicLibrary%20requirements.mdzip
2 #
3 # Specify the project URL.
4 # To get a project descriptor, open a project and in the main menu
go to File > Project Properties > General.
5 #
6 reqif_file=C:/Users/johnsmith/Documents/project_requirements.reqif
7 #
8 # Specify the path to the ReqIF file.
9 # NOTE: If there is a space in a path, surround the argument and its
value with escaped quote (\").
10 #
11 owner=mdel://eee_1045467100313_135436_1
12 #
13 # Specify the hyperlink or qualified name of the owner element.
14 # To get the hyperlink of an element, open a project, right-click
the element in the Containment tree and select "Copy Element
Hyperlink".
15 # NOTE: This argument is optional.
16 #
When creating a properties file on Windows OS, use only / or \\ as a path separator,
otherwise the command will fail.
5. Press Enter.
The Cameo DataHub is a dedicated solution for the requirements synchronization between different
sources, such as MagicDraw, Rational DOORS®, CSV files, and other. Cameo DataHub is a data bridge
that allows for data importing and exporting, automatic synchronization and creation of references
between requirements and other artifacts. It allows to use different import and synchronization
methods while importing or exporting requirements.
The Cameo DataHub must be installed before taking the following actions. How to install
Cameo DataHub >104
For more information about working with Cameo DataHub, see Cameo DataHub
documentation105 and Cameo DataHub Tutorial106.
https://www.youtube.com/watch?v=w12dprJkT_0
104 https://docs.nomagic.com/display/CDH2021xR2/Installation
105 https://docs.nomagic.com/display/CDH2021xR2/User+Guide
106 https://docs.nomagic.com/display/CDH2021xR2/Tutorial
Exporting requirements
It is recommended to export requirements into a separate project which can be later used in other
models as a used project.
If you choose to export Specifications, make sure you have at least one package
with the «Specification» stereotype applied. To apply the stereotype, your project
has to use the ReqIF Profile. When you try to export specifications from the project
that doesn't have the ReqIF Profile used in it, you get the message asking if you
want to use the profile. In this case, click Yes, apply the «Specification» stereotype
to the required packages and repeat the export procedure.
107 https://docs.nomagic.com/display/CDH2021xR2/Installation
108 https://docs.nomagic.com/display/CDH2021xR2/User+Guide
109 https://docs.nomagic.com/display/CDH2021xR2/Tutorial
specification packages you want to export and click or (if you want to add
elements recursively). Then they appear in the Selected elements list on the right side of the
dialog.
5. When you're done selecting, click OK.
6. In the Select ReqIF file dialog, select the output location for the exported ReqIF file, then select
the file you want to export or type the file name to create a new one.
7. In the ReqIF Flavor pane on the right of the Select ReqIF file dialog, select the flavor of your
exported ReqIF file.
If you cannot find the needed ReqIF Flavor on the list, please choose MagicDraw.
8. Click Export.
Images attached to the model are exported to the ReqIF file automatically as well.
When the ReqIF file is exported, a notification message appears, stating the quantity of exported
specifications, elements and relationships. If you choose to export elements only, the message doesn't
contain lines that indicate exported specifications and relationships.
Click the Note: you can change import/export and mapping options here link in the notification
message, if you want to change these options.
• Specify an element type to create for the objects you are exporting
• Specify a relationship type to create for the relationships you are exporting
• Specify a path to the output location for exported resources (images, documents, etc.)
• Choose whether to export all properties or not and form a list of ignored and not exported
properties
• Applying automated pre-processing scripts before ReqIF file export(see page 77)
• Exporting ReqIF files from the command-line interface(see page 78)
Restore Empty Requirement Name When applied to a requirement with a specified Name
property, the rule removes the element name upon export.
If there is a space in a path, surround the argument and its value with escaped
quote (\").
• export_type is the type of exported data. The valid value of this argument:
If you want to export Specifications, make sure you specify packages with the
«Specification» stereotype applied. To apply the stereotype, your project has to
use the ReqIF Profile. if you try to export packages that don't have the
«Specification» stereotype, the command will fail.
• source_tool_id is the flavor of the ReqIF file. Currently supported flavors are MagicDraw,
IBM Rational DOORS, Polarion, Teamcenter and Reqtify. Note that the source_tool_id
argument is optional.
4. Press Enter.
The ReqIF file with the desired data is now exported to the specified directory.
To export a ReqIF file from the command-line interface using a properties file
1. Create a properties file and specify the values of the following arguments:
• project_descriptor
• reqif_file
• export_type
• elements
• source_tool_id
1 project_descriptor=file:/C:/Users/johnsmith/Downloads/MagicDraw_185/
samples/requirements/MagicLibrary%20requirements.mdzip
2 #
When creating a properties file on Windows OS, use only / or \\ as a path separator,
otherwise the command will fail.
5. Press Enter.
The ReqIF file with the desired data is now exported to the specified directory.
Relating requirements
You can create relationships directly on the Requirement Diagram pane or in the Requirement Matrices
such as Derive, Refine, Satisfy, or Verify.
1. Open an existing or create a new Requirement Diagram. How to create a new diagram >110
2. Represent requirements on the Requirement diagram.
3. Select a relation type either from the diagram pane or the smart manipulator of the selected
requirement shape on the diagram pane.
4. Draw the selected relation from one requirement element to other.
1. Create a corresponding matrix or open an existing one. How to create a matrix >111
2. In the intersection cell do one of the following:
• Double click the intersection cell. The appropriate relation is created.
• Right-click the intersection cell and, on the shortcut menu, and click the relation name.
The relation is created.
You can create more than one relation in the same cell.
Related pages
110 https://docs.nomagic.com/display/MD2021xR2/Creating+diagrams
111 https://docs.nomagic.com/display/SYSMLP2021xR2/Creating+matrices
112 https://docs.nomagic.com/display/CRMP2021xR2/Derive+Requirement+Matrix
113 https://docs.nomagic.com/display/CRMP2021xR2/Refine+Requirement+Matrix
If you want to import nested structure of requirements, you must define the Owner property
before the import, with the name or id of the requirement that owns it in the Excel file.
When importing a nested structure of requirements from an Excel file you need to map the
Owner column (defined in the excel file) with the Owner property. Learn more how to import
data from Excel/CSV file >>116
To nest Requirement
To unnest Requirement
114 https://docs.nomagic.com/display/CRMP2021xR2/Satisfy+Requirement+Matrix
115 https://docs.nomagic.com/display/CRMP2021xR2/Verify+Requirement+Matrix
116 https://docs.nomagic.com/display/MD2021xR2/Importing+data+from+Excel+or+CSV+files
Double click the owner symbol to open a diagram for sub-requirements and use navigation
buttons on the diagram toolbar to move back or forward through diagrams.
On this page
The requirement always contains two properties: id and text. This section describes how to modify the
text property of the requirement.
To open the edit mode of the requirement text, do one of the following
• On the diagram pane(see page 17), select the Text box on the Requirement shape. Click the text box
again. The edit mode opens on the shape.
• In the Requirements table, double-click the Text cell. The edit mode opens on the cell.
• In the Requirements table, double-click the Text cell, and select . The Text dialog opens.
To switch the requirement text to HTML or Plain text directly on the Requirement shape
1. On the diagram pane, select the text box on the Requirement shape.
2. Click one of the following buttons appearing on the lower left corner of the shape:
• HTML - converts the text to HTML text.
To switch the requirement text to HTML or Plain text in the Text dialog
117 https://docs.nomagic.com/display/MD2021xR2/Specification+window
118 https://docs.nomagic.com/display/MD2021xR2/Specification+window
• Clear the HTML check box to convert the text to plain text.
3. Click OK.
• On the diagram pane(see page 17), select the Text box on the Requirement shape. Click the text box
again.
• In the Requirements table, double-click the Requirement Text cell, and select .
• Open Specification window119 of the Requirement, select the Text property, and click .
If the Requirement text is in HTML format, the rich text formatting toolbar appears as shown in
the following image.
119 https://docs.nomagic.com/display/MD2021xR2/Specification+window
If you want to extract a Constraint from a Requirement, you must use the special condition terms when
defining the Requirement text.
The full procedure for extracting a Constraint from a Requirement is provided in the section
Extracting Constraint from Requirement(see page 142).
The Extracting Constraint from Requirement functionality provides the ability to verify Requirements
easier when trying to prove the assertion is true (or false). A glossary mechanism extracts the constraint
directly from the Requirement text. If you want to create constraints and associate them with the
requirements automatically, you can use the extract Constraint from Requirement text functionality.
120 https://docs.nomagic.com/display/MD2021xR2/Advanced+HTML+Editor+dialog
121 https://docs.nomagic.com/display/MD2021xR2/HTML+editor
122 https://docs.nomagic.com/display/MD2021xR2/Glossary+table
123 https://docs.nomagic.com/display/MD185/Constraint
124 https://docs.nomagic.com/display/SYSMLP185/Requirement
In the example below, the text "at least 70" of the Quick charge mode distance Requirement is
automatically parsed to "distanceOnQuickCharge >= 70" and solved as a constraint.
Defining hyperlinks
You can add a hyperlink on the requirement text. How to add hyperlinks in text read in the Hyperlinks
in text125 page.
125 https://docs.nomagic.com/display/MD2021xR2/Hyperlinks+in+texts
• When the image is already an AttachedFile, please refer to Working with attached files126.
• From File – to browse the image in your file system or paste the attached image
file URL into the Picture source field.
• From Attached File – to open the Select Elements dialog and select the
appropriate parent element to which the AttachedFile image should be attached.
• From Image Library – to use images from a bundled image collection or your own
added sets of images.
1. Open the image file location, select the file(s) you want to insert, then do one of the following:
• copy/paste them to the HTML Editor. In the Paste Special menu, select Image to paste
image and attach it to the project or Image (without attaching) to paste it only for
referencing in the diagram.
• drag them to the HTML Editor. In the Select Image Owner, select the appropriate
parent element to which the AttachedFile image should be attached. If you click Cancel,
the image will be displayed in the diagram, but not attached to the project.
If you chose to not attach the image, it is displayed in the HTML Editor, but when you
delete the file from your file system, it is no longer displayed. That also means other
users you want to share the project with won't be able to see the image if they open
the project from another device. This option is very useful when the file you want to
insert is large and you don't want to increase the project size.
This feature works on both the HTML Editor and Advanced HTML Editor.
126 https://docs.nomagic.com/display/MD2021xR2/Working+with+attached+files#Workingwithattachedfiles-
InsertingintoHTMLtext
127 https://docs.nomagic.com/display/MD2021xR2/Advanced+HTML+Editor+dialog
• copy/paste the image to the HTML Editor. In the Paste Special menu, select Image to
paste image and attach it to the project or HTML Text to paste it only for referencing in
the diagram.
• drag the image to the HTML Editor.
This feature works only with Google Chrome and Mozilla Firefox.
1. Do either:
• copy/paste content to the HTML Editor. In the Paste Special menu, select HTML Text
to choose whether paste it only for referencing in the diagram or attach it to the
project, or select Image to paste and attach it to the project, or select Plain Text to
paste only text without an image.
• drag the image to the HTML Editor. In the Select Image Owner, select the appropriate
parent element to which the AttachedFile image should be attached. If you click Cancel,
the image will be displayed in the diagram, but not attached to the project.
If the image from the rich text document is not stored in your file system, you are not
asked to choose whether to attach the file or not.
1. Open the image files location, select the files you want to insert, then do either:
• copy/paste them to the HTML Editor. In the Paste Special menu, select Image to paste
images and attach them to the project or Image (without attaching) to paste them only
for referencing in the diagram.
• drag them to the HTML Editor. In the Select Image Owner, select the appropriate parent
element to which the AttachedFile images should be attached.
This feature works on both HTML Editor and Advanced HTML Editor.
Customizing procedure details are described in Creating Customization Data134 and Using
Customization Data135 in the UML Profiling and DSL Guide136.
2. In that package, create a new stereotype. How to create a new stereotype >>137
3. Apply a metaclass Class to the created stereotype.
How to apply metaclass for a stereotype
128 https://docs.nomagic.com/display/MD2021xR2/Advanced+HTML+Editor+dialog
129 https://docs.nomagic.com/display/MD2021xR2/HTML+editor
130 https://docs.nomagic.com/display/MD2021xR2/Text+Box
131 https://docs.nomagic.com/display/MD2021xR2/Basic+tasks+in+tables
132 https://docs.nomagic.com/display/MD2021xR2/Defining+hyperlinks
133 https://docs.nomagic.com/display/MD2021xR2/UML+Profiling+and+DSL+Guide
134 https://docs.nomagic.com/display/MD2021xR2/Creating+Customization+Data
135 https://docs.nomagic.com/display/MD2021xR2/Using+Customization+Data
136 https://docs.nomagic.com/display/MD2021xR2/UML+Profiling+and+DSL+Guide
137 https://docs.nomagic.com/display/MD190/Stereotype#Stereotype-Creatingastereotype
4. For the stereotype with the applied metaclass Class, create custom properties.
How to create custom properties for a stereotype
5. Extend the ExtendedRequirement class using properties created in the stereotype (i.e., you must
relate the stereotype with the Generalization relationship to the ExtendedRequirement class).
How to extend ExtendedRequirement class by custom properties
6. On the main toolbar138, click Save Project button and restart your project.
Your custom properties are added to the general requirement properties. You can assign values
to them in the Requirement’s Specification window139 or in the Properties panel.
The following figure depicts how the stereotype related to the ExtendedRequirement [Class] looks
in the Containment tree(see page 25) and diagram pane(see page 17).
138 https://docs.nomagic.com/display/MD2021xR2/Understanding+the+user+interface
139 https://docs.nomagic.com/display/MD2021xR2/Specification+window
Converting requirements
To convert elements
1. From the selected element's shortcut menu, select Refactor > Convert To. The list with available
conversion target types opens.
2. Do one of the following:
• Select the element type from the commonly used element type list. The element is
converted.
• Select More Elements to see the whole list of available conversion targets. In the opened
More Elements dialog, select the element type you need and click OK. The element is
converted and selected element type is included as commonly used element type.
Replacing requirements
To replace one element with another
1. Select a symbol on the diagram pane or an element in the Model Browser and open its shortcut
menu.
2. Click Refactor > Replace With. The warning message appears:
• Click Yes to continue the element replacement. The properties and inner elements of the
original element will be lost.
• Click No to cancel the element replacement. The selected element will not be replaced.
3. If you decided to continue the replacement, the element selection dialog opens.
4. In the element selection dialog, select the element with which you want to replace the original
element.
5. Click OK. The original element is replaced with the target element.
Requirements numbering
Requirements numbering.
The special validation rules ensure that each Requirement ID in your project is unique. For example, it
is valuable when working with Teamwork Server or Teamwork Cloud and Requirements appear with
the same IDs after commits. The validation rules check that and show errors.
If you want a different Requirement numbering than the default, you can customize 140it manually by
using the Element Numbering dialog141. However, it is not recommended.
140 https://docs.nomagic.com/display/MD2021xR2/Generic+numbering+mechanism
141 https://docs.nomagic.com/display/MD185/Element+Numbering+dialog
• Usages and Dependencies. Discovers the Requirements usage and dependencies on other
model parts: traceability, change impact analysis.
• Dependency Matrix. Checks the Gap analysis, Change Impact analysis, Requirements
completeness and correctness.
• Model validation. Checks Requirements completeness and correctness based on build in or
custom validation suites.
• Traceability. Tracks, visualizes, navigates, and analyzes the elements involved in traceability
relations.
• Relation Map. Visualizes the relations of multilevel requirements: traceability, coverage analysis.
• Generic and Requirements Tables. Makes the coverage analysis in a compact format.
• Report Wizard. Analysis (e.g. coverage) and estimation (e.g. functional points method) based on
built in or custom documentation generation templates.
The following sections describe the procedures for analyzing requirements:
Coverage analysis
The Coverage analysis provides coverage information at immediate higher or lower levels by analyzing
traceability properties values. Coverage analysis visualizes and verifies that requirements are covered
with design, implementation, test cases, or other subjects.
Test cases not only plan how to verify each requirement, but also identify a relation between the
requirement and test case and show the coverage to ensure that each requirement will be
appropriately tested.
You can create, analyze, and modify requirement relations in the matrix, which provides a compact
visual view for analysis. Using a dependency matrix, you can also edit relations between a selected
requirement and model element (i.e., add or remove a desired relation).
• The visualization of more than one element relations from different diagrams.
• The capability to create domain-specific matrices and their templates.
• Ready-to-use matrix templates: traceability of elements and behavior diagrams, traceability of
requirements, traceability of requirements and elements refining, satisfying, verifying them, and
others.
• Faster creation of traceability links between elements (for example, between requirements and
the architecture or requirements and test cases). This improvement saves a huge amount of time
in comparison to linking elements in diagrams.
To create a dependency matrix
1. From a requirements specification package shortcut menu in the Containment tree, select
Create Diagram and then select one of the following:
• Derive Requirement Matrix to create a Dependency Matrix to analyze, create, and
modify derivation relations between a derived requirement and a source requirement.
• Refine Requirement Matrix to create a Dependency Matrix to analyze, create, and
modify refined relations between a requirement and a model element or a set of elements
refining the requirement.
• Satisfy Requirement Matrix to create a Dependency Matrix to analyze, create, and
modify satisfaction relations between requirements and model elements fulfilling the
requirements.
• Verify Requirement Matrix to create a Dependency Matrix to analyze, create, or modify
verification relations between requirements and named elements that can determine
whether the systems fulfill the requirements.
2. Type a diagram name.
3. Select criteria and a scope to be represented in the matrix.
You can also remove redundant or create missing dependencies using a dependency matrix. For
detailed instructions on how to use dependency matrixes, see Dependency Matrix142.
Related pages
• Dependency Matrix143
• Requirement matrices(see page 154)
A relation map allows visual analysis among multiple levels of abstraction, such as how requirements
are satisfied by other model elements. The relation map enables you to show existing relationships,
visualize multilevel relationships, observe traceability from requirements to implementation, or any
other analysis you need.
142 https://docs.nomagic.com/display/MD2021xR2/Dependency+Matrix
143 https://docs.nomagic.com/display/MD2021xR2/Dependency+Matrix
You are not allowed to edit relations in the relation map diagram.
1. From a package or requirement shortcut menu in the Containment tree, select Create Diagram
and then select one of the following:
• Requirement Containment Map.
• Requirement Derivation Map.
2. Type a diagram name.
3. Specify a relation criterion, element type, and scope.
4. Click the Refresh button.
The following figure shows how particular requirements satisfy particular model class elements.
Related pages
• Relation Map145
Tracing requirements
144 https://docs.nomagic.com/display/MD2021xR2/Relation+Map
145 https://docs.nomagic.com/display/MD2021xR2/Relation+Map
• Find, navigate and define the realization and specification of elements from different levels of
abstraction:
• Understand why an element exists, how the element is realized, and clarify the purpose of the
element.
• Validate the system functionality (to see if it meets customer requirements and if any
superfluous functionality has been implemented).
• Improve a customer's understanding of the system and thus his/her acceptance of the system.
• Have single places for relations analysis used in traceability.
• Check artifact coverage and completeness.
• Bridge the gap between levels of abstraction.
• Trace elements by using out-of-the-box predefined traceability suites.
For detailed instructions on how to use the traceability solution, see Traceability146.
146 https://docs.nomagic.com/display/MD2021xR2/Traceability
1. Select the element in the Model Browser148 or the shape on the diagram pane.
2. In the Model Browser, click the Properties panel > Element tab and scroll through the
properties to get to the Traceability properties list.
147 https://docs.nomagic.com/display/MD2021xR2/Specification+window
148 https://docs.nomagic.com/display/MD2021xR2/Model+Browser
For more information about using the Properties panel, see Properties tab149.
149 https://docs.nomagic.com/display/MD2021xR2/Properties+tab
4. In the Compartment Edit dialog, click the Element Properties tab, select the traceability
properties you want to represent on a note and move them from the Hidden to Selected list.
5. Click OK when you are done.
Selected traceability properties are presented on a note.
The Go To command allows you to easily find and navigate to the related elements through the
traceability relations.
1. Select the Requirement in the Containment tree or the shape on the diagram pane.
2. Right-click the selected Requirement. On the shortcut menu, click Go To > Traceability >
Specification / Realization / Owner / Other and select the desired element.
This element is selected in the Containment tree.
150 https://docs.nomagic.com/display/MD2021xR2/Traceability
On this page
Purpose
Validation checks the accuracy, completeness, and correctness of a model, marks invalid elements in
the model, and suggests solutions.
Validation suites
Models are validated against a set of validation rules. Each validation rule captures an imperative
condition that must be checked against the model. Validation rules are grouped into meaningful groups
called validation suites. There are predefined validation suites that you can customize. You can also
create your own rules and group them into suites. Some validation rules are active; that is, they run all
the time. Validation rules and suites can be exported into a separate project in order to reuse them.
They are stored in the Teamwork Server or Teamwork Cloud server for exchange.
151 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
152 https://docs.nomagic.com/display/SYSMLP2021xR2/SysML+validation+suites
153 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
154 https://docs.nomagic.com/display/SYSMLP2021xR2/SysML+active+validation+suites
• In the Model Browser(see page 22) an invalid element is marked with a small symbol that depends
on the failure severity.
• In the validation results marker bar(see page 113) every marker of an invalid symbol is colored
according to the violation severity.
• On the status bar(see page 17) the failure indicator displays the severity icon, number of errors, and
the first letter of the error severity (F - fatal error; E - error; W - warning; D - debug; I - info).
https://www.youtube.com/watch?v=YgyeNgpR7TA
Related pages
You can validate your model against a set of constraints called validation suites.
Each Profile contains its own validation suites. You can create your own validation suites(see
page 121).
You can meet the following Requirements validation suites in the Validation dialog(see page 118) or
Validation Suites dialog(see page 123):
• ActiveValSuite - Requirements contains active validation rules about Copy (see page
157)relationship and Test Case(see page 159). The active validation suites enable you to see if a
model is correct and complete immediately. It instantly displays any errors in the model and
suggests appropriate solutions. The active validation suites have «activeValidationSuite»
stereotype applied. Learn how to work with active validation suites >>155
• ValSuite - Requirements contains predefined Requirements validation rules about Copy (see page
157)relationship, Derive Requirement, Requirement(see page 156), and Test Case(see page 159). You
need to perform the validation manually to check your model against the predefined validation
155 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
You can find predefined validation suites in the Containment tree(see page 25) when the Show
Auxiliary Resources option is enabled, expand the MD Customization for Requirements
Package> Requirement constraints Package. The Requirement constraints Package is divided into
separate Packages and contain an appropriate validation rules(see page 106).
To show the auxiliary resources
• In the Model Browser159, click and enable the Show Auxiliary Resources option.
Related pages
The Requirements validation suites and active validation suites include the following validation rules:
156 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
157 https://docs.nomagic.com/display/MD2021xR2/Suspect+Links
158 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
159 https://docs.nomagic.com/display/MD2021xR2/Model+Browser
160 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
161 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
162 https://docs.nomagic.com/display/SYSMLP2021xR2/SysML+validation+suites
163 https://docs.nomagic.com/display/SYSMLP2021xR2/SysML+active+validation+suites
Copy[A]
Description
Severity
warning
Context element
Copy
Solvers
Example
TestCase[1]
Description
The type of return parameter of the stereotyped model element must be VerdictKind. (note: this is
consistent with the UML Testing Profile).
Severity
warning
Context element
Behavior
Solvers
Example
Description
The text property of the client requirement is constrained to be a copy of the text property of the
supplier requirement.
Severity
warning
Context element
Copy
Solvers
Example
Copy[1]
Description
A Copy dependency may only be created between two classes that have the “requirement” stereotype,
or a subtype of the “requirement” stereotype applied.
Severity
warning
Context element
Copy
Solvers
Example
Copy[C]
Description
If the supplier requirement has sub requirements, copies of the sub requirements are made recursively
in the context of the client requirement and Copy dependencies are created between each sub
Severity
info
Context element
Copy
Solvers
Example
Copy[B]
Description
Severity
warning
Context element
Copy
Solvers
Example
Description
A DeriveReqt dependency may only be created between two classes that have the "requirement"
stereotype, or a sub-type of the "requirement" stereotype applied.
Severity
warning
Context element
Solvers
Example
Requirement[4]
Description
Severity
warning
Context element
Generalization
Solvers
Example
Requirement[2]
Description
Severity
warning
Context element
Requirement
Solvers
Example
Requirement[1]
Description
Severity
warning
Context element
Requirement
Solvers
Example
Requirement[5]
Description
Severity
warning
Context element
Classifier
Solvers
Example
UnlinkReq
Description
Severity
warning
Context element
Abstract Requirement
Solvers
Example
• The entire model, or its part (e.g. several packages).(see page 112)
• Diagram, table, matrix, or relation map(see page 112)
• Elements(see page 112)
1. Open the Validation dialog. How to open the Validation dialog >>164
2. Specify the following options:
- Validation Suite.
- Validate For.
- Minimal Severity.
Learn more about each of the option >>165
3. Click Validate.
The model or its part is validated against the selected validation suite.
• On the toolbar of diagram, table, matrix, or map, click the Validate Diagram button .
• Right-click the diagram, table, matrix, or map in the Containment tree166, select Validation >
Validate Diagram.
164 https://docs.nomagic.com/display/MD2021xR2/Validation+dialog
165 https://docs.nomagic.com/display/MD2021xR2/Validation+dialog
166 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
The markers are shown even for the items that are not currently visible on the screen (you may need to
scroll down to see them). The marker bar shrinks to fit the screen and displays relative positions of
annotated symbols on the axis of ordinates. Every marker is colored according to the violation severity.
Clicking a marker on the bar selects the appropriate symbol on the diagram pane. Moving the mouse
over the marker eye (the red square at the top-right corner of the diagram pane) opens the summary
of the diagram validation results.
On this page
167 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
Introduction
The Validation Results panel and Active Validation Results panel display the results of the validation:
invalid element, severity, explanation of the validation rule and its abbreviation. The Active Validation
Results panel shows the results of active validation suites168, while the Validation Results panel shows
predefined validation suites169.
168 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
169 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
170 https://docs.nomagic.com/display/MD2021xR2/Starting+the+validation
If you cannot see the failure indicator on the status bar, your model is correct according
to active validation suites.
The Validation Results panel areas: toolbar, validation results, and summary of severity areas.
Toolbar
The toolbar allows you to manage the validation results. All buttons are described in the following
table.
171 https://docs.nomagic.com/display/MD2021xR2/Understanding+the+user+interface
Expand All Click to expand recursively all the elements in the validation results
area.
Collapse All Click to collapse recursively all the elements in the validation results
area.
Navigate to Validated Click the button to select the element in the Containment tree172.
Object (Alt+B)
Click the arrow next to the button to open the menu of the following
navigation commands:
Click the arrow next to the button to open the menu of the following
commands:
172 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
173 https://docs.nomagic.com/display/MD2021xR2/Specification+window
174 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
175 https://docs.nomagic.com/display/MD2021xR2/Search+Results+tab
Display the full path of the Click to show the full path of all elements in the validation results
elements area.
Run validation with Click to run the validation with current settings.
current settings
Run validation with new Click to open the Validation dialog176 and run the validation with
settings new settings.
Export Click to export the list of validation results either to .html or .csv file.
• Right-click the element in the validation results area and select one of the following commands
from the shortcut menu:
• Solver name
• Ignore
176 https://docs.nomagic.com/display/MD2021xR2/Validation+dialog
All those commands are described in the table above(see page 115).
• Click the header of the column you want to sort the validation results. A small arrow appears on
the column header:
• - ascending sorting.
• - descending sorting.
1. Point to the header of a column whose value you want to select for filtering the validation results.
2. Click at the right of the column header and select a value from the drop-down list.
Validation dialog
On this page
177 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
178 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
179 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
180 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
181 https://docs.nomagic.com/display/MD2021xR2/Validation+Results+panel
You can run the validation for the entire diagram, table, matrix, relation map, or elements.
Learn how to start the validation >>183
• The Validation Suite drop-down list (#1 in the image above) allows you to select a validation
suite that you want to validate the model or its part against.
The list of available validation suites depends on the open project; the validation suites
and validation rules are stored in the model as regular model elements.
• The Validate For drop-down list (#2 in the image above) allows you to choose:
• Whole Project to run validation on the entire model.
• Validation Selection to run validation on special packages and/or elements. Then click
the ... button and select the scope for validation.
Validation is always recursive. If you select a package for validation, you do not
need to select its inner elements.
• The Minimal Severity drop-down list (#3 in the image above) allows you to select the minimal
severity level: debug, info, warning, error, fatal. Debug is the lowest possible severity level.
• Clear the Exclude elements from projects used in read-only mode check box (#4 in the image
above) if you want to run validation on the elements stored in the read-only project usages.
• Clear the Exclude elements from additional content check box (#5 in the image above) if you
want to include the content of Smart Packages while running the passive validation.
• The Validation Suites button (#6 in the image above) opens the Validation Suites dialog184.
Custom validation
You can extend existing validation suites that come with Profile185by customizing existing or creating
your own validation suites and rules.
182 https://docs.nomagic.com/display/MD2021xR2/Validation+Results+panel
183 https://docs.nomagic.com/display/MD2021xR2/Starting+the+validation
184 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog
185 https://docs.nomagic.com/display/MD2021xR2/Profile
• «validationSuite» is dedicated for inactive validation rules. Learn more about predefined
validation suites >>186
• «activeValidationSuite» is dedicated for active validation rules. Learn more about active validation
suites >>187
You can:
Sharing
You can share validation suites by exporting validation suites Package188 and then use it in
another project.189
1. Open the Validation Suites dialog. How to open the Validation Suites dialog >>190
2. Do the one of the following:
- In the toolbar191, click and select Validation Suite or Active Validation Suite command.
- Right-click the Validation Suites area192 and select Create Validation Suite or Create Active
Validation Suite command.
3. In the Select Owner dialog, choose the owner for the new validation suite Package, and click OK.
4. In the Rename dialog, type the name of the new validation suite Package, and click OK.
An empty validation suite Package is created and is located in your model. You can include
validation rules from other validation suites. How to include validation rules >>(see page 122)
Alternative
186 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
187 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
188 https://docs.nomagic.com/display/MD2021xR2/Exporting+packages+to+new+projects
189 https://docs.nomagic.com/display/MD2021xR2/Managing+used+projects
190 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog#ValidationSuitesdialog-
OpeningtheValidationSuitesdialog
191 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog
192 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog
1. Open the Validation Suites dialog. How to open the Validation Suites dialog >>194
2. In the Validation Suites area195, select the validation suite Package you want to modify.
3. Do the one of the following:
- In the toolbar196, click .
- Right-click it and select Clone Validation Suite command.
4. In the Select Owner dialog, choose the owner for the cloned validation suite Package, and click
OK.
5. In the Rename dialog, type the name of the cloned validation suite Package, and click OK.
The clone of the existing validation suite Package is created and contains the same validation
rules as the original. You can include or exclude validation rules from the cloned validation suites
Package. How to include/exclude validation rules >>(see page 122)
1. Open the Validation Suites dialog. How to open the Validation Suites dialog >>197
2. In the Validation Suites area198, select the newly created or cloned validation suite Package.
You cannot include/exclude the validation rules to/from read-only validation suites.
3. In the Validation Rules area199, select/clear the check boxes for the entire Package or an
appropriate validation rule to include/exclude validation rules to/from the new validation suites
Package.
The validation suites Package contains only selected validation rules.
Additional information
After you include/exclude the validation rules (constraints), the appropriate Package
Import200 relation is created/deleted in the model. You can check that in the
Containment tree201, under newly created or cloned validation suites Package, Relations
193 https://docs.nomagic.com/display/MD2021xR2/Stereotype#Stereotype-Applyingastereotype
194 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog#ValidationSuitesdialog-
OpeningtheValidationSuitesdialog
195 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog
196 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog
197 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog#ValidationSuitesdialog-
OpeningtheValidationSuitesdialog
198 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog
199 https://docs.nomagic.com/display/MD2021xR2/Validation+Suites+dialog
200 https://docs.nomagic.com/display/MD2021xR2/Package+import
201 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
On this page
Introduction
The Validation Suites dialog allows you to create new suites, clone read-only validation suites, include
one suite to another, and include/exclude already existing validation rules in validation suites.
• Do either:
- From the main menu, select Analyze > Validation > Validation Suites.
- Open the Validation dialog202 and click the Validation Suites button.
Description of Validation Suites dialog areas
The Validation Suites dialog consists of the following areas:
Toolbar
The toolbar allows you to manage the validation suites. All buttons are described in the following table.
202 https://docs.nomagic.com/display/MD2021xR2/Validation+dialog#Validationdialog-OpeningtheValidationdialog
Create New Click to create a new validation suite. This button contains the following
Validation Suite commands:
Clone Validation Click to clone an already existing validation suite with its validation rules. It is
Suite stored in your model as a Package with «validationSuite» stereotype applied.
Rename (F2) Click to rename the package of new or cloned validation suites.
Remove Click to delete the new or cloned validation suites from the model.
All those commands are described in the table above(see page 124).
Validation Rules area
The Validation Rules area contains:
• Constraints Tree displaying the structure of the validation suite Packages with their validation
rules. It allows you to include/exclude validation rules to/from a newly created or cloned
validation suite Package. For this select/clear the check box before the entire Package or an
appropriate validation rule.
203 https://docs.nomagic.com/display/MD2021xR2/Starting+the+validation
204 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
Button Description
Edit Click to open the Specification window205 of the selected element in the Constraint Tree.
Load Click to load the used project206 with its validation rules.
You can create your own validation rules in the model and use them to check your model or keep them
only for documentation purpose. You can locate new validation rules anywhere in your model, but
usually they are created for the classifier, stereotype, or metaclass.
205 https://docs.nomagic.com/display/MD2021xR2/Specification+window
206 https://docs.nomagic.com/display/MD2021xR2/Managing+used+projects
207 https://docs.nomagic.com/display/MD2021xR2/Creating+new+Constraint+element
208 https://docs.nomagic.com/display/MD2021xR2/Applying+validationRule+stereotype
209 https://docs.nomagic.com/display/MD2021xR2/Specifying+Constraint+Element+property
210 https://docs.nomagic.com/display/MD2021xR2/Specifying+the+validation+rule+properties
211 https://docs.nomagic.com/display/MD2021xR2/Defining+Constraint+condition
212 https://docs.nomagic.com/display/MD2021xR2/Creating+validation+suites
213 https://docs.nomagic.com/display/MD2021xR2/Creating+validation+suites#Creatingvalidationsuites-fill
214 https://docs.nomagic.com/display/MD2021xR2/Working+with+model+elements
1. Open the Constraint Specification window. How to open the Specification window >>217
2. Find the Constrained Element property and select it's value box.
3. Click and select an appropriate element from the Select Elements dialog.
For constraints on metaclasses, select an appropriate element from the UML Standard
Profile > UML2 Metamodel. Only the single Constrained Element property value is
supported for validation rules.
4. Click OK.
The Constrained Element property value is specified.
215 https://docs.nomagic.com/display/MD2021xR2/Creating+validation+rules
216 https://docs.nomagic.com/display/MD2021xR2/Creating+new+Constraint+element
217 https://docs.nomagic.com/display/MD2021xR2/Specification+window
218 https://docs.nomagic.com/display/MD2021xR2/Specifying+the+validation+rule+properties
• In the corresponding element's Specification window219, click the Applied Stereotype property
specification cell, then click , and select stereotypes from the open list. After you have
selected, click Apply.
• In the element's shortcut menu, select Stereotype and select a stereotype that you wish to
apply. Click Apply when you are done.
• On the diagram pane, select an element and in that element's name area, type the stereotype
name between brackets « ». The element's name comes after the stereotype.
If you want to name the element Books and assign it the «table» stereotype, in the
element's name area type the following: «table» Books. The name completion for the
stereotypes works in the name editing mode, press Ctrl+Spacebar or Ctrl+Backspace to
get a list of available stereotypes.
You can change the order of the stereotypes applied to the element. The symbol style of the first
stereotype in the list will be applied to the element.
1. Open the Constraint Specification window. How to open the Specification window >>220
2. On the right side of the window, find the Validation Rule group.
3. Specify the following properties:
• Abbreviation. Select the Abbreviation property value box, click and type a
short word, phase, acronym of the validation rule. It allows you to distinguish the
validation rules among other rules when sorting or filtering.
• Error Message. Select the Error Message property value box, click and type the
description of the invalid situation when this validation rule fails.
If you need to define the variable error message, you can embed expressions
directly in the Error Message value box by using curly brackets - {}. Everything
between them is treated as an expression and evaluated for each validation
result. Expressions are treated as OCL2.0 expressions by default, but you can also
use binary expressions: {bin: <binary expression>}. For example, in the following
error message the budget is calculated according to variables. The result of the
expression is provided as number in the Validation Results panel221, e.g. Budget
not balanced - overbudget by $500.
219 https://docs.nomagic.com/display/MD2021xR2/Specification+window
220 https://docs.nomagic.com/display/MD2021xR2/Specification+window
221 https://docs.nomagic.com/display/MD2021xR2/Validation+Results+panel
You can insert a hyperlink. Learn more about defining hyperlinks >>222
• Severity. Select the Severity property value and from the drop-down list select one of the
following severity levels:
• debug - for missing information of a constrained element that is dedicated for the
developer.
• info - for missing information of a constrained element that is dedicated mostly for
the end-user.
• warning - for incorrect situations that can cause errors. It is used for less severe
situations than the error.
• error - for incorrect situations that must be solved.
• fatal - for critical errors such as model corruption or model is invalid according to
the UML metamodel. This severity level is mostly reserved for future use.
The icons on invalid elements in the model depend on the selected severity
level described above. Learn more about invalid elements representation
>>223
You can customize severity levels. How to customize severity levels >>224
4. Click Close.
The validation rule properties are specified.
Customizing severity levels
You can customize the default severity levels (such as debug, info, warning, error, fatal) by creating
new and and additional levels. For this you must edit the SeverityKind Enumeration225element, located
in the UML Standard Profile.
222 https://docs.nomagic.com/display/MD2021xR2/Defining+hyperlinks
223 https://docs.nomagic.com/display/MD2021xR2/Validation#Validation-Invalidelementsrepresentation
224 https://docs.nomagic.com/display/MD2021xR2/Customizing+severity+levels
225 https://docs.nomagic.com/display/MD2021xR2/Enumeration
226 https://docs.nomagic.com/display/MD2021xR2/Specifying+the+validation+rule+properties
1. Open a project.
2. In the Containment tree227, click and enable to show the Show Auxiliary Resources in the
Model Browser228.
3. Right-click the UML Standard Profile Package.
227 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
228 https://docs.nomagic.com/display/MD2021xR2/Model+Browser
You can create new or modify default severity levels only if the UML Standard Profile is
editable. To see how to edit the profile read the procedure above(see page 130).
Each Enumeration Literal created for the Enumeration element corresponds to available severity levels.
1. In the Containment tree230, click + to expand the UML Standard Profile Package > Validation Profile
Package.
2. Double-click the SeverityKind Enumeration element to open its Specification window231.
3. On the left side of the Specification window, select the Enumeration Literals property group232.
4. On the right side of the Specification window, select severity level from the list:
- Click to open Specification window233.
- Click the Up/Down button to move the severity level up/down in the list.
229 https://docs.nomagic.com/display/MD2021xR2/Managing+project+usages
230 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
231 https://docs.nomagic.com/display/MD2021xR2/Specification+window
232 https://docs.nomagic.com/display/MD2021xR2/Specification+window
233 https://docs.nomagic.com/display/MD2021xR2/Specification+window
1. In the Containment tree234, click + to expand the UML Standard Profile Package > Validation Profile
Package.
2. Double-click the SeverityKind Enumeration element to open its Specification window235.
3. On the left side of the Specification window, select the Enumeration Literals property group236.
4. On the right side of the Specification window, click the Create button. The Specification window
of the newly created Enumeration Literal opens.
5. In the Name property, type the name of the new severity level (e.g. critical).
6. Click Close.
The new severity level is created and can be modified by using buttons(see page 131).
234 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
235 https://docs.nomagic.com/display/MD2021xR2/Specification+window
236 https://docs.nomagic.com/display/MD2021xR2/Specification+window
5. Click Close.
The new stereotype with a new icon is created and ready to be applied to a severity level. How to
apply it >>(see page 133)
Applying new icon for severity level
After you define the new icon for severity level, you can apply it to custom or default severity levels
(Enumeration Literals). This icon is shown when representing invalid elements240 of your model.
1. In the Containment tree241, click + to expand the UML Standard Profile Package > Validation Profile
Package > SeverityKind Enumeration element.
237 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
238 https://docs.nomagic.com/display/MD2021xR2/Specification+window
239 https://docs.nomagic.com/display/MD2021xR2/Image+Library+tab
240 https://docs.nomagic.com/display/MD2021xR2/Validation
241 https://docs.nomagic.com/display/MD2021xR2/Containment+tab
1. Open the Constraint Specification window. How to open the Specification window >>243
2. Find the Specification property and select its value box.
3. Click .The Specification dialog opens.
, select one of the following languages:
4. From the Language list
OCL244 2.0 is used for validation rules, specified in OCL language. Learn how to create
OCL2.0 validation rule in Developer Guide >>245
•
OCL Header
242 https://docs.nomagic.com/display/MD2021xR2/Specification+window
243 https://docs.nomagic.com/display/MD2021xR2/Specification+window
244 https://docs.nomagic.com/display/MD2021xR2/Object+Constraint+Language
245 https://docs.nomagic.com/display/MD2021xR2/Create+OCL2.0+validation+rule
Constraint types
Since the Constraint is stereotyped by «validationRule» which is derived from
«invariant » stereotype, inv is shown in the header.
Only inv constraints can be evaluated.
Other types of Constraints
are not evaluated, butcan be modeled for documentation purposes:
• def – for the expression of the constraint with «definition» stereotype
applied.
• init, derive - for the expression of the default value of the property.
• pre, post, body - for the expression of the appropriate fields of operation.
OCL Performance
When evaluating the validation rule defined in OCL language, the validation on the
first run can have a delay of 20-30 seconds (depending on the computer
performance) while the Java compiler is loading. Subsequent validations will run
faster than the first one.
If the validation process is run heavily on medium-large projects, increasing the
default Java VM size is advisable. By default, the VM size is set to 400MB in
MagicDraw; increasing this to 600 (or 800 if the computer has sufficient RAM)
might improve the performance.
In the Body box, type the expression of the selected language syntax.
5.
MagicDraw can evaluate only those validation rules whose expression is defined in one
of the languages listed above. The other languages can be used only for documentation
purposes.
You can add hyperlinks in the Body box. How to define hyperlinks >>249
You can define expressions for global validation rules. Learn more about global
validation rules >>250
(optional) Click the Evaluation Mode button to to execute an expression on the actual testing
model while editing. How to use the Evaluation Mode >>251
6.
7. Click OK.
The Constraint condition is defined.
246 https://docs.nomagic.com/display/MD2021xR2/Binary+validation+rule
247 https://docs.nomagic.com/display/MD2021xR2/Creating+executable+opaque+behaviors
248 https://docs.nomagic.com/display/MD2021xR2/Specifying+criteria+for+querying+model
249 https://docs.nomagic.com/display/MD2021xR2/Defining+hyperlinks
250 https://docs.nomagic.com/display/MD2021xR2/Global+validation+rules
251 https://docs.nomagic.com/display/MD2021xR2/Expression+Evaluation
252 https://docs.nomagic.com/display/MD2021xR2/Predefined+validation+suites
253 https://docs.nomagic.com/display/MD2021xR2/Active+validation+suites
254 https://docs.nomagic.com/display/MD2021xR2/Creating+new+validation+rules
255 https://docs.nomagic.com/display/MD2021xR2/Defining+Constraint+condition
Sample model
An example of a global validation rule can be found in the model validation sample model >
Classifiers Validation Rules Class diagram256. To open this sample do one of the following:
• Download model validation.mdzip257.
• Find in the modeling tool <modeling tool installation directory>\samples\product
features\model validation.mdzip.
256 https://docs.nomagic.com/display/MD2021xR2/Class+diagram
7 https://docs.nomagic.com/download/attachments/82745594/model%20validation.mdzip?
25
api=v2&modificationDate=1513353053644&version=1
Metrics
A metric is information about a specific aspect of the model. A collection of various metrics can be used
to evaluate the current state of your model. When calculated at regular intervals, they can help track
the evolution of the model's development.
258 https://docs.nomagic.com/display/MD2021xR2/Validation+Results+panel
The metric suite Requirement Coverage (Treat Owner as Regular Requirement) is considered as
covered if the requirement has a satisfy relation with a design element:
• If all child requirements have incoming satisfy relations, grouping requirements are not
considered as satisfied unless they also have incoming satisfy relations.
• If the grouping requirement has incoming satisfy relation, its child requirements are not
considered as covered unless they have incoming satisfy relations.
259 https://docs.nomagic.com/display/MD2021xR2/Metric+Suites
260 https://docs.nomagic.com/display/MD2021xR2/Metric+table
https://www.youtube.com/watch?v=YgyeNgpR7TA
Related pages
On this page
You can use the specific condition patterns in Requirement texts if you want to extract Constraint from
Requirement automatically(see page 142).
The Requirement patterns are available as of version 2021x Refresh2. The Use Requirement
Term Glossary option is enabled by default.
261 https://docs.nomagic.com/display/MD2021xR2/Creating+Metric+Suites
262 https://docs.nomagic.com/display/MD2021xR2/Metric+table
263 https://docs.nomagic.com/display/MD2021xR2/Stereotype
264 https://docs.nomagic.com/display/MD2021xR2/Toolbars
265 https://docs.nomagic.com/display/MD2021xR2/Glossary+table
266 https://docs.nomagic.com/display/MD2021xR2/Model+Browser
Warning
You cannot extend the list of custom condition patterns in this Glossary Table.
The Extracting Constraint from Requirement functionality provides the ability to verify Requirements
easier when trying to prove the assertion is true (or false). A glossary mechanism extracts the constraint
directly from the Requirement text. If you want to create constraints and associate them with the
requirements automatically, you can use the extract Constraint from Requirement text functionality.
267 https://docs.nomagic.com/display/MD185/Constraint
268 https://docs.nomagic.com/display/SYSMLP185/Requirement
After selecting the Extract Constraint From Requirement command, the constraint
{distanceOnQuickCharge >=70.0} is automatically created. It satisfies the requirement text "at least 70".
Related pages
The model used in the figures of this page is the extract requirement values sample model To open
this sample do one of the following:
Requirements are gathered and managed in dedicated requirements tools. When it comes to
requirements refinement and integration with business, software, and system architecture, different
requirements interchange formats are used. It can be comma separated value, MS Excel, Word, or XML.
These are nonstandard ways, which bring drawbacks. It is clear that need for dedicated common
format exists. This is why the German automotive industry started the open, non-proprietary format for
requirements exchange development.
Starting with the upcoming v18.0, all MagicDraw-based Cameo Suite products will support ReqIF import
as part of the new Cameo Requirements Modeler plugin.
What is ReqIF?
ReqIF is the XML-based international standard for requirement data exchange, standardized by the
Object Management Group (OMG). It has solid recognition in the industry and adoption by many
requirements management tool vendors. It is used to exchange requirement information between
different tools and toolchains.
• Import process includes the ability for custom mapping with the option to import all data and
dynamically create properties.
• Update process includes changing management support with requirements status identification.
After import, new, changed, updated or obsolete requirements are identified with the ability to
check the impact of changes.
• Integrated with other models: business, software, and systems architecture, test cases, and
toolchains: PLM tools (e.g. Teamcenter), CAD tools (e.g. Catia), and others. This enables
requirements-driven design and communication of changes with all stakeholders.
• Reviewed with visualization in diagrams, tables, matrices, and structure maps.
• Analyzed with built-in and custom validation suites, coverage metrics, traceability.
• Collaborated with a global modeling project’s repository, supporting collaboration inside a
project, change and configuration management, multisite support.
• Simulated with OMG standard-based model execution, debugging, animation, and user
interface prototyping supporting framework.
• Published with MS Office and Open Office docs, Web-based reports, with the ability to have
custom reports incorporating required data.
* Import tested with: IBM Rational DOORS 9.4, 9.5, Next Generation, Polarion, PTC Integrity,
Siemens TC, and other ReqIF 1.0 compatible data sources.
2. Update existing data. It is possible to create relations to any other model element, e.g. test
cases, or architectural components, to realize total traceability as required by the processes. On
update, all custom relations are left untouched.
7. Custom mapping
ReqIF Recognition
The group working on the initial release of ReqIF consists of the ProSTEP iViP Association, Atego
Systems GmbH, Audi AG, BMW AG, Continental AG, Daimler AG, HOOD GmbH, IBM, MKS GmbH,
PROSTEP AG, Robert Bosch GmbH, and Volkswagen AG.
ReqIF Sources
• Rational DOORS, DOORS Next generation, IBM Rational Requirements composer (http://
www-01.ibm.com/software/rational/)
• Polarion (http://www.polarion.com/2014/reqif-solution.php)
• PTC Integrity (http://www.mks.com/platform/our-product)
• Siemens Teamcenter (http://m.plm.automation.siemens.com/en_us/Images/Siemens-PLM-
Teamcenter-Requirements-Integrator-for-RIF-ReqIF-fs_tcm1224-213684.pdf)
• LieberLieber for EA (http://www.lieberlieber.com/en/model-engineering/reqif/)
• Agosense (http://www.agosense.com/english/products/platform-und-adapter/
agosensesymphony)
• ReqIF Server (http://enso-managers.de/)
• MS Excel to ReqIF exporter (http://www.pyrrho.com/en/ReqIF/ReqIF-Intro.htm)
• GitHub EnterpriseArchitect_ReqIF_AddIn (https://github.com/redsteve/
EnterpriseArchitect_ReqIF_AddIn)
• Requisis Rex (https://requisis.com/de/produkte/rex-doors-reqif-rif-export.html)
• VISURE (http://www.visuresolutions.com/)
• Formalmind (www.formalmind.com/269)
You can generate Requirement reports in the .docx and .html/.htm formats directly from your model.
269 http://www.formalmind.com/
Report customization
If you want to customize the report or create your own template for a requirement report , you
may use the Report Wizard270.
270 https://docs.nomagic.com/display/MD2021xR2/MagicDraw+Report+wizard+overview
https://www.youtube.com/watch?v=L2fbUqPzUyo
Diagram descriptions
This sections provides all descriptions of the requirement diagrams, tables, and matrices.
Requirement Diagram
Requirement Diagram is particularly valuable when you want to demonstrate the traceability from the
requirements to the elements in your system model that are dependent on them. This diagram
provides modeling constructs to represent text-based requirements and relate them to other modeling
elements. These requirement modeling constructs are intended to provide a bridge between traditional
requirement management tools and other SysML models.
Requirements diagrams display requirements, packages, other classifiers, test cases, rationales, and
relationships. Possible relationships available for Requirements diagrams are containments, deriveReqt
and requirement dependencies (‘Copy’, ‘Refine’, ‘Satisfy’, ‘Trace’, and ‘Verify’). The callout notation can
also be used to reflect the relationships of other models.
Requirement Table
A Requirement Table is used to type a requirements into a spreadsheet-like table.
Requirements Table contains requirements. All requirements are text-based. Each row in the table
represents a requirement. A new table consists of four columns by default (#, Id, Name, Text). You can
add more columns to represent the properties of each requirement in the table. With this table, you
can:
• Create new requirements directly in the table, or import existing ones from your model to the
table.
• Edit the properties of requirements directly in the table.
• Generate requirements reports, renumber requirements’ IDs, or export the table into a CSV or
HTML format, or into a Microsoft Excel (.xlsx) spreadsheet.
• Search and filter requirements.
• Access custom requirement’s properties.
You can create SysML matrices only if you have SysML Plugin271 installed. How to install SysML
Plugin >>272
The purpose and examples of each matrix are provided in the following pages:
• Requirement matrices273
• SysML Allocation Matrix274
All SysML matrices are based on Dependency Matrix275. That's why all it's procedures are allowable for
SysML matrices:
Element descriptions
This section provides all descriptions of the requirement elements.
Business Requirement
A Business Requirement is a requirement that specifies characteristics of the business process that
must be satisfied by the system.
271 https://docs.nomagic.com/display/SYSMLP2021xR2/SysML+Plugin+Documentation
272 https://docs.nomagic.com/display/SYSMLP2021xR2/Installation+and+licensing
273 https://docs.nomagic.com/display/SYSMLP2021xR2/Requirement+matrices
274 https://docs.nomagic.com/display/SYSMLP2021xR2/SysML+Allocation+Matrix
275 https://docs.nomagic.com/display/MDTWRT/Dependency+Matrix
276 https://docs.nomagic.com/display/MDTWRT/Creating+Dependency+Matrix
277 https://docs.nomagic.com/display/MDTWRT/Using+Dependency+Matrix
278 https://docs.nomagic.com/display/MDTWRT/Dependency+Matrix+environment
Design Constraint
A Design Constraint is a requirement that specifies a constraint on the implementation of a system or
on a part of it.
Related diagrams
Extended Requirement
An Extended Requirement is a standard Requirement subtype, which adds some properties to a
requirement element. These properties such as a source, risk, and verify method are important for the
requirement management. Specific projects should add their own properties. All these properties are
now available in the standard Requirement Specification window and Requirements Table. If any of
these property values is specified, a requirement is automatically converted to ExtendedRequirement.
Related diagrams
Functional Requirement
A Functional Requirement is a requirement that specifies a behavior that a system or a part of a system
must perform.
Related diagrams
Related diagrams
Performance Requirement
A Performance Requirement refers to a requirement that quantitatively measures the extent to which a
system or a system part satisfy a required capability or condition.
Related diagrams
Physical Requirement
A Physical Requirement specifies the physical characteristics and/or physical constraints of a system or
a system part.
Related diagrams
Requirement
A Requirement specifies a capability or a condition that must (or should) be satisfied. Requirements are
used to establish a contract between the customer (or other stakeholders) and those responsible for
designing and implementing the system. A requirement can also appear on other diagrams to show its
relationship to other modeling elements.
When a requirement nests other requirements, all the nested requirements apply as part of the
container requirement (the requirement that contains all the nested requirements). Deleting the
container requirement will thus delete all the nested requirements it contains; a functionality inherited
from UML.
Usability Requirement
A Usability Requirement specifies the fitness for use of a system for its users and other actors.
Related diagrams
Derive
A 'Derive' relationship is a dependency between two requirements (a derived requirement and a source
requirement), where the derived requirement is generated or inferred from the source requirement.
Related diagrams
Copy
A Copy relationship is a dependency between a supplier requirement (master) and a client requirement
(slave), specifying that the client requirement text is a read-only copy of the supplier requirement text.
In other words, by creating a Copy dependency between two Requirements, you copy the text property
from the supplier to the client.
1. On the diagram, select a client Requirement symbol (slave), a symbol you want to be a copy of
the supplier Requirement (master). The smart manipulator appears.
2. Select the Copy command as depicted in the preceding figure and connect the client
Requirement to the supplier Requirement.
3. The Copy path goes yellow because of violation of the rule Invalid Slave Requirement text
meaning the text of the slave Requirement must be the same as of the master Requirement.
Click the Copy path and, in the smart manipulator, select the Validation command.
4. The list of suggested solvers appears. Select Copy text of the supplier requirement to the
client requirement to create and sustain this dependency in your model correctly.
Related pages
Test Case
A Test Case (Activity / StateMachine / Interaction) is a method for verifying a requirement.
Related diagrams
Trace
A 'Trace' relationship is a dependency between a requirement and an arbitrary model element traced
by this requirement.
Related diagrams
Verify
A 'Verify' relationship is a dependency between a requirement and a test case or a model element that
can determine whether the system fulfills the requirement. As with other dependencies, the arrow
direction points from the (client) test case to the (supplier) requirement.
Related diagrams
279 https://docs.nomagic.com/display/MD2021xR2/Validation
Refine
A 'Refine' relationship is a dependency that describes how a model element or a set of elements refine
a requirement. For example, a use case or activity diagram may be used to refine a text-based
functional requirement. Alternatively, it may be used to show how a text-based requirement refines a
model element. In this case, some elaborated text could be used to refine a less fine- grained model
element.
Related diagrams
Satisfy
A 'Satisfy' relationship is a dependency between a requirement and a model element that fulfills that
requirement. As with other dependencies, the arrow direction points from the satisfying (client) model
element to the (supplier) requirement that is satisfied.
Other descriptions
This section contains other concepts related with the requirements.
ReqIF
The Requirement Interchange Format (ReqIF) standard is an XML based international standard adopted
by Object Management Group (OMG) as a formal specification for exchanging requirements between
software tools from different vendors.
Related pages
Requirement Specification
A represented collection of requirements that are related by a user decision or needs. A Requirement
Specification may represent requirements for a system, a component, or other subjects. In a means of
MagicDraw, a Requirement Specification is a package of requirements. A Usability Requirement
specifies the fitness for use of a system for its users and other actors.
Customizations
• Specifying project properties(see page 162)
• Assigning shortcut keys(see page 165)
280 https://docs.nomagic.com/display/SYSMLP2021xR2/Requirement+matrices
Title
The project title is assigned as a value of the project Documentation property281.
281 https://docs.nomagic.com/display/MD2021xR2/Documentation+tab
Compatible With
Compatible With defines the compatibility range between two Standard/System profile
versions. Once specified, it helps to avoid read-only constraints in TWCloud projects when you
use earlier profile versions locally rather than those used in the server project.
When the Version of the Standard/System profile on your computer is earlier (e.g. 19.0 SP1)
than the Version of this profile on TWCloud (e.g. 19.0 SP3), but higher or equal to the value of
Compatible with (e.g. 19.0), you will still be able to edit TWCloud projects using the profile.
Advanced options
To use advanced options
Note
The Shared Packages tab is available for local projects only.
• The Used Projects tab shows the projects and standard/system profiles used in the open
project. Click the Open Project Usages button to open the Used Projects dialog283, where
you can modify project usages.
• The Advanced tab shows project meta information. In this tab you can:
• Reset all project element IDs. All project elements have their own ID (a unique
identifier). While working with several related projects, you may receive a message
about duplicated element IDs. After clicking the Reset IDs button, new IDs will be
created for all project elements.
Note
Make sure the project you are resetting IDs for is not used in other projects.
• Reset the project ID. After clicking the Reset Project ID button, new IDs are created
for the project.
282 https://docs.nomagic.com/display/MD2021xR2/Selecting+elements
283 https://docs.nomagic.com/display/MD2021xR2/Managing+used+projects
1. From the main menu of a modeling tool, select Options > Environment. The Environment
Options dialog opens.
2. From the option group list on the left side of the dialog, select Keyboard.
3. Search for the command you need to assign a shortcut key to.
The shortcut key is then assigned to the selected command and you can start using it.
284 https://docs.nomagic.com/display/MD2021xR2/Most+common+shortcut+keys
Usage information
• You can assign multiple shortcut keys to one command.
• If you enter a shortcut key that is already assigned to another command, a notification
appears under the Press new shortcut key box.
• If you assign a shortcut key that is already assigned to another command, the shortcut
key is automatically unassigned from that command and assigned to the new one.
285
Configuration files
On this page
286
A configuration file is where the initial parameters and settings of a program are defined. All default
parameter values come with a program installation but you can edit configuration files and define your
own values, for example, define the Java home directory. This page describes the locations where you
can find the configuration files of your modeling tool, how you can modify them and change their
default storage location. Configuration files can be used to:
• MagicDraw
• Cameo Enterprise Architecture
• Cameo Systems Modeler
• Magic Software Architect
• Magic Cyber Systems Engineer
285 https://docs.nomagic.com/display/MD2021xR2/Assigning+shortcut+keys
286 https://docs.nomagic.com/display/MD2021xR2/Configuration+files
By default the configuration and auxiliary files of a modeling tool are stored in the following location:
MagicDraw magicdraw
1. From the Help menu, select About <modeling tool name>. The About dialog opens.
2. Click the Environment tab.
3. Click the hyperlink next to Configuration Files. The folder containing modeling tool
configuration files opens.
You can also save configuration files in any of the following locations:
Note
The Common Application Data location on Windows Vista/7/8/10 is C:\ProgramData.
To store configuration files in the modeling tool installation directory or Common Application Data
location on Windows
1. Open the <modeling tool name>.properties file, which is located in <modeling tool installation
directory>\bin.
2. In the JAVA_ARGS line, change the -DLOCALCONFIG property value according to the following
table:
Important!
It is important to add the -DWINCONFIG=false parameter on Window OS, otherwise, the
configuration files will not be stored in the modeling tool installation directory.
Note
If you have defined to store files in the modeling tool installation directory, files will not be
stored in the defined location.
Do either:
Or:
1. Go to the folder, where the configuration files are stored(see page 168).(see page 167)
2. Create a new file named magicdrawredirect.
3. In the file, type the absolute path to the folder, wherein modeling configuration files will
be saved, e.g., C:/<directory name>.
287
Related pages
290
287 https://docs.nomagic.com/display/MD2021xR2/Configuration+files
288 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
289 https://docs.nomagic.com/display/MD2021xR2/Customizing+and+Selecting+Perspective
290 https://docs.nomagic.com/display/MD2021xR2/Configuration+files
An option value can be simply changed by typing a new value, setting a value to true / false, or selecting
a value from the list. Click the Reset to Defaults button to restore default option values.
Changing options
In order to change a desired environment option, first of all you may need to find it. In this case, use
the quick filter291 in the dialog. Filtering is performed in the all available options, not only in the selected
option group.
For better understanding an option you can read its description that tells what is the effect of changing
the option value.
291 https://docs.nomagic.com/display/MD2021xR2/Quick+filter
1. Make sure that the Show Description mode is turned on in the Environment Options dialog. To
turn the Show Description mode on or off, click the Show Description button on the tab toolbar.
292
1. In the main menu, go to Options > Environment. The Environment Options dialog293 opens.
2. In the left part of the dialog expand the General element and select Path Variables.
3. In the Path Variables area click the Add button. The Path Variable dialog opens.
292 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
293 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
Every user can specify different values of the same path variables. However path variables should be
resolved only on demand, when they are used. If a modeling tool determines you can use path
variables, once you specify your absolute path, the application automatically opens the Use Path
Variables dialog box. For example, this dialog may open when in your project, you try to use another
project From predefined location and add a new path to the Paths to used projects list.
• In the Available forms list, select a path and click the Use Selected button.
If you have your own documentation running on the local server, you can define the path in the
documentation.server option.
294
Useful information
If you disable inbound network activity, double-clicking a project file (.mdzip) opens the project
in a new modeling tool window.
294 https://docs.nomagic.com/display/MD2021xR2/Creating+path+variables
1. Go to <modeling tool installation directory>\bin and open the properties file, e.g.,
magicdraw.properties.
2. In the JAVA_ARGS line, add the following argument:
-DDISABLEINBOUNDCON=true
295
Related pages
303
Windows OS X
295 https://docs.nomagic.com/display/MD2021xR2/Disabling+inbound+network+activity
296 https://docs.nomagic.com/display/MD2021xR2/MagicDraw+getting+started
297 https://docs.nomagic.com/display/MD2021xR2/Understanding+the+user+interface
298 https://docs.nomagic.com/display/MD2021xR2/Most+common+shortcut+keys
299 https://docs.nomagic.com/display/MD2021xR2/Customizing+environment+options
300 https://docs.nomagic.com/display/MD2021xR2/Customizing+and+Selecting+Perspective
301 https://docs.nomagic.com/display/MD2021xR2/Configuration+files
302 https://docs.nomagic.com/display/MD2021xR2/Support
303 https://docs.nomagic.com/display/MD2021xR2/Disabling+inbound+network+activity
Add more symbols to selection Shift+Left mouse button Shift+Left mouse button
Select elements of the same type Alt+Left mouse button Alt+Left mouse button
Reverse path direction Draw the path while holding Draw the path while holding
down Alt down Alt
F3 F3
Related pages
• Assigning shortcut keys305
306
For the instructions how to create, edit, clone, import /export, or remove symbol
property styles, please refer to Style Engine.
For the instructions about setting the default element property values, please refer to
Default Property Values.
• Set general code generation or code reversing options as well as code formatting styles for
selected programming languages.
The Project Options dialog includes option groups, each designated for one of the above mentioned
features and containing lists of corresponding options. Groups are represented using the tree
structure.
An option value can be simply changed by typing a new value, setting a value to true / false, or selecting
a value from the list. Click the Reset to Defaults button to restore default option values.
304 https://docs.nomagic.com/display/MD2021xR2/Most+common+shortcut+keys
305 https://docs.nomagic.com/display/MD2021xR2/Assigning+shortcut+keys
306 https://docs.nomagic.com/display/MD2021xR2/Most+common+shortcut+keys
Changing options
In order to change a desired project option, first of all you need to find it in the Project Options dialog.
These options are grouped into categories to make it easier for you to locate them. Use the q307uick
filter308 to find find the desired option in the list. Filtering is performed in the all available options, not
only in the selected option group.
To make sure you selected the right option, first read its description and see if the effect of changing
the option value is what you expect to be done.
Make sure that the Show Description mode is turned on in the Project Options dialog.
To turn the Show Description mode on or off, click the Show Description button on the
following toolbar in the Project Options dialog.
307 https://docs.nomagic.com/display/MD2021xR2/Quick+filter
308 https://docs.nomagic.com/display/MD2021xR2/Quick+filter
Copy-dependency 157
C Copy-relationship 157