This new MagicDraw version features a notably enhanced Use Case Scenario editor. Now the editor is much more intuitive as all the functionality needed for entering and managing use case scenarios is available under a separate, dedicated property group in the Use Case Specification window. It is now easy to trace from alternative and exceptional flow steps of the Use Case Scenario to the basic flow and vice versa. It is clearly seen which basic flow steps have alternative or exceptional scenarios. Adding steps that are defined in included and extending use cases is also allowed.

Another important Use Case Scenario extension is the ability to synchronize a scenario and its corresponding Activity diagram automatically in real-time. Define the Use Case Scenario and click the Open Activity Diagram button to see the workflow of the defined actions. Any changes made in the Use Case Scenario specification panel will be automatically reflected in the underlying Activity diagram. The following picture shows an Activity diagram automatically generated for the Use Case Scenario example entered in the preceding figure:

Note: The Use Case Scenario Editor is available in MagicDraw Standard, Professional, Architect, and Enterprise editions.

1.2. Free Zachman Framework plugin

The Zachman Framework is a formal and highly structured way of viewing and defining an enterprise from different perspectives. It is represented as a schema used for enterprise architecture modeling.

No Magic has implemented this vision by developing a new free Zachman Framework plugin which provides the following:

A sample project which can be found in the <MagicDraw installation directory>\samples folder.

1.3. Model refactoring functions

In this release, the refactoring functionality has been extended. Refactoring allows users to modify model elements including all related data. With the newly introduced refactoring functionality, users can convert element types more flexibly, decompose activity and composite structure diagrams, replace elements, or change the direction of a particular relationship.

Element conversion improvements. From now on, it will be possible to perform bulk element and relationship conversions in the Model Browser and diagrams. The new approach saves a lot of time when doing conversion-related tasks as instead of selecting every single element and converting it to an element of another type one by one, multiple elements and relationships can be selected and converted to new types. The new approach preserves properties and relationships connected to the element during the conversion process. In addition, the list of elements offered for conversion has been noticeably enlarged. Now this list is generated dynamically depending on the type of the initial element.

Extracting Activity diagrams. The selected part of an Activity diagram can be extracted into a separate diagram representing a separate activity. This type of refactoring is very helpful when activity diagrams grow large and, in order to make the diagram more readable, the refactoring needs to be done to extract specific activity diagram parts into another activity diagram.

Note: This feature is only available in MagicDraw Enterprise and Architect editions.

Extracting Composite Structure diagrams. The selected part of a Composite Structure diagram can be extracted into a separate diagram. While extracting, you can create or select the owner for the extracted diagram, visibility and aggregation of the element that will own the extracted part(s) after the extraction is completed. This type of refactoring is very helpful when composite structure diagrams grow large and, in order to make the diagram more readable, the refactoring needs to be done to extract specific diagram parts into another composite structure diagram.

Note: This feature is only available in MagicDraw Enterprise and Architect editions.

Reverse direction. The direction of some relationships, such as an association, communication path, transition, protocol transition, control flow, and object flow, can now be easily reversed by simply selecting a single menu command. Select the relationship either in the Model Browser or its path on the diagram pane and use the relation’s shortcut menu to change its direction.

New refactoring commands arrangement. To provide more clarity, all existing refactoring commands have been moved under the Refactorcommand in the shortcut menu of the particular element. These commands are as follows:

Split Control Flow for the selected Control Flow edge

Split Object Flow for the selected Object Flow edge

Join Connector for the selected split Control Flow or Object Flow edge

Convert To > Output Pin for the selected Object Node

Convert To > Input Pin for the selected Object Node

Convert To > Object Node for the selected Output or Input pin

Convert To > Attributes for the selected Association that has roles defined

Convert To > Association(s) for the selected Classifier or Attribute

Select an element, open its shortcut menu, click Refactor and select the command that meets your needs.

1.4. Automatic Instantiation Wizard

The Automatic Instantiation Wizard allows for creating element instances within just a few clicks. It is especially useful when working with complex models or assembling large systems from parts. While creating instances automatically, you can:

Select what properties to display

Change types of instantiated properties

Assign default values for instantiated properties

For properties having the multiplicity more than 1, you can create as many instances of the same type as you need since parallel parts can be added while creating instances. Previously, this feature had been supported by the SysML plugin only.

1.5. Pusher and Magnet

