はじめに
- 本発表における用語は概ねISTQBに準じます
研究の動機
- どうしても不具合は発生する
- 再発防止の活動を行っている
- テストに関する不具合は不十分
- 上位のテストレベルでないと検出できない
- 中には平易な手順で発生するものもある
不具合の分析
- 対象は直近の不具合50件
- 不具合1つ1つにテストの技術要素(テストレベル、テストタイプ、テスト設計技法、その他気付くべきこと)を抽出・整理
その他気付くべきこと
- 連打
- 特殊なユーザ
- 状態遷移完了直後
- これらをなんと呼ぶべきなのか?
- ISTQBのテスト条件?
- NGT/VSTsPのテスト観点?
- 不具合誘発条件と呼んだ
不具合の分析
- 基本的なテスト設計技法を用いれば検出できる
- テストタイプが非機能テストの場合、不具合誘発条件に当てはまることが多かった
存在する文書の調査
- テストベースあり
- テスト計画書あり
- テストケースあり
- テストケースからはどんなことを目的としているかわかりづらい
インタビュー
- テスト仕様書以外のところまでテストする必要があるのか
課題
- 品質特性に関するテストタイプの定義・選択が不十分
- テスト分析プロセスが無く、不具合誘発条件を導出していない
- 基本的なテスト設計技法の活用が不十分である
不具合誘発条件の分類
- 入力ファクター
- 内部状態ファクター
- 外部状態ファクター
- アプローチファクター
- ユーザーファクター
#FL表と不具合誘発条件 + 5種のファクターごとにFL表を作成した
テストタイプ別思考過程による書式
アンケートによる評価
- 抵抗の6階層で抵抗度を測る
評価実験
- 従来発見できなかった不具合8件のうち、5件を発見できた
- 新たに2件の不具合を発見
- テスト設計書行数76件中、従来テストケースと同等でないものは22件あった
質問
Q.すり抜けた3件について教えて欲しい
- A.冒頭の50件と実験のすり抜けた3件は違うもの
- 1つは複雑な状態遷移
- 全く関係ないと思われた変数が関係あった
- 複雑な手順
Q.アプローチファクターの中で特徴的なもの(負荷をかけたら、とか効きそうなこと)
- A.深堀りは十分出来ていない
- アプローチファクターは入力の仕方なので、固有の誘発条件があるのだろうと思っている
- 負荷というのは内部状態ファクターなので、アプローチファクターではない
Q.テストを設計するときに、テスト設計者が分析する必要があると思うが、そのノウハウはあるか?
- A.仕様書から直接導けるファクターと経験則のファクターがあるはず
- 入力や内部状態の一部は書いてあるが、連打などは熟練度からの教育が肝になる
Q.特別な不具合管理システムと仰っていたが、特別と特別ではない違いは?
- A.一番多いのは、市場で発見されたもの
- あとは、社内指摘でも品質管理部門で「たまたま見つけられたもの」と判断したもの
Q.どういうレベルで管理しているのか
- A.再発防止策を記載していること
- 原因と対策方法が詳しく(図やソースコード)書かれている
Q.ソースコードまで入ったシステムということか
- A.全てではないが、そういうこと
感想
- 不具合誘発条件がバグ分析と似たようなものに思えました