Tuesday , April 23 2024
These tools will simplify the way that your data is maintained.

Software Review: MissionKit 2009: UModel from Altova

The latest version of UModel that comes as part of MissionKit 2009 has added some rich new features to Altova's UML tool for software modeling and application development. The Unified Modeling Language, (UML) is a graphical language for organizing, analyzing, and planning software projects before coding begins. The UML attempts to take lessons learned in other engineering disciplines and apply them to software development.  UModel was developed with the interest of making the UML process easier.

The UML specification is maintained by the Object Management Group (OMG) and was originally created in 1997 by combining of the strengths of three competing software modeling technologies. The current specification (UML 2.2) reflects revisions, suggestions, and enhancements resulting from years of applying UML in practice.

At its essence, UModel is a graphical modeling designer that allows you to visually design application models in UML and generate Java, C#, or Visual Basic.Net code, as well as project documentation. It will also allow you to reverse engineer existing programs into UML 2 diagrams, fine tune them, and then regenerate the updated code.

While the UML is a complete modeling language, it does not discuss the methodology for the development, code generation, and round-trip engineering process. Therefore UModel has been designed to allow you the maximum flexibility during these processes.

As it stands, UModel already provided a feature rich set of modeling tools contained in a visual interface that helps you level the learning curve of modeling. Now it has been enhanced to add additional new features

So what's new with UModel 2009?
Full Support for all 14 UML 2.2 diagram types plus there is a special UML diagram for XML Schemas. This is a special diagram type that renders XML Schema's in a format similar to UML class diagrams. Since it also supports round-trip engineering for XML Schema files, there is a lot of flexibility when developing your schemas and even when they are changed in another application such as XMLSpy. You can even use UModel design your schema from scratch.

Sequence Diagrams  can now be created within UModel through code or through the UModel API. A sequence diagram can map a scenario described by a use case in step-by-step detail to define how objects collaborate to achieve goals. You can even generate sequence diagrams from source code files that have been reversed engineered into UML classes giving you greatly enhanced traceability and will help speed up analysis of legacy applications.

UModel API is a COM-based API that enables clients to easily access the functionality of UModel, giving you the ability to automate a wide range of tasks. For example, an external application could launch UModel, then open an UModel project and highlight elements within UML diagrams to provide a visual tracing system that simulates execution of the target application. It is possible to access the methods and properties of the API from development environments such as C, C++,C# and Visual Basic, and scripting languages like JavaScript and VBScript.

Version Control System support and integration now provides a multiple generation backup ability of working files. Umodel project files and source code files created or modified by UModel during code generation and round trip engineering, can be checked out and checked in again directly through the UModel file interface and the code generation interface.

Refactoring code in prior versions, UModel would remove the old class and add new ones when the class names were changed or updated. Now a dialog box will open when it is detected that items have been renamed or added. Instead of just trying to make an informed guess, you will be prompted to confirm the change to ensure that all related data is retained and the engineering process remains accurate.

Profile Diagram  allows you to define custom stereotypes, tagged values, and constraints in a dedicated system. Profiles and stereotypes are used to extend the UML meta-model. A stereotype defines how and existing meta-class can be extended. This is a kind of class that extends classes through Extensions. They can only be created in Profiles, and are displayed as classes with addition of the keyword <> added above the name of the class.

Improved Hierarchy tab displays all of the relations of the currently selected modeling item. The modeling element can be selected in a modeling diagram, the Model Tree, or in the Favorites tab.

Other minor enhancements like a go-to feature for lifelines, the ability to save Umodel project files in "pretty print" format, ability to open projects from a URL, and the ability to load/save currently open diagrams with the project file.

UModel 2009 is available from Altova. It is $189.00 USD for the Enterprise edition, and $129 for the Professional edition. It is also part of the MissionKit 2009. Still unsure, you can download a 30-day trial version as well.

Like any UML modeling tool, there is a learning curve to using UModel, but once you get the hang of it, it is pretty intuitive. There is a lot of online help and a PDF User Reference manual that is over 400 pages in length. If you want to get into UML modeling then UModel 2009 will provide a perfect solution.

About T. Michael Testi

Photographer, writer, software engineer, educator, and maker of fine images.

Check Also

The Anarchist’s Dilemma: an Interlude

Perhaps Franz Fanon rather than Michel Foucault should be the voice we ought to heed for having a better grasp of the human condition.