This feature allows you to easily rearrange element symbols on a diagram. Pusher moves a group of symbols towards the pushing direction thus creating an empty space for adding new symbols to a diagram.

Magnet works in the opposite way. It moves the selected group of symbols to reduce empty space on a diagram.

Now you do not need to select separate symbols on a diagram to move them to another location. Just click the Pusher or Magnet button on the diagram palette and move the whole group of symbols toward the direction you need.

1.6. Diagram Legend

MagicDraw 17.0.2 features a Diagram Legend that is designed to allow the definition of commonly-used styles for diagram symbols. It allows a modeler to group symbols visually on a diagram according to purpose or any other criteria defined by the user. Using this feature, users can define as many legend items as they need and apply them to symbols and paths on a diagram. In the project, a diagram legend defined by a user is a model element that can then be reused not just in all diagrams of the same project, but also in other projects.

1.7. Copy and paste symbol style

A symbol style defined in symbol properties can now be copied and pasted on another symbol with just a few clicks. Copy a symbol, select one or more other symbols of the same type where you need to paste the copied properties and use a command Edit > Paste Style, shortcut keys CTRL+SHIFT+V, or click the Paste Style button on the diagram toolbar to paste the copied symbol style onto the selected symbols.

1.8. Background tasks

To increase MagicDraw’s responsiveness, some low-priority or routine tasks (such as searching) have been moved to separate threads and are performed as background tasks. Users may continue working with their models as usual while background tasks are running. Furthermore, users are allowed to cancel the selected background task at any time, just by clicking the End process icon near the task.

1.9. New Open API

As of MagicDraw version 17.0.2, a new Open API for accessing and modifying generic tables is available. This functionality allows users to create a generic table, manage generic table filters, columns, rows, and cell values.

1.10. New resources

A new MagicDraw project sample named Product portfolio for software engineering sample has been added. It can be downloaded using MagicDraw Resource/Plugin Manager.

The sample describes the whole product portfolio for software engineering. This sample guides you from the business analysis stage to requirements, architecture, and testing of an information system for a training organization. The sample shows how technologies such as simulation, analysis, UI prototyping, report generation, and BPMN, SysML, and UML modeling languages can be used in conjunction with one another. Also, the sample demonstrates the integration of MagicDraw, Cameo Simulation Toolkit, SysML, and Cameo Business Modeler products and how they work together to accomplish the goal.

Note: To see the Product portfolio for software engineering sample, please visit here.

2. Enhancements

2.1. Performance Enhancements

The performance of a Composite Structure diagram and an Internal Block Definition diagram in the SysML plugin has been drastically improved. The time required for loading a diagram or displaying parts has been reduced up to 10 times when working with large diagrams.

MagicDraw 17.0.2 has performance-related enhancement when working with large projects, where they have hundreds of thousands of elements and a thousand or more diagrams. Now while loading a lot of data, for example, when the Containment tree item or a category in the Select Element dialog is expanding, MagicDraw clearly shows the progress of the operation being performed. The operation being performed can be canceled at any time by clicking the Cancel button.

Starting with this version, only the diagrams that are created in the current project are displayed in the Model browser’s Diagram tree, not all diagram types as it was in earlier MagicDraw versions. Diagrams are displayed as a list or are grouped by their type.

The element search algorithm has been improved and search performance has increased in many cases.

2.2. State Machine diagram enhancements

An existing behavior can be dragged-and-dropped from the Model Browser to a Transition path or a State shape on a diagram. Either an effect is assigned for the Transition or an entry/do/exit behavior is assigned for the State. A new Activity is created automatically, as well as with a Call Behavior Action. The latter is calling the original (dropped) behavior thus enabling the behavior’s reusability.

When a behavior type is selected for the Transition’s effect or for the State’s entry/do/exit in the element Specification window, a corresponding behavior diagram is created automatically.

2.3. Generic numbering mechanism for numbering Use Cases

The generic numbering mechanism is now used to number Use Cases. This functionality is available in MagicDraw Standard, Professional, Architect, and Enterprise editions.

The generic numbering mechanism allows for:

Automatically assigning a unique number to the Use Cases when they are created or moved.

Easily identifying and finding Use Cases in the model when communicating with colleagues or stakeholders.

Showing a Use Case’s place in a hierarchy.

With the generic numbering mechanism, you can easily:

Customize any currently applied numbering formats (schemes) for Use Cases.

