LicenseReviewProcessImprovementSpec

Differences between revisions 5 and 6
Revision 5 as of 2005-10-25 15:45:54
Size: 2986
Editor: mailgate
Comment: removed irritating discrepancy between SpecSpec and SpecTemplate
Revision 6 as of 2005-10-28 21:03:10
Size: 2906
Editor: 203_220_103_66-WIFI_HOTSPOTS
Comment: starting to reformat these
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= How to Write an Ubuntu Specification =

This is an example Ubuntu specification, with comments on how to write a
good Ubuntu specification. The better your spec, the better the chances that
your ideas will be implemented in Ubuntu, and accepted by the distro team.

== Status ==
Line 14: Line 6:
== Introduction == == Summary ==
Line 16: Line 8:
This specification decribes the way we would like Ubuntu specifications to
be written. It takes the form of a specification itself. You can see the SpecTemplate, which it is recommended you use for your own
specifications in this system.

This specification decribes the way we would like Ubuntu specifications to be written. It takes the form of a specification itself.


The better your spec, the better the chances that your ideas will clearly understood by the review team.

See also SpecTemplate, which is recommended as a template for your own specifications in this system.
Line 31: Line 27:
== Specification Structure == == Use Cases ==

== Scope ==

== Design ==
Line 62: Line 62:


== Implementation ==

== Outstanding Issues ==

== BoF agenda and discussion ==

Summary

This specification decribes the way we would like Ubuntu specifications to be written. It takes the form of a specification itself.

The better your spec, the better the chances that your ideas will clearly understood by the review team.

See also SpecTemplate, which is recommended as a template for your own specifications in this system.

Rationale

As we develop new ideas for features in Ubuntu it's important to have a clear idea of the exact status of each idea. Putting this content in the wiki gives our community a chance to participate in the discussion and design of a feature, and increases the chance that community members will feel confident enough to start work on the implementation of the feature. A good specification allows community members who were not physically present at meetings discussing a topic to participate in the implementation of the spec.

Use Cases

Scope

Design

The spec is broken into a number of sections and sub-sections. We describe each of these in turn:

  1. The title. A short heading for the spec, no more than 12 words.

  2. The status metadata. This section contains some well-defined

  3. Introduction. A brief introduction to the topic or spec. This

    • should not attempt to tell why the spec is being defined, just what is being specified.

  4. Rationale: a summary of why this spec is being defined.

  5. Scope and Use Cases. The use cases are not always required, but

    • in many cases they bring much better clarity to the scope and scale of the specification than could be obtained by talking in abstract terms.
  6. Implementation Plan. This section is usually broken down into

    • subsections, such as the packages being affected, data and system migration where necessary, user interface requirements and pictures (photographs of drawings on paper work ell).

Implementation

Outstanding Issues

BoF agenda and discussion

LicenseReviewProcessImprovementSpec (last edited 2010-10-26 13:56:51 by host194)