Main Content

Define Profiles and Stereotypes

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

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.

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 elements: root-level architecture, component architecture, connectors, ports, data interfaces, and value types of a model. A model element can have multiple stereotypes. Stereotypes provide model elements with a common set of property fields, such as mass, cost, and power.

A property is a field in a stereotype. For each 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. You can view and edit the properties of each element in the architecture model using the Property Inspector. Open the Property Inspector by navigating to Modeling > Design > Property Inspector.

A profile is a package of stereotypes to create a self-consistent domain of element types. Author profiles and apply profiles to a model using 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.

In this topic, you will learn how to:

  1. Create a profile and define stereotypes with properties.

  2. Define default stereotypes in a profile to be added to any new element in a model with that applied profile.

  3. Use stereotype-based styling that enhances the appearance of the model based upon specific features each element represents.

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 by navigating to Modeling > Profiles > Profile Editor. 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 as ProjectComponent 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 a project component to be analog connections, set AnalogConnection as a default stereotype for the ProjectComponent stereotype.

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

After you import the profile ProjectProfile into a model, the ProjectComponent stereotype is applied to the root architecture. Thus, all new components in the architecture model assume the ElectricalComponent stereotype, all new ports assume the SignalPort stereotype, and 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