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 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
. 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 button in their respective menus.
Save the profile. The file name is the same as the profile name.
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 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
Add, delete, and reorder properties using the property toolstrip:
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.
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.
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.
After you import the profile into a model, all new connections assume the
AnalogConnection
stereotype.
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.
You can associate a color with component stereotypes. Element styling is an additional visual cue that indicates applied stereotypes.
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.
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.
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.
editor
| systemcomposer.profile.Profile
| systemcomposer.profile.Property
| systemcomposer.profile.Stereotype