Functional Spec Template

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:

Design Constraints

Feature Dependencies

Security risks


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)