W3C

QA Framework: Specification Examples and Techniques

W3C Note 03 February 2003

This version:
http://www.w3.org/QA/WG/2003/02/qaframe-spec-extech-20030203
Latest version:
http://www.w3.org/QA/WG/qaframe-spec-extech
Previous version:
http://www.w3.org/QA/WG/2002/11/qaframe-spec-extech-20021202
Editors:
Karl Dubost (karl@w3.org)
Lofton Henderson (lofton@rockynet.com)
Lynne Rosenthal (lsr@nist.gov)

Abstract

This document is part of the of the Quality Assurance (QA) Activity. It presents examples and describes the techniques of producing specifications (Technical Reports) that are clearer, more implementable, and better testable. It complements QA Framework: Specification Guidelines [QAF-SPEC], illustrating how specification authors and Working Groups might meet the specification guidelines and checkpoints of that document.

Status of this document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. The latest version of this document series is maintained at the W3C.

This document is a W3C Working Draft (WD), made available by the W3C Quality Assurance (QA) Activity for discussion by W3C members and other interested parties. For more information about the QA Activity, please see the QA Activity statement.

This version is the first public Working Draft, and supersedes all previous WG-only drafts. It is expected that updated WD versions of this document will be produced regularly, along with other members of the Framework documents family. Future progression of this document beyond Working Draft is possible, but has not yet been determined. This version should be published soon. It's still a Working Draft but your comments or examples are welcome.

In this version, example case studies are presented depending on their ability to illustrate the checkpoint -- how in all W3C specifications the checkpoints of the specifications guidelines [QAF-SPEC] have been implemented. As the specifications predate the QA Specificaton Guidelines, no W3C specifications meet all the specifications checkpoints, and some meet them partially inside a checkpoint.

This version lacks any enumeration of techniques -- what Working Groups must or should do to satisfy the specification guidelines checkpoints, and what constitutes conformance to the checkpoints. This is a significant planned addition in a future version. A future version will also derive a final chapter (after the "Guidelines in action") that will provide a retrospective assessment of the case studies, lessons learned, what was effective, and what was not. For each guidelines we will separate the examples from the techniques in two different sections.

Please send comments to www-qa@w3.org, the publicly archived list of the QA Interest Group [QAIG]. Please note that any mail sent to this list will be publicly archived and available, do not send information you wouldn't want to see distributed, such as private data.

Publication of this document does not imply endorsement by the W3C, its membership or its staff. This is a draft document and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use W3C Working Drafts as reference material or to cite them as other than work in progress.

A list of current W3C Recommendations and other technical documents can be found at http://www.w3.org/TR.

Table of contents


Introduction

You will be able to find a previous public version of this document which was synchronized with the QA Specification Guidelines at that time. QA Specification Guidelines has been drastically modified and this version will be completely different from the previous version.

Examples and Techniques

Guideline 1. Define Scope.

Checkpoint 1.1 Include the scope of the specification. [Priority 1]

Examples
Techniques

Checkpoint 1.2 Illustrate what is in scope. [Priority 2]

Examples
Techniques

Checkpoint 1.3 Provide Usage Scenarios. [Priority 3]

Examples
Techniques

Checkpoint 1.4 Provide examples. [Priority 2]

Examples
Techniques

Guideline 2. Identify what needs to conform and how.

Checkpoint 2.1 Identify all classes of product. [Priority 1]

Examples
Techniques

Checkpoint 2.2 For each class of product, define the conformance requirements. [Priority 1]

Examples
Techniques

Checkpoint 2.3 Identify which of the categories of object are specified in the document as a whole. [Priority 3]

Examples
Techniques

Checkpoint 2.4 If there are several classes of products, define their relationships and interaction with other dimensions of variability. [Priority 2]

Examples
Techniques

Guideline 3. Specify conformance policy.

Checkpoint 3.1 Specify any universal requirements for minimum functionality. [Priority 2]

Examples
Techniques

Checkpoint 3.2 If special conformance terms are used, include a definition in the specification. [Priority 1]

Examples
Techniques

Checkpoint 3.3 Justify any usage of a dimension of variability. [Priority 1]

Examples
Techniques

(Under Construction)

Guideline 4. Address the use of profiles to divide the technology.

Checkpoint 4.1 Indicate whether or not the use of profiles is mandatory for conformance. [Priority 1]

Examples
Techniques

Checkpoint 4.2 If profiles are chosen, define any minimal requirements. [Priority 2]

Examples
Techniques

Checkpoint 4.3 If profiles are chosen, define their relationships and interaction with other dimensions of variability. [Priority 2]

Examples
Techniques

(Under Construction)

Checkpoint 4.4 If profiles are chosen, address rules for profiles. [Priority 2]

Examples
Techniques

Guideline 5. Address the use of modules to divide the technology.

Checkpoint 5.1 If modules are chosen, indicate any mandatory conditions or constraints on their usage. [Priority 1]

Examples
Techniques

(Under Construction)

Checkpoint 5.2If modules are chosen, define their relationships and interaction with other dimensions of variability. [Priority 2]

Examples
Techniques

(Under Construction)

Guideline 6. Address the use of functional levels to divide the technology.

Checkpoint 6.1 If levels are used, define their relationships and interaction with other dimensions of variability. [Priority 2]

Examples
Techniques

(Under Construction)

Guideline 7. Identify the relation between deprecated features and conformance.

Checkpoint 7.1 Identify each deprecated feature. [Priority 1]

Examples
Techniques

Checkpoint 7.2 For each class of product, specify the degree of support required for each deprecated feature and the conformance consequences of the deprecation. [Priority 1]

Examples
Techniques

Checkpoint 7.3 If deprecation is used, define its relationships and interaction with other dimensions of variability. [Priority 2]

Examples
Techniques

Checkpoint 7.4 Include an explanation for the deprecation. [Priority 3]

Examples
Techniques

Checkpoint 7.5 Include examples to illustrate how to avoid using deprecated features. [Priority 3]

Examples
Techniques

(Under Construction)

Guideline 8. Define discretionary items.

Checkpoint 8.1 State the circumstances for when discretionary items are allowed [Priority 1]

Examples
Techniques

Checkpoint 8.2 For implementation dependencies, address the allowable differences between implementations [Priority 1]

Examples
Techniques

(Under Construction)

Checkpoint 8.3 Indicate any constraints on the number of choices/options that can be implemented for discretionary choices [Priority 2]

Examples
Techniques

Checkpoint 8.4 Promote consistent handling of discretionary choices. [Priority 2]

Examples
Techniques

(Under Construction)

Checkpoint 8.5 If discretionary items are used, define their relationships and interaction with other dimensions of variability. [Priority 2]

Examples
Techniques

Guideline 9. Allow extensions or NOT!

Checkpoint 9.1 Indicate if the specification is extensible. [Priority 1]

Examples

(Under Construction)

Techniques

Checkpoint 9.2 If extensions are allowed, define their scope and constraints. [Priority 1]

Examples
Techniques

(Under Construction)

Checkpoint 9.3 Prevent extensions from contradicting the specification. [Priority 1]

Examples

(Under Construction)

Techniques

(Under Construction)

Checkpoint 9.4 Define a uniform mechanism to create an extension. [Priority 3]

Examples
Techniques

Checkpoint 9.5 Require that extensions be published. [Priority 3]

Examples

(Under Construction)

Techniques

Checkpoint 9.6 Require that implementations provide interoperable alternatives to extensions [Priority 3]

Examples

(Under Construction)

Techniques

(Under Construction)

Checkpoint 9.7 If extensions are allowed, define their relationships and interaction with other dimensions of variability. [Priority 2]

Examples
Techniques

Guideline 10. Provide a conformance clause.

Checkpoint 10.1 Include a conformance section. [Priority 2]

Examples
Techniques

(Under Construction)

Checkpoint 10.2Make normative reference to specifications on which the current specification depends [Priority 2]

Examples
Techniques

Guideline 11. Specify how to make conformance claims.

Checkpoint 11.1 Identify and define all conformance designations. [Priority 1]

Examples
Techniques

(Under Construction)

Checkpoint 11.2 Provide specific wording of the claim. [Priority 3]

Examples
Techniques

(Under Construction)

Checkpoint 11.3 Provide a conformance disclaimer. [Priority 3]

Examples
Techniques

(Under Construction)

Checkpoint 11.4 Impose no restrictions about who can make a claim or where claims can be published. [Priority 1]

Examples
Techniques

(Under Construction)

Guideline 12. Publish an Implementation Conformance Statement proforma.

Checkpoint 12.1 Provide an Implementation Conformance Statement proforma. [Priority 3]

Examples
Techniques

Checkpoint 12.2 Require the ICS be completed as part of the conformance claim. [Priority 3]

Examples

(Under Construction)

Techniques

(Under Construction)

Guideline 13. Clearly identify conformance requirements.

Checkpoint 13.1 Use conformance key words. [Priority 1]

Examples
Techniques

(Under Construction)

Checkpoint 13.2 Distinguish normative and informative text. [Priority 2]

Examples
Techniques

(Under Construction)

Checkpoint 13.3 Use consistent terminology. [Priority 1]

Examples

(Under Construction)

Techniques

(Under Construction)

Checkpoint 13.4 Provide a fast way to find conformance information [Priority 2]

Examples

(Under Construction)

Techniques

Guideline 14. Provide test assertions.

Checkpoint 14.1 Provide test assertions [Priority 1]

Examples

(Under Construction)

Techniques

Checkpoint 14.2 Provide a mapping between the specification and the test assertions list [Priority 2]

Examples

(Under Construction)

Techniques

(Under Construction)

Conformance

There is no concept of conformance to this document. Rather, conformance is measured relative to the checkpoints of the companion document, QA Framework: Specification Guidelines[QAF-SPEC]. This document relates real-world examples to the checkpoints' requirements, and also presents techniques by which the checkpoints may be satisfied. In that sense, it defines conformance criteria for the conformance requirements (checkpoints) of the operational guidelines document.


Acknowledgments

The following QA Working Group and Interest Group participants have contributed significantly to the content of this document:

References

DOM-TS-PROC
DOM TS Process Document, D. Dimitriadis, Ed., 15 January 2002, available at http://www.w3.org/DOM/DOMTS-Process.
PROCESS
World Wide Web Consortium Process Document, I. Jacobs, Ed., 19 July 2001, available at http://www.w3.org/Consortium/Process-20010719/.
QAF-OPS
QA Framework: Operational Guidelines, K. Gavrylyuk, D. Dimitriadis, L. Henderson, L. Rosenthal, Eds., W3C Working Draft, May 2002, companion version to this document, available at [...].
QAF-SPEC
QA Framework: Specification Guidelines, L. Rosenthal, D. Dimitriadis, L. Henderson, K. Gavrylyuk, Eds., W3C Working Draft, May 2002, Working Draft companion version to this document, available at [...].
SVG-MAN
SVG Conformance Test Suite -- Test Builder's Manual, L. Henderson, 1 October 2001, available at http://www.w3.org/Graphics/SVG/Test/svgTest-manual.htm.
QAIG
Quality Assurance Interest Group of the W3C QA Activity, which may be found at http://www.w3.org/QA/IG/.
QAWG
Quality Assurance Working Group of the W3C QA Activity, which may be found at http://www.w3.org/QA/WG/.
W3C-TR
Location of all published W3C technical reports, see http://www.w3.org/TR/.

Change history

2003-02-03, New version.

Reformatted the document with regard to the new version which is ready for Last Call. Cf: http://www.w3.org/QA/WG/2003/01/qaframe-spec/

Added new examples.

Added stylesheet of spec guidelines..

Added Techniques designed by Lynne Rosenthal (NIST) and Dominique Hazaël-Massieux (W3C)

2002-12-02, New version.

New Editing and addition of the contents of the old Specification Guidelines

2002-11-12, Holder of content.

Added Front and Back content for the Examples and Techniques

2002-11-08, skeleton.

Skeleton to start to edit the Examples and Techniques for QA Specification Guidelines.

2002-07-15, first public version, not published.

A version which has been organized to help and define which belongs to the example techniques.

The way it has been organized is slightly different from the QA Operational Guidelines Examples and Techniques which review only 3 Specs. This publication has taken examples in all specifications when the examples were available.

The editing has been made difficult by the verbosity of examples already given in QA Specification Guidelines