Functional Spec Template
Jump to navigation
Jump to search
The Functional Spec explains how a user interacts with a feature, and what results they can expect from the feature. Ideally, the UI will indicate what the user can expect to happen next. Use screenshots when appropriate.
General Description
What does this feature do?
Interface Requirements
How does the user use/activate this feature?
Performance Requirements
Will this feature affect:
- Client FPS?
- Simulator FPS?
- Database?
- Asset server?
- Network load?
- Any other system?
Design Constraints
- Will this feature be unavailable on certain hardware?
- Is this feature consistent (similar look & feel) with other features?
- Is this feature well integrated (accessible when you need it, and in the place(s) you expect to find it)?
- Is this feature discoverable (newbie friendly)?
- Is this feature Safe, Predictable, and Responsive?
Feature Dependencies
- Features that this feature will affect
- Features that affect this feature
Security risks
- Does this feature give access to something it should not?
Feature Rules
The rules of the feature, organized in order of precedence. (eg. Rule 1 supersedes Rule 2, which supersedes Rule 3)
Feature Usage
When appropriate, the feature will be laid out in chronological order, or in the order they are most likely to be used. (eg. Create a group, then add members, then deed land, ... kick members, leave group)