Support Notes
UModel is a 32/64-bit Windows application that runs on the following operating systems:
•Windows Server 2016 or newer
•Windows 10, Windows 11
64-bit support is available for the Enterprise and Professional editions.
UML diagrams
UModel supports all fourteen diagrams of the UML 2.5.1 specification, and additional specialized diagram types.
Structural | Behavioral | Additional |
---|---|---|
Class Diagrams | Activity Diagram | XML Schema Diagrams |
Component Diagram | Communication Diagram | 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) |
Deployment Diagram | Sequence Diagram | Database Diagrams (UModel Enterprise and Professional editions) |
Object Diagram | State Diagrams (State Machine and Protocol State Machine) | |
Package Diagram | Timing Diagram | |
Profile Diagram | 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:
Language | Code engineering | Import of binaries |
---|---|---|
C# | 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. | Not applicable |
Java | 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 |
XML Schemas4 | 1.0 | Not applicable |
Databases5 (UModel Enterprise and Professional editions) | For more information about supported databases, see Database Support. | Not applicable |
Table footnotes:
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.
General notes:
•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#, 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 includes support for the Model Driven Architecture (MDA) which allows you to change the programming language of your models (for example, from Java to C#, or vice versa), see Transforming UML Models.
•While importing source code, you can optionally generate Class and Package diagrams. Once the source code is imported into the model, you can also generate Sequence diagrams.
•You can generate program code from Sequence diagrams and from State Machine diagrams
•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.
IDE Integration
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 2024-03 (4.31), 2023-12 (4.30), 2023-09 (4.29), 2023-06 (4.28), 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.
Interoperability
UModel also provides support for importing or exporting projects to or from XML Metadata Interchange (XMI) format, see XMI - XML Metadata Interchange.