HAYST法

Highly Accelerated and Yield Software Testing.

ホーム     技法紹介     発表履歴     参考文献     本棚     TIPS     いろはかるた     当サイトについて     お問い合わせ     サイト マップ      
テスト技法ポジショニングマップ     パフォーマンステスト     探針テスト      
テスト技法ポジショニングマップ
テスト技法の位置づけを明らかにすることを目的とした図です。
 

 

 
テスト技法ポジショニングマップの目的 

本ポジショニングマップは、様々なテスト技法がみな有効でカバーしあっていることを示すことを目的としています。
 
※ 本マップで取り上げるテスト技法は、機能性と信頼性の評価を目的としたものを対象としています。したがって、非機能要件のテストとセキュリティテスト、テスト分析のための技法(NGTやマインドマップ)はスコープ外です。
※ もちろん、これが、唯一の正解とは思っていません。 おかしなところや増やしたい技法がありましたらメールください。 
 
 
横軸の説明 

横軸は、「ピンポイント←→網羅的」となっています。
 
  • ピンポイント
ピンポイントとは、狙い撃ちをするテストという意味です。絵にあるように究極のピンポイントは一本釣りです。魚(バグ)があるところを狙うためには、ソースコード上で特別な処理を行っている定数(異常値・特異値)を狙ったり、過去の経験から「このようなエラーが起こるはずだ」と仮説を立てて推測するといったことをします。また、過去の経験をもとにせずに、静的解析を実施し、複雑度その他の値からバグが潜んでいそうなモジュールを集中的にテストするといったこともします。
 
その他に、リスクを評価し、テストの重点を絞ったり、テスターが実際に触りながら、または、お客様が業務を流しながらバグを見つけるテストもピンポイントと言えるでしょう。
  • 網羅的

網羅的とは、「何らかのテストモデルを立てて、そのモデルの網羅性をとりながら実施するテスト」のことを指します。コードカバレッジなどは一番分かりやすい例でしょう。網羅的テストの多くには網羅の深さというものがあり、お客様の求める品質に応じて深くテストします。ただし、深すぎるとテストケース数が爆発し、自動化をしないとテストしきれなくなります。この辺の効果と効率のバランスを取ることが実際のテストにおいては重要な戦略ポイントとなります。

 
縦軸の説明 

縦軸は、「White Box←→Black Box」と「設計-仕様-要件-顧客要求」が重なっています。
 
  •  White Box←→Black Box

ソースコード(プログラミングコード)を元にテスト設計を実施するテストをWhite Boxテストと呼びます。対照的に、ソースコードを見ずに主にソフトウェアシステムの入出力に着目しテスト設計をしていく方法がBlack Boxテストです。

その中間というよりもBlack Boxテストの一種として必要に応じてソースコードを見ることも厭わないテストのことをGray Boxテストと呼びます。たとえば、処理の流れの順番や、境界値などをソースコードによって把握するテストです。

  • 設計-仕様-要件-顧客要求

テスト設計は何らかのソフトウェア成果物をもとに行います。設計に対して実施するテストはテストプロセスの初期に実施すべきでしょうし、顧客要求に対する妥当性確認は最後のフェーズに実施するのが効果的です。

この軸はVモデルの縦軸と対応しています。

 
活用方法

色々な活用方法が考えられると思いますが、以下にいくつかアイデアを書きます。

  • テスト技法の抜けの確認
    • 基本的なバグが残っているのならマップの上の方を強化する
    • (狭義の)テストでは検出が困難なバグが残っているのならマップの下の方を強化する
  • テスト技法を使用する順番
    • 右下から左上(または左下から右上)の順番にテストプロセスに配置してテストを実施する
    • あるテスト技法を実施するために前提として必要となる周辺テスト(テスト技法の重なり)を理解する
  • お客様とのテスト戦略レビュー
    • テスト対象ソフトウェアの性質によって「今回はこの辺を強化しよう」という戦略レビューに用いる
    • 「お客様の視点でテストして欲しい」と言われた時に具体的に実施することを検討する
  • テストの自動化をする際の参考に使用する
    • 網羅的かつ設計に近い右下の象限にあるテストは形式知化しているので自動化しやすい
    • 網羅的かつBlack Boxの右上の象限にあるテストは件数が多いので自動化の効果が高い

 

※ 活用に当たっては、各テスト技法の位置、大きさ、重なり具合を対象ソフトウェアに合わせて修正することが有効です。

 
 
オリジナルファイル

 

※ 上記ファイルを利用するための許可申請は一切不要ですが、修正されたり別の軸によるマップが増えることがあるので、ここのURLを書いておいていただけると幸いです。

 

 
謝辞

本ポジショニングマップ作成に当たっては、次の方に有益なコメントを頂きました。
おかげさまで、最初のバージョンから、大幅に修正&改良することができました。どうもありがとうございました。
 
  • 湯本 剛 氏
  • 鈴木 三紀夫 氏
  • 大西 建児 氏
  • 太田 健一郎 氏
  • 本田 和幸 氏
  • 来間 啓伸 氏
  • 加瀬 正樹 氏
  • 山根 慎之介 氏
  • 西原 留美奈 氏
  • 増田 聡 氏

 

※ 上記リストはコメントを頂いた順です。