External elements

In IBM® Engineering Systems Design Rhapsody® you can visualize frozen legacy code or edit external code as external elements.

This external code is code that is developed and maintained outside of Rhapsody . This code will not be regenerated by Rhapsody , but will participate in code generation of Rhapsody models that interact or interface with this external code so, for example, the appropriate #include statement is generated. This functionality provides easy modeling with code written outside of Rhapsody , and a better understanding of a proven system.

Rhapsody supports the following functionality for external elements:

  • Reverse engineering can import elements as external.
  • Reverse engineering populates the model with enough information to:
    • Model external elements in the model.
    • Enable you to open the source of the external elements, even if the element is not included in the scope of the active component.
  • Rhapsody generates the correct #include for references to external elements.
  • Elements inherit their externality from the parent. For example, if a package is external, all its aggregates are also external.
  • You can add external elements to component files to define the exact location of the source code.
  • Rhapsody displays external elements in the scope tree of the component.

There are two ways to create external elements:

  • By reverse engineering the files
  • By modeling