Specification Template Help
Status
- Preliminary
- The specification is in concept state
- Standard
- A specification with status Standard is considered to be stable.
- Obsolete
- An Obsolete specification is a specification that has been identified unnecessary. For example due to technology changes or changes in other standards or specifications.
Abstract
The Abstract section provides a concise and comprehensive overview of the purpose and contents of the entire document. In addition to this the Abstract will serve as input for Marketing in order to prepare the to New Features. Don't use more than 150 words in the Abstract.
Detailed Specification
General
Bear in mind the following rules when writing a specification:
- Completeness [Rule 1]
First and foremost a specification has to be complete. That means all relevant aspects of a feature have to be captured.
When user interfaces (UI) are involved:
- Are the topics of the Accessibility Checklist covered?
- Are the topics of the Globalization Checklist covered?
- Are the topics of the OpenOffice.org User Interface Text Style Guide Checklist covered?
- Do alerts meet the requirements specified in the Alert Guidelines?
- Are all menu related changes specified in the OpenOffice.org Menu specification?
- Are all tool bar related changes specified in the OpenOffice.org Toolbar specification?
- Is each UI element specified in detail (e.g. default values, input and output ranges, interactions and possible relations to other UI elements and parts of the UI)?
- Is the error handling specified in detail?
- Clarity [Rule 2]
Each statement has to be unambiguously clear to Development, Quality Assurance, User Experience and Documentation.
- Is the specification clear enough to the intended readership for being implemented, being tested and for being documented?
- Are you using quantifiable statements instead of interpretable generalities? For instance: Have you avoided to use terms like “more”, “most”, “less”, “easy”, “improve”, “enhanced”, “better”?
- Are you consistent within the specification and to specifications which relate to the feature you are specifying?
- Simplicity [Rule 3]
Each statement shall be as short and simple as possible.
Is any secondary writing regarding the detailed specification clearly separated e.g. “comments”, “notes”, “suggestions”, “ideas”, “reasons”?
User Interface
Specify the user interface precisely. Add mock-ups to illustrate the general “look & feel”.
Graphics & Flow-Charts
Tip:
Use graphics when concepts, designs, or processes are too complex or cumbersome to describe with words.
Migration
Describe in this section the migration path. For example, if changes introduces a new functionality which is not covered by older versions of the product. Check:
- Did I specify the incompatible or removed configuration settings?
- Did I specify all newly needed, or removed files, modules?
- Did I specify how users are affected by this change?
Configuration
If a setting (this includes also user interface settings) has to be stored or changed check the following:
- Did I state the default, where the setting is stored (configuration path)?
- Did I specify which data type it is?
- Did I specify when the setting is activate (restart of application, for all new documents/windows after the change, or also for all opened documents/windows)
- If it is a new / incompatible setting did I specify a migration path?
File Format
If functionality regarding the file format changes described:
- Which elements, attributes or/and properties are affected,
- How it will affect older revisions of the file format
- Export/Import-transformation to older revisions, if incompatible changes are needed