Service Pack 1 (SP1) was released on 19th February 2014
Find out what's new in MagicDraw 17.0.5 FR SP1

Release date: 3rd December 2013

1. New Features

1.1. Smart packages
1.2. Favorites
1.3. Gradual upgrade of Teamwork Server clients

2. Modeling / Diagramming Enhancements

2.1. Layout enhancements
2.2. Easier modeling in Composite Structure diagrams
2.3. Easier modeling in Activity diagrams
2.4. Other

3. Analysis Diagram Enhancements

3.1. Ability to easily identify different relation criteria in Relation Map
3.2. Easier analysis with Dependency Matrix
3.3. Open API for Dependency Matrix customization

4. Common Usability Enhancements

5. ReportWizard Enhancements

6. Other Enhancements

6.1. Automatic Java selection
6.2. Automatic check for updates
6.3. Enhancements in expression evaluation engine
6.4. Ability to create Duration, Interaction or Time Constraint
6.5. Ability to hide Name Auto Completion list for DSL element

7. Important Information

8. Fixed Issues

1. New Features

1.1. Smart packages

Need to see all non-verified requirements of the particular version in a single view? Have all frequently used elements within the same package? Get a list of all the interfaces used in the model? Pick up elements from different places of the model, into one package, for easier scope definition when generating a report? Use smart packages!

The smart packages do not hold anything, but display elements stored elsewhere in the model and continually update to display elements that meet the search criteria specified by a query. The smart packages save your time when you would otherwise need to rebuild a search from scratch. They also help to find, track, and organize your model elements. The smart packages are treated like regular packages and can be used in Dependency Matrices, both Find and Quick Find dialogs, element Selection dialog, and other places in the application.

Creating a smart package is as simple as creating a regular package.

Once the smart package is created, you are ready to specify the query for gathering its contents. For specifying queries, use the Query dialog, which reflects numerous enhancements of the powerful expression evaluation engine. Let’s say we need to have all requirements from the package HSUV Requirements with tag value version=5.

Tip! If you perform a search after specifying criteria the Find dialog, and only then realize it would be handy to have a smart package that uses those criteria, simply save the search results as query of a new smart package.

new smart package from search res

From now on every new requirement in the package HSUV Requirements will be automatically included into the smart package if tagged with version=5.

The smart package can be selected as the row or column scope in a dependency matrix. The scope will update after any update of the smart package contents.

You can also select the smart package as a search scope in both Find and Quick Find dialogs, element Selection dialog, and other places in the application.

1.2. Favorites

Save time by marking any element that you regularly use in your model and need to access quickly as a Favorite.


Using Favorites also speeds up the scope selection in:

  • Quick Find dialog
  • Element Selection dialog
  • Autocompletion lists

1.3. Gradual upgrade of Teamwork Server clients

The new version of the client application can connect to an earlier* version of Teamwork Server. This feature enables the gradual upgrade of Teamwork Server, which will make the upgrade process smoother in larger organizations.

By using the gradual approach for upgrading Teamwork Server, different teams from the organization can migrate their server projects independently of each other and still work with the same Teamwork Server. A team that has switched to the new version of the client application, and needs to work with server projects, no longer has to wait while other teams complete their work with the earlier version of the client application in order to upgrade the server. Upgrading Teamwork Server is not required to access server projects with the upgraded version of the client application. The upgrade of Teamwork Server can now be postponed until all client applications are upgraded.

An additional benefit of the feature is the ability to try out the new version of the client application with real-life server projects without upgrading the server.

multi versioning design


*Starting with Teamwork Server 17.0.4 (update the license key of the server to enable connections from specific versions of client applications).

2. Modeling / Diagramming Enhancements

2.1. Layout enhancements

  • When drawing new paths, MagicDraw automatically chooses the optimal route to avoid crossing of shapes.
    layout drawing path
  • When drawing a new path, the path end is connected to the shape center. Note this is valid if the shape is small enough.
  • Layout inside Swimlanes has been enhanced and now symbols are layed out based on the Partitions to which they belong.
  • Labels no longer overlap after applying the automatic layout on the diagram.
  • The shape no longer changes position after selecting to display related elements.
  • Enhanced layout for association classes.
  • When inserting a shape into a path in an Activity or State diagram, a space is made automatically for the new shape and shapes no longer overlap each other.
  • MagicDraw introduces the smart shape sizing when drawing new shapes from other shapes via paths. The size of the newly created shape is kept the same as the size of the shape from which the path is drawn. shape size

2.2. Easier modeling in Composite Structure diagrams

Modeling of Composite Structure diagrams is greatly simplified. Modeling in Composite Structure diagrams will be much faster now as Ports will automatically be created when drawing Connectors from other Ports. It will be possible to easily create Ports when drawing Connectors to the diagram frame. In addition, depending on the Type Selection Mode you choose, you will be able to skip the specification of Part types and set them later.

modeling in csd

