ICIM models are bound to programs that operate on the models at compile time. This is a characteristic of both the MODEL language and of the methodology for developing models.
This imposes a limitation on applications that are not aware of all of an interface’s properties at compile time. This typically occurs because VMware Smart Assurance models tend to be general enough to support a large customer base. A particular customer, for whom more interface properties would be useful, must, however, limit the application programs to only what is made available by the ICIM model.
Dynamic modeling is a step toward solving this problem. It achieves this by allowing delays when binding occurs between the model and the programs that operate on the model. Instead of binding at compile time, as with the traditional MODEL, interfaces may now effectively be made known to the system at runtime, when they are loaded into a Manager as a dynamic model.
Simplified MODEL and Dynamic Model methodology comparison shows the differences between using MODEL and Dynamic Model. The obvious differences between the process of creating a traditional model executable and creating a dynamic model executable is that intermediate C++ source code is not generated and the dynamic model is not linked into the system during the build phase. Instead, the dynamic model compiler is invoked to directly produce a file with a .ldm extension that can be loaded by a Manager. When the Manager is started, and the dynamic model is loaded, the existing model class dependencies and the new dynamic model class dependencies are resolved.
Note the following:
There are other files that are produced by the MODEL compiler and by the Dynamic Model compiler. Simplified MODEL and Dynamic Model methodology comparison is a simplified view to highlight the major differences. A more detailed explanation of the MODEL compiler is available in the VMware Smart Assurance MODEL Reference Guide.
Dynamic model files can be loaded when a Manager is started or after the Manager is already running.
Although MODEL and Dynamic Model are used independently and involve different steps and tools, the dynamic model is fully derived from MODEL. Therefore, many of the concepts that apply to MODEL also apply to the dynamic model. Familiarity with the VMware Smart Assurance MODEL Reference Guide is useful when working with Dynamic Model.