Create and apply your own numbering formats.

Change the numbering format while creating new Use Cases.

Furthermore, MagicDraw supports the ability to migrate from an earlier numbering mechanism that has been used to number Use Cases to the new one.

After the migration, all obsolete numbers are adapted to a numbering format and can be customized with the generic numbering mechanism.

The message parsing rules have been considerably enhanced in the current MagicDraw version. Arguments, parameters, and return values that are specified to a message on a sequence diagram are parsed and new operations can be created. If any syntax errors are found, users are warned and offered a suggestion on how to fix them.

Recovered elements (formerly known as orphaned proxies) are elements still referenced by other elements in a project but currently not available in a module. They may appear when working with several interrelated projects in a team. Recovered elements are marked with an R symbol.

If recovered elements are in the model, it is an indication that some data in the projects where this element is used was not completely removed. Fixing the model is recommended using one of the following solutions:

Clear usages of the recovered element. This allows for removing all the broken references of particular recovered element.

Replace usages of the recovered element. This allows for replacing all the broken references of particular recovered element to another existing element.

Restore recovered elements. This allows for the creation of a new element from information the recovered element has. Broken references to this recovered element become secured.

2.6. Better redefinition support

Starting with this MagicDraw version, the redefinition of attributes, ports, and operations (including inherited ones) has been enhanced thusly:

To redefine attributes, ports, and operations more easily, the Redefine button has been added in the Specification window for these elements.

If an inherited property is redefined, only the redefined property is displayed in Select Parts, Select Ports, and Display Lifelines dialogs.

2.7. Enhanced support for displaying Parts, Ports, and Lifelines

Dialogs for selecting parts, ports, and lifelines have been updated, as well as Attributes, Operations, Ports, and Signal Receptions group properties in the element’s Specification window.

When selecting parts, ports, or lifelines to display in diagrams, users can now see:

Full types of displayed parts, ports, and lifelines. Click the Show Full Types button to display their types.

Inherited parts and ports. Click the Show Inherited button to display for selection or hide these elements.

Private inherited parts and ports. Click the Show Private Inherited button to display for selection or hide these elements.

When selecting ports to display, users can select the port layout — to display the selected ports on the top and bottom or on the left and right side of the shape. In the Select Parts and Select Ports dialogs, properties are now categorized by the owner.

In the Specification window, users can select to display or hide private inherited attributes, operations, ports, and signal receptions. On the particular property group toolbar, click the Show Private Inherited button to display or hide private inherited properties.

2.8. Easier management of derived properties

MagicDraw now allows for creating and editing derived properties directly in the generic table or element’s Specification window. A derived property is one whose values are calculated automatically from the other properties’ values.

In the generic table, a new derived property can be created by adding a new column. After the column is added, the expression of the newly-created property can be edited, and typical manipulations for the column and cell of a generic table are allowed as well.

In the element’s Specification window, derived properties could be created, edited, and deleted in the Traceability property group.

2.9. DSL relation selection in Criterion Editor dialog

From now on, relations defined using a DSL are displayed in the Criterion Editor dialog and can be selected as relation criteria for simple expressions while defining derived properties.

2.10. Diagramming enhancements

The initial pseudostate with a state connected to it is automatically created on the diagram pane when a State Machine Diagram is created. This makes creation of diagrams quicker as these elements are always created automatically when creating the State Diagram.

In Activity diagrams, when a new action that must have mandatory pins is created, pins are automatically added to that action on the diagram pane as well as in the Model Browser.

When a selected relationship is reconnected to another element, only the appropriate end of this relationship is changed instead of creating a new relationship as it was in earlier MagicDraw versions. The relation end can be changed on the diagram pane or in the Specification window of the selected relationship. Note: If a relation has an Information Flow assigned, it will be reset after reconnection to another element.

In Composite Structure diagrams:

The internal structure of the elements can be displayed. Previously, this feature was supported only by the SysML plugin.

The port type and name can be displayed inside a port symbol on a diagram. To display it, select a port and set Show Name, Show Type, and Show Name and Type Inside property values to true.

As of MagicDraw version 17.0.2, you can add ports or pins to the element symbols having images on the shapes.

The constraint expression and name can be edited directly in the element shape or path on the diagram.