The figure illustrates the following modeling enhancements:

  • Draw connector to / from diagram frame. You can now draw a Connector directly to or from a Composite Structure diagram frame. As a result a Port will be created on the diagram frame.
  • Select compatible or create new port. You can now select from the list of existing Ports or create a new one when drawing a Connector from a Port.
  • Refine Type using new Type Selection list. You can now easily change the Part type using a new Type Selection list without losing data when Ports on the Part are created. Ports will be replaced with new ones of a new type and Connectors will reconnect to them.

Other enhancements in Composite Structure diagrams:

  • You can create a Port or a nested Part on the Part even if the Part type is not specified. In this case, MagicDraw will automatically create a type for the Part, on demand.
  • You can now create a Composite Structure diagram for the Part directly from the Smart Manipulator toolbar and in this way easily model the inner structure of the type and deepen the level of your model.
  • Connectors now display in the new Connectors group in the element Specification window. This new enhancement allows you to distinguish Connectors by their context.
  • The legacy “unnamed1, unnamed2 …” naming schema is replaced by more useful default naming where Ports are named the following: “p1, p2 …”.

2.3. Easier modeling in Activity diagrams

2.3.1. Create behavior automatically

MagicDraw introduces new Automatic Behavior Creation mode. When the mode is on, Behaviors are created automatically on Action creation. Furthermore, Parameters are created on Pin creation automatically. This helps to save time and to maintain consistency in your model.

2.3.2. Quickly display Properties as Swimlanes in Activity diagram

To represent your Properties as Swimlanes easily, create a new Swimlane in the diagram and you will be offered the list of Parts to be displayed as Swimlanes. Note that the Activity diagram should be created under the Classifier that owns the Properties.

represent properties

The illustration displays concepts from the SysML plugin.

2.3.3. New drag-and-drop operations

  • Drag a Class, Property, Actor or Instance Specification to an Activity diagram to create a new Swimlane.
  • You may also add new Partitions to the existing Swimlane, by dragging elements.
  • If you drag an Activity, Interaction, or State Machine to an Activity diagram, Call Behavior Action is created.

TIP! Drag the elements by using the right mouse button and from the shortcut menu, select to create Activity diagram elements.

activity diagram2

The illustration displays concepts from the SysML plugin.

2.4. Other

  • Symbols that overlap with an Activity Partition on the Activity diagram are now highlighted as invalid.
  • Parameter direction now displays on Activity Parameter Node shapes on diagrams.
    direction of activity parameter node
  • A new button has been added to the class diagram pallet for quick creation of non-navigable association classes.
    non navigable assoc
  • The element name and the Element Properties compartment are now separated by a line on the element shape.
  • Designing of tables and trees in the User Interface Modeling diagram is now more flexible. Reorder columns or nodes and leaves simply by changing their numbers.
  • By using the new change type button in the Smart Manipulator toolbar, you can now quickly create or change the behavior of the Call Behavior Action, the type of the Lifeline, the classifier of the Instance Specification, the behavior of the Interaction Use, the type of the Collaboration Use, and others.
  • If a Property, with private, protected or package visibility is converted to a Port (Refactor > Convert To > Port), the visibility of the Port becomes public.
  • Behaviors are now grouped to the Owned and Inherited groups in the Behaviors property group of the element Specification window.
  • Diagrams look cleaner now - grid lines no longer display on diagrams by default (snapping to grid lines will still be on).
    no grid lines

3. Analysis Diagram Enhancements

3.1. Ability to easily identify different relation criteria in Relation Map

You can now easily identify different relation criteria represented on a relation map. For this capability, the relation map has been enriched with the following enhancements:

  1. Colors. Select the colors when specifying the relation criteria you need to see on the relation map.
  2. Legend. Identify relation criteria by colors. The legend will be included in a report, image, or printed copy of the relation map.
  3. ToolTips. Move the pointer over an arrow to see the relation criteria it represents.

The ability to represent colored relation criteria on relation maps will help you when performing a traceability, impact, or coverage analysis. As the following figure shows, you can now

  • Use the same or similar colors to represent different relation criteria between the elements in the same phase of a project development.
  • Use different colors to represent relation criteria between the elements that belong to separate phases of the project development.

rel map requirements coverage analysis

The illustration displays concepts from the SysML plugin.

3.2. Easier analysis with Dependency Matrix

  • You can now sort both rows and columns either in ascending or descending order (see the following figure) or create your own order by shifting selected items (either grouped or non-grouped) from one place to another. The sort order persists after changing the row or column owner's display mode.

    To shift the selected items, use either appropriate commands from the row or column shortcut menu (see the following figure) or key combinations, such as Ctrl+Arrow.
  • Now you need fewer clicks to create or remove a relationship.
  • You can now choose to select a relationship in the Containment tree or open its Specification window from the cell's shortcut menu.
  • One more popular option can now be specified directly in the Criteria area of the matrix. In earlier MagicDraw versions you could change the Show Elements option only in the Specification window of the matrix, but not in the Criteria area.
  • Relationships with stereotypes applied can now be more easily selected as dependency criteria from the Dependency Criteria dialog (in earlier versions, the Criterion Editor dialog). Now you need a single click to select a relationship with a stereotype instead of performing the whole workflow: selecting a relationship and then specifying the appropriate stereotype as the Applied Stereotype property value for the more precise filter as it was in earlier MagicDraw versions.

