Holarch

Architecture

Other Diagrams

Asset, Physical I/O, Interface Control, Layer, N2, I2, IDEF0, ICOM, Hierarchy, Tree, Spider, Radar, Risk, Timeline and Imported Graphic diagrams.

How to use it →

On this page
  1. Concepts
    1. Physical architecture in LML
    2. Functional interfaces
    3. Decomposition and traceability
  2. How to use it
    1. When and why
    2. Build a physical architecture and check its interfaces
    3. Describe functions with IDEF0 and N2
    4. Review traceability and impact
    5. Worked example: the CubeSat EO-1 demo
    6. Tips and good practice
    7. Common mistakes
    8. How it connects to other features
  3. Asset Diagram
    1. Canvas
    2. Toolbar
    3. Gestures
    4. Inspector
    5. ⚙ and Export
    6. Delete and remove
  4. Physical I/O Diagram
    1. How lines are derived
    2. Warnings
    3. Toolbar
    4. Create Input/Output and Repair Line
    5. Inspector
  5. Interface Control Diagram
    1. Layout
    2. Toolbar
    3. Editing
  6. Layer Diagram
  7. I2 Diagram
  8. N2 Diagram
  9. IDEF0 Diagram
    1. ICOM mapping
    2. Boxes
    3. Toolbar
    4. Palette and gestures
    5. Generate Requirements
    6. Generate Asset Diagram
  10. ICOM (A0) Diagram
  11. Hierarchy Diagram
    1. Toolbar
    2. Gestures
    3. Rollup
    4. ⚙
  12. Tree Diagram
  13. Spider Diagram
    1. Toolbar
    2. Gestures
    3. ⚙
  14. Radar Diagram
  15. Risk Diagram
  16. Timeline Diagram
    1. How rows are scheduled
    2. Toolbar
    3. Gestures
    4. ⚙ and warnings
  17. Imported Graphic
  18. Keyboard shortcuts
  19. Options and settings
  20. Messages
  21. Limits
  22. Related pages

Besides the Action Diagram, the FFBD, the SysML family and the whiteboard, Holarch has fifteen more diagram types. They cover physical architecture (Asset, Physical I/O, Interface Control, Layer, I2), functional interfaces (N2, IDEF0, ICOM), decomposition and traceability (Hierarchy, Tree, Spider), measures (Radar), risk (Risk), schedule (Timeline) and pictures linked to the model (Imported Graphic).

Like every Holarch diagram, each one is a view of the model: boxes are entities, lines are relationships, and the layout is the only thing stored with the diagram. The canvas, zoom, toolbar groups, export, annotations and thumbnails are shared by all types; see Diagrams.

DiagramRoot entityCategoryShows
Asset DiagramAssetLMLChild assets and the Conduits between them
Physical I/O DiagramAssetLMLAssets and the Input/Output lines derived from their actions and conduits, with warnings
Interface Control DiagramConduitLMLOne interface between two parent assets: child conduits, items, latency and capacity
Layer DiagramAssetGeneralDecomposition layers as nested boxes, with Conduits
I2 DiagramAssetLMLAssets on the diagonal, Conduits between them off the diagonal
N2 DiagramActionLMLActions on the diagonal, the Input/Outputs they exchange off the diagonal
IDEF0 DiagramActionGeneralChild actions in a staircase with Input, Control, Output and Mechanism arrows
ICOM (A0) DiagramActionGeneralOne action with its boundary arrows
Hierarchy DiagramAnyGeneralTop-down decomposition tree, like an org chart
Tree DiagramAnyGeneralLeft-to-right node-link tree with drag-to-reparent
Spider DiagramAnyLMLRadial traceability web over chosen relationships, with impact analysis
Radar DiagramAssetGeneralA radar chart of Characteristic and Measure values
Risk DiagramAnyGeneralThe project risk matrix with the risks related to the root
Timeline DiagramActionGeneralA Gantt-style schedule of child actions with milestones and dependencies
Imported GraphicArtifactGeneralA picture with hotspots linked to entities

The Asset, Physical I/O, Interface Control and Layer Diagrams use the same editor as the SysML diagrams: palette tabs New, Existing and Layout, green connect handles with labelled drop zones, Layout ▾, and the Remove from Diagram (Default) / Delete from Database dialog. That editor is described once in SysML Diagrams.

Concepts

Physical architecture in LML

  • An Asset is a physical or logical thing that performs actions. Decomposition is decomposed by.
  • A Conduit connects Assets: each end is connected by the Conduit. The Origin attribute of each connected by relationship marks the sending end, which gives the direction (one origin = directed, both = bidirectional, none = undirected).
  • A Conduit transfers the Input/Outputs it carries, and has Capacity, Latency and Units.
  • An Input/Output is generated by one Action and received by another. The Asset that performs each Action decides where the item physically flows.

The Asset, Physical I/O, Interface Control, Layer and I2 Diagrams all read and write these same relationships, so a conduit drawn on one appears on the others, in the Interface Register and in the ICD export.

Functional interfaces

The N2, IDEF0 and ICOM Diagrams read the generates and receives relationships of child Actions. The Trigger attribute on receives separates IDEF0 Controls (Trigger on, the default) from Inputs (Trigger off). Mechanisms are the Assets that perform the action.

