Skip to content

Feature Structure#

OakCore separates structure (containers) from content (nodes). Clean features make requirements easier to find later.

Containers and nodes#

  • Containers = where does something belong?
  • Nodes = what's the content? (requirements, tests, risks …)

Containers with children are branches: sub-containers only, no nodes. Nodes go in leaf containers.

Example: vehicle tracking#

Project Fleet Management.

Step 1: feature#

  1. Open Spec Flow, pick your project
  2. + → Feature, click the canvas, then type Live Vehicle Tracking

Still empty, a branch.

Step 2: sub feature#

  1. + → Feature, then drop it onto an existing feature card (or click the bottom pin on a feature card)
  2. The camera zooms in around parent and child; type GPS Position Updates on the new card

Nesting up to four levels is supported.

Step 3: requirement#

  1. Open GPS Position Updates (double-click the card, or click empty space on it)
  2. + → Requirement → Position is updated every 5 seconds
  3. Fill in status and description in the sidebar. To file the node in another feature later, click the type icon on the card and use Move to….

Connect on the canvas from the card’s port well: Tests and Risks rows for verification, the bottom pin for same-row connections. Hierarchical parent/child requirements stay as always-on edges.

Cross-cutting topics#

For shared concerns: Cross-cutting containers, e.g. Compliance. Same logic: branches for structure, leaves for nodes.

+ button shows no node types?#

You're in a branch. Add a nested feature with the pin on a feature card, or switch to a leaf container. The menu shows your current scope.

More on the canvas: Projects & Spec Flow