To increase modeling efficiency when working with very large projects, you can work with partially loaded used projects. This may help decrease memory consumption.

Here, “large” is tens of thousands of classes and other complex elements. If counting all small elements, such as properties, methods, method parameters, several hundreds of thousands of elements is considered a large project. Note that diagrams are large elements. A project consisting of 1000 or more complex diagrams should be considered large.

You can unload a particular used project at any time when working with a large partitioned project.

To unload a used project from a project


  • Right-click the selected used project, and select Project Usages > Unload.

Not loaded (or unloaded) used projects can be loaded in a project anytime. For more information about managing used projects, see Managing Used Projects.


To load a used project in a project


  • From the unloaded used project's shortcut menu, select Used Projects and then Load Used Project.

When the used project is neither loaded nor unloaded, there can be some model elements left from the used project. These elements are not editable and are characterized by a small M letter in the upper left corner of their icon (see the following figure). 

notation_of_unloaded_elements.png

Notation of unloaded used project elements (fragment of Containment tree)

These are the so-called “proxy” elements of the original elements from the used project. Instead of the original model elements, the proxy is a lightweight surrogate that carries only the name and kind of the model element information. These proxies are left in place of the original used project elements and are dedicated to maintaining model integrity (ensuring that there are no dangling ends of relationships, types of properties do not disappear, etc.) while the used project is not accessible or not loaded. 

There are 4 used project loading modes:

  • Always load (default). In this mode, used projects are always loaded when you open the project. They can be unloaded if necessary.
  • Autoload. A used project is not loaded while the project using it is loaded. However, our modeling tool monitors user activities in the project and tries to guess when you might want to use the model piece from the unloaded used project. For example, if you search and find usages/dependencies, reports, metrics, transformations, or code engineering actions with a scope that touches the unloaded used project, our modeling tool will load that used project.
  • Autoload with prompt. This mode differs from the Autoload mode in that our modeling tool asks you before loading the used project.
  • Manual load. A used project is not loaded while the project using it is loaded. It can be loaded using the Load used project command (described above).

To change the used project loading mode


  1. From the Options menu, select Used Projects. The Used Projects dialog opens.
  2. In the used project's tree, select a used project.
  3. In the Used Project Load Mode area, select the appropriate loading mode.
Frequently Used Projects should be set in the Always load mode.

Occasionally used projects should be set in Autoload mode (or Autoload with prompt to have more control on loading behavior). Very rarely used projects can be set in the Manual load mode. Another frequent case where used projects can be set to Manual load mode occurs when the used projects represent a software library that is not expected to change.