Notes: To see the constraint expression, make sure the Show Constraint value is set to true in the Symbol Properties dialog. In the same dialog, you may specify the Constraint Text Mode property. Select one of the following constraint modes to display: the constraint name, expression, or both the name and expression.

A hyperlink to the model element is created in the Note or Text Box symbol on the diagram after one or more elements are dragged to the Note or Text Box from the Model Browser or Specification window.

Layout and representation of pins and ports on a diagram has been enhanced. When displaying assigned pins or ports on a shape:

Input pins and ports are put on the top of shapes and output pins and ports are put on the bottom of shapes by default.

Shapes are resized automatically if ports or pins do not fit on the shape. Shapes do not resize automatically if they have connections to other symbols on a diagram. In this case, ports and pins are automatically put on other edges of the shape.

The default name “unnamed” is not displayed on a diagram if a port or pin has a type assigned but does not have a name.

The type of a port or pin is not displayed on a diagram if its type is Interface and Required / Provided interfaces are already shown.

In Composite Structure diagrams, the default values for port symbol properties Show Provided Interfaces and Show Required Interfaces are true now. Symbol property values can be defined in the Symbol Properties dialog.

Press CTRL+SHIFT+T to open the last closed diagram.

2.11. Ability to search for diagrams in the Print dialog

Now the diagram search can be used to select diagrams to print. The same features have been implemented when selecting diagrams in the print preview window and when saving diagrams as images.

Diagrams can be selected form the model tree or list for printing.

Also, all opened diagrams can be printed now without searching and selecting them in the model tree or list any more. Just open desired diagrams, select the All opened diagrams option in the Print dialog, and all opened diagrams will be printed.

2.12. Report Wizard enhancements

Output file names can now accept types of variables such as date and author.

Options have been added to allow choosing between paragraph marks (\par) and line breaks (\line) when documentation elements are inserted in RTF reports.

The replacement of empty values with text features has been deprecated to avoid the confusion between null values and empty values.

The Web Publisher is capable of supporting links in the UPDM diagram to ensure the accessibility of interlinked diagrams.

The capability of splitting images into several chunks across pages is now available.

Templates and DSL elements for new use case profiles have been updated.

The performance of loading the Web Publisher has been improved with the progress bar.

2.13. Element Selection dialog enhancements

Element creation capability in the Select Element dialog has been enhanced to be more easily found by the first-time users. The Creation Mode button is visible now all the time with the always-visible textual label on it. Just click the Creation Mode button and you will be able to create a new element or clone an existing one. There is a new shortcut menu which allows the same actions. Using this shortcut menu, you can:

Turn on and off the element creation mode

Create a new element or clone an existing one

Load modules

Expand and collapse all or a selected model element

2.14. Search functionality enhancements

As of MagicDraw version 17.0.2, the search feature has been moved to a background task. It allows users to work with models while a search is in progress. The search progress can be seen in the task manager that appears in the status bar at the right side of the window bottom.

Search results are displayed in the Search Results tab in the Model Browser. Results are presented into two groups:

Symbols that are found in loaded diagrams

Elements that are found in the model

Users are notified if more than a thousand results have been found. It allows the prevention of a supererogation search if the search criteria were not clearly specified.

2.15. New element placing in Quick Find dialog

Element type options have been moved up to the top of the dialog and the list of found model elements does not overlap with these options. Now search options can be modified without closing the list containing search results.

2.16. Teamwork Server enhancements

From now on, symbol styles can be locked while working with Teamwork Server projects. This new enhancement allows symbol styles to be edited in the Teamwork Server project by only one user at a time. Symbol styles can be locked in two ways:

From the Lock View tab in the Model browser.

From the Project Options dialog.

The Teamwork Server Administrator's console has a new property called muserver.authentication.name.casesensitive. This property allows the Teamwork Server administrator to set the case sensitivity for user login name.

2.17. Code Engineering

Java 7 is now supported for code generation and reverse in MagicDraw.

2.18. Other enhancements

As template parameters are used in very specific cases, the Template Parameter property group has been moved from the Standard property group to the Expert or Allgroup in the Specification window:

For Class, Interface, and Package elements, the Template Parameter property group has been moved to the Expert mode.

For all other elements the Template Parameter property group has been moved to the All mode.

To specify a Template Parameter, switch the property display mode to Expert or All in the element’s Specification window.

Cloned attributes, operations, and ports are added to their owner, not to the owners of a selected generic element as it was in earlier MagicDraw versions.