Decomposition and traceability

The Hierarchy and Tree Diagrams follow decomposed by. For documents (Artifacts) they also follow source of, and for Test Suites referenced by. The Spider Diagram follows whichever relationships you choose.

How to use it

When and why

StageUseQuestion it answers
Requirements and conceptHierarchy, Tree, SpiderHow is the specification structured? What traces to this requirement, and what is affected if it changes?
Functional analysisIDEF0, ICOM, N2What does each function need and produce, what controls it, and which functions exchange data?
Physical architectureAsset, Layer, I2What are the parts, and which ones connect?
Allocation and interface designPhysical I/O, Interface ControlDoes every functional flow have a physical path? What crosses this interface, and does it fit?
Measures and tradesRadarHow do the measures of effectiveness compare with their thresholds and objectives?
Risk managementRiskWhere do the risks fall on the matrix?
PlanningTimelineWhen does each action run, and what depends on what?
Concept communicationImported GraphicWhich model items does this picture show?

Build a physical architecture and check its interfaces

  1. Open an Asset Diagram on the system Asset (Open ▾ → Asset Diagram, or Diagrams → + Create Diagram ▾).
  2. Use + Asset ▾ → New Child Asset… for each subsystem. Result: a box per child inside the root frame.
  3. Point at a box and drag its green dot to another box. Result: a Conduit "A to B" and a toast Created conduit A to B.
  4. Select the conduit. Set Direction and Line Type in the inspector; use + Transfers I/O… to add the items it carries; set Capacity, Latency and Units in its attributes.
  5. Switch the same root to Physical I/O Diagram with the type selector. Lines appear wherever an action performed by one asset generates an item that an action performed by another receives, or a conduit links them.
  6. Click Check Model. Each warning names the gap ("Image Strip flows between Payload Camera and C&DH, but no Conduit links them to carry it."). Click a warning to select the line, then 🔧 Repair Line to set the conduit and the actions in one dialog.
  7. Open the Interface Control Diagram on a key conduit to review the interface between two parent assets, then Export ICD Document for a Word ICD.

Describe functions with IDEF0 and N2

  1. Open an IDEF0 Diagram on the parent Action. Use + Action for each child function (three to six per diagram).
  2. Drag Input/Output from the palette onto a box: the upper left of the box makes a Control, the lower left an Input, the right third an Output.
  3. Drag a box's green handle onto another box and release over Control, Input or Resource. Result: a new item generated by the first box and received by the second (or a Resource the first produces and the second uses).
  4. Drag Asset (Mechanism) onto a box for who performs it.
  5. Click Rule Check. No IDEF0 rule violations found. when each box has a Control and an Output and the count is 3 to 6.
  6. Switch the root to N2 Diagram: functions on the diagonal, items in the cells (row = producer, column = consumer). Cells below the diagonal are feedback.

Review traceability and impact

  1. Open a Spider Diagram on a requirement or section.
  2. Open Relationships (N) ▾, choose a preset (for example Requirements V&V) or tick relationships, set Levels, and click Generate.
  3. Select one entity and click Impact; choose the level. Everything reachable within that many steps stays highlighted; the rest dims. Esc ends it.

Worked example: the CubeSat EO-1 demo

Create the demo with Manage Projects → Project Files ▾ → Create Demo Project.

  1. Asset Diagram of EO-1 Spacecraft. C&DH sits at the top, Payload Camera, Communications, EPS, ADCS and Structure and Thermal below. The EPS power lines Payload Power Line (IF-01), ADCS Power Line (IF-02), C&DH Power Line (IF-03) and Radio Power Line (IF-04) run from EPS with arrowheads toward the loads, because EPS is the origin. Payload Interface (IF-05) is bidirectional. Select it: + Transfers I/O… shows it already carries Command Schedule and Image Strip. Click + on EPS (bottom-right of the box) to show its parts in place: Solar Arrays, Battery Pack, Power Distribution Unit.
  2. Physical I/O Diagram of EO-1 Spacecraft. External assets are hidden (View ▾ → Externals). Lines such as Image Strip (Payload Camera → C&DH) and Downlink Frames (C&DH → Communications) come from the operations scenario actions. Click Check Model to list any flow without a conduit or a conduit without items.
  3. Interface Control Diagram of Space-to-Ground Link (IF-10). The left band is EO-1 Spacecraft, the right Ground Segment. The child conduits UHF Command Uplink (IF-11, Capacity 9.6 kbps) and S-band Downlink (IF-12, Capacity 10 Mbps) show their latency and capacity; their items (Imaging Plan, Image Data Package) are green tags. Click Export ICD Table for the CSV or Export ICD Document for the DOCX.
  4. IDEF0 Diagram of Produce Earth Imagery (0). Four boxes A1 to A4: Plan Image Collection, Acquire Imagery, Retrieve Imagery, Process and Deliver Products. Tasking Request enters A1 from the top as a Control and Orbit Ephemeris from the left as an Input; Collection Plan runs from A1 down to the top of A2; Downlink Status feeds back from A3 to A1. Ground Segment and EO-1 Spacecraft are the mechanisms. Rule Check reports no violations.
  5. ICOM (A0) Diagram of Produce Earth Imagery. One box A0 with the Controls Tasking Request and Product Specification, the Inputs Orbit Ephemeris and Ground Scene Radiance, and the Output Image Product.
  6. N2 Diagram of Produce Earth Imagery. A1 to A4 on the diagonal. Collection Plan is in row A1, column A2; Raw Image Data in row A2, column A3; Downlink Status below the diagonal in row A3, column A1. The External Inputs row holds Tasking Request and Orbit Ephemeris above A1; the External Outputs column holds Image Product beside A4.
  7. Radar Diagram of EO-1 Mission. Six MOE spokes (Image Quality, Daily Coverage, Data Latency, Pointing Performance, Power Margin, Link Availability) in manual order, with Value, Projected, Threshold and Objective series. Link Availability (65%) sits closest to its threshold (60%).
  8. Spider Diagram of 1 Mission Imaging. It follows decomposed by, satisfied by and verified by to Level 2: the section's requirements, the functions and assets that satisfy them and the test cases that verify them. Select 1.2 Ground Sample Distance and click Impact with Level 1 to see only its direct neighbors.
  9. Tree Diagram of EO-1 System Requirements Specification. Sections 1 to 6 with their requirements, three levels deep. Drag 4.4 Downlink Encryption onto section 5 Communications to move it there; with Renumber on Move on, it is renumbered under 5.
  10. Timeline Diagram of Run Nominal Imaging Pass (OPS). The twelve OPS actions as bars from their durations (a triangular or normal duration uses its mean), each starting when the flow reaches it. Type a Start date to switch the axis from relative times to dates.

