チーム・めいしゅ館

チーム

めいしゅ館

もくじ

JaSST’11 Tokyo 〜テスト設計コンテスト〜
1.

テスト戦略とテスト計画

2.

テスト分析

 テスト対象物の分析 ・・・ 三色ボールペン法

SESSAME電機開発部：Challenge the TEST

分析成果物１：要求仕様書_三色ボールペンチェック.pdf
添付資料 仕様確認事項 ：QA リスト.xls

新米テスト屋と、設計屋が⼒を合わせてテスト設計に挑戦!!

 品質リスクの分析

チーム・めいしゅ館
名野 響 .
酒井 郁子.
舘 伸幸.

・テスト分析マトリクス

テスト設計

3.

SESSAME電機(株)・・・ テスト分析マトリクス

分析成果物２：テスト設計書.xls

 テスト設計方針の特定設計成果物：テスト設計書.xls ・ テスト設計書
添付資料 分析モデル ：SESSAME_GOMA_Pot[分析モデル］.pdf

4.

Appendix

特殊環境／物理特性に依存するテスト項目の洗い出しについて

JaSST'11 TOKYO2

2011/1/26

チーム・めいしゅ館

チーム・めいしゅ館テスト戦略


目的：信頼度・安全性の確保
→



テスト計画

重点課題：

ユーザが許容できないような、最悪なバグを出さない製品開発の背景
実現したい品質要求 など仕様の不明点は、別途・QAリストを作成※ QAリストは、できるだけテスト実施までに解決すること

テスト分析

テスト設計

D1

– GOMA-1015型はSESSAMEポットシリーズのハイエンド機種多機能併⽤して、不具合が起きないことを確認– コンシューマ向け家電のため、安全動作は重視したテストを⾏う【背景】

⼊⼒：ソフトウェアの要求仕様書「話題沸騰ポット要求仕様書 (GOMA-1015型) 第７版 」

D3

P1
テスト目的の設定

システム企画書

テスト戦略
D4
分析済み要求仕様書

P2
テスト対象の分析

D2
システム要求仕様書

設計者の事情D5

テスタのドメイン知識

アーキテクチャ設計– ポット専門ではなく、自社製品全般（白物家電）の担当– ただし、新米テスター

2011/1/26

3

JaSST'11 TOKYO

D8
テスト設計書ソフトウェア設計書（分析レベル）– 過去に類似製品の設計経験あり– 今回、スクラッチ開発 ← 過去のプログラムの品質に不満が(^^;)

P4
テスト確認ポイン
ト・優先度を検討

P3
テスト分析マトリクスで方針検討– ドメインの専門家による作P5
テスト条件・仕様項目の特定

D6

D7

テストカテゴリ

テスト分析マトリクス

4

2011/1/26

チーム・めいしゅ館

これを 元に、テストケースの作成へ！

JaSST'11 TOKYO

チーム・めいしゅ館

テスト分析
1.

テスト対象物の分析
–

テスト分析

–

2.

システムの外部仕様の理解→ 要求仕様書（GOMA-1015型）を分析し、テスト対象物の正しい姿を把握する。
システムの内部仕様の理解→ 設計レベルでソフトウェアの構造を理解し、テスト対象物の内部を把握する。

品質リスクの分析–

テスト対象物分析結果から、テスト重視ポイントを決める。
→ テスト戦略に沿って、以下に係わるテストに重みを置く①②

2011/1/26

5

JaSST'11 TOKYO

2011/1/26

多機能併⽤による、組合せをテストする
安全動作は実現に関する機能のテストを⾏う6

JaSST'11 TOKYO

1

チーム・めいしゅ館

チーム・めいしゅ館

テスト対象分析の役割分担

要求仕様書の分析

テスト分析への⼊⼒
話題沸騰ポット要求仕様書(GOMA-1015型)
第７版

要求元へのフィードバック

テスト担当の役割（詳細添付、分析成果物１）

設計担当の役割仕様の厳密な理解

1. 要求仕様を分析
・・・

File：要求仕様書_三色ボールペンチェック.pdf

・・・ システム分析

1. システム全体の状態分析

三色ボールペン法

三色ボールペン法で、要求仕様書を分析



USDM仕様書を分析した結果

– 完成度の⾼い仕様書→ 仕様確認の必要なところが少ない
単機能レベルのテスト設計は抽出が⽐較的容易である

2. DFDによる機能分析【OUTPUT】【OUTPUT】

開発対象物の仕様把握

基本設計書

仕様上の曖昧箇所抽出– 状態の定義が多い→ USDMだけでは網羅性が分からない
機能の組合せによる危険を感じる（DFD分析図、状態遷移図）※ USDMでは機能ごとの条件は書かれているが、機能状態の組合せにつテスト対象物（プログラム）の形が⾒える

いて語られていない

品質リスク分析・テスト設計への⼊⼒
JaSST'11 TOKYO7

2011/1/26

JaSST'11 TOKYO8

2011/1/26

チーム・めいしゅ館

チーム・めいしゅ館

品質リスク分析の役割分担

テストカテゴリの検討

テスト分析マトリクスを作成しテスト条件・テスト設計方針を検討

テスト担当の分析成果物

設計担当の分析成果物

要求仕様書

×

タイム アップ

給湯開始
給湯終了

タイマ開始

2
1

ドメイン専門家の知⾒

分析モデル

タイ マ時間

給水オン
給水オフ

給湯口のロック解除
給湯口のロック開始

三色ボールペン
話題沸騰ポット
分析ア
アイドル
イドル
ア
ア
イドル
イドル
水なし

表示 警告 通知

蓋センサoff(開)給湯状態

蓋セ ンサon(閉) [水なし ]蓋センサoff(開)

保温状態

水温通知

蓋センサon(閉) [水あ り]

水なし
水なし

3

保保温行
温行為中
為中
保保温行
温行為中
為中

沸騰要求 [給湯状態≠給湯中]
沸騰処理完了4

温度を制御 する

保温モード

沸騰要求 [給湯状態＝給湯中] 水位を表示す る
温度エラー 検知水位

温度エラー 検知

沸騰開始
ヒー タオンヒー タオフ

満水エエ
ラー
エエラー
ラーラー

沸騰
沸騰行為
行為中中
沸騰
沸騰
行為
行為
中
中

この関係に対し，３つの観点で第3の軸を作り内在する問題点を洗い出す．
観点：
1.物理現象対応
2.デバイス制御
3.ユーザビリティ
背景は信頼性，安全性とする．

物理現象対応デバイス制御ユーザビリティ開始

タイマを制御す る

給湯を制御す る
蓋開閉仕様と設計は多対多の関係にある．

組込みの特徴に⽴ち返り
第3軸を抽出水なし

×例）その要件に対する設計は
物理現象の取り扱い方法として安全か仕様
機能カテゴリの検討

非機能カテゴリの検討

JaSST'11 TOKYO

9

名づけて･･･ ３Dマトリクス分析
仕様×設計で抽出されるカテゴリ領域開発関係者間でテストカテゴリをレビュー
テスト分析マトリクスの作成へ
2011/1/26

設計

2011/1/26

10

チーム・めいしゅ館

JaSST'11 TOKYO

チーム・めいしゅ館

テスト分析マトリクス

テスト分析マトリクスで、全体のテスト量把握（詳細添付、分析成果物２）

File：テスト設計.xls

シート：テスト分析マトリクス

テスト設計

要求仕様書から抽出できたカテゴリ

設計情報から抽出した
カテゴリ

2011/1/26

11

JaSST'11 TOKYO

2011/1/26

12

JaSST'11 TOKYO2

チーム・めいしゅ館

チーム・めいしゅ館

テスト設計書

テスト設計方針

分析結果から、仕様項目、テスト設計方針を作成（詳細添付、設計成果物）

File：テスト設計.xls

単機能テスト––

シート：テスト設計

テスト設計書・抜粋
機能名

テストタイプカテゴリ

仕様項目

テスト設計方針

沸騰機能
テスト

温度制御状
態の状態遷
移・温度制御状態モデルの状態遷移テスト（0スイッチカバレッジ）

状態
遷移・給湯状態モデルの各状態との組み合わせテスト（直交表）
装置
制御

沸騰制御状
態におけるヒータ制御エラー

温度エラー発生による温度制御状
態の状態遷
移

主なテストケース
複数の⼊⼒条件がある場合は、デシジョンテーブルを⽤いて最適化

蓋センサ、水位、水温、時間、給湯状態

水温の境界値による目標温度ON/OFF方式のテスト

水温・水温の境界値・時間の境界値

水温、時間、温度制御状態

13

2011/1/26

JaSST'11 TOKYO

全テスト項目の半分くらいを単機能テストが占める
USDM分析の結果、単機能テストは、仕様を元に条件の抽出がしやすい→ 境界値分析・デシジョンテーブルにより、単機能のテストケースを作成
機能統合後の回帰テストに備えて、単機能テストの自動実⾏を試みる

統合テスト （設計情報も加味して分析）–

機能ごとの状態定義数が多く、状態遷移テスト数が多め (⼊出⼒系とほぼ同数)→ 分析モデルの状態遷移図をベースにした、単機能の0スイッチカバレッジの状態遷移テスト–

沸騰・保温・給湯・エラー検知にわたり機能連動、中程度のボリューム→ 機能間（状態遷移の組合せ）による、直⾏表を作成し全数テスト

JaSST'11 TOKYO14

2011/1/26

チーム・めいしゅ館

チーム・めいしゅ館

テスト設計方針（続き）


テスト設計方針の検討過程
例：沸騰に関するテストを考える・・・

システムテスト– 安全動作実現には重要なテスト項目

⼊⼒装置異常 特殊環境・物理特性
 ユーザビリティ– 設計者・ドメイン専門家を交え処理の流れの詳細を把握

設計情報（分析モデル）から、各機能とも状態を持ち、それぞれの機能単位で振る舞いを持つ→ 各機能については、状態遷移テストで確認機能間の連動 ･･･ DFD分析モデルから、連動要因を確認→ 他機能も並⾏動作しているため、状態の総当たりテストで確認漏れのない処理フローが考慮できているか（含む 異常系）
 異常系の各処理フローが、安全方向に倒れているか？
→ CFD法により原因と結果の流れをテスト

機能間の連動要因
沸騰機能は、「温度を制御する」機能の一部

DFD分析モデル15

2011/1/26

JaSST'11 TOKYO16

2011/1/26

チーム・めいしゅ館

JaSST'11 TOKYOチーム・めいしゅ館

テスト設計をしてみてこだわりAppendix– 設計屋の思考を、テストに活かしたかった– 組込み屋ならではの視点を盛り込みたかった

感想– “何を確認するか” という一環したテスト目的に沿った考え方が、非常に難しかった

特殊環境／物理特性に依存する
テスト項目の洗い出しについて

設計屋は、設計の粒度で“何を設計する”が都度変化している– 今まで自分がやってきたテストが、どれだけ場当たり的であったか反省することができた

〜非機能カテゴリのテスト項目を抽出するために組込みソフトの特徴に⽴って観る〜

これからはテストプロセスを職場でも実践していきますっ！

– それ青陽の春になれば 四季の節会の事始め
五十の手習い 事象の地平面への距離に苦笑す
2011/1/26

17

JaSST'11 TOKYO

2011/1/26

18

JaSST'11 TOKYO3

チーム・めいしゅ館

チーム・めいしゅ館

着眼点1 物理現象への対応

３つの着眼点の背景


1.組込みソフトは，物理現象を扱う→着眼点１：物理現象対応-常温で液体-沸点は1気圧の時，摂⽒１００度→沸騰機能＞堅牢性＞特殊環境・物理特性-熱すると対流する(場所によって温度が違う) →QAリスト23-融点は摂⽒０度-融点，沸点では温度⼀定→沸騰機能＞堅牢性＞特殊環境・物理特性-容易に熱平衡する-導電率は不純物によって不定-熱膨張する→給湯機能＞堅牢性＞特殊環境・物理特性-沸騰時，激しい運動が発生する→給湯機能＞堅牢性＞特殊環境・物理特性-ある熱容量を持つ

2.組込みソフトは，ハードウェアの制御を⾏う．
ハードウェアと協調しながら動作する．
→

着眼点２：デバイス制御

3.組込みソフトは，直接マンマシン・インタフェースを持つものもある．
→

物理対象物の代表的な性質を列挙し，ソフトウェアの機能要件に照らし合わせながら，関係する特性を抽出する．（赤が関係する特性）

着眼点３：ユーザビリティ
JaSST'11 TOKYO19

2011/1/26

扱う物理現象は「水の性質」

20

2011/1/26

チーム・めいしゅ館

チーム・めいしゅ館着眼点２ デバイス制御（センサとアクチュエータ）2.1

温度センサ（サーミスタ）の特性

1.温度で抵抗値が変わる

使用するセンサ
1.サーミスタ
2.水位センサ
3.満水センサ

抵抗電圧変換回路を通して，ADに⼊⼒する

2.誤差がある．⾼温対応のもので±３％程度
3.温度対抵抗の関係は，直線ではない
4.インピーダンスは通常１〜１０KΩ.
⼗分に回路インピーダンスは⾼い． ＝ノイズを拾いやすい使用するアクチュエータ
１．ヒーター（リレースイッチ？）
２．ポンプ（リレースイッチ？）

２より，温度判定に誤差を考慮した設計をしているか（すべき）→保温機能＞堅牢性＞特殊環境・物理特性
３より，単純な線形予測値で判断する設計になっていないか（してはいけない）→保温機能＞堅牢性＞特殊環境・物理特性
４より，温度データについてフィルタ処理しているか（すべき）ポンプ，ヒータのON/OFFと，温度サンプリングのタイミングをずらす（⾃⼰ノイズ回避）設計をしているか（したほうがよい）→これはテストで再現させるのは困難．レビュー項目として，設計及び実装レビューで押さえる

ソフトウェアの機能要件から，使用するデバイスを抽出する．
それぞれについて，その挙動や特性と，機能要求との対応を⾒ていく．

2011/1/26

JaSST'11 TOKYO

21



22

2011/1/26

チーム・めいしゅ館

2.2


顧客に仕様確認必要．
異常時の挙動について別途検討が必要．

2.3
→ＱＡリスト24








23

JaSST'11 TOKYO

JaSST'11 TOKYO

チーム・めいしゅ館

水位センサ，満水センサ

どのようなしくみで感知するのかー光学式ー静電感知ー導通式ー浮子

2011/1/26

JaSST'11 TOKYO

センサの故障モード

センサの故障モード
１．断線
２．短絡
３．劣化
４．歩留まり１と２で⼊⼒値がどうなるのか要確認→ＱＡリスト25
激しい温度差にさらされるので，⼀定温度以上（または以下）での⼀時的断線/短絡もありえる．
→QA25の回答に基づいてテスト詳細設計に追加
劣化は判定困難．最悪値のカラ炊き加熱は温度ヒューズでしか防げない（顧客へ提案 →ＱＡリスト26）
歩留まり対策に，セルフ検査モードは不要か，要確認 →ＱＡリスト27

2011/1/26

24

JaSST'11 TOKYO4

チーム・めいしゅ館

2.4




チーム・めいしゅ館

アクチュエータ

2.5

ヒータとポンプのスイッチ制御
基本はON/OFFのみ

温度が低い間，ヒータは突⼊電流がある．
ON→OFF，OFF→ONについて最短時間の制約など，ハードウェア仕様の確認と設計への反映が必要．
→ＱＡリスト28

JaSST'11 TOKYO25

2011/1/26



固着状態の検出について，要検討．→ＱＡリスト29
切れっぱなしはいいが，⼊りっぱなしは危険

アクチュエータの故障モード

アクチュエータ異常系
1.断線
2.短絡
3.劣化

基本はハードウェア対処．（ヒューズなど） →ＱＡリスト26
断線しかかり（温度が上がると断線など）についてソフトウェアでの考慮はどうするか検討必要．
（中途半端な温度で⼀定になってしまうなど）→ＱＡリスト27

2011/1/26

26

JaSST'11 TOKYO

チーム・めいしゅ館

着眼点３ユーザビリティ

仕様書からはわかりにくい
分析後の状態遷移図で，ユーザビリティをトレースしてみるとか蓋操作に関する状態遷移の一部
蓋close水正常

蓋open

2011/1/26

ロック解除

加熱中

pot-221-13

pot-22027

ロック解除のまま沸騰状態へ！

JaSST'11 TOKYO5