UMLStudio 8.0 Release Notes

These release notes apply to Version 8.0 (Build 840), released on 16 Aug 2010.

Enhancements (Since 7.2)

The following enhancements have been implemented:

New Installer (8.0, Build 840)

A new installer has been produced to support Windows 7.

JavaGram Reverse Engineering (8.0, Build 830)

Support for the reverse engineering of JavaGram code has been added.

New Installation (8.0, Build 830)

The installation script has been upgraded to be compatible with the latest version of Windows (e.g., Vista).

Improved Forte Reverse Engineering (8.0, Build 823)

Based on customer feedback, we've re-introduced Forte reverse engineering which was previously withdrawn in 7.2. The Forte parser has been revised and improved.

UML 2.1 Support (8.0, Build 822)

Version 8.0 has been substantially enhanced to support the UML 2.1 standard. All UML 2.1 diagram types and tools are now supported, with the exception of timing diagrams. Version 8.0 contains two UML notation templates: To take advantage of UML 2.1, you can convert your existing projects to use this notation. To convert, simply open the project and choose the File:Switch To Template command. A dialog is displayed, listing the available notation templates, select UML2.1 and press OK. Make sure you save the project before continuing.

To get a visual overview of the new features of UMLStudio 8.0 supporting UML 2.1, open the UML 2.1 Example project supplied with the software. You'll find this project in the UMLStudio8.0/Projects/ folder of your installation folder.

New Link Tools (8.0, Build 822)

Three new link tools have been added (to the UML2.1.not template):

New Place Tools (8.0, Build 822)

Six new place tools have been added (to the UML2.1.not template): Additionally, the Component, Decision, and Web modeling tools have been revised to be in line with UML 2.1 conventions.

Shadow Effect (8.0, Build 822)

A new visual effect has been added which causes most place objects to be drawn with a gray shadow. This enhances the visual effectiveness of diagrams. Shadowing is produced automatically using a set of heuristics, so that you don't need to worry about actually defining it when creating tools in a notation template. You can turn shadowing off by unticking the Draw Places as Shadowed where Appropriate option in Tools:Options.

Icons (8.0, Build 822)

Icon is a new primitive type in UMLStudio 8.0. It appears as a menu in the miscellaneous toolbar and allows you to create instances of predefined icons. These are useful on their own and for defining stereotyped tools (such as the Table tool).

Junctions (8.0, Build 822)

Junction is a new facility in UMLStudio 8.0. It appears as a menu in the miscellaneous toolbar and allows you to attach junctions to places. The menu provides 6 junction types: You can use junctions as source/target for links. To create a link from one junction to another, select the link tool, click in the source junction, drag, and click in the target junction.

Enhanced Place Groups (8.0, Build 822)

Place Groups have been enhanced so that you can give them the appearance of any normal place tool. This is useful for created nested places. To create a nested place, first create the diagram within the group. Then select the objects in the diagram and choose the Group As Place tool from the miscellaneous toolbar. Finally, open the property sheet for the group and select the desired tool from the Kind menu. You can also tick the Graphical check box and choose a stereotype from the Stereotype combo box if you wish. Once created, you can add objects (even other groups) to a group by dragging them inside the group. Similarly, you can drag objects out of a group to make them separate from the group.

Enhancements (Since 7.1)

The following enhancements have been implemented:

C# Code Generation and Reverse Engineering (7.2, Build 785)

Code generation and reverse engineering support for the C# programming language has been added. C# features that have no equivalent representation in UML are ignored.

PHP Code Generation and Reverse Engineering (7.2, Build 785)

Code generation and reverse engineering support for the PHP programming language has been added.

Enhancements (Since 7.0)

The following enhancements have been implemented:

Tasks Menu (7.1, Build 725)

A new menu (called Tasks) has been added. This menu is dynamically loaded with the set of PragScripts located in the Scripts/Task/ folder. Each such script implements a task. Three sample scripts are provided to illustrate how you can write scripts for your own tasks. For example, the script Duplicate Selected Places.pgs duplicates the currently selected places such that each has a new master (having a new unique ID).

New Options (7.1, Build 725)

A new option (Show Parameterized Class Arguments) has been added to the Options dialog. It allows you to show/hide the class arguments for parameterized classes.

New PragScript Functions (7.1, Build 725)

The following functions have been added to PragScript:

Batch Mode Enhancement (7.1, Build 725)

