テスト設計コンテスト
2017
2018年1月24日

チーム名：T.B.D
メンバー：大西 主紗/森重 丈/柳川 佳慶/上倉 隆明/
山本 和弘/小港 省吾/白井 美貴© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

アジェンダ1. チーム紹介/テスト設計のコンセプト
2. テスト設計の全体プロセス
3. テスト要求分析
4. テストアーキテクチャ設計
5. テスト詳細設計
6. まとめ© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

2

1. チーム紹介/テスト設計のコンセプト© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

3

1. チーム紹介/テストポリシー
チーム紹介
チーム名：T.B.D（とりあえず、バグ、出しとく？）
メンバー構成 ：テスト業務経験1～6年の若手7名
前提条件
・対象製品：話題沸騰ポット（電気ポット）・ターゲット：調理サービスでの利用(屋台、イベントブース、小規模な飲食店、イートインコーナー、給湯のセルフサービスなど）
・立場：ポット設計組織（以降、設計組織と呼称）の関連会社であり第三者テストを担当する→設計者の要求を正確に把握できる立場
・担当：システムテスト※HWはHWテストチームが担当のため、対象外とする。
© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

4

1. チーム紹介/テストポリシー
テストポリシー後継機のテストを想定したテストスクリプト流用を可能とするテスト設計⇒★機能仕様と要求からテスト設計までのトレーサビリティを明確にする
後継機のテストを実施する際、• 機能仕様および要求の変更があった場合、→テストスクリプトの流用可否を判断できる。

• 機能仕様および要求の変更がなかった場合、→テストスクリプトの実施可否を判断できる。

© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

5

2. テスト設計の全体プロセス© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

6

2. テスト設計の全体プロセス
テスト要求分析 ｃ
テストアーキテクチャ設計
テスト詳細設計 ｃ：テストすべきこと(要求)の洗い出し＋テスト戦略策定：テストすべきことのまとめ＋全体像設計：テストの具体的な手段の設計

ｃ© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

7

3. テスト要求分析© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

8

3. テスト要求分析：機能整理© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

9

3. テスト要求分析：機能整理
目的：テスト対象が保有する機能を把握する
テストベースより各機能を把握するため、一覧表を作成した。
→電気ポットに必要な機能を検討し、テストベースより各機能を紐付け。
→階層表示することで、どの大項目に紐付いているのかわかりやすいように表現した。
第一階層

第二階層

第三階層
func.1.1.1 沸騰ボタンで沸騰開始する

func.1.1 沸騰命令を待機する

func.1.1.2 蓋締めで沸騰開始する
func.1.1.3 蓋センサによる沸騰停止操作

func.1

沸騰する

func.2

給湯する

func.3

保温する

func.1.2 水温を上昇させる--

func.1.3 沸騰状態を表示する--

func.1.4 沸騰を停止する--

func.1.5
func.1.6
func.1.7
func.2.1
func.2.2
func.2.3
func.3.1
func.3.2
func.3.3--

func.3.4 モードを変更する--

func.3.5 モードを表示する--

カルキ抜きする
保温モードに移行する
空焚きを防止する
給湯命令を待機する
給湯を開始する
給湯を停止する
保温命令を待機する
設定温度に保持する
保温を中止する

電気ポットに必要な機能をメンバー全員で検討© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

10

pot-230-11
pot-230-21
pot-220-11
pot-220-21
pot-220-31
pot-221-21
pot-221-31
pot-310-21
pot-310-11
pot-310-12
pot-221-11
pot-310-31
pot-311-11
pot-312-11
pot-260-11
pot-260-21
pot-320-21
pot-320-31
pot-240-11
pot-240-21
pot-240-31
pot-240-41
pot-320-11

沸騰ボタン有効：沸騰行為
沸騰ボタン無効：保温行為保持
蓋開閉確認
水量適正時：沸騰行為
水量異常時：アイドル状態保持
インジケータセル点灯
ロックランプ点灯
温度制御方式
温度制御行為の表示：沸騰ランプ点灯、保温ランプ消灯
温度制御行為中の表示：温度/モード表示窓に温度を表示
保温中に沸騰を停止する
沸騰行為を停止する
カルキ抜きをする
カルキ抜き後保温する
ポンプ作動可状態で給湯する
ポンプ停止
温度制御方式
保温行為の停止
デフォルト：高温モード
モード切替
保温温度設定モード表示
温度制御行為の表示：沸騰ランプ点灯、保温ランプ消灯

テストベースに記載のある機能

3. テスト要求分析：要求整理© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

11

3. テスト要求分析：要求整理-1
目的：ポットを取り巻くステークホルダーの要求を構造化し、テストの方針を決める
ポットへの要求を以下の2つの指標で構造化した• 要求者がどれだけ多様か• 要求者がどれだけ多いか★ユーザー要求と設計組織の要求を並べて構造化することで、両者の要求のずれを事前に発見する
属性：HWのため除外
セールスポイントRQ No.
RQ6

要求内容
ポットが、連続的に利用できて欲しい

RQ No.
RQ2

要求内容
ポットが、水の継ぎ足しが簡単であって欲しい

RQ No.
RQ8

RQ16ポットが、導入された機能全てが動いて欲しい

RQ15

RQ13
RQ14
RQ39

RQ26

ポットが、誤操作されないデザインであって欲しい

RQ7

ポットが、長年使えて欲しい

RQ9RQ10

ポットが、炎上しないこと
ポットが、漏電しないこと

RQ22
RQ24
RQ37

ポットがお湯(水)切れ状態を教えて欲しい

RQ11

ポットが、蒸気口からお湯をこぼさないこと

RQ40

お湯が無くなったら教えて欲しい

RQ12
RQ25
RQ31
RQ32

ポットが、不要に発熱しないこと
お湯が沸いて欲しい
ポットからお湯（水）を注ぎたい
ポットから誤ってお湯が出ないで欲しい

RQ38

ポットがお湯(水)漏れを防いで欲しい。

RQ29

ポットが、お湯を保温して欲しい

ポットが、店頭実演販売できて欲しい
RQ3
ポットに、セールスポイントがあってほし
RQ4
い
ポットが泥/ホコリ/排気ガスのある環境
RQ18
でも、問題なく動作して欲しい
RQ19

保温を好きな温度でしたい

要求内容
ポットが、安全であって欲しい
ポットが、想定する機能が当たり前に動作して欲しいポットが、要求された機能全てが導入されていて欲しRQ21
いポットが、HW品質を満たしているポットの、要求仕様漏れが指摘されている

RQ17

要
求者の多さ

要求内容
RQ No.
ポットが、直感的に操作できて欲しい
RQ1
ポットが、機能が直感的に伝わるデザインであって欲しRQ5
いポットが、手入れが簡単であって欲しい
ポットが、親が目を話した際に子供に怪我をさせないで欲しい
ポットが、ミルクを作る機能を備えていて欲しい
ポットが、子供が気に入るデザインであって欲しい

RQ35

ポットでお客さんに提供する飲み物を保温したい

RQ36

ポットでお客さんにお湯を提供したい

RQ27
RQ30

お湯が沸いたら教えてね
ポットのお湯の量が知りたい。

RQ33

ポットでお湯を沸かして、食べ物を湯銭したい

RQ34

ポットでお湯を沸かして、調理器具を殺菌洗浄したい

RQ20

ポットの、質がばらつかないで欲しいポットが、テストの早い時期に大きな障害がなくなっている
ポットが、カップめんの出来上がりを教えて欲しい

RQ23
RQ28

要求者の多様さ© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

12

3. テスト要求分析：要求整理-2
目的：要求レビューを実施する
・開発の思惑とユーザーの要求がずれていないかの確認
・テスト対応する要求と対応しない要求の精査
属性：HWのため除外
セールスポイントRQ No.
RQ6

要求内容
ポットが、連続的に利用できて欲しいb
要求者cの多さ

RQ13
RQ14
RQ39

RQ26

RQ No.
RQ2

要求内容
ポットが、水の継ぎ足しが簡単であって欲しい

RQ No.
RQ8

RQ16ポットが、導入された機能全てが動いて欲しい

RQ15

RQ22
RQ24

ポットが、要求された機能全てが導入されていて欲し
RQ21
いポットが、HW品質を満たしているポットの、要求仕様漏れが指摘されている

RQ37

ポットがお湯(水)切れ状態を教えて欲しい

RQ40

お湯が無くなったら教えて欲しい

RQ17

ポットが、店頭実演販売できて欲しい
RQ3
ポットに、セールスポイントがあってほし
RQ4
いポットが泥/ホコリ/排気ガスのある環境RQ18でも、問題なく動作して欲しい
RQ19

保温を好きな温度でしたい

ポットが、誤操作されないデザインであって欲しい

RQ7

ポットが、長年使えて欲しい

RQ9
RQ10

ポットが、炎上しないこと
ポットが、漏電しないこと

RQ11

ポットが、蒸気口からお湯をこぼさないこと

RQ12
RQ25
RQ31
RQ32

ポットが、不要に発熱しないこと
お湯が沸いて欲しい
ポットからお湯（水）を注ぎたい
ポットから誤ってお湯が出ないで欲しい

RQ38

ポットがお湯(水)漏れを防いで欲しい。

ポットが、手入れが簡単であって欲しい
ポットが、親が目を話した際に子供に怪我をさせないで欲しい

a. 要求が最も高い
b. 要求が高い
c. 開発のご意向

ポットが、ミルクを作る機能を備えていて欲しい
ポットが、子供が気に入るデザインであって欲しい
ポットでお客さんに提供する飲み物を保温したい

RQ36

ポットでお客さんにお湯を提供したい

RQ27
RQ30

お湯が沸いたら教えてね
ポットのお湯の量が知りたい。

RQ33ポットでお湯を沸かして、食べ物を湯銭したい

RQ34

ポットでお湯を沸かして、調理器具を殺菌洗浄したい

RQ20

ポットの、質がばらつかないで欲しいポットが、テストの早い時期に大きな障害がなくなっている
ポットが、カップめんの出来上がりを教えて欲しい

RQ28

要求内容
ポットが、安全であって欲しいポットが、想定する機能が当たり前に動作して欲
しいa

RQ35

RQ23

今回は、以下要求を重点的にテストすることで合意

要求内容
RQ No.
ポットが、直感的に操作できて欲しい
RQ1
ポットが、機能が直感的に伝わるデザインであって欲し
RQ5
い③RQ14.ポットにセールスポイントがあってほしいb→本年度のターゲットである“調理サービスの利用”シーンにおける要求に関わる機能を【セールスポイント】として定義
以降、【セールスポイント】をピンク色の文字にて表記する
RQ29

要求者の多様さ© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

13

ポットが、お湯を保温して欲しい3. テスト要求分析：要求・機能表作成© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

14

3. テスト要求分析：要求・機能表作成-1
目的：要求ベースのテストによるポット機能全体の網羅性を確認する「2.要求整理」でテスト対象としたそれぞれの要求と「1.機能整理」で作成した機能表を照らし合わせて、ポットのどの機能と関係するかを明確にした★要求ベースでテストを実施すると、抜け漏れになる機能を抽出し低関連機能リストとして整理
した

一部抜粋
第一階層

第二階層

func.1.1沸騰命令を待機する

func.1 沸騰する

func.2 給湯する

func.3 保温する

RQ1

RQ5

RQ25

func.1.1.1沸騰ボタンで沸騰開始する

1

1

1

1

func.1.1.2蓋締めで沸騰開始する

1

1

1

1

func.1.1.3蓋センサによる沸騰停止操作

1

1

第三階層

1

RQ31

RQ32

RQ16

1

func.1.2水温を上昇させる--func.1.3沸騰状態を表示する--

func.1.4沸騰を停止する--

func.1.5カルキ抜きする
func.1.6保温モードに移行するfunc.1.7空焚きを防止する
func.2.1給湯命令を待機する func.2.2給湯を開始する
func.2.3給湯を停止する
func.3.1保温命令を待機する func.3.2設定温度に保持する func.3.3保温を中止する--

func.3.4モードを変更する

-

-

1

1

func.3.5モードを表示する

-

-

1

1

関係するなら”1”
1

1
1
1
1
1

15

1
1

1

1

1
1
1
1
1
1
11
1

1
1
1
1
1
1
1
1
1

関係しないなら空白© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

11111

1
1

3. テスト要求分析：要求・機能表作成-2
目的：要求ベースのテストによるポット機能全体の網羅性を確認する「2.要求整理」でテスト対象としたそれぞれの要求と「1.機能整理」で作成した機能表を照らし合わせて、ポットのどの機能と関係するかを明確にした★要求ベースでテストを実施すると、抜け漏れになる機能を抽出し低関連機能リストとして整理
した

第一階層

第二階層

第三階層

func.3.1 保温命令を待機する-

func.3.2 設定温度に保持する-

func.3.3 保温を中止する
func.3

保温する
func.3.4 モードを変更する

func.4

要求関連度4以下の機能を低関連機能リストとして抽出

要求関連度
4
第一階層
8
5PT1：
6タイマー機能

func.3.5 モードを表示する

-

-

4

func.4.1 時間を設定する

-

-

4

func.4.2 カウントを開始する--

func.4.3 ブザーを再生する--

func.4.4 残り時間を表示する--

4
44func.4

タイマを使うfunc.5

アイドリングする

タイマを使うfunc.5.1 アイドル命令を待機する
func.5-

アイドリングする

func.5.1.1 電源ON/OFFによるアイドル状態の操作

4

func.5.1.2 満水/水位センサによるアイドル状態操作

4
PT2：
4
4 アイドリング5 機能

func.5.1.3 蓋センサによるアイドル状態操作
func.5.2 アイドル状態を表示する--

func.5.3 温度制御を停止する--© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

16

関連テストNo
A-003-1
A-003-1
A-003-1
A-003-1
A-003-6
A-003-6
A-003-3
A-003-4
A-003-3
A-003-1
B001-1-01
B001-1-01
B001-1-01
A-004-18,A-004-28A-004-11
A-004-2
A-005
A-005

4.テストアーキテクチャ設計© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

17

4.テストアーキテクチャ設計：アーキテクチャ作成© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

18

4.テストアーキテクチャ設計：アーキテクチャ作成-1
目的：我々の実施するテストの全体像を構造化し、これまでの分析と紐付けることで今後作成されるテストケースとのトレーサビリティーを確保する
類似の要求に対する重複テストを防ぐため、要求のグルーピングを行った。
→グループ間でテストが冗長にならないよう、機能単位でのグルーピングを意識した。
★包含関係を表現したことにより、将来的な要求・機能仕様変更の影響範囲を追跡しやすくなる
func.1、func.2、func.6

func.7

給湯機能（=お湯を沸かす、お湯を注ぐ）評価

水位表示評価RQ40

func.2

RQ14
セールスポイントがあって欲しい

リスク評価
RQ1

RQ37

RQ33・34

func.1.1、func.3、func.5

RQ4

func.3

RQ36

RQ32

RQ35

保温評価

連続動作評価（=ロードテスト）
RQ6

RQ18
RQ31

RQ25

func.4、func.5

要求確認（レビュー含む）

単機能評価
RQ16

機能網羅
(機能表からのピンポイントテスト)

RQ5

RQ17

© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

PT1

RQ24

19

PT2

4.テストアーキテクチャ設計：アーキテクチャ作成-2
温度制御評価以降の評価が組み合わせ前提のため単機能から実施

単機能評価

給湯機能評価クレームに直結するため、個別に評価を実施する

ほぼ全ての機能の前提となるため最初期に実施

リスク評価

水位表示評価要求に直結しないため、状況次第で実施不要と機能網羅する© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

要求（RQ）の含有数が多く、セールスポイントの過半数が含まれているため、単機能評価が終わり次第実施“グルーピングした要求”それぞれに対応するテストを定義し、実施順にソートした。
前段階のフェーズがクライテリアを満たすまで、次のフェーズは実施しない。

フェーズの設定根拠を補足表現

保温評価

各機能が熟成する後半に実施

連続動作評価20

要求確認↓
テスト設計活動を通しての問い合わせ5. テスト詳細設計© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

21

5.テスト詳細設計:詳細設計© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

22

5.テスト詳細設計:詳細設計(基本構造)
目的：ポットが、市場で最も多く操作される利用シナリオで動作することを確認する
ポットに実装される機能に対して、デシジョンテーブルを中心としたテストを実施する。ポットの根幹となる給湯機能は、ユーザの正常利用シナリオ(テストB)と異常操作なユースケース(テストE)でのテストを追加した。
ポット特有の「長期連続稼働」の観点で連続動作テスト(テストF)も追加した
接頭 テスト
ID
タイプ名

順序
目的
1→2→3

アプローチ・技法α

温度制御評価1

目的：ヒータ用電源のPID制御ができることを保証すること
内容：ヒータ用電源のPID制御の機能確認と性能測定を実施する

同値分割、境界値分析、デシジョンテーブル

A

単機能制御評価1

目的：仕様に記載された機能が使用通りに動作することを保証すること 状態遷移、デシジョンテーブル
内容：機能確認を実施する＊ただしB~Dの機能はB~Dで実施のためこのテストの対象外とす
る

B

給湯
機能評価

2

目的：ユーザーが給湯行為をできることを保証すること
内容：機能確認とシナリオテストを実施する

シナリオテスト、デシジョンテーブル

C

水位表示評価2

目的：ユーザーが水位を確認できることを保証すること
内容：水位表示の機能確認を実施する

デシジョンテーブル

D

保温評価

2

目的：ユーザーが保温設定できること/ポットが設定どおり振舞うことを保証すること
内容：機能確認と設定が保持されるテストを実施する

状態遷移

E

リスク評価

2

目的：給湯中に発生しうる意地悪行為に対してユーザーに危害が加わらないことを保証すること
内容：ボタン連打及び水位の急な変化が起きた場合のテストを実施する

ユースケース(いじわる)テスト

F

連続動作評価 3

目的：長時間ポットを操作しないときにユーザーに危害が加わらないことを保証すること
内容：各値が変化しないことを確認するテストを実施する

ストレステスト-機能網羅-

実施しない--

要求確認-

テスト設計活動(指摘リスト)を通して問い合わせを実施する-© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

23

5.テスト詳細設計:詳細設計(シナリオテスト)
目的：ポットが、市場で最も多く操作される利用シナリオで動作することを確認する
コンビニでの利用シナリオを想定し、以下の手順でテストケースを生成した①アクティビティ図 → ②状態遷移図(XGRAPH*) → ③テストケース生成(C1カバレッジ)①アクティビティ図②状態遷移図③テストケースXGRAPH…MatrixTester®の付帯ツール
http://www.fujixerox.co.jp/solution/management/hayst.html© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

24

6.まとめ© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

25

まとめ
後継機のテストにおいてもそのテストスクリプトを流用することを意識してテスト設計を行った。
上記目標のため、機能仕様と要求からテスト設計までのトレーサビリティを意識し、後継機評価の際にテストスクリプトの流用および実施可否を判断できるようにした。
func.6の仕様が変更になった場合、給湯機能評価のスクリプトは実施不可（=再設計が必要）

テストタイプ名一覧表No RQ-No

func-No

テスト項目

func.6.1
func.6.2
給湯機能評価 B001

RQ31

func.6.3
func.2.1

給湯行為の振る舞い確認

func.2.2
func.2.3
func.6.1
func.6.2
給湯機能評価 B002

RQ31

func.6.3
func.2.1

給湯行為の振る舞い確認-組み合わせ

func.2.2
func.2.3
func.2.1
給湯機能評価 B003

RQ31

func.2.2

給湯行為をし続けることの確認

func.2.3

テストケース一覧より抜粋

アーキテクチャより抜粋© 2018 Fuji Xerox Advanced Technology Co., Ltd. All rights reserved.

26

Xerox、Xeroxロゴ、およびFuji Xeroxロゴは、米国ゼロックス社の登録商標または商標です。