Tips and good practice

  • Draw the structure on the Asset Diagram, check it on the Physical I/O Diagram. The Physical I/O Diagram derives its lines from actions and conduits, so it shows exactly where the functional and physical models disagree.
  • Set Origin on conduits. Direction drives arrowheads, the I2 placement and the Physical I/O direction check.
  • Give items a Data Rate or Size and conduits a Capacity with Units. The capacity check, the ICD and the IBD then flag overloads and unit mismatches.
  • Keep IDEF0 diagrams to three to six boxes. Decompose further instead of crowding one level; double-click a decomposed box to open its own diagram.
  • Save Spider presets for the relationship sets you use at every review.
  • Use Rollup on a Hierarchy Diagram to sum mass, power or cost up the tree instead of adding them by hand.

Common mistakes

  • Mark External on the Asset Diagram removed an asset from the system breakdown. That is what it does: the asset leaves the root's decomposition and stays on the diagram as external. Use Mark Internal to undo it, or ⌘Z.
  • An IDEF0 arrow enters at the side instead of the top. The item is received with Trigger off (an Input). Set Trigger on the receives relationship, or delete the arrow and drop the item on the upper left of the box.
  • An I2 conduit appears in the wrong cell. The cell comes from the Origin flags. Drag the conduit name to the right cell; Holarch rewrites the origins.
  • The Tree Diagram refuses a move with "Multiple Parents". The entity has more than one parent. Remove all but one parent in its Relationships, then move it.
  • The Timeline shows "Dependency cycle". Two actions depend on each other through a chain. Delete one dependency line.

How it connects to other features

  • The Asset, Physical I/O, ICD, Layer and I2 Diagrams share Conduits with the IBD and the Interfaces register.
  • N2 and IDEF0 read the same items as the Action Diagram; Generate Asset Diagram turns their performers and flows into a physical architecture.
  • IDEF0 Generate Requirements… writes a requirements document that you manage in Requirements.
  • The Radar Diagram shows the same Measures as Budgets & TPMs.
  • The Risk Diagram uses the project risk scale shared with the Risk Register (Risk & Decisions).
  • The Timeline Diagram reads the same Duration attributes that the Simulator samples.

Asset Diagram

The physical structure of an Asset: its children as boxes inside a root frame, and the Conduits between them.

Canvas

  • The root frame carries the root's name and class, and an optional background image. No child assets — use + Asset or drag from the palette when empty.
  • Boxes show the number, the name and, with ⚙ → Show Pictures, the entity picture. An external asset is labelled external.
  • A box with children shows ▸ N sub-assets and a + toggle at its lower right: Show nested assets in place expands its children inside it; − collapses them. Double-click a box with children to open its own Asset Diagram; double-click any other box for its Entity View.
  • With Performed Actions on, each box lists the actions it performs (◆ name).
  • Conduits are lines between the nearest visible boxes; parallel conduits fan out. The label is the conduit name, with the items it transfers on a second line. Arrowheads follow Origin: → one way, ⇄ both, none undirected. Point at a line for its ends and items.
  • Line types per conduit: Straight, Orthogonal, Dashed, Lightning (wireless, zig-zag in the middle) and Binary.

Toolbar

ControlWhat it does
+ Asset ▾New Child Asset…, Existing Asset as Child…, Existing Asset as External…
+ ConduitAdd Conduit: From Asset, To Asset, Name (optional) (default "A to B")
DeleteRemove or delete the selection
External AssetsShow or hide external assets (assets at the other end of a conduit that are not children, plus those added as external)
Performed ActionsList performed actions in the boxes
Auto LayoutRe-arrange the boxes in a grid; externals in a column to the right
Format toolsBold, italic, text/fill/line colors, reset, align vertically or horizontally, clone dimensions