A new command line option (-revModel) for the batch mode is provided. You can use this to optionally nominate the model (within the project) where the result of reverse engineering is to be added.

Maxim Reverse Engineering Script (7.1, Build 725)

A new Reverse Engineering script has been added for parsing Maxim code.

Reverse Engineering Line Counting (7.1, Build 727)

Reverse engineering now outputs the number of lines of code for each parsed file, plus the overall total.

Generation Scope in Batch Mode (7.1, Build 727)

A new batch mode command line option (-scope) has been added to control the scope of code/doco generation.

Ada 95 Reverse Engineering Script (7.1, Build 730)

The script for Ada 95 reverse engineering has been completed. You can now use this feature to produce UML diagrams from your Ada 95 code.

Expand Classes Task Script (7.1, Build 730)

A new task script has been added which allows you to expand the relationships of one or more classes (in a class model). Simply select the classes you want expanded and choose this script from the Tasks menu.

Link Type Support (7.1, Build 740)

A new Type field has been added to the property sheet of links. If you specify a type for a link, then this type is used during code generation, rather than it being deduced from the link source/destination classes.

Support for Types in Code Generation and Reverse Engineering (7.1, Build 740)

Types specified in the Type tab of a class are picked up by C++, IDL, and Ada code generators. They are also populated during reverse engineering of C++, IDL, and Ada code. For reverse engineering, all such definitions must appear inside the class, otherwise they will not be parsed.

License Dialog (7.1, Build 746)

The behavior of the License dialog and the underlying license verification has been improved to facilitate easy switching between Standalone and Floating license modes. After installing UMLStudio on a laptop, you can configure it to run as standalone by entering the license details. Then switch to the Floating license mode and configure it to point to a deployed UMLServer. After a successful run in both modes, you can switch between the two by simply going to the License dialog, selecting the desired mode, and pressing OK. None of the fields needs to be changed or re-entered. For security, the Key Code and the Password fields will always appear as blank. In such cases, UMLStudio will use the last saved value for these two fields.

Options Registry (7.1, Build 747)

Storage of Options dialog values in the Registry has been improved so that non-admin users that have no prior settings receive correct default values.

Enhancements (Since 6.2)

The following enhancements have been implemented:

Batch Mode (7.0)

The new Batch mode allows you to run UMLStudio from command line and, using command line arguments, execute a PragScript (e.g., to generate code or documentation) or perform reverse engineering (for hard-coded as well as script-based languages). See Chapter 6 of the User Guide for details.

Types inside Classes (7.0)

The class property sheet now contains a Types tab, which can be used to defined simple, enumeration, and structured types within the class. Annotated types appear inside the class (below the attributes) and are drawn in italics. Annotated types are also displayed in the Class Annotation tab. See Chapter 8 of the User Guide for details. Such types are currently ignored by reverse engineering and code generation scripts.

New Class Layout Algorithm (7.0)

A new algorithm has been incorporated for the layout of class diagrams produced as a result of reverse engineering. This algorithm is smarter than the previous one and produces better results.

New Reverse Engineering Framework (7.0)

The reverse engineering framework has been substantially revised. In the previous framework, the implementation of reverse engineering for each programming language had to be hard-coded into UMLStudio. The new framework allows you to write the implementation in PragScript, so that users can view and customize it. The old framework is still included (as it supports the existing languages supported by UMLStudio). See Chapter 6 of the User Guide for details.

Ada 95 Reverse Engineering (7.0)

A simple script for reverse engineering Ada 95 code is included in this release. Please note that this script is incomplete and still subject to further development. However, it contains enough detail to illustrate how reverse engineering scripts can be written for any language. The relative path for this script is /UmlStudio 7.0/scripts/RevEng/.

Changes to Class Annotation (7.0)

In accordance with the UML conventions, abstract and virtual methods now appear in italics, and static attributes and methods appear underlined.

New UML Symbol for Instantiation (7.0)

A new link symbol (stereotype) has been added to the UML notation template for class instantiation.

PragScript Extensions (7.0)

PragScript has been extended with a number of new functions, which further support the task of writing scripts for reverse engineering. See Chapter 7 of the User Guide for details.

Revised Documentation (7.0)

The online help pages have been revised in a number of places to accurately reflect recent changes.

Bugs Fixed (Since Build 712)

Copyright © 1997-2010 PragSoft Corporation. All Rights Reserved.