MasaoApril's Library.

Software Testingなネタを書いてみた。

WACATE2014夏 夜の分科会 -探索的テスト分科会-(6) :「まとめ」

 6/21(土)~22(日)に開催されたWACATE2014夏の1日目夜に実施した「夜の分科会」で議論された内容を6回に分けてまとめています。今回は、第6回目(最終回)です。

今回の内容:赤文字部分

  1. 上手くいった事
    1. 情報収集&整理
    2. プロセス
    3. アプローチ
  2. 失敗した事
    1. 固定観念
    2. 探索範囲
    3. スキル/知識
  3. ノウハウ
    1. 現場
      1. 現象
      2. 蓄積
      3. 経験則
    2. 議論
      1. スキル
      2. チーム
      3. 素質
      4. 適用範囲
      5. マネージメント
    3. 課題
      1. バグの嗅覚
      2. 方法論
      3. スキル
      4. 言語化
      5. テストチャータ
  4. 報告
    1. 報告事項
  5. マネジメント
    1. 戦略
    2. 実施期間
    3. 実施範囲
    4. アプローチ
    5. 探索的テストの効果
    6. バグが無いことを探索する
  6. まとめ

議論内容:6. まとめ

 今回の分科会を通じ、気付いた点をまとめます。

1.情報戦

 上手くいった要因として、「開発情報を集約」「集約した情報を整理して、開発関係メンバーで共有」が両輪となったことが挙げられます。特に開発情報は、生々しい経験則や傾向を掴めるか否かが探索的テストを成功するためのカギとなります。

 以前、TEF東海勉強会参加レポート:SWKYT(ソフトウェア危険予知トレーニング)ミニワークショップの記事を書きましたが、「問題は何が原因でどのような道筋で発生するか」を想像して考えてみると、ソフトウェアの欠陥がある程度体系化できるのではと思います。

2.メリハリのあるマネジメント

 「戦略とアプローチ」「探索するスコープ」「探索期間(時間)」をバランスよく考慮し、探索的テストを進めるための意思決定ができることは、探索的テストを成功するためのカギとなります。

 ad-hocテストと探索的テストの違いの1つとして、メリハリのあるプロジェクト運営が有るか否かがあると考えます。

3.基礎体力

 「ドメイン知識」「テスト技術」「(一般/専門)教養」の3種類の基礎体力を日々鍛錬していることが探索的テストを成功するためのカギとなります。

ドメイン知識」


 テスト対象を理解するために必要な知識ですが、さらに深く知ることで探索するスコープ(バリエーション)が広がり、バグ検出のポイントがクリアになる場合があります。特に製品(テスト対象)の使い方が多岐にわたると、多くのシナリオが想定され、何のバグが発生するとどのように困るのか探索しやすくなります。

「テスト技術」


 スクリプトテストで培った技術のノウハウから、バグ検出のコツが掴める場合があります。例えば、HAYST法で使用しているラルフチャートからテスト対象の動作を俯瞰し、「何を」/「どのように」/「どこから」探索するかを検討する材料となります。

「(一般/専門)教養」


 「ドメイン知識」と「テスト技術」の土台となる知識です。テスト対象と結びつける情報で、様々なジャンルの書籍や高専や大学などの教育機関で学んだことを活用できるため、有るのと無いのでは探索的テストの実施結果が変化します。