UModel is a 32/64-bit Windows application that runs on the following operating systems:
•Windows Server 2008 R2 SP1 with Platform Update or newer
•Windows 7 SP1 with Platform Update, Windows 8, Windows 10, Windows 11
64-bit support is available for the Enterprise and Professional editions.
UModel supports all fourteen diagrams of the UML 2.5.1 specification, and additional specialized diagram types.
XML Schema Diagrams
BPMN (Business Process Modeling Notation) 1.0 / 2.0 Diagrams (UModel Enterprise and Professional editions)
Composite Structure Diagram
Interaction Overview Diagram
SysML 1.2, 1.3, 1.4, 1.5, 1.6 Diagrams (UModel Enterprise and Professional editions)
Database Diagrams (UModel Enterprise and Professional editions)
State Diagrams (State Machine and Protocol State Machine)
Use Case Diagram
UModel has been designed to allow complete flexibility during the modeling process:
•UModel diagrams can be created in any order, and at any time; there is no need to follow a prescribed sequence during modeling.
•The syntax coloring in diagrams is customizable. For example, you can customize modeling elements and their properties (font, color, borders, etc.) in a hierarchical fashion at the project, node/line, element family and element level, see Changing the Style of Elements.
•The unlimited levels of Undo/Redo track not only content changes, but also all style changes made to any model element.
•Modeling elements support hyperlinks, see Hyperlinking Elements.
•You can create multiple layers in the same UML diagram, see Adding Layers to Diagrams.
Code engineering and import of binaries
UModel supports code generation and reverse engineering of program code written in the following languages:
Import of binaries
1.2, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 7.1, 7.2, 7.3, 8.0, 9.01, 10
Same language versions as for code engineering2
C++ (UModel Enterprise Edition)
C++98, C++11 and C++14, C++17, C++20
Only partial support for C++20: modules are not supported.
1.4, 5.0 (1.5), 6 (1.6), 7 (1.7), 8 (1.8), 9 (1.9), 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
Same language versions as for code engineering3
Visual Basic .NET
7.1 or newer
Same language versions as for code engineering
Databases5 (UModel Enterprise and Professional editions)
For more information about supported databases, see Database Support.
1.If you import binary files compiled from C# 9.0 code, note that any records will be imported as classes. This limitation is due to the fact that records are marked as classes in the assembly, which makes it impossible to distinguish them from classes.
2.C# code engineering and import of binaries include support for .NET Framework, .NET Core, .NET 5, and .NET 6. Note that .NET Framework, .NET Core, .NET 5 or .NET 6 must be installed, as applicable. Binaries of other .NET implementations which are not mentioned are likely to be imported as well. See also Importing Java, C# and VB.NET Binaries.
3.It is also possible to import binaries targeting Java Virtual Machines other than Oracle JDK, such as OpenJDK, SapMachine, Liberica JDK, and others, see Adding Custom Java Runtimes.
4.In the case of XML Schemas, code engineering means that you can import a schema (or multiple schemas from a directory) into UModel, view or modify the model, and write the changes back to the schema file. When you synchronize data from the model to a schema file, the schema file is always overwritten by the model. See also XML Schema Diagrams.
5.In the case of databases, code engineering means that you can (i) model a database in UModel with the option to update the database through a script generated from the model, or (ii) import an existing database structure into a model, make changes to it, and then deploy a script generated from the model to the database. Some database object types are not supported for modeling. For details, see UModel and Databases.
•You can synchronize the code and model at the project, package, or even class level. UModel does not require that pseudo-code, or comments in the generated code be present, in order to accomplish round-trip engineering.
•A single project can support Java, C#, or VB.NET code simultaneously.
•UModel supports the use of UML templates and their mapping to or from Java, C# and Visual Basic generics.
•UModel projects can be split up into multiple sub-projects allowing several developers to simultaneously edit different parts of a single project. You can then reintegrate the changes back into a common model. You can also merge UModel projects, as a 2-way or as a 3-way merge, see Merging UModel Projects.
•Code generation in UModel is based on Spy Programming Language (SPL) templates and is customizable.
UML documentation generation
You can generate documentation from UModel projects in HTML, RTF, Microsoft Word 2000 or later formats. Various options are available that let you configure the level of detail of generated documentation, the look and feel, and other preferences. Generating documentation in PDF format and deep customization of document generation templates is possible with Altova StyleVision (https://www.altova.com/stylevision). For more information, see Generating UML Documentation.
UModel is optionally available as a plug-in to the following integrated development environments:
•Visual Studio 2012/2013/2015/2017/2019/2022, see UModel Plug-in for Visual Studio
•Eclipse 2022-09, 2022-06, 2022-03, 2021-12, see UModel Plug-in for Eclipse
UModel provides a COM-based API and also allows integration of custom IDE Plug-Ins (DLL libraries) into its graphical user interface. The Scripting Editor allows for development of custom VBScript or JScript scripts and macros to automate various tasks.
Microsoft Office integration
By virtue of its database modeling support, UModel can import Access databases into a model, and generate SQL scripts for Access databases. For more information, see UModel and Databases.
UModel also provides support for importing or exporting projects to or from XML Metadata Interchange (XMI) format, see XMI - XML Metadata Interchange.