Visual UML version 5.0 Update Release Notes

 

Version 5.0 Release (Build #590 – June 30th, 2006)

 

NOTE: Model files (*.Uml) created by Visual UML version 5.0 (or later) are NOT backwards compatible with Visual UML version 4.x (4.3, 4.2, 4.1, 4.0) or earlier. Therefore, Model files (*.Uml) created by Visual UML version 5.0 (or later) can NOT be opened by Visual UML version 4.x (4.3, 4.2, 4.1, 4.0) or earlier.

 

Overview of Key New and Improved Features

 

1.       Updated support for Java 5.0: enums, initializers, generic classes & references (type parameters & arguments), generic methods & constructors, variable parameters list annotation for methods.

 

2.       Updated support for C# 2.0: generic classes & references (type parameters, arguments & constraints), generic methods (type parameters, arguments & constraints), namespace aliases (e.g. global::), static classes. project classes selection.

 

3.       Updated support for VB.NET: new data types.

 

4.       Improved addition of types and members for C#, C++, Java, VB.NET, VB6.

 

5.       Improved determination of appropriate referenced classes when reverse-engineering C#, Java and VB.NET code.

 

6.       Improved support for database design/modeling. Easier to add table columns, indexes, constraints (PKs, unique, checks), triggers, rules, etc.

 

7.       Added support for PostgreSQL (up to version 8.1) database design/modeling, code generation & reverse-engineering: Tables & Columns, Primary Keys (PKs), Indexes, Unique Constraints, Check Constraints, Comments, Foreign Keys (FKs), Triggers, Rules, Functions, Domains, Views, etc.

 

8.       Updated support for MySQL (up to version 5.0) database design/modeling, code generation & reverse-engineering.

 

9.       Updated support for Oracle (up to version 10g) database design/modeling, code generation & reverse-engineering.

 

10.   Improved support for database schema generation & reverse-engineering.

 

11.   Added several new fields to Requirements: Source, Released, Assigned To Name, Assignment Date.

 

12.   Pick lists for certain options for Requirements, Test Cases, Constraints and Use Cases are now editable.

 

13.   Improved Visual Studio 2005 add-in feature.

 

14.   Updated Case Complete interface (import) supports new version 2.5 of Case Complete.

 

15.   Can import database projects from ImportER for reverse-engineering of database SQL scripts, etc.

 

16.   Assorted bug fixes and feature improvements.

 


Detailed Description of New and Improved Features and Bug Fixes

 

Code Class Creation & Definition

 

1.       When adding an Operation to a Class to define a Method, Constructor or Destructor for C#, C++, Java, VB.NET or VB6 using the Add Code Class Member menu or Toolbar, the Method Body Code dialog box appears followed by the Operation Parameters dialog box so you can add code and parameters to the new Method. The Method Body Code dialog box and/or Operation Parameters dialog box are also invoked for certain other types of added Operations depending on the Class language type, such as Indexers and Operators for C#.

 

2.       The Template Class button/command is now available in the Add Code Class toolbar and menu when the target language is Java or C# to enable addition of a Template (Generic) Class for Java or C#.

 

3.       When adding a Template Class for C++, C# and Java to the Model or to a Diagram, the Class Parameters dialog box is now invoked so that you can add Parameters to the new Template Class for C++, C# and Java.

 

4.       Added a Parameters button/command to the Add Code Class Members Toolbar and Menu to enable adding/editing the Parameters of a selected (Template) Class for C++, C# and Java in the Model or on a Diagram. Note: If the selected Class is NOT already a Template Class you will be prompted to make it a Template Class before being able to add Parameters to it. The Class Parameters dialog box is then invoked so that you can add, edit, or delete Parameters of the selected Template Class.

 

5.       Added an Enum Member button/command to the Add Code Class Members Toolbar and Menu to enable adding an Enum member name and value to a selected Enum Class in the Model or on a Diagram. For Java, the Attribute that is created has a Stereotype = “Enum Member”.

 

6.       When adding a Property to a C# class, the prefix used to create the variable (Attribute) is still taken from the 'Property Variables Prefix' field in the Code Generation Options dialog box and defaults to “m”. However, if there is no prefix specified in the 'Property Variables Prefix' field in the Code Generation Options dialog box, the Attribute name is now created by changing the case (upper to lower or lower to upper) of the first letter of the Property name.

 

7.       Added “Initializer” to the list of available Stereotypes for Class Operations.

 

8.       Double-clicking on an Attribute row in the Attributes grid on the Attributes tab in the Class Properties Editor invokes that Attribute’s properties editor dialog box. Similarly, double-clicking on an Operation row in the Operations grid on the Operations tab in the Class Properties Editor invokes that Operation’s properties editor dialog box.

 

9.       Added a Template Arguments field to the Attribute Properties Editor dialog box and a Template Arguments column to the Attributes grid in the Class Properties Editor dialog box. This field is used to add a list of type arguments to the Type of a Field for C++, C# or Java. These are enclosed in “<>” and are placed after the field name during code generation.

 

10.   Added a Template Arguments field to the Operation Properties Editor dialog box and a Template Arguments column to the Operations grid in the Class Properties Editor dialog box. This field is used to add a list of type arguments to the (Return) Type of a Field for C# or Java. These are enclosed in “<>” and are placed after the method return type during code generation.

 

11.   Added a Template Parameters field to the Operation Properties Editor dialog box and a Template Parameters column to the Operations grid in the Class Properties Editor dialog box. This field is used to add a list of type parameters to the declaration of a Generic Method for C# or Java. These are enclosed in “<>” and are placed after the method name during code generation.

 

12.   Added a ‘Visibility’ combo-box to the dialog box that is used to provide a Name for a new Class being added to the Model or to a Class diagram. This enables you to select the desired Visibility of a new Class when entering its Name when creating it. This Visibility is preset to the default Visibility for the model that is set in the main Options dialog box, except in the case of “Table” Classes for PostgreSQL. Note: The chosen Visibility is ignored if adding an already-existing Class to a Class diagram, in which case the existing Class’ current Visibility is retained and used.

 

13.   Added a ‘Length’ field to the dialog box that is used for getting the properties when adding a new Attribute to a Class, a Table Class column, or an Operation Parameter.

 

14.   Added a ‘Constraint’ field to the dialog box that is used for getting the properties when adding a new Attribute or Operation to a Class or a Table Class column or constraint.

 

15.   Modified the Generalization Properties Editor dialog box (added C#/Java tab) to provide support for Template Type Arguments (for example: “MyClass : ParentClass<Type1,Type2>” for C# or “MyClass extends ParentClass<Type1,Type2>” for Java) in class inheritances and/or interface implantations for C# in support of Visual Studio 2005 or for Java 5. Enter the inherited template class type arguments list into the new ‘Type Arguments List’ field on the (new) C# /Java tab.

 

16.   Modified the Realization Properties Editor dialog box (added C#/Java tab) to provide support for Template Type Arguments (for example: “MyClass : ParentInterface<Type1, Type2>” for C# or “MyClass implements ParentInterface<Type1, Type2>” for Java) in interface implementations for C# in support of Visual Studio 2005 or for Java 5. Enter the inherited template interface type arguments list into the new ‘Type Arguments List’ field on the (new) C#/Java tab.

 

17.   Added Constraint field to properties editor dialog boxes for Generalizations, Dependencies and Realizations. Note: this new Constraint field is not used in code generation.

 

18.   Fixed some field length clipping problems for some columns in the Attributes and Operations grids in