Create and manage profiles with stereotypes and properties
The Profile Editor allows you to define a profile that contains stereotypes with properties. In System Composer™ architecture models, stereotyping is necessary to define custom metadata on model elements typed by the stereotype. In Requirements Toolbox™, you can use stereotypes to define custom requirement types and link types with custom properties.
System Composer: Apply a profile to your model or interface data dictionary. Then, use stereotypes in the model to type model elements such as components, connectors, ports, interfaces, functions, requirement sets, and link sets. Functions only apply to software architectures. You can define custom property values on each element using the stereotyped template.
Requirements Toolbox: Apply a profile to a requirement set or link set. Then use stereotypes by setting the requirement type or link type to the stereotype and setting the stereotype properties to your desired values.
Open the Profile Editor
System Composer toolstrip: In the Modeling tab, click Profile Editor.
MATLAB® Command Window: Enter
Requirements Editor toolstrip: Click Profile Editor .
Filter profiles — Filter to show imported profiles
<all> (default) | model file name | dictionary file name |
Filter imported profiles:
<all>to show all imported profiles from all loaded models and dictionaries.
A model name, such as
model.slx, to show all imported profiles from specified architecture model.
An interface data dictionary, such as
dictionary.sldd, to show all imported profiles from specified interface data dictionary.
<refresh>to refresh profiles from all loaded models and dictionaries.
Import into — Import selected profile
model file name | dictionary file name
Specify the name of a model or interface data dictionary to which to import the selected profile.
Stereotype applied to root on import — Root stereotype
<none> (default) | stereotype
Stereotype to apply to the root architecture after importing profile into a model. Choose from a list of available stereotypes. The root architecture is at the system boundary of the top-level model that separates the contents of the model from the environment.
Applies to — Element type to which stereotype can be applied
<all> (default) |
Element type to which the stereotype can be applied.
Base stereotype — Stereotype from which stereotype inherits properties
<none> (default) | stereotype
Stereotype from which the stereotype inherits properties. Choose from a list of available stereotypes.
Abstract stereotype — Whether stereotype is abstract
off (default) | on
Select this check box to indicate an abstract stereotype. An abstract stereotype is 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.
Show inherited properties — Whether to show properties inherited from base stereotype
off (default) | on
Select this check box to indicate whether to display read-only properties inherited from a base stereotype.
systemcomposer.profile.editor opens the Profile
Editor from the MATLAB Command Window.
A System Composer model is the file that contains architectural information, including components, ports, connectors, interfaces, and behaviors.
Perform operations on a model:
Extract the root-level architecture contained in the model.
Link interface data dictionaries.
Generate instances from model architecture.
A System Composer model is stored as an SLX file.
Interface Data Dictionary
An interface data dictionary is a consolidated list of all the interfaces and value types in an architecture and where they are used.
Local interfaces on a System Composer model can be saved in an interface data dictionary using the Interface Editor. You can reuse interface dictionaries between models that need to use a given set of interfaces, elements, and value types. Linked data dictionaries are stored in separate SLDD files.
A profile is a package of stereotypes that you can use 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 or several profiles. When you save profiles, they are stored in XML files.
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 model elements such as root-level architecture, component architecture, connectors, ports, data interfaces, value types, functions, requirements, and links. Functions only apply to software architectures. You must have a Requirements Toolbox license to apply stereotypes to requirements and links. 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. You can specify property values for each element to which the stereotype is applied.
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.
A component is a nontrivial, nearly independent, and replaceable part of a system that fulfills a clear function in the context of an architecture. A component defines an architectural element, such as a function, a system, hardware, software, or other conceptual entity. A component can also be a subsystem or subfunction.
Represented as a block, a component is a part of an architecture model that can be separated into reusable artifacts. Transfer information between components with:
A port is a node on a component or architecture that represents a point of interaction with its environment. A port permits the flow of information to and from other components or systems.
There are different types of ports:
Component ports are interaction points on the component to other components.
Architecture ports are ports on the boundary of the system, whether the boundary is within a component or the overall architecture model.
Connectors are lines that provide connections between ports. Connectors describe how information flows between components or architectures.
A connector allows two components to interact without defining the nature of the interaction. Set an interface on a port to define how the components interact.
A data interface defines the kind of information that flows through a port. The same interface can be assigned to multiple ports. A data interface can be composite, meaning that it can include data elements that describe the properties of an interface signal.
Data interfaces represent the information that is shared through a connector and enters or exits a component through a port. Use the Interface Editor to create and manage data interfaces and data elements and store them in an interface data dictionary for reuse between models.
A physical interface defines the kind of
information that flows through a physical port. The same interface can be assigned to multiple
ports. A physical interface is a composite interface equivalent to a
Simulink.ConnectionBus object that specifies any number of
Use a physical interface to bundle physical elements to describe a physical model using at least one physical domain.
A service interface defines the functional interface between client and server components. Each service interface consists of one or more function elements.
Once you have defined a service interface in the Interface Editor, you can assign it to client and server ports using the Property Inspector. You can also use the Property Inspector to assign stereotypes to service interfaces.
Requirements are a collection of statements describing the desired behavior and characteristics of a system. Requirements ensure system design integrity and are achievable, verifiable, unambiguous, and consistent with each other. Each level of design should have appropriate requirements.
To enhance traceability of requirements, link system, functional, customer, performance, or design requirements to components and ports. Link requirements to each other to represent derived or allocated requirements. Manage requirements from the Requirements Manager on an architecture model or through custom views. Assign test cases to requirements using the Test Manager (Simulink Test) for verification and validation.
A link is an object that relates two model-based design elements. A requirement link is a link where the destination is a requirement. You can link requirements to components or ports.
View links using the Requirements Perspective in System Composer. Select a requirement in the Requirements Browser to highlight the component or the port to which the requirement is assigned. Links are stored externally as SLMX files.
A requirement set is a collection of requirements. You can structure the requirements hierarchically and link them to components or ports.
Use the Requirements Editor (Requirements Toolbox) to edit and refine requirements in a requirement set. Requirement sets are stored in SLREQX files. You can create a new requirement set and author requirements using Requirements Toolbox, or import requirements from supported third-party tools.
Introduced in R2019a