Gestures

  • Drag the green dot on a box to another box: a new Conduit (Drag to another asset to add a Conduit).
  • Drag a box to move it; a selected group moves together. Positions snap to a 5 px grid.
  • Drag a corner handle of one selected box to resize it.
  • Shift+Drag on the background draws a selection rectangle.
  • Palette: drag an Asset onto the canvas, or into a box to nest it there (Drag onto the diagram (or into an asset to nest it)). Layout tab: Auto Layout, Expand All Nested, Collapse All Nested.

Inspector

  • Asset: the entity panel with Mark External (child assets) or Mark Internal (external assets) and Delete….
  • Conduit: the entity panel with + Transfers I/O… and Delete…, plus Direction (A → B) (Undirected, Directed, Reverse, Bidirectional) and Line Type.

⚙ and Export

  • ⚙: Hide/Show External Assets, Show/Hide Pictures, Generate System Requirements Document, Upload New Background Image… (or Change Background Image…) and Remove Background Image, plus the shared Layout Diagram, Reset Diagram, Auto Number… and Check Diagram… (lists assets with no conduits).
  • Generate System Requirements Document creates an Artifact "Root System Requirements Document" (label Requirements Document) that is the source of every requirement related to the root or the assets shown, then opens it: Created … with N requirements.
  • Export ▾ → Social Network Analysis (CSV) downloads "Root Social Network Analysis Report.csv" with Id, Class, Number, Name, Degree, Closeness, Betweenness and Eigenvector for every shown asset, using conduit direction.

Delete and remove

  • Conduit: Delete Conduit — Delete conduit "X" from the database?
  • Assets: Remove from this diagram (drops the decomposition / external marker, keeps the assets) or delete them from the database? with Remove from Diagram and Delete from Database.

Physical I/O Diagram

Assets with the Input/Output lines between them, derived from the model. The root is an Asset; its children are the internal assets.

How lines are derived

  • An I/O line joins two assets when an action performed by one generates an item that an action performed by the other receives, or a conduit between them transfers the item.
  • A conduit line (dashed) joins two assets linked by a conduit that carries no items.
  • Roll-up: actions performed by, and conduits connected to, any descendant or port of an internal asset count as that asset's own.
  • Direction comes from the actions (who generates, who receives), else from the conduit's Origin.
  • External assets (connected but not children) are grey and labelled external; View ▾ → Externals hides them.

Warnings

Lines turn orange (warning) or red (error), unless View ▾ → Warnings hides the colors:

MessageLevel
Item flows between A and B, but no Conduit links them to carry it.Warning
Item flows between A and B, but none of the Conduits linking A and B carries it.Warning
Item flows between A and B, but no Action produces or consumes it there.Warning
Item flows between A and B in a direction the connecting Conduit does not allow.Error
Conduit links A and B but carries no Input/Outputs.Information

Toolbar

  • Check Model: Model Check Results lists every warning; click one to select its line. Check Model found no problems. when clean.
  • 🔧 Repair Line: rebuild the selected line (Select a line to repair. otherwise).
  • Mark Internal / Mark External: make the selected asset a child of the root, or remove it from the decomposition and add the External System label (Select an asset first. otherwise).
  • View ▾: Externals, Warnings. Delete, Layout ▾.

Create Input/Output and Repair Line

Connect two assets (drag a handle, zone New Input/Output) to open Create Input/Output; 🔧 Repair Line opens the same dialog as Repair Line, prefilled:

RowButtons
Input/Output (optional)Create, Existing Entity, Edit, Remove
Conduit (default name "A to B"; an existing conduit between them is preselected)same
Source Action (for A) (default "Send item"; the asset's only action is preselected)same
Target Action (for B) (default "Receive item")same
Select DirectionalityFrom A to B, From B to A
Select OriginNone, A → B, B → A, Bidirectional

Create (or Repair) is enabled once a Conduit and both Actions are set (Set a Conduit and both Actions first.). It makes each asset perform its action, the source generate and the target receive the item, the conduit transfer it, both assets connected by the conduit and the origins as chosen. Repair first removes the line's old relationships. Result: Input/Output line created or Line repaired.

Inspector

A selected line shows its Conduit, its Actions (source → target), its warnings and 🔧 Repair Line…. A selected asset shows Mark External or Mark Internal. Removing a line drops the relationships that make it; removing an asset drops its decomposition and conduit links.

Interface Control Diagram

One interface in detail. The root is a Conduit between two parent assets; its child conduits connect the parents' child assets.

Layout

  • Left and right bands: the two parent assets (the first two Assets the root conduit connects to, or the ones you choose). Choose the left parent asset when unset.
  • Centre box: the root conduit's name, with Latency and Capacity above it.
  • Child assets of each parent inside the bands.
  • Child conduits: blue bars in the centre labelled "name [Interface Status]", with Latency · Capacity on the right; red with over (N%) when over capacity, orange with unit mismatch.
  • Items: green tags under each child conduit for the Input/Outputs it transfers; orange when the item's Units differ from the conduit's, with ⚠ Input/Outputs' Unit Warning above the diagram.
  • Lines from each child asset to the child conduits it connects to.

Toolbar

ControlWhat it does
Left: name / Left Parent Asset is unselectedChoose the left parent asset
Right: name / Right Parent Asset is unselectedChoose the right parent asset
Export ICD TableCSV "ICD - name.csv": one row per child conduit and item with Child Conduit, From Asset, To Asset, I/O, Units, Latency, Capacity, Interface Status, Owner, TBD/TBR, Connector/Pins, Medium, Direction, Size, Data Rate, Data Rate Units, Protocol/Format, Message/Data Definition, Requirements, Capacity Check, then every custom Conduit and I/O attribute
Export ICD DocumentDOCX "ICD - name": interface register, status summary, then one section per conduit with endpoints, status, owner, connector, medium, latency, capacity, conveyed items, requirements and the capacity check
Interface RegisterThe register for this interface, with Export CSV and Export ICD Document
View ▾Unit Warnings, I/O, Latency & Capacity, Child Assets

Editing

  • Palette Asset onto a band (a new child of that parent; Drop into a parent asset band), Conduit onto the centre box (a new child conduit; Drop onto the centre conduit box), Input/Output onto a child conduit (it transfers the item; Drop onto a child conduit).
  • Drag a child asset to the other band to move it to that parent. Drag an item tag to another child conduit to move it there.
  • Connect a child conduit and a child asset: zone connects to (Connect a child conduit to a child asset. otherwise).
  • Select the centre box or a child conduit for the interface section in the inspector (conveyed items, status, owner, TBD/TBR, requirements, capacity check), as on the IBD.

Layer Diagram

The decomposition of an Asset drawn as nested boxes, to Levels deep (default 3). Conduits are drawn between every copy of their end assets, with arrowheads from Origin.

  • Palette: Asset (a new child, numbered under its parent). Existing: Assets (added as a child and keeping other parents).
  • Nesting: drag a box into another to re-parent it; onto the canvas to make it a child of the root.
  • Connecting: zone Connect (Conduit) creates a Conduit "A to B". The inspector shows each end's Origin.

I2 Diagram

An interface matrix. The root's child Assets are on the diagonal; Conduits are off the diagonal: row = the sending asset (Origin on), column = the receiving asset.

  • The To row above the matrix holds conduits with only a receiving end shown; the From column on the right holds conduits with only a sending end.
  • A conduit with no or two origins is placed from the first to the second end (and also back when both ends are origins).
  • Cells list up to nine names in one column, eighteen in two, then +N more (point at it for the rest).
  • Toolbar: + Asset, Delete, Export CSV ("I2 - name.csv"). Layout tab: Refresh.
  • Palette: Asset (anywhere: a new child on the diagonal) and Conduit (onto an off-diagonal cell).
  • Gestures: drag from a diagonal asset to a cell in its row or column to create a conduit there; drag a conduit name to another cell to move it (its connected by links and origins are rewritten). A conduit with a default name ("New Conduit", "A To B", "To B", "From A") is renamed after its cell. Double-click opens the Entity View.
  • Drop onto a cell, Drop onto an off-diagonal cell, No child Assets yet — drag one from the palette or use "+ Asset".

N2 Diagram

The functional counterpart of the I2 Diagram. The root's child Actions are on the diagonal; Input/Outputs are off the diagonal: row = the action that generates the item, column = the action that receives it.

  • The External Inputs row holds items received on the diagram but generated by none of its actions; the External Outputs column holds items generated but received by none.
  • Cells below the diagonal are feedback.
  • Toolbar: + Action, Delete, Export CSV ("N2 - name.csv", with the External Inputs row and External Outputs column). Layout tab: Refresh.
  • Palette: Action and Input/Output (onto an off-diagonal cell).
  • Gestures, auto-naming, cell limits and messages work as on the I2 Diagram, with Input/Output and Action in place of Conduit and Asset.

IDEF0 Diagram

The child Actions of the root as IDEF0 boxes in a staircase, with ICOM arrows. Arrows are routed orthogonally with rounded corners and labelled with the item name.

ICOM mapping

ArrowSideModel
InputLeftAction receives the item with Trigger off
ControlTopAction receives the item with Trigger on (the default)
OutputRightAction generates the item
MechanismBottomAction performed by an Asset
Resource feedbackRight of producer to bottom of userOne action produces a Resource that performs another

An arrow between two boxes appears when one generates what the other receives. An item with no producer on the diagram enters at the boundary; an item no box receives leaves at the boundary. Tunnel marks ( ) show boundary arrows that the parent diagram does not carry, and arrows into a decomposed box that its children do not carry.

Boxes

Each box shows the action's number at the top left, its name, and its node number at the bottom right (A0 for the root, otherwise A plus the number without dots: 1.2 → A12). A dark corner marks a decomposed box: double-click it to open its IDEF0 Diagram (other boxes open their Entity View).

Toolbar

ControlWhat it does
+ ActionAdd a child action (numbered under the root)
↑ ParentOpen the parent's IDEF0 Diagram (disabled at the top)
Rule CheckIDEF0 Rule Check: IDEF0 expects 3 to 6 Actions per diagram., Action, X, must have one Control., Action, X, must have one Output., or No IDEF0 rule violations found.
Generate ▾Generate Requirements… and Generate Asset Diagram…
DeleteRemove or delete the selection
Layout ▾Layout Diagram

Palette and gestures

  • Action (anywhere), Input/Output (onto a box; upper left = Control, lower left = Input, right third = Output), Asset (Mechanism) (onto a box). The drop zones show while you drag over a box.
  • Drag a box to move it; drag an arrow label to move it (a leader line follows).
  • Drag a box's green handle onto another box: zones Control, Input and Resource (top, middle and bottom thirds of the target).
  • Removing a box drops it from the decomposition with its I/O relationships. Removing an arrow drops its relationships; an arrow that comes from the parent diagram can only be deleted there (X comes from the parent diagram, so it can only be removed there.).

Generate Requirements

Available on decomposed diagrams (level 1 and below) whose root is performed by an Asset. The preview lists:

  • 1.1 Input Requirements: "The Asset shall accept item from the performer." for each item the root receives.
  • 1.2 Output Requirements: "The Asset shall provide item to the performer."
  • 1.3 External Interface Requirements: "The Asset shall interface with the other through the conduit."
  • 1.4 Functions: "The Asset shall child action name."

Generate creates or updates the document "Asset Requirements" (label Requirements Document, sections 1 Functional Requirements and 2 General System Requirements), links each requirement satisfied by its items and actions and traced to the assets, saves a baseline and reports "… now holds N generated requirement(s). A baseline was saved." with Open Document. Running it again updates the same requirements. At the root: Requirements are generated from decomposed Action Diagrams (level 1 and below). This diagram is the root (level 0); open one of its child diagrams instead. Without a performer: An asset must perform X to generate requirements.

Generate Asset Diagram

The preview lists the performers that become children of the root's performer and the conduits that will transfer each exchanged item (existing conduit or new conduit), or No changes needed. Generate applies it and opens that Asset Diagram. Without a performer: An asset must perform X to generate an Asset Diagram.

ICOM (A0) Diagram

The context diagram of an IDEF0 model: only the root Action, as box A0, with all its boundary Inputs, Controls, Outputs and Mechanisms. It has the IDEF0 toolbar without + Action and Rule Check; the palette has Input/Output and Asset (Mechanism) (The ICOM diagram shows only its root Action. for actions).

Hierarchy Diagram

A top-down decomposition tree of any entity, like an organization chart. Children are decomposed by (documents: also source of; Test Suites: also referenced by).

Toolbar

ControlWhat it does
LevelAll, or 1 to 10 levels (default 5)
Compression1 to 10 (default 8): below this level, children stack vertically
OrientationVertical or Horizontal
Spacing…Edit spacing between entities: Width (10–500) (default 20) and Height (10–300) (default 44)
Attributes…Show/Hide Attributes: tick the attributes to show in the boxes
+ Add ChildAdd a child to the selected entity (or the root), numbered next under it
DeleteRemove "X": Remove from Diagram (deletes the relationship to its parent) or Delete from Database
Rollup…Sum a numeric attribute up the tree
Format toolsBold, italic, colors, reset

Gestures

  • Click to select; Shift+click or ⌘+click adds; Shift+Drag draws a selection rectangle.
  • A box with hidden children shows +N hidden; its corner toggle expands or collapses it.
  • Drag a box onto another to re-parent it (Cannot move an entity under its own descendant., Class cannot have a Class child.).
  • Palette: drop a new or existing entity onto a box to add it as a child.

Rollup

Rollup — Entity: "Sums each child into its parent, multiplied by the decomposition Multiplicity or Quantity attribute. Text values with units are converted before summing."

  • Attribute: any Number, Duration, Percent, Enumeration or Multiselect attribute of the entities.
  • Roll-up levels (default 10), Roll Up Only Visible Entities, Decimal places (0–15) (default 2).
  • For an enumeration, Apply Value to Attributes sets the chosen value on the entity and all its descendants instead.
  • Result: Rolled up X into N entities; the attribute is added to the boxes. Nothing to roll up: no entity in this hierarchy has a value for that attribute. when no values exist.

⚙

Edit Spacing…, Show/Hide Attributes…, Show/Hide Labels, Show/Hide Images, Expand All, Collapse All. Layout tab: Layout Diagram, Expand All, Collapse All, Reset Diagram.

Tree Diagram

A left-to-right node-link tree of the same decomposition, with free positioning.

  • Toolbar: Level (All, 1 to 5), + Add Child, Delete, format tools (no fill), Layout Diagram (return every node to the automatic layout), Expand All, Collapse All, Renumber on Move.
  • Renumber on Move: off (default), a moved entity only gets the next number if it has none; on, the moved entity and its whole subtree are renumbered under the new parent.
  • Circle: click to expand or collapse; drag from it onto another node to make that node a child of this one.
  • Node: drag to move it freely; drop it onto another node to re-parent it. A refused drop snaps back with Can't move X under Y.
  • An entity with several parents cannot be moved: Multiple Parents — X has more than one parent. Remove all but one parent, then try again.
  • Palette: new items are limited to the root's class family (documents: Statements; Test Suites: Test Cases). Drop onto a node to add a child: Drop onto an entity in the tree to add it as a child.
  • Delete: Remove from Diagram or Delete from Database for the selected non-root entities.
  • ⚙: Expand All, Collapse All, Renumber on Move.

Spider Diagram

A radial traceability web around a root entity, over the relationships you choose.

Toolbar

ControlWhat it does
Relationships (N) ▾Popover: Default Presets (All Relationships, Traceability Relationships, Decomposition, Requirements V&V, None), Custom Presets (project-wide; Save as Preset…, Remove Presets…), and every relationship in the project with its color and count. Apply with Generate.
Levels1 to 10
GenerateApply the relationship and level changes (highlighted when there are pending changes)
LayoutReset node positions
+ Add Related…Add Related Entity: choose a relationship, then Choose Target… (Related: A rel B)
HideRemove the selected entities from this diagram
Show HiddenShow them again
Impact + levelHighlight everything reachable from the selected entity within N levels; the rest dims. Esc ends it.
Format toolsColors, bold, italic, align, clone dimensions

Traceability Relationships = decomposed by, performed by, source of and traced to; Requirements V&V = traced to, satisfied by, verified by and source of (each with its inverse).

Gestures

  • Drag nodes to move them (a selection moves together); resize one selected node by its corners.
  • The corner toggle of a node expands it: Expand: show more related entities / Collapse expansion.
  • Drag a node's green dot onto another node to create a relationship (No relationships available to create when none fits).
  • Right-click a node: Expand, Add Related Entity…, Open Entity View, Open as Spider Root, Remove from Diagram, Delete from Database.
  • Select a line and press Delete: Relationship removed (⌘Z to undo). Drag a line label to move it.

⚙

Relationship Colors… (per relationship, Reset Colors to Default), Show/Hide colors on relationship edges, Show/Hide Legend, Reset custom line colors to the legend, Edit Spacing… (Spacing Width Scale (1-50x)), Show/Hide All Labels, Reset Label(s), Default Line Type (Straight, Orthogonal, Curved), Show Hidden Entities.

Messages: Select one entity to run an impact analysis., Turn off Impact Analysis to edit the diagram., Select at least one relation., That name belongs to a default preset. Enter a different name., There are no custom presets., No active relationships found., Spacing must be between 1 and 50.

Radar Diagram

A radar chart of the Characteristics and Measures an Asset is specified by (states excluded). Each one is a spoke.

  • Series: Value for every spoke; for Measures also Projected Value, Threshold Value and Objective Value (ringed dots). The scale starts at zero (or the lowest value) and ends at the next round step above the highest value.
  • Toolbar: Sort ▾ (By Name and Number, By Name, By Number, Manual), Move CCW, Move CW (switch to Manual order), Delete, Edit Radar Preferences.
  • Edit Radar Preferences: Grid Configuration (Show Grid, Show Spokes, Angle Offset, Grid Type Circular or Polygonal, Number of Ticks) and Colors (Value, Projected Value, Threshold Value, Objective Value). Ticks must be a whole number from 1 to 20 (Number of ticks must be positive, cannot be larger than 20, must be a whole number).
  • Palette: Characteristic and Measure (anywhere). Layout tab: Reset Diagram.
  • Click a spoke label or dot to select it; double-click for its Entity View. Drag Characteristics or Measures from the palette to add spokes. when empty.

Risk Diagram

The project risk matrix (rows = probability, columns = consequence) with the risks related to the root. For the risk scale, the Risk Register and burn-downs, see Risk & Decisions.

  • Which risks: for a Risk root, the root, its child risks to Level (1 to 3) and the risks linked to them; for any other root, the risks that it and its children to Level cause, are caused by, mitigate or resolve.
  • Toolbar: Level, + New Risk (probability and consequence 50, linked to the root), Relate Existing Risk…, ✦ Generate Risks, Edit Risk Matrix… (the project risk scale: size, likelihood and consequence definitions, levels and each cell's level), Filter by Label ▾ (hide risks with the chosen labels; Labels (N hidden) ▾), Risk Register.
  • Cells list risks as "number name" (or names only with ⚙ → Show names in cells). Unrated risks sit in a Not rated box.
  • Drag a risk into a cell to set its probability and consequence to the cell's midpoints.
  • Click a cell for the Risk Block panel: a cell name, the cell color, the risks in it (View/Edit Risk), + New Risk Here, ✦ Generate Risks and Deselect.
  • ✦ Generate Risks runs the configured AI: Generate Risk — Setup (Target entity, Context, up to 3 risks), then Generate Risk — Verify to edit and pick before Create Selected creates them as one undo step.
  • X cannot cause or mitigate a Risk. when the root's class cannot link to a Risk.

Timeline Diagram

A Gantt-style schedule of an Action's children from their Start and Duration attributes.

How rows are scheduled

  • Each child Action is a row, nested to Level deep; a row with children is a summary bar.
  • An explicit Start places the bar; otherwise it starts when the flow reaches it (scheduled).
  • A Duration distribution uses its mean, an OR its expected branch duration, a LOOP its iteration count.
  • Without a root Start date the axis shows relative times (+5 min, +1 h); with one it shows dates.
  • Percent Complete draws a darker partial fill. An action without a duration is a milestone diamond.
  • Milestones are Time entities the action occurs at.

Toolbar

ControlWhat it does
Level1 to 10
StartDate and time of the root's Start
+ Add ActionNew child action
+ MilestoneNew Time milestone for the selected action, or the root
◂ PromoteMove the selected action up one decomposition level (Only actions below the first level can be promoted.)
Timescale ▾Automatically fits all rows; Manually… sets Start Date and End Date (Enter both dates., The start must be before the end.)
Labels ▾Show only rows with label; Clear Labels

Gestures

  • Drag a bar sideways to change its Start; drag the blue end handle to change its Duration (Drag to change duration).
  • Drag the connect handle after a bar onto another bar: the other action depends on this one (B depends on A; That dependency already exists or would create a cycle.).
  • Select a dependency line and press Delete: Dependency removed (⌘Z to undo).
  • Drag a row label between rows to reorder siblings, or onto a row to nest under it (Cannot nest an action under itself.).
  • Double-click a bar for its Entity View.

⚙ and warnings

⚙: Show/Hide Lines, Label Lines ("depends on"), Grid Lines, Today Line, Schedule Dependents (moves each dependent to start after its predecessors: Rescheduled N dependent actions or All dependents already start after their predecessors.; needs a Start: Set a Start date first.).

The warning area shows N items outside the timescale, Now is not visible, Dependency cycle: …, OR name: no branch probabilities, so the longest branch is used and loop notes. Rows inside an OR branch or a loop are tagged with the branch or iteration they represent (point at the bar).

Imported Graphic

A PNG, JPG or SVG picture stored on an Artifact, with rectangular hotspots linked to entities. DoDAF OV-1 and CV-1 products use it (DoDAF help).

  • Import Image… (later Replace Graphic…) loads the picture; Download Original saves it.
  • Draw Hotspot: drag a rectangle on the image, then choose the entity it links to (Link Hotspot to Entity; Drag a larger rectangle on the image. for tiny rectangles). Select a hotspot to see the entity in the inspector.
  • Open product Page opens the framework page that uses the graphic.
  • The picture appears on the Diagrams page, gets a thumbnail, and can be inserted into documents and presentations like any diagram.

Keyboard shortcuts

KeyAction
Delete or BackspaceRemove or delete the selection (all types)
EscClear the selection; on the Spider Diagram, end Impact first
Shift+DragSelection rectangle (Asset, Hierarchy, Spider)
Shift+click, ⌘+clickAdd to the selection
Shift while resizingKeep proportions
Enter or Space on a palette itemInsert it at the center of the view
⌘Z / ⇧⌘ZUndo / redo

Options and settings

All toolbar and ⚙ settings are saved per diagram (per root and type) and are undoable, except expand/collapse state on the Hierarchy Diagram, which is view state. Spider presets and risk matrix cell names and colors are project-wide. Zoom and pan are saved per diagram (Diagrams).

Messages

MessageMeaning and fix
Created conduit nameA conduit was drawn on the Asset Diagram.
The schema does not allow a Conduit between these entitiesOne end's class cannot be connected by a Conduit.
Add at least two assets first / Choose two different assets+ Conduit needs two different assets.
Only Assets can be placed on an Asset diagram.Drop an Asset.
Removed from the decomposition (shown as external) / Added to the decompositionMark External / Mark Internal done.
No requirements are related to the assets on this diagram.Generate System Requirements Document found nothing to collect.
Image exceeds the N MB limit.Background image too large; use a smaller file.
Set a Conduit and both Actions first.Complete the Create Input/Output dialog.
Select a line to repair. / Select an asset first.Select the right element before the button.
Drop into a parent asset band / Drop onto the centre conduit box / Drop onto a child conduit / Connect a child conduit to a child asset.ICD palette and connection targets.
Drop onto a cell / Drop onto an off-diagonal cellN2/I2 cells.
Drop onto an Action / That entity has no place on an IDEF0 diagram. / Cannot add an Action to its own decomposition. / "X" is already on this diagram.IDEF0 drops.
X comes from the parent diagram, so it can only be removed there.Delete the arrow on the parent IDEF0 diagram.
Select an entity with children to roll up. / These entities have no numeric, duration or enumeration attributes.Rollup needs children and a numeric attribute.
Select a non-root entity to delete.The root cannot be deleted from its own diagram.
Cannot place an entity under its own descendant. / Cannot move an entity under its own descendant.Re-parent would create a cycle.
Class cannot have a Class child.The schema has no hierarchy relationship between the two classes.
Can't place X under Y. / Can't move X under Y. / Can't make X a child of Y.Tree drop refused.
Showing only the first 1000 entities. Reduce the number of levels to show the full diagram.Layer, Physical I/O and ICD share the SysML editor's cap.

Limits

  • Editor-based diagrams (Layer, Physical I/O, ICD) draw at most 1000 shapes.
  • N2 and I2 cells show up to eighteen names; the rest are listed under +N more.
  • The Tree Diagram shows up to 5 levels; Hierarchy, Spider, Layer and Timeline up to 10; Risk up to 3.
  • Background images and imported graphics count toward the attachment size limit (see Storage and Limits).
  • System boundaries, swimlanes, cell names, line types and positions are diagram drawings; the model holds only the entities and relationships.

Last updated October 7, 2026