The main unit of work in SpecFuse is a specification. A specification describes a specific set of changes for an application, whether for a new exciting feature or details of a bug fix.
In the software development industry, a specification is generally referred as a spec, so we will use that terminology for the remainder of this guide.
Specs may contain information about the background, the business case for implementing the change, attachments, discussion, change history, as well as itemized requirements. They can be assigned to different users and different releases, and moved through workflow stages to completion.
If you use the GitHub or Jira issue trackers, you can connect them to your SpecFuse project to get your specs in sync with issues in those systems.
Specs can easily be edited and expanded upon as an initial idea is worked through in more detail and the team collaborates to determine more specific requirements.
Any user watching a spec will receive notifications when changes are made to it, such as when it is edited or progresses to a new workflow stage. When you create a spec, you will automatically be added as a watcher. This can be changed by toggling off the Watch Spec switch when viewing a spec.
To track the progress of a spec from first creation through to being implemented and closed, SpecFuse provides a five-stage workflow. This means a spec will be considered to be in one of five stages at any time, commencing with the Pending stage when it is first created.
The complete five-stage workflow is as follows:
Specs can be advanced or regressed through the workflow, but only by one stage at a time. To change the stage, simply click on the relevant stage while viewing the spec. All changes to the workflow stages are recorded in the change history, including when the change was made and by who.
All specs are considered to be opened or closed at any time. The status of a spec is controlled by its position in the workflow, so there is no need to manually update its status. If a spec is in the Complete stage, it will have a status of closed. In all other stages it will have a status of open.
To keep track of who is working on each spec, they can be assigned to users. Each spec can be assigned to one user at a time. When viewing the spec, the name of the currently assigned user will appear. In various places throughout the application, such as the spec search and roadmap view, the profile picture for the assigned user will be shown.
Users can assign themselves to specs, or choose another user for it to be assigned to. When a user is assigned to a spec by another user, they will receive a notification to let them know. Users will see a list of specs assigned to them directly on the project home page when they log in, making it easy to jump straight into the specs they need to work on next.
Tags can be associated with specs to help identify key information or associate specs together to assist in project planning. Tags exist at an organization level and are available to all your projects.
To manage the tags in your organization:
Sometimes it can be helpful to insert an image attachment to appear inline with the text in the background field of a spec.
To make an attachment appear inline:
Each spec comes with a complete change history. This history records all changes to any field or detail of the spec, including the exact changes made, by who and when.
Change history means you always have a record of all information added to the spec, and can always access the information from previous versions of the spec.
To view the change history, simply click the Changes tab while viewing a spec.