Visual UML version 4.1 Update Release Notes

 

Version 4.1 Release (Build #543 – October 8th, 2004)

 

NOTE: Model files (*.Uml) created by Visual UML version 4.0 (or later) are NOT backwards compatible with Visual UML version 3.2 (versions 3.2 thru 3.26) or earlier. Therefore, Model files (*.Uml) created by Visual UML version 4.0 (or later) can NOT be opened by Visual UML version 3.2 (versions 3.20 thru 3.26) or earlier. Also, if you saved your version 3.x models in XML file format you will need to save them in .Uml file format in order to be able to open them using version 4.0 (or later). After you have upgraded your version 3.x models to version 4.0 (or later) format you can save them in XML file format (.Umlx file extension).

 

Also, Model files (*.Uml) created by Visual UML version 4.1 are NOT backwards compatible with Visual UML version 4.0 or 4.01. Therefore, Model files (*.Uml) created by Visual UML version 4.1 can NOT be opened by Visual UML version 4.0 or 4.01.

 

Updated Files: Visual UML4.Exe, VUML.Chm, VUML-CPP.Chm, VUML2HTML4.Dll, Rose2VUML4.Dll, VUML40LayoutDiagram.Dll, RevEngrCPP.Dll, XML Files\vuml40.dtd

New Files: VSPrint8.Ocx, VSPDF8.Ocx, PGStandardLib20.dll, PGPreprocessorLib.dll, SQLServer2000Pubs.Uml, SQLServer2000Pubs.Sql, Northwind_SQLServer2000.Uml, SQLServer2000Northwind.Sql, XMLModelFileFormat.Zip

 

1.       The Class Diagram Layout Interface (DLI) is now included at no additional charge.

 

2.       Removed the “Warning” messages that appeared when choosing to Import a Model in VUML or XML file format.

 

3.       Fixed the appearance of the “resize handles” icon located at the bottom right corner of many resizable dialog boxes so that they display better under Windows XP display themes.

 

4.       Fixed the appearance of the up/down buttons icon in several dialog boxes so that they display better under Windows XP display themes.

 

5.       Fixed the appearance of assorted buttons icons in several dialog boxes so that they display better under Windows XP display themes.

 

6.       Fixed the resize behavior of several dialog boxes so that they display better under Windows XP.

 

7.       Fixed the appearance of assorted fields in several dialog boxes so that they display better under Windows XP display themes.

 

8.       The State Invariant Expression dialog box (for State Invariants on Lifelines on Objects on Sequence diagrams) is now resizable.

 

9.       The C++ Explicit option is now copied when copying a Class Operation, either individually or when a Class is copied.

 

10.   Added a ‘Class File Preamble’ field to the ‘C++/C#/Java/VB.NET’ Languages tab in the Class Properties Editor dialog box.

 

11.   Added an ‘Add Namespace Reference’ button next to the (new) ‘Class File Preamble’ field on the ‘C++/C#/Java/VB.NET’ Languages tab in the Class Properties Editor dialog box.

 

12.   Added a ‘Class File Comment Block’ field to the ‘C++/C#/Java/VB.NET’ Languages tab in the Class Properties Editor dialog box.

 

13.   Added an ‘Add Namespace Reference’ button to the Preamble tab/field in the Package Properties Editor dialog box.

 

14.   Can now display Classes and their Members (Attributes, Operations, Nested Classes, Parameters, etc.) on Class diagrams using a notation that is essentially the same as the code that would be generated for the Class. This applies to Classes whose target language is C++, C#, Java or VB.NET. The code notation is displayed by setting the new ‘Display Classes Using Language Notation’ options on the (renamed) ‘Classes & Interfaces’ tab in the Diagram Properties dialog box.

 

15.   Added new menus, menu options, toolbar and toolbar buttons to enable more convenient adding of class types (classes, interfaces, enums, structs, delegates, modules, etc.) to the model and class diagrams. These new menus, menu options, toolbar and toolbar buttons are made available according to the model’s target language. These class type menu options and toolbar buttons are also available to enable more convenient adding of nested class types. When a class diagram is active, the selected class is added to it. When a package or class is active in the model explorer, the selected class is added to it.

 

16.   Added new menus, menu options, toolbar and toolbar buttons to enable more convenient adding of class members (fields/variables, constants, properties, methods, constructors, destructors, events, delegates, indexers, operators, attributes, etc.) to classes in the model and on class diagrams. These new menus, menu options, toolbar and toolbar buttons are made available according to the class type and the target language assigned to the class.

 

17.   The new menu options and toolbar buttons for adding properties to classes results in the automatic creation of the private member variable and the corresponding get and/or set accessors and is similar to the approach previously used to create properties when generating code for class attributes with stereotype = “Property”. This property creation applies to C#, VB.NET, VB6 and Java properties.

 

18.   The (new) Code Class Toolbar can be shown and hidden using a (new) option in the View Toolbars menu.

 

19.   Can now add more than one anonymous Enum to a Class. These are Nested Classes with Stereotype = “Enum” and Name = “<anonymous>”.

 

20.   Can now add more than one anonymous Parameter to a Class Operation. These are Parameters with Name = “<anonymous>”.

 

21.   Can now add more than one anonymous Parameter to a Template Class. These are Parameters with Name = “<anonymous>”.

 

22.   The Pass By Pointer option is now properly transferred from Pass By column in Operation Parameters grid to Parameter Editor dialog box when using Edit button.

 

23.   Port Names (on Class and Component diagrams) are now prefixed with the appropriate visibility prefix (+, -, # or ~).

 

24.   Fixed problem that could cause loss of linkage of foreign key (FK) relationships attributes between parent (referenced) and child (referencing) classes if the parent (referenced) class (or any of its attributes) were edited. Note: This loss of FK attributes linkage would typically only occur if the FK was to non-PK fields in the parent (referenced) class that was edited. It would typically NOT occur if the FK was to PK fields in the parent (referenced) class that was edited.

 

25.   No longer get a run-time error and/or inability to edit an object’s description if did not choose to install the spell checker when installing Visual UML.

 

26.   No longer get a run-time error and/or inability to edit a Use Case’s detailed definition/specification if did not choose to install the spell checker when installing Visual UML.

 

27.   Fixed some problems with the placement and routing of connections (such as Transitions) between an object (such as a State) and another object inside it (such as another State) so that the connections stay in place more predictably as the container object is modified, moved, etc. and when the diagram is redrawn such as when scrolling, zooming, being edited, etc. Also, a more predictably routed connection (such as a Transition) is initially created when adding between a container object (such as a State) and a contained object (such as another State).

 

28.   Modified the way that dates are entered in the grids for Test Cases, Project Issues, Project Tasks, etc. Now, a button in the cell is clicked to invoke a dialog box in which the date is selected.

 

Publish To HTML:

 

29.   Changed the presentation of information for Tagged Values, Constraints, Responsibilities, Requirements, Scenarios and Test Cases to use a more tabular format with rows for each property. Also fixes word-wrapping problems for long descriptions of Tagged Values, Constraints, Responsibilities, Requirements, Scenarios and Test Cases.

 

30.   Changed the presentation of information for Model Glossary Entries, Project Issues and Project Tasks to use a more tabular format with rows for each property. Also fixes word-wrapping problems for long descriptions of Model Glossary Entries, Project Issues and Project Tasks.

 

31.   Activity Object Nodes can now be included in HTML Reports for Activities & Actions.

 

32.   Fixed problem Publishing Class diagrams to HTML if the Class diagram contained a Class with one or more Ports.

 

33.   Fixed problem Publishing Component and Deployment diagrams to HTML if the Component or Deployment diagram contained a Component with one or more Ports.

 

34.   Tagged Values, Constraints, Scenarios, Requirements and Test Cases can now be included in HTML Reports for Activity Flows, State Transitions, Associations, Dependencies and Generalizations.

 

Reporting:

 

35.   When printing/exporting Descriptions reports, object categories (Actors, Classes, Components, Nodes, Packages, Use Cases, etc.) are no longer included if they do not contain objects with descriptions.

 

36.   Moved the reporting options from the File menu to a new Reports sub-menu in the main Tools menu. Also, added options for printing/exporting reports of object definitions, model glossary. Project issues and project tasks.

 

37.   Fixed some problems with exporting reports in HTML format, in particular extraneous blank lines between in multi-line descriptions.

 

38.   Fixed some formatting and layout issues in the Reports of Descriptions and Use Cases.

 

39.   Fixed some problems with printing/exporting descriptions of Classes and their members (Attributes, Operations, and Nested Classes).

 

40.   Class Parameters descriptions can now be included in Class Descriptions reports as well as descriptions of Attributes and Operations.

 

41.   Class Operation Parameters descriptions can now be included in Class Descriptions reports as well as descriptions of Attributes and Operations.

 

42.   Class Ports descriptions can now be included in Class Descriptions reports as well as descriptions of Attributes and Operations and Parameters.

 

43.   Relationships (Associations, Dependencies, Generalizations) can now be included in Use Case Definitions reports.

 

44.   Descriptions of Frames are now included when Print/Export Descriptions reports.

 

45.   Description reports can now be generated from the currently selected Package in the Model Explorer, in which case only elements in that Package (and any sub-Packages) will be included in the report.

 

46.   Use Case reports can now be generated from the currently selected Package in the Model Explorer, in which case only Use Cases in that Package (and any sub-Packages) will be included in the report.

 

47.   The ‘Export to XML’ button in the Report dialog box is now enabled when generating definitions reports for multiple Use Cases as well as for a single Use Case. This enables an XML file to be created that contains all of the Use Cases in the Model or in a specific Package (incl. sub-Packages).

 

48.   Several additional Use Case fields are now included when choose Print/Export Use Cases reports.

 

49.   Can now choose to include Constraints, Requirements, Scenarios and Test Cases as well as Tagged Values when printing/exporting Use Case reports.

 

50.   Added the ability to print/export reports for the Model Glossary, Project Items and Project Tasks.

 

51.   Added the ability to print/export reports of object definitions, including Constraints, Requirements, Scenarios, Test Cases and Tagged Values. Can choose which of these categories (also Descriptions, etc.) to include in the report.

 

52.   Can now choose to exclude (Nested) Sub-Packages from use case definitions and objects definitions reports, thereby making it possibly to produce reports on just the objects or use cases in a selected Package.

 

53.   Can now choose which specific object types to include in Descriptions and (new) Definitions reports. Plus, the order in which they are included in the report.

 

Visual Basic Interface:

 

54.   Header handling now works for VB User Controls (.Ctl), Property Pages (.Pag) and User Documents (.Dob) as well as for Forms (.Frm) when generating and reverse-engineering these Visual Basic file types.

 

55.   The Class Instancing field can now be used to define the “visibility” for VB User Controls (.Ctl), Property Pages (.Pag) and User Documents (.Dob). If not set to Private, the setting will be interpreted as Public.

 

56.   Added VB Code Generation Options to enable display of VB code file’s attributes and/or header (for Forms, Use Controls, etc.) in the Class Code window.

 

57.   The visibility and class instancing settings are now picked up when reverse-engineering VB User Controls (.Ctl) , Property Pages (.Pag) and User Documents (.Dob).

 

Database Schema Generation:

 

58.   Fixed a problem that could result in the generation of an additional, unnecessary ALTER TABLE…ADD FOREIGN KEY REFERENCES statement for one-to-one relationships (Association with Start and End Multiplicities both = “one”) when the ‘Alter Table’ option is chosen in the Schema Generation Options dialog box for generating Foreign Key statements.

 

59.   Added a ‘Generate FKs for Linked as well as Unlinked Columns’ option to the Schema Generation Options dialog box. When this option is set to off (unchecked - the default) Foreign Key References statements are generated only if one or more pairs of PK and FK columns/attributes have been linked together on the Database tab in the Association Properties Editor dialog box. Otherwise, if this option is set to on (checked) then Foreign Key References statements are generated even if there are no linked PK and FK columns/attributes on the Database tab in the Association Properties Editor dialog box. Note that for the latter case, the target database may refuse to accept the generated code and result in an error due to the need for explicitly linked PK and FK columns.

 

Database Reverse-Engineering:

 

60.   No longer receive “Association ‘{ID….}’ does not exist!” errors when subsequently reverse-engineering an Access database again into a Model that contains a previously reverse-engineered Access database. Plus, no longer lose the Associations (for FK relationships) that were previously created from the FK Relationships in the Access database when it was previously reverse-engineered.

 

61.   MySQL database schemas are now reverse-engineered into a Package that is assigned the name of the database schema.

 

62.   Fixed problem that could result in inability to reverse-engineer a MySQL 4.0x database using the MyODBC driver v3.5x.