This chapter provides information about creating UModel modeling projects (either new, or by importing data from source code or binaries). It also describes various operations applicable to code engineering with UModel, namely:
•Forward engineering (generating code from a UModel project)
•Reverse engineering (importing source code into a UModel project)
•Roundtrip engineering (that is, synchronizing the model and code in either direction, as and when necessary)
The menu commands applicable to code engineering are available in the Project menu. For example, the menu command Project | Import Source Project enables you to import C#, or VB.NET Visual Studio solutions, or Java code, and generate UModel diagrams based on it. When no project solution is available, use the menu command Project | Import Source Directory, see Importing Source Code (Reverse Engineering). Java, C#, and VB.NET binaries can also be imported, provided that a few basic prerequisites are met, see Importing Java, C# and VB.NET Binaries.
The code engineering operations above are applicable not only to programming languages but also to databases and XML Schema. For example, you could use the menu command Project | Import XML Schema File to reverse engineer an existing XML schema and automatically generate a class diagram based on it.
For the list of mappings between UModel elements and elements in each supported language profile (including databases and XML Schema), see UModel Element Mappings.