3.3. Open API for Dependency Matrix customization

You can now use the open API to

  • Create custom types of the dependency matrix. Customize a dependency matrix as follows:
    • Configure the toolbar (1), shortcut menus of the row or column element (2), cell (3), and Criteria area (4).
    • Assign shortcut keys for commands.
    • Define custom dependencies that can be created in the matrix (5).
    • Specify the appearance of the matrix, that is, change the default colors of the cell and both row and column headers, assign custom icons to represent dependencies, etc. (6).
    • Define cases when specific dependencies should be updated without rebuilding the whole matrix.
  • Export the data of a dependency matrix to any format (7).

No Magic, Inc. provides instructions on how to use the open API and a sample project, which can be found in \openapi\examples\dependencymatrix.

4. Common Usability Enhancements

  • You can now start a quick search by clicking a new toolbar button on any open tab (Containment, Diagrams, etc.) in the Model Browser.
    quick find dlg
    Note: You can also open the Quick Find dialog from the main menu, as in earlier versions.
    Select Edit > Quick Find.

  • You can now see the full length of a long text that is cut off by the border of a list or a tree area. Move the pointer over a cut-off text to see the full length.

  • You can now easily navigate either to the previous or to the next open diagram. A toolbar for navigation has been added to all the diagrams:
    • In dependency matrices, relation maps, and generic tables, find the new toolbar on the toolbars area.
    • In another diagram, move the pointer over the bottom-left corner of the diagram pane to see the new toolbar.
      navigation buttons
  • A list of suggested elements can now be reduced by clicking a specific button. As a result, all irrelevant elements will be excluded from the list.
  • You can now lock, unlock, or discard changes of multiple elements just in one click. The appropriate commands have been added to the shortcut menu of multiple elements selected on a diagram.
  • The shortcut menu of an element selected in the Model Browser has been refined as follows:
    • The Create Symbol command has been excluded.
    • The Generate Code Framework and Check Syntax commands have been moved to the submenu of the Tools command.

5. ReportWizard Enhancements

  • The capability of Web Publisher has been optimized as follows:

    • You can now see the details of an element  that has an active hyperlink in the Specification tab by clicking the element's icon in the Containment tree.
    • The new Diagrams tab has been added to the Web Publisher report to allow you to easily see all diagrams that are grouped by diagram types.
    • You can now click an element in the Containment tree and see all diagrams that represent the element in the new Appears in tab.
    • A newly-added report variable allows you (when clicking a hyperlink on an element) to choose between the normal MagicDraw's active hyperlink behavior and the auto-navigation to the last active hyperlink behavior (similar to transitive behavior).
  • When generating a report via the command line, you can now choose whether to overwrite existing file(s) before generating the new one(s).
  • This release improves the DSL properties handling. You can now use any nested property in any # directive.
    For example:
    #foreach ($e in $Package)
        #if ($e.tags.Sample)
  • To retrieve slot variables and values, you can now use shortcuts instead of velocity code.
  • The performance of the FTP and FTPS upload function has been improved.
  • Report variables' values can now utilize HTML formatting.

6. Other Enhancements

6.1. Automatic Java selection

MagicDraw no longer suggests selection of a Java version on Windows OS while installing MagicDraw, as from now on the bundled Java is the default. Most testing and debugging were performed with the bundled Java version, so the use of this JVM is highly recommended.

Note: You still can change the default Java according to instructions provided during installation.

6.2. Automatic check for updates

MagicDraw now automatically checks for updates according to the Check for Updates option and displays a notification if updates are found.

6.3. Enhancements in expression evaluation engine

The expression evaluation engine now allows for

  • Defining reusable expressions in the model and calling them from another expression.
  • Calling expressions with multiple parameters, for example, calling the search operation with the following parameters: scope, search text, search options, and type filter.
  • Combining several expressions into a single expression. The results of calculation of one expression can be passed into another as arguments.

The redesigned Criterion Editor dialog reflects these enhancements.

6.4. Ability to create Duration, Interaction or Time Constraint

You can now create a Duration, Interaction or Time constraint from the element Specification window.

create constraint

6.5. Ability to hide Name Auto Completion list for DSL element

You can now hide the list of already existing elements that appears when typing a name for a new element in the model. This list is typically needed only for elements which are displayed in several diagrams. To turn off this list for a specific element type, set the Do Not Suggest Name Auto Completion property to true while specifying the customization element.

7. Important Information

Be informed that starting with the next version, MagicDraw will stop supporting both Mac OS X Leopard and Mac OS X Snow Leopard.
Also, MagicDraw will no longer be compatible with Java SE 6, thought Java SE 6 based code engineering will still be supported.
If you have any questions or concerns regarding these matters, please contact us by email: This email address is being protected from spambots. You need JavaScript enabled to view it..

8. Fixed Issues

To open the list of publicly available or your own issues those have been included into version 17.0.5 FR, click here.

Note: You will be required to login. Use the same username and password as for

You may find many more possible solutions for known issues at No Magic Community Forum that is regularly updated with new topics. 

  • 1
  • 2
For more information or a quote
please contact
or call +1-214-291-9100.