SRS(要求仕様書)の9つの品質指標

NASAゴダード宇宙飛行センターでは、数多くのSRSを分析して品質指標として9つのカテゴリーに分類しているようです。それら9つのカテゴリーは、更に個々の仕様記述に関連するもの、SRS文書全体に関連するものの2種類に分類できます。下表には、2種類のクラス、9つのカテゴリー、品質指標について述べています。

 

個々のSRS記述に関する品質指標

Imperatives:(命令文): 何らかの特徴、機能、または成果物の有無を命令する単語またはフレーズ。命令の強い順に並べている。

Shall

機能の提供を記述する際に使用する。

Must or must not

ほとんどの場合、パフォーマンスの要求もしくは制約を示すために使用する。

Is required to

SRSの記述内で、受動態の命令文として使用する。

Are applicable

参照、規格、またはその他の文書に含まれる形で、要求の追加記述として使用する。

Responsible for

SRS内の、定義が構築される前のシステムの記述で、命令文として使用する。

Will

記載した性能が発揮するための運用環境または開発環境を例証する場合などに使う。例えば、「The vehicles exhaust system will power the ABC widget.

Should

SRSの記述に命令文として使用することはない。使用する際、常に命令度の弱いものとして解釈できる。そのため、SRSの記述に使用することは避けるべきである。

Continuances(継続表現):命令文に次ぐフレーズ群で、低い階層の要求記述に使用する。継続表現の使用頻度とSRSの組織構造には、一定の相関関係がある。継続表現の過度の使用は、SRS記述が複雑化する原因となる。継続表現は、NASASRSで以下の順で使用される。SRS内の継続表現は、適切な階層で、頻度のバランスを考えて使用すること。

1. Below(以下に)

2. As follows(以下の通り)

3. Following(以下の)

4. Listed(一覧した)

5. In particular(特に、具体的には)

6. Support(補助)

Directives:(指示語):SRS内の説明的な情報を示す単語やフレーズのこと。テキスト全体における指示語の比率は、SRS内の要求の正確性と相関性がある。以下の指示語が、NASASRS内で使用されている。

1. Figure(図)

2. Table(表)

3. For example(例)

4. Note(注)

Options(選択肢):要件に対する解釈の許容度を広くする単語。このカテゴリーの単語は、SRSの要求を緩め、完成品に対する成功基準を曖昧にして、コスト超過やスケジュール遅延のリスクも許容することになる。このカテゴリーの単語を使用することは避けるべきである。以下にNASASRSにおいて、使用された頻度の順に並べてある。

1. Can(~できる)

2. May(~かもしれない)

3. Optionally(任意に)

Weak phrases (“弱い”フレーズ):確実性に欠け、複数あるいは主観的解釈が可能なフレーズである。SRSで見つかる“弱い”フレーズの総数は、そのSRSのあいまいさや不備を示している。以下に“弱い”フレーズをアルファベット順に列挙する。

Adequate

be able to

Easy

provide for

as a minimum

be capable of

Effective

Timely

as applicable

but not limited to

if possible

TBD

as appropriate

capability of

if practical

 

at a minimum

capability to

Normal

 

Size(サイズ)SRS文書の量を示すために使用する。そのフレーズは次の通り。

1. Lines of text(テキストの行数)

2. Number of imperatives(命令文の数)

3. Subjects of SRS statements(SRS内のテーマの数)

4. Paragraphs(段落数)

Specification Depth(仕様書の階層):SRSの各階層中の識別子の数、文書の構造、整合性、記述の詳細に関連する。NASASRSで最も最も深い構造のものは9階層に及ぶ。但し、5階層以上のSRSは滅多にない。

うまく構成されたSRSは、ピラミッドに似たテキスト構造を持つ。(いくつかのテーマを持ち、低い階層により多くの記述を持つようなテキスト構造)

砂時計形のテキスト構造(テーマが多く、中間階層の記述は少なく、低い階層の記述は多い)は通常、導入記述および管理情報記述を多く含む。

ダイヤモンド型のテキスト構造(ピラミッド型に似た形状だが、低階層の記述量は少ない)は高い階層で導入されたテーマが、さまざまな階層で詳述されたことを示している。

Readability Statistics(可読性の統計):SRS各階層のテキスト中にある命令文の数。これは、高階層の命令文や継続表現からつながっている、低階層のリスト項目の数を含む。その数は、SRSにどのくらいの要求項目が含まれていたかについての考察を提供し、また、SRSの個々の要求がどれくらい簡潔に示されているかを知ることができる。

Readability Statistics(可読性の統計):一般的な成人が読んで、その要求文書が容易に理解可能かどうかを示し、主に4種類(マイクロソフトワードより算出)の統計が使用されている。可読性の統計はある程度の目安にはなるが、それにこだわってSRS記述の技術的な深度を損なうことのないよう注意すること。

1. Flesch Reading Ease index

2. Flesch-Kincaid Grade Level index

3. Coleman-Liau Grade Level index

4. Bormuth Grade Level index