W3C

QA Framework: Specification Examples and Techniques

W3C Working Group Note 12 September 2003

This version:
http://www.w3.org/QA/WG/2003/09/qaframe-spec-extech-20030912
Latest version:
http://www.w3.org/QA/WG/qaframe-spec-extech
Previous version:
http://www.w3.org/QA/WG/2003/02/qaframe-spec-extech-20030203
Editors:
Karl Dubost, W3C (www-qa@w3.org)
Lofton Henderson, CGM Open
Lynne Rosenthal, NIST
Contributors:
See Acknowledgments.

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 version is a QA Working Group (QAWG) editor's draft, to accompany the 20030912 QAWG editor's CR draft of Specification Guidelines (SpecGL). Editorial alignment with revised SpecGL is still incomplete.

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 Note, made available by the W3C Quality Assurance (QA) Activity for discussion by W3C members and other interested parties. The document status is being maintained as a W3C Note, pursuant to resolution of Issue #68. For more information about the QA Activity, please see the QA Activity statement.

This draft differs from the Previous Version, by incorporating changes to wording, order, and statements of guidelines and checkpoints that have been made to SpecGL as a result of Last Call issue processing. Revision of the corresponding Examples&Techniques content itself is still in progress. The principal changes from the Previous Version are listed in the "Change history" section.

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

  1. Introduction
  2. Rationale for these techniques and examples
  3. Specification guidelines in action
    1. Guideline 1. Define Scope.
    2. Guideline 2. Identify what needs to conform and how.
    3. Guideline 3. Address the use of profiles, modules and levels to divide the technology.
    4. Guideline 4. Identify the relation between deprecated features and conformance.
    5. Guideline 5. Define discretionary items.
    6. Guideline 6. Allow extensions or NOT!
    7. Guideline 7. Clearly identify conformance requirements.
    8. Guideline 8. Document the conformance policy.
    9. Guideline 9. Specify how to make conformance claims.
    10. Guideline 10. Provide test assertions.
  4. Conformance
  5. Acknowledgments
  6. References
  7. Change history

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 WD has been modified and this version is the result of these modifications. There is still a lot of work to do in this document.

Rationale

@@to write text here@@

Specification guidelines in action

This section looks at each of the guidelines and checkpoints in the specification guidelines [QAF-SPEC]. For each checkpoint, there are two sections of content:

The Examples section demonstrates how the checkpoints has been applied in the past in previous W3C specifications. The Techniques section show possible solution to fullfil the checkpoint. The given techniques are not necessary the only one possible.

The structure of this chapter exactly parallels the structure of the its Chapter 3, "Guidelines", of the Specification Guidelines [QAF-SPEC] document -- each checkpoint in this section links back to the corresponding checkpoint of QA Framework: Specification Guidelines [QAF-SPEC].

Guideline 1. Define Scope.

Checkpoint 1.1 Include a scope statement. [Priority 1]
Examples
Techniques
Checkpoint 1.2 Illustrate scope. [Priority 2]
Examples
Techniques
Checkpoint 1.3 Illustrate functional details. [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 the applicable specification categories. [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. Address the use of profiles, modules and levels to divide the technology.

Checkpoint 3.1 Indicate whether or not the use of profiles is mandatory for conformance. [Priority 1]
Examples
Techniques
Checkpoint 3.2 If profiles are chosen, define any minimal requirements. [Priority 2]
Examples
Techniques
Checkpoint 3.3 If profiles are chosen, address rules for profiles. [Priority 2]
Examples
Techniques
Checkpoint 3.4 If modules are chosen, indicate any mandatory conditions or constraints on their usage. [Priority 1]
Examples
Techniques

(Under Construction)

Checkpoint 3.5 If profiles, modules or levels are used, define their relationships and interaction with other dimensions of variability. [Priority 2]
Examples
Techniques

(Under Construction)

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

Checkpoint 4.1 Identify each deprecated feature. [Priority 1]
Examples
Techniques
Checkpoint 4.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 4.3 If deprecated features exist, define their relationships and interaction with other dimensions of variability. [Priority 2]
Examples
Techniques
Checkpoint 4.4 Include an explanation for the deprecation. [Priority 3]
Examples
Techniques
Checkpoint 4.5 Include examples to illustrate how to avoid using deprecated features. [Priority 3]
Examples
Techniques

(Under Construction)

Checkpoint 4.6 Include examples to illustrate how to avoid using deprecated features. [Priority 3]
Examples
Techniques

(Under Construction)

Guideline 5. Define discretionary items.

Checkpoint 5.1 State the circumstances for when discretionary items are allowed [Priority 1]
Examples
Techniques
Checkpoint 5.2 For implementation dependent values or features, address the allowable differences between implementations. [Priority 1]
Examples
Techniques

(Under Construction)

Checkpoint 5.3 Indicate any constraints on the number of choices/options that can be implemented for discretionary choices [Priority 2]
Examples
Techniques
Checkpoint 5.4 Promote consistent handling of discretionary choices. [Priority 2]
Examples
Techniques

(Under Construction)

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

Guideline 6. Allow extensions or NOT!

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

(Under Construction)

Techniques
Checkpoint 6.2 Prevent extensions from contradicting the specification. [Priority 1]
Examples

(Under Construction)

Techniques

(Under Construction)

Checkpoint 6.3 Define a uniform mechanism to create an extension. [Priority 3]
Examples
Techniques
Checkpoint 6.4 Require that extensions be published. [Priority 3]
Examples

(Under Construction)

Techniques
Checkpoint 6.5 Mitigate the impact of extensions on interoperability. [Priority 3]
Examples

(Under Construction)

Techniques

(Under Construction)

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

Guideline 7. Clearly identify conformance requirements.

Checkpoint 7.1 Use conformance key words. [Priority 1]
Examples
Techniques

(Under Construction)

Checkpoint 7.2 Distinguish normative and informative text. [Priority 1]
Examples
Techniques

(Under Construction)

Checkpoint 7.3 Use consistent terminology. [Priority 1]
Examples

(Under Construction)

Techniques

(Under Construction)

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

(Under Construction)

Techniques
Checkpoint 7.5Make normative reference to specifications on which the current specification depends [Priority 1]
Examples
Techniques

Guideline 8. Document the conformance policy.

Checkpoint 8.1 Specify any universal requirements for minimum functionality. [Priority 2]
Examples
Techniques
Checkpoint 8.2 If special conformance terms are used, include a definition in the specification. [Priority 1]
Examples
Techniques
Checkpoint 8.3 Justify any usage of a dimension of variability. [Priority 1]
Examples
Techniques

(Under Construction)

Checkpoint 8.4 Include a conformance section. [Priority 1]
Examples
Techniques

(Under Construction)

Checkpoint 8.5 Identify and define all conformance designations. [Priority 1]
Examples
Techniques

(Under Construction)

Guideline 9. Specify how to make conformance claims.

Checkpoint 9.1 Provide specific wording of the claim. [Priority 3]
Examples
Techniques

(Under Construction)

Checkpoint 9.2 Provide a conformance disclaimer. [Priority 3]
Examples
Techniques

(Under Construction)

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

(Under Construction)

Checkpoint 9.4 Provide an Implementation Conformance Statement proforma. [Priority 3]
Examples
Techniques
Checkpoint 9.5 Require the ICS be completed as part of the conformance claim. [Priority 3]
Examples

(Under Construction)

Techniques

(Under Construction)

Guideline 10. Provide test assertions.

Checkpoint 10.1 Provide test assertions [Priority 2]
Examples

(Under Construction)

Techniques
Checkpoint 10.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-09-05, New version.

Reformatting the document to be synchronized with http://www.w3.org/TR/2003/WD-qaframe-spec-20030912/

Using the new Working Group Note Style sheet

Using the new QA guidelines Style sheet

Changed the Status information to add the decision for publishing as a Note.

Reorganized the markup to use QA guidelines CSS.

Removed Old CP 1.3 Old CP 1.4 becomes New CP 1.3

Guideline 4 has moved to Guideline 3.

Moved Old CP 4.1 to New CP 3.1, Old CP 4.2 to New CP 3.2, Old CP 4.4 to New CP 3.3, removed Old CP 4.3, Moved Old CP 5.1 to New CP 3.4, Moved Old CP 5.2 to New CP 3.5

Moved Old GL 7 to New GL 4

Moved Old CP 7.1 to New CP 4.1

Moved Old CP 7.2 to New CP 4.2

Changed the anchor #CK-deprecated-class-support1 to #CK-deprecated-class-support. Added support for the old one.

Moved Old CP 7.3 to New CP 4.3

Moved Old CP 7.4 to New CP 4.4

Moved Old CP 7.5 to New CP 4.5

Created New CP 4.6

Moved Old GL 8 to New GL 5

Moved Old CP 8.1 to New CP 5.1

Moved Old CP 8.2 to New CP 5.2. Changed wording on the CP

Moved Old CP 8.3 to New CP 5.3

Moved Old CP 8.4 to New CP 5.4

Moved Old CP 8.5 to New CP 5.5

Moved Old GL 9 to New GL 6

Moved Old CP 9.1 to New CP 6.1

Removed Old CP 9.2

Moved Old CP 9.3 to New CP 6.2

Moved Old CP 9.4 to New CP 6.3

Moved Old CP 9.5 to New CP 6.4

Moved Old CP 9.5 to New CP 6.5. Changed the wording.

Moved Old CP 9.5 to New CP 6.6

Moved Old GL 13 to New GL 7

Moved Old CP 13.1, 13.2, 13.3, 13.3 to New CP 7.1, 7.2, 7.3, 7.4

Moved Old CP 10.2 to New GL 7.5

Moved Old GL 3 to New GL 8

Moved Old CP 3.1, 3.2, 3.3 to New CP 8.1, 8.2, 8.3

Moved Old CP 10.1 to New GL 8.4

Moved Old CP 11.1 to New GL 8.5

Moved Old GL 11 to New GL 9

Moved Old CP 11.2, 11.3, 11.4, 12.1, 12.2 to New CP 9.1, 9.2, 9.3, 9.4, 9.5

Moved Old GL 14 to New GL 10

Moved Old CP 14.1, 14.2 to New CP 10.1, 10.2

Added Table of Contents, Added wording for Specifications Guidelines in Action

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/TR/2003/WD-qaframe-spec-20030912/guidelines-chapter

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