本文へ移動
cccskills
無料GitHub で公開

building-architecture-models

Common steps for building multi-layer system architecture models using System Composer. Use when implementing architecture models or when interacting with interface dictionaries, allocation sets, stereotypes, and requirements for architecture components.

インストール方法を見る

含まれるファイル(7)

  • SKILL.md5.2 KB
  • manifest.yaml713 B
  • references/flp-reference-workflow.md5.3 KB
  • references/matlab-project.md1.1 KB
  • references/requirements-traceability-api.md4.3 KB
  • references/system-composer-api.md11.6 KB
  • scripts/resolveComponent.m966 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Building Architecture Models

Create and refine System Composer architecture models — from greenfield F/L/P designs to targeted additions (stereotypes, views, allocation sets, requirements tracing).

When to Use

  • Designing a system architecture (full F/L/P or single-layer)
  • Adding interface dictionaries, stereotypes, views, or roll-up analysis to existing SC models
  • Creating allocation sets between architecture layers
  • Linking requirements to architecture components (Implement links)
  • Refining existing System Composer models with methodology guidance

When NOT to Use

  • Building or editing a Simulink model (block-level work) → use building-simulink-models
  • One-off structural edits to an existing SC model (add a component, rewire a port) → use building-simulink-models with model_edit
  • User doesn't have a clear decomposition or requirements yet → suggest specifying-mbd-algorithms to produce a spec first, then return here to build
  • Creating activity/sequence behavior diagrams → These are supported features of System Composer, but are not covered in this skill. Do not suggest using Stateflow as an alternative.

Mental Model

  1. F/L/P = 3 separate Architecture models. There are no special model types (systemcomposer.createFunctionalModel does not exist). Layers are a convention — three independent .slx models connected by allocation sets.

  2. Layer conventions:

    • Functional — verb phrases (SenseState, ComputeControl), abstract interfaces, no units
    • Logical — solution-role nouns (SensingUnit, ControlUnit), typed signals, design-agnostic
    • Physical — concrete units (IMU_SensorModule, FlightComputer), physical units, implementation-level
  3. Allocation links layers. Allocation sets map elements across models (F→L, L→P). Rebuilding a model invalidates allocation links because SIDs change — always re-run allocation after a model rebuild.

  4. Interface dictionaries are per-layer. Each layer has its own .sldd with interfaces at the appropriate abstraction. The dictionary must be linked to the model (linkDictionary) before setInterface works — without it, ports silently stay untyped.

  5. Stereotypes follow a strict lifecycle. Create profile → save → apply to model → apply stereotype to components → set properties. Fully-qualified paths required: Profile.Stereotype.Property.

Guardrails

Always:

  • Get user review and approval before moving to the next phase
  • Rebuilding a model invalidates allocation links (SIDs change) — re-run allocation after any model rebuild
  • Run model_check after building each model to detect unconnected ports
  • Save models before creating allocation sets that reference them

Ask First:

  • Deviating from the top-down F→L→P build order (when doing a greenfield design)
  • Adding operating modes or layers not discussed with the user

Never:

  • Delete or overwrite a model file without user confirmation
  • Skip model_check verification after building a layer
  • Use systemcomposer.createAllocationSet — correct namespace is systemcomposer.allocation.createAllocationSet

Task Routing

IntentReference
Build a full system architecture from scratch (greenfield)references/flp-reference-workflow.md — tailor to user's scope and existing artifacts
Add interface dictionaries, stereotypes, views, or analysisreferences/system-composer-api.md
Create allocation sets between layersreferences/system-composer-api.md § Allocation Sets
Link requirements to architecture componentsreferences/requirements-traceability-api.md
Set up project for architecture workreferences/matlab-project.md + managing-simulink-projects

Prerequisites

  • The user has an active Simulink project (or assist in creating one via managing-simulink-projects)
  • Simulink, System Composer, and Requirements Toolbox are licensed

The helper scripts/resolveComponent.m is in the skill's scripts/ directory. Use evaluate_matlab_code with project_path set to the skill's scripts/ folder so MATLAB can find it. Never use addpath.

Verification

Run after building each model:

  • model_check with checks="unconnected_ports" to detect unwired ports
  • Update diagram (set_param(modelName, "SimulationCommand", "update")) to catch interface type issues

Tools Used

  • model_edit — structural modeling (components, ports, connections, layout)
  • model_check — post-build verification (unconnected ports)
  • evaluate_matlab_code — SC-specific APIs (interface dictionaries, stereotypes, allocation, views, analysis, requirements linking)
  • scripts/resolveComponent.m — helper to resolve nested sub-components by path

Copyright 2026 The MathWorks, Inc.


レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Author or upgrade Model Advisor checks for Simulink and System Composer models. Covers the full lifecycle: guideline authoring, check specification, Model Advisor check implementation, and qualification testing. Use when creating new checks (edit-time, standard batch, config-parameter, auto-fix), converting legacy StyleOne/StyleTwo/StyleThree checks to modern DetailStyle, creating a guideline for modeling, enforcing a modeling rule, or testing/qualifying a check. Triggers on any modeling constraint (e.g., "blocks shall...", "signals must match...", "parameters shall be set to...").

日本語の概要は準備中です。原文の説明を表示しています。

matlab/simulink-agentic-toolkit1,2152026年10月8日 更新

Synthesize new waveforms from scratch for Simulink inports using createInputDataset. Use ONLY when the user asks to generate, create, or synthesize signals (step, ramp, sine, chirp, pulse, noise) to populate a Dataset for External Inputs or Signal Editor. Covers timeseries and timetable formats with correct data type, interpolation, units, and dimensions. Also covers function-call and trigger inport timing setup. Do NOT use when the user wants to load, import, or read existing data from files (MAT, CSV, spreadsheet) — even if that data will be used as model input. Do NOT use for running simulations or plotting outputs.

日本語の概要は準備中です。原文の説明を表示しています。

matlab/simulink-agentic-toolkit1,2152026年10月8日 更新

Builds and edits Simulink, System Composer, Stateflow, and Simscape models. Use when modifying model structure, parameters, ports, connections, or Stateflow chart internals.

日本語の概要は準備中です。原文の説明を表示しています。

matlab/simulink-agentic-toolkit1,2152026年10月8日 更新

Use this skill when the user asks to check Simulink model compliance against a standard (MISRA, MAB, JMAAB, ISO, DO, IEC, EN, CERT C/CWE, AUTOSAR, Simulink Code Inspector (SLCI)), wants to run Model Advisor checks, or needs a compliance report with fix suggestions. For JMAAB/MAB, supplement deterministic checks with agentic review of uncheckable guidelines.

日本語の概要は準備中です。原文の説明を表示しています。

matlab/simulink-agentic-toolkit1,2152026年10月8日 更新

Guide users through creating and managing .satk/block-policy.json for controlling which blocks the agent can use, which are excluded, and which block parameters the agent should not modify. Use when setting up block usage policy for a project.

日本語の概要は準備中です。原文の説明を表示しています。

matlab/simulink-agentic-toolkit1,2152026年10月8日 更新

Import data into the Simulation Data Inspector (SDI) from MAT, CSV, or Excel files, from workspace variables, or from a Simulink simulation. Use when the user wants to view a logged file in SDI, load a bench-test log, or verify what a just-completed `Simulink.sdi.createRun` or `sim(model)` produced. Covers the `'file'`, `'vars'`, and `'namevalue'` sources of `createRun`, the auto-populate behavior after `sim()`, and post-import verification. Not for comparing existing runs (use `Simulink.sdi.compareRuns`); not for streaming data live during a running simulation (use `Simulink.sdi.createRunOrAddToStreamedRun` — a separate API); and not for authoring Gherkin or Simulink Test test cases, assertions, or regression tests (use `testing-simulink-models`). Do not activate on test-authoring or verification prompts even when no test-authoring skill is available — say so and stop.

日本語の概要は準備中です。原文の説明を表示しています。

matlab/simulink-agentic-toolkit1,2152026年10月8日 更新

matlab のスキルをすべて見る

このスキルの問題を報告する