Innovator Profile Extension Mechanisms

Innovator uses profiles to define model elements which can be used in the modeling. The profiles define basic properties, value ranges and assignments, as well as representations such as icons and fonts.

Profiles and Profile Imports

Not only stereotypes and their properties are defined in a profile when configuring an Innovator model. Extensive tool configuration is also carried out in the profile; this is done with the aim of achieving optimum user guidance in concrete projects.

For example, you can specify in a profile that a model with the «analysisModel» stereotype may only contain packages with the «analysisPackage» stereotype. A package with the «analysisPackage» stereotype can only e.g. contain class diagrams with the «analysisClassDiagram» stereotype or classes with the «entity», «control» or «boundary» stereotype.

Language-specific design profiles (e.g. Java) and technology-specific design profiles (e.g. J2EE, Web Services) can be defined in the same way as an analysis profile.

In a specific project, one or several of these profiles are imported into a system model or submodel model of an Innovator model. When used company-wide, a profile of this kind then ensures a uniform modeling style. For example, a profile definition ensures that all J2EE projects deliver the same modeling results. Among other things, this is a prerequisite for the reuse of generators in multiple projects and facilitates the fast integration of new team members in a project.

Profile Types in Innovator

  • Profile

    A profile displays a closed entity in Innovator; this entity contains certain aspects of the configuration in full or acts as an extension of an imported profile. The primary construct for such an extension is the stereotype which is used on existing metaclasses and defined as part of a profile.

    Certain profiles contain structures and stereotypes of the supported notations (UML 2, BPMN 2, DMN, IMM/CWM etc.). Other profiles focus e.g. on the configuration of model documentation.

    As well as the base profile, all profiles can import other profiles. A profile can be stored and loaded as a unit (profile template).

  • Base Profile

    The ROOT PROFILE base profile contains the basic settings for the configuration. All other profiles build directly or indirectly using profile imports. The base profile is an obligatory part of each configuration and cannot be deleted.

  • Extension Profile

    On the one hand, all profiles of the Innovator configuration except for the base profile are extension profiles in the UML context; on the other hand, as of Version 14.0, Innovator offers special profiles for customer-specific extensions. These are contained in the model templates and migration profiles, and are flagged with the "Customization" name addition. These profiles can be locked without a lock message.

Method Assignment for Profiles

Profiles for Innovator models can be assigned to one or more methods (e.g. "Business Modeling", "Software Modeling", "Enterprise Modeling"). Assignment affects navigation views and plug-ins in this model, as well as the content in the Getting Started tool window.

It allows you to control e.g. that a plug-in for database connection is only visible in models with the "Database Modeling" method as it only makes sense to implement it there. Whereas the Process Hierarchy navigation view is only available in models with "Business Modeling" methods.

Customer-Specific Extension Profiles

As of Version 14.0, customer-specific extensions ("Customization" naming addition) are contained in the delivered model templates and migration profiles. These profiles are not modified by MID in the case of updates during a migration.

If an extension profile was created when an add-on or migration profile was loaded, then you might need to assign access rights to roles with configuration rights.

Customer-specific adjustments are significantly simplified by the following mechanisms:

  • Extension profiles ("Customization" name addition) can be locked without a lock message.

  • Stereotypes from imported profiles can be implicitly changed by new stereotype properties (or type system options) or explicitly changed using the Edit>Redefine command.

  • Visibility and the order in the Properties tool window can be set in the extension profile.

  • Imported configuration contents can be flagged as "ignored" in an extension profile with the Edit>Ignore command. They then behave as if they had not been defined (scope of validity: Labels and text definitions in the "Stereotypes" view, constraints in the "Relationships" view, menu commands in the "Execution Rights" view, and menu commands and menus in the "Menus" view).

  • Stereotypes can be reset to the properties in the imported profile by deleting the changes in the extension profile.

  • Menu structures and menu commands from imported profiles are displayed but can be flagged as "ignored" with the Edit>Ignore command or can be extended with menu commands.

  • You can deactivate the View>Imported Entries toggle command to restrict the selection on the right-hand side to the entries defined in the current profile in the three-part views of the configuration editor.

Innovator-Specific Profile Sections

Due to the number of metaclasses which can be used, a profile in the Configuration Editor is always divided into individual profile sections. The names of the profile sections are added to the chapter names of the respective specification.

Three profile sections differ from this schema as their contents can be used in all Innovator models:

  • Generic Elements

    This refers to all parts of the metamodel that can be used (e.g. dependency, comment and requirement) that are available for all products.
    You can find these parts in the UML 2 specification in the "Classes" chapter. However, a model configurator in Innovator for Information Architects would find a profile section "Classes" annoying.

  • Model Structure

    Individual parts of part III of the UML 2 specification are summarized here. Information about the "Package" metaclass can also be found here and not, as you may think, in the "Classes" chapter, as it is in UML this is done in the hope that this important construct will be easier to find here.

  • Innovator-Specific

    This profile section summarizes constructs which are used in a purely UML 2 specification, this means e.g. create defaults and the model root itself.