Main Content

Define Profiles and Stereotypes

To verify structural and functional requirements, you must capture nonfunctional properties on elements in an architecture model. To capture these properties, use stereotyping.

A stereotype is a custom extension of the modeling language. Stereotypes provide a mechanism to extend the architecture language elements by adding domain-specific metadata. Apply stereotypes to the root level architecture, component architecture, connectors, ports, and interfaces of a model. Stereotypes provide model elements within the architecture a common set of property fields, such as mass, cost, and power.

A profile is a package of stereotypes to create a self-consistent domain of model element types. Apply profiles to a model through the Profile Editor. You can store stereotypes for a project in one profile or in several. Profiles are stored in .xml files when they are saved.

A property is a field in a stereotype. For each model element the stereotype is applied to, specific property values are specified. Use properties to store quantitative characteristics, such as weight or speed, that are associated with a model element. Properties can also be descriptive or represent a status.

For example, if there is a limit on the total power consumption of a system, the model must be able to capture the power rating of each electrical component. To define component-specific property values requires extending built-in model element types with properties corresponding to requirements. In this case, an electrical component type as an extension of components is a stereotype. By extending the definition of regular components, you introduce a custom modeling language and framework that includes specific concepts and terminologies important for the architecture model. Capturing the individual properties also sets the scene for early parametric analyses and to define custom views.

You can define default stereotypes in a profile to be added to any new element in a model with that applied profile. Stereotype-based styling enhances the appearance of the model based upon specific features each element represents.

System Composer™ provides these architectural model elements to describe an architecture model:

  • Component

  • Port

  • Connector

  • Interface

You can view and edit the properties of each element in the architecture model using the Property Inspector. Open the Property Inspector using View > Property Inspector.

You can author profiles using the Profile Editor. Profiles are saved separately from the architecture model as .xml files and are available to all architecture models.

When you create a profile, you define:

  • Stereotypes — Customize built-in model element types.

  • Property sets — Add analysis properties to an architecture model element.

  • Data types, units, dimensions, etc. — Define property values.

You can define stereotypes to extend built-in elements and capture additional data about an element. Element stereotypes define the class of the elements to which they apply. For example, a MechanicalComponent stereotype with properties such as Weight and Volume applies only to components, and not to ports, connectors, or interfaces.

A stereotype does not have to define a class. For example, a ProjectItem stereotype can add generic properties such as CatalogNumber or UnitCost, a BorrowedItem stereotype can add properties such as BorrowedSource and ReturnDeadline. A model element can have multiple stereotypes.

Stereotypes can extend other stereotypes to include their properties through an inherited mechanism. For example, a UserInterface stereotype can be an extension of a SoftwareComponent stereotype, and add a property called ScreenResolution.

You can collect these stereotypes in profiles to import into the model.

Create a Profile and Add Stereotypes

Create a profile to define a set of component, port, and connection types to be used in an architecture model. For example, a profile for an electromechanical system, such as a robot, could consist of these types:

  • Component types:

    • Electrical component

    • Mechanical component

    • Software component

  • Connection types:

    • Analog signal connection

    • Data connection

  • Port types

    • Data port

Define a profile using the Profile Editor. On the Modeling tab, in the Profiles section, select Import, then from the drop-down, select Edit icon. Click New Profile. Select new profile to start editing.

Name the profile and provide a description. Add stereotypes by clicking New Stereotype. You can delete stereotypes and profiles by clicking the delete button in their respective menus.

Save the profile. The file name is the same as the profile name.

Add Properties with Stereotypes

Select a stereotype in a profile to define it:

  • Name — The name of the stereotype, for example, ElectricalComponent.

  • Applies to — The model element type to which the stereotype applies. This field can be an <all>, component, port, connector, or interface. You can apply this stereotype only to a model element of this type.

  • Icon — Icon to be shown on the model element with color, if applicable.

  • Connector Style — Line style of the connector to be shown on the model with color, if applicable.

  • Base stereotype — Other stereotype on which this stereotype is based. This can be empty.

  • Abstract stereotype — A stereotype that is not intended to be applied directly to a model element. You can use abstract stereotypes only as the base stereotype for other stereotypes.

Add properties to a stereotype using the plus button. Define these fields for each property:

  • Property name — Valid variable name

  • Type — Numeric, string, or enumeration data type

  • Name — Name of the enumerated type, if applicable

  • Unit — Value units as a string

  • Default — Default value

Profile editor with profile named 'Project Profile' on the left and stereotypes listed underneath.

Add, delete, and reorder properties using the property toolstrip: Add, delete, move up, and move down icons.

You can create a stereotype that applies to all model element types by setting the Applies to field to <all>. With these stereotypes, you can add properties to elements regardless of whether they are components, ports, connectors, or interfaces.

Stereotype properties section for stereotype named 'General Element' and property name 'Ref Number' of type int8 with a default value of 1.

Default Stereotypes

Each profile can have a set of default stereotypes. Use default stereotypes when each new element of a certain type must assume the same stereotype. System Composer applies a default stereotype to the root architecture when you import the profile. You can set this default in the Profile Editor using the Stereotype applied to root on import field.

For the profile 'Project Profile' using the profile properties section to select 'Stereotype applied to root on import' as 'Project component'.

This default stereotype is for the top-level architecture. If a model imports multiple profiles, the default component stereotype for all profiles apply to the architecture.

Each component stereotype can also have defaults for the components, ports, and connections added to its architecture. For example, if you want all new connections in an electrical component to be analog connections, set AnalogConnection as a default stereotype for the ElectricalComponent stereotype.

For the 'Electrical Component' stereotype the 'Default stereotypes for composition' are defined for a component, port, and connector.

After you import the profile into a model, all new connections assume the AnalogConnection stereotype.

Stereotype-Based Styling

Profiles and stereotypes are used to apply custom metadata on the architecture model elements. Element styling is an additional visual cue that indicates applied stereotypes.

You can use provided icons for the component stereotypes or use you own custom icon images. Custom icons support .png, .jpeg, or .svg image files of size 16-by-16 pixels. The custom icons are displayed as badges on the components for which the stereotypes are applied.

Stereotype styling custom icons.

You can associate a color with component stereotypes. Element styling is an additional visual cue that indicates applied stereotypes.

Selecting a custom icon and color for a stereotype on the profile editor.

Use a preconfigured set of color options for component stereotypes to style the architecture component headers. See Use Stereotypes and Profiles to learn how to use stereotypes in your model.

Components with stereotypes showing icons and colors.

Similarly, you can style architecture connectors using the stereotype settings. You can style connectors by using connector, port, or port interface stereotypes. Customize styling provides various color and line style choices. Connector styles are also reflected in architecture and spotlight views.

Selecting connector colors in the stereotype properties dialog.

Connector styling is sourced from the highest-priority stereotype that defines style information. Connector stereotypes have the highest priority, followed by port stereotypes and then interface stereotypes.

When two connectors with different styling merge, if the styling is incompatible, the resulting connector is displayed in black.

Component B has a blue connector style, Component C has a red connector style, and when the connectors merge for Component A, it has a black connector style.

See Also

| | |

Related Topics