Firefox3/Feature Plan Template
From MozillaWiki
Status [edit]
- Feature tracking bug
- bug xxxxx
- any other high-level tracking bugs can be listed here
Has a design review been completed? When do you anticipate the feature landing Any relevant status comments for the feature can be placed here.
Overview [edit]
Describe the goals and objectives of the feature here.
Use Cases [edit]
Describe the primary use cases for the feature here.
Requirements [edit]
List functional and non-functional requirements for the feature here, with links back to any relevant product PRD. These requirements should be prioritized.
Schedule [edit]
Describe the rough schedule here, linking back to relevant product release milestones, as well as linking to any build/release notes.
UI Design Documentation [edit]
use cases and expected user knowledge (terminology, metaphors, etc) design mockups (of whatever fidelity is easiest) links to relevant user data, bugs, reports, examples, etc
Design Impact [edit]
Security and Privacy [edit]
- What security issues do you address in your project?
- Is system or subsystem security compromised in any way if your project's configuration files / prefs are corrupt or missing?
- Include a thorough description of the security assumptions, capabilities and any potential risks (possible attack points) being introduced by your project.
Exported APIs [edit]
- Please provide a table of exported interfaces (APIs, ABIs, protocols, UI, etc.)
- Does it interoperate with a web service? How will it do so?
- Explain the significant file formats, names, syntax, and semantics.
- Are the externally visible interfaces documented clearly enough for a non-Mozilla developer to use them successfully?
- Does it change any existing interfaces?
Web Compatibility [edit]
- Does the feature had any impact on Web compatibility?
Performance [edit]
- How will the project contribute (positively or negatively) to "perceived performance"?
- What are the performance goals of the project? How were they evaluated? What is the test or reference platform and baseline results?
- Will it require large files/databases (for example, browsing history)?
Reliability [edit]
- What failure modes or decision points are presented to the user?
- Can its files be corrupted by failures? Does it clean up any locks/files after crashes?
l10n and a11y [edit]
- are any strings being changed or added?
- are all UI elements available through accessibility technologies?
Installation, Upgrade/Downgrade/Sidegrade, and platform requirements [edit]
- Does it equally support all Tier-1 platforms?
- Does is have a hardware requirement (or increase minimum requirements)?
- Does it require changes to the installer?
- Does it impact updates?
- list the expected behavior of this feature/function when Firefox is upgraded to a newer minor release, downgraded by installation of an earlier revision, or re-installed (same version)
configuration [edit]
- Can the end user configure settings, via a UI or about:config? Hidden prefs? Environment variables?
- Are there build options for developers? [#ifdefs, ac_add_options, etc.]
- What ranges for the tunable are appropriate? How are they determined?
- What are its on-going maintenance requirements (e.g. Web links, perishable data files)?
Relationships to other projects - are there related projects in the community? [edit]
- If so, what is the proposal's relationship to their work? Do you depend on others' work, or vice-versa?
- Are you updating, copying or changing functional areas maintained by other groups? How are you coordinating and communicating with them? Do they "approve" of what you propose?
Documentation [edit]
- Do built-in Help pages need modified?
- Documentation for developer.mozilla.org?
Other [edit]
any other implementation or design related documentation
Discussion & Implications [edit]
Caveats / What We've Tried Before [edit]
links to previous design documents, discussions, etc.
References [edit]
links to external documents that could inform the design of the feature
