Cap2SL Project Template Overview

The Connector for Capella and Simulink® Toolbox provides a MATLAB Project Template. This template aims at organizing in a standardized way all the elements that will be generated by a Capella elements transformation. It also provides additional folders for the engineers to organize their files they will create in addition to the files generated by the transformation.

Table of Contents

  1. Initialize a Connector for Capella and Simulink® project
  2. Project structure overview
    1. Folder tree
      1. capellaData
      2. data
      3. docs
      4. lib
      5. models
      6. requirements
      7. tests
      8. utils
      9. work
    2. Labels
      1. Capella elements
      2. Capella Layer
      3. Capella type
      4. Owner
    3. Utilities
      1. Import Capella elements

Initialize a Connector for Capella and Simulink® project

A project is created during the transformation workflow if the project does not exist yet. However an empty project can be created before the first transformation. To create an empty project based on this template open the Simulink® Start Page.

Click on "Create Project" on the Cap2SL project template located in "My templates" section. Then, choose the name of the project and its location.

Project structure overview

Folder tree

The folder tree defined in this project is based on general best practices and adapted to match the ARCADIA methodology.

capellaData

The "capellaData" folder is intended to be used to store .mlcore files generated from Capella. The files stored in this location are made available by the "ImportCapellaElements" project shortcut for importing the Capella elements they contain.

When the shorcut is clicked,

See Getting Started for more information about this transformation workflow.

data

The "data" folder stores all the Data Dictionaries used to store the data types definition coming from the Functional Exchanges and Exchange Items defintions in Capella. See Transformation of Data and Interfaces for more information.

It's also used to store the Data Dictionaries linked to Function models. These Data Dictionaries can be used to store the Function parameters as a Simulink.Parameter, or Variable if any.

This folder contains one sub-folder for each ARCADIA perspective. Hence, the Data Dictionaries are stored adequatly regarding the ARCADIA perspective they are issued from Capella model.

docs

The "docs" folder is intended to store any document related to the project. It can be freely organized with sub-folders.

It is recommended to not add this folder to the Project Path.

lib

The "lib" folder is intended to store any user-defined Simulink® library required by the project.

models

The "models" folder is intended to store all the Simulink® models either generated by transformations or user-created.

This folder contains one sub-folder for each ARCADIA perspective. Hence, the Simulink® models are stored adequatly regarding the ARCADIA perspective they are issued from Capella model.

requirements

The "requirements" folder is used to store all files that contain requirements and files that contain requirement traceability information.

This folder can be freely organized with sub-folders.

tests

The "tests" folder is intended to store all the files related to testing the design models. Files can be Simulink® models used as Test harnesses, Test Campaign defined in Test Manager tool, Excel or .mat files that store scenarios and many others.

This folder contains one sub-folder for each ARCADIA perspective. Hence, the files are stored adequatly regarding the ARCADIA perspective they relate to.

utils

The "utils" folder is intended to store any MATLAB scripts or functions used as utilities for the project.

The template already provides a utility function to import Capella elements "ImportCapellaElements". DO NOT DELETE THIS FILE!

work

This "work" folder is the project startup folder. It is intended to be used as the sandbox folder.

It is recommended to always work in this folder.

Labels

The project Template defines custom labels to quickly identify and search files in the project.

Capella elements

This label category is intended to identify what types of Capella elements the file represents.

For instance, a file with "Functional Chain" as "Capella type" value could have the following values in the "Capella elements" label category:

Capella Layer

This label category is used to identify the ARCADIA perspective the file relates to.

Capella type

This label category is used to identify the type of Capella element the file focus on. Although the file focus on a given Capella element, it can contains representation of other elements related to this focused element. The types of the other elements can be listed in Capella elements category.

Owner

This label category is used to identify the owner of the file. This category is not specifically required in the context of the bridge but it is good practice to have it when several persons work on the same project.

Utilities

Import Capella elements

The project provides a utility as a project shortcut to easily update the project with new or modified elements.

The shortcut is accessible from the "Project Shortcuts" project tab in the shortcut group "Capella Bridge".

See capellaData Project folder for more information.