Guided Walkthrough
This walkthrough follows a single feature - Lock Gate - through all four stages of the Specify workflow. The example product is a Driveway Gate Control System: an electric entrance gate with remote operation, safety sensors, and security locking.
The point isn't to produce a finished specification. It's to show how a feature moves from an initial idea through to a locked, exportable definition - and how the structure builds as you go.
Open Specify alongside this page and follow along. If you want to compare against a mature example, keep the Reference Project open too.
The example product
A driveway gate control system is a real embedded product with clear features that don't need domain expertise to understand. Gates lock, unlock, open, close, detect obstacles, respond to remotes. The behaviours are tangible, and the requirements write themselves once the features are clear.
We'll focus on one feature: Lock Gate - the feature that locks the gate in its current position, preventing movement until explicitly unlocked.
Stage 1: Plan - capture the feature
Select 1. Plan from the navigation.
The Plan stage is for quick capture. You don't need to know everything about a feature to add it - just enough to describe what it does. Detail comes later.
Click Add Feature and enter:
- Feature name: "Lock Gate"
- Feature description: "Locks the gate in its current position, preventing movement until explicitly unlocked. The lock engages when the gate is fully closed and the system is in secure mode."
At this point the feature is proposed but not nominated. It's on the table for discussion - stakeholders can review it, add context, and decide whether it belongs in the project.
Nominate for review
Open "Lock Gate" and select Move to Review. This nominates the feature - it's flagged as necessary and moves to the Review stage.
Stage 2: Review - prioritise and categorise
Select 2. Review. "Lock Gate" appears under features nominated for review.
Open the feature. The Review stage captures three things:
MoSCoW priority
- Must Have - the product is unacceptable without it
- Should Have - important, but can defer if needed
- Could Have - nice to have, first to be dropped under pressure
- Won't Have - explicitly out of scope for this release
A guideline: Must Haves should be 60% or less of your total features. If everything is a Must Have, you can't make trade-off decisions when time gets tight.
Categorisation
Categorisation adds metadata that describes what kind of feature this is:
- Feature Category - the type of behaviour. "Lock Gate" is a feature dialogue - an interaction between the user (or a protocol) and the system.
- Service Type - the implementation pattern. For a feature dialogue, this might be "Feature Service".
- Service Name - the logical component the feature belongs to.
Approve
Once priority and categorisation are set, the feature can be approved. Approval confirms it belongs in the project and assigns a permanent F-number (F1, F2, etc) replacing the P-number. F1 is always F1, even if the feature moves between feature sets later.
In the Reference Project, look at any approved feature in the Review tab to see the same metadata fields.
Stage 3: Create - build the specification
Select 3. Create. This is where the feature gets its full behavioural definition.
Create a feature set
Feature sets are logical groupings of related features - the components of your system. Create one called "Gate Controller" and assign "Lock Gate" to it.
Add feature requirements
Feature requirements are general rules that apply to "Lock Gate" regardless of which scenario is executing:
- "The gate lock shall only engage when the gate is in the fully closed position."
- "The gate lock shall disengage within 500ms of receiving an unlock command."
- "While the gate lock is engaged, the system shall prevent motor activation in any direction."
Add a use case
Use cases are concrete scenarios for the feature. Start with the happy path - the scenario where everything goes right.
Name it something like "Gate locks successfully" and describe the scenario: the user triggers a lock command, the system confirms the gate is closed, the lock engages.
Add use case requirements
Inside the happy path, add the step-by-step requirements for that specific scenario:
- "When the user selects lock, the system shall verify the gate is in the fully closed position."
- "When gate position is confirmed as closed, the system shall engage the lock mechanism."
- "When the lock mechanism is engaged, the system shall update the display to show locked status."
In the Reference Project, expand User Features and look at Change Baking Temperature (F1) to see how feature requirements and use case requirements work together.
Custom ordering and IDs
You can drag features, use cases, and requirements into whatever order makes logical sense. Creation order doesn't have to be reading order. You can also assign custom IDs - "GATE-LCK-01" instead of "FR1" if that matches your conventions.
Stage 4: Finalise - lock and export
Select 4. Finalise.
Review "Lock Gate" for completeness:
- Feature requirements cover all general rules
- Use cases cover the scenarios that matter - at minimum the happy path, plus error conditions and edge cases
- Use case requirements describe the full sequence within each scenario
- No requirement is vague - every one has specific values, conditions, and tolerances
From the Finalise view you can export as JSON, CSV, or PDF. The export preserves your custom ordering and includes all metadata.
Where to go from here
- Capture Features - detailed guidance on the Plan stage
- Write Requirements - EARS patterns for clear, testable requirements
- Features & Feature Sets - what counts as a feature and how sets organise them
- Reference Project - a mature specification with 20 feature sets and over 350 requirements
Need help? Contact us · Return to home