⾃⼰紹介所属

 株式会社NTTデータ

JaSSTʼ11 Tokyo B5-2

• 技術開発本部 プロアクティブ・テスティングCOE

テスト技術に基づく設計書品質定量化のための取り組み– 昨年12/1に設⽴– 先進的な検証・テストサービスの提供とそれを実現するための研究開発に取り組む専⾨組織主な業務

2011年1⽉26⽇

 ソフトウェアテスト技術に基づいた上流⼯程の品質向上に関する研究開発

株式会社NTTデータ

技術開発本部
プロアクティブ・テスティングCOE○朱峰 錦司• レビュー技術／プロセスの整備• Wモデルの普及展開

町⽥ 欣史

Copyright © 2011 NTT DATA CORPORATION

2

1. 本研究の背景
ソフトウェア規模の増⼤／開発期間の短縮

⽬次

 ソフトウェアを効率よく開発することが必要

1. 本研究の背景
上流⼯程での品質強化が効果的

2. 問題点と⽬的 ⽋陥が次⼯程以降で発⾒された場合、⼤きな⼿戻りが発⽣⽋陥が次⼯程以降で発⾒された場合 ⼤きな⼿戻りが発⽣してしまうため
 上流⼯程の成果物に対する⼗分なレビューが重要

3. アプローチ
4. 事例適⽤と効果検証
5. まとめと今後の課題

レビューの「⼗分性」をどう評価するか3

Copyright © 2011 NTT DATA CORPORATION

2. 問題点と⽬的 (1/2)

Copyright © 2011 NTT DATA CORPORATION4

2. 問題点と⽬的 (2/2)

レビューの際に⽤いられる代表的な指標

指標に関する課題 レビュー⼯数密度

 設計書の品質を本質的に評価する• ページあたり、どれだけレビューに⼯数をかけたか• 本質的とは？

 ⽋陥密度– 設計が要件を網羅できているか…etc.

• ページあたり、何件の⽋陥が発⾒されたか

 設計書の品質を直感的に評価する• 直感的とは？

• 今後、どのような観点に気を付ければいいのか？
• もう他に⽋陥は残っていないのか？
• 今回の数値は良いのか悪いのか？

Copyright © 2011 NTT DATA CORPORATION– 品質の良し悪しを瞬時に判断できるか…etc.

本質的かつ直感的な品質指標を提案

5

Copyright © 2011 NTT DATA CORPORATION

61

3.1. テスト観点の導⼊(1/2)
本質的に品質を評価するには？

 テスト設計の観点を導⼊することが有効• 「この設計書にはテスト項⽬を作成する際に必要な情報が記述されているか？」

3. アプローチ• 本研究ではこの観点を「テスタビリティ」と呼ぶ
テスト設計の観点によるレビュ
テスト設計の観点によるレビュー

3.2. 設計書定量化の⽅針
3.3. 指標の定義

7

Copyright © 2011 NTT DATA CORPORATION

3.1. テスト観点の導⼊(2/2)

1

データx数値

YN

数値以外の⽂字N

Y

実施

Y

DB保存

期待結果が記述できない
8

Copyright © 2011 NTT DATA CORPORATION

 絶対評価型の指標を⽤いることが有効• ⼀般的に品質を議論する際は複数の観点を⽤いることが有効• 本研究ではシンプルな100点満点⽅式を採⽤

 本研究ではテスタビリティを３つの観点に細分化し、それぞれを個別に評価する

絶対評価のメリット
過去の実績
A：3.2
B：15.8

設計書から抽出したテスト項⽬に漏れはないか

全社平均

設計書から抽出したテスト項⽬に誤りや不整合はないか

A：4.3
B：18.1

理解容易性 設計書から抽出したテスト項⽬は内容がわかりやすいか

⽐較対象の作成が困難、および、
その信憑性・妥当性が不明確

93.3. 指標の定義

今回の開発

100点

A：5.6
A56
B：13.7

今
今回の開発
開発

絶対評価なら３つのテスタビリティ

Copyright © 2011 NTT DATA CORPORATION

2

直感的に品質を評価するには？

 単独の指標で品質を⾔及することは困難

正確性

テスト項⽬

3.2. 定量化の⽅針

テスタビリティの細分化

網羅性

テスト設計

……
2.1 ⼊⼒フォームからデータxを受信
2.2 データxをDBに保存……
……
データx : 数値型……

3.1. テスト観点の導⼊

65点95点問題
あり⽐較なしに取るべきアクションが明確

10

Copyright © 2011 NTT DATA CORPORATION

3.3.1. 網羅性

定義をするにあたり、⼯程・技法を限定⽋陥の発⾒ テスト技法は⼯程によって⽤いるのが異なるため
⼯程

ソフトウェア詳細設計アクティビティ

技法

デシジョンテーブルテスト

 設計書からデシジョンテーブルを作成する際、設計もれ等によってテーブルセルが埋まらない箇所が出る
 網羅性違反の⽋陥と定義（共通フレーム2007 より）指摘イメージ
テスト項⽬

テスタビリティの観点ごとに、以下について紹介

遷移元条件

 デシジョンテーブルを⽤いた⽋陥の発⾒⼿法
 デシジョンテーブルを⽤いた品質の定量化⼿法の概要

動作項⽬B
項⽬C

1

2

3

画⾯A

N

Y

Y

1以上

｜

1未満

｜

Y

N

N

Y

メッセージDを表⽰？

Y

メッセージEを表⽰？

N

遷移元が画⾯Aでない場合が想定されていない

品質の定量化 想定される理想的なデシジョンテーブルと⽐較し、⽋陥部分を減点し、100点満点換算

Copyright © 2011 NTT DATA CORPORATION

11Copyright © 2011 NTT DATA CORPORATION

122

3.3.2. 正確性

3.3.3. 理解容易性

⽋陥の発⾒

⽋陥の発⾒

 デシジョンテーブルを作成する際、設計誤りや記述誤り等によってセル内容が⼀意に定まらない箇所が出る
 正確性違反の⽋陥と定義

 デシジョンテーブルを作成する際、詳細な説明がなく内容を理解できない箇所が出る
 理解容易性違反の⽋陥と定義

指摘イメージ

指摘イメージ
テスト項⽬

遷移元
条件

動作項⽬B項⽬C

1

2

3

画⾯A

N

Y

Y

1以上

｜

Y

N

1未満

｜

N

Y

メッセージDを表⽰？

Y

メッセージEを表⽰

？

N

テスト項⽬
遷移元

設計書Aでは「Dを表⽰」とあるが、設計書Bでは「Eを表⽰」とある

条件

動作

品質の定量化

4. 事例適⽤と効果検証(1/3)

対象処理数

4処理

10処理

対象ページ数

8ページ

26ページ

プロジェクトタイプ

YN｜NY

メッセージDを表⽰？

Y

メッセージEを表⽰？

N

項⽬Bについての詳細な説明がなく、どう内容を確認すればよいのかがわ
からない

14

Copyright © 2011 NTT DATA CORPORATION

⽋陥内容の分析
PJ①

PJ②

826

網羅性違反

717

正確性違反

30

理解容易性違反

2

3

網羅性違反

0.88

0.65

正確性違反

0.38

0

ページ数
⽋陥数

⽋陥密度

プロジェクト①は軽微な⽋陥が多かった
⼀⽅、プロジェクト②は影響範囲の⼤きい設計もれが含まれていた⽋陥数は少なくても、プロジェクト②の⽋陥数は少なくてもプロジェクト②のほうが⽋陥の影響度が⼤きいことを、網羅性のテスタビリティは表現できている

0.25 0.12
理解容易性違反値の優劣が逆転！

テスタビリティの点数
網羅性
正確性
理解容易性
15

Copyright © 2011 NTT DATA CORPORATION｜1未満

⽋陥密度との⽐較

適⽤状況
⾦融業務系
⼤規模システム1以上指標が本質的かどうか？

 本⼿法を適⽤した2プロジェクトの結果を⽤いて効果検証を実施
 全設計書のうち、サンプリングした⼀部に対して適⽤

流通業務系
中規模システムY

4. 事例適⽤と効果検証(2/3)

効果検証のため事例適⽤を実施

プロジェクト②3

Y 想定される理想的なデシジョンテーブルと⽐較し、⽋陥部分を減点し、100点満点換算

13

プロジェクト①

項⽬C

2

N

品質の定量化 想定される理想的なデシジョンテーブルと⽐較し、⽋陥部分を減点し、100点満点換算

Copyright © 2011 NTT DATA CORPORATION

項⽬B

1画⾯A

4. 事例適⽤と効果検証(3/3)

90.78 88.17
97.27

100

提案した指標は本質的である

98.83 98.68

Copyright © 2011 NTT DATA CORPORATION

16

5. まとめと今後の課題

指標が直感的かどうか？

テスト技術に基づいた設計書品質の定量化

 適⽤プロジェクトからのコメント

 本質的な指標を実現• ⽋陥密度基準値の設定の仕⽅に疑問があったが、100点満点⽅式は⾮常にわかりやすい• テスト項⽬がどれだけ抽出できるかどうかを容易に判断できた• デシジョンテーブルを⽤いた３つのテスタビリティ観点の導⼊ 直感的な指標を実現• 100点満点⽅式の採⽤

今後の課題

提案した指標は直感的である

 対象とする⼯程や使⽤する技法の拡⼤• ⼿法がデシジョンテーブルに依存している さらなる効果検証• 網羅性以外の観点について効果を⽰せていない• 設計⼯程完了時のデータのみで、プロジェクト完了後の総合的なデータを⽤いた議論ができていない
Copyright © 2011 NTT DATA CORPORATION

17

Copyright © 2011 NTT DATA CORPORATION

183

4