てすてぃんぐライフ

駆け出しQAエンジニアの備忘録

テストアナリストについて

テストアナリストについて調べたので、備忘録としてメモを残しておく。 その中でも、リスクベースドテストについて書かれているところも抜き出してみた。

参考文献 http://jstqb.jp/syllabus.html ISTQBテスト技術者資格制度 Advanced Level シラバス 日本語版 テストアナリスト Version2012.J01

テストアナリストの仕事

  • 要求エンジニアリングおよびマネジメント - 要件レビュー
  • プロジェクトマネジメント - スケジュール
  • 構成管理および変更管理- ビルド検証テスト、バージョンコントロール
  • ソフトウェア開発 - 提供される内容とタイミングの予測
  • ソフトウェアメンテナンス - 欠陥マネジメント、ターンアラウンドタイム(欠陥を見つけてから解決するま での時間)
  • テクニカルサポート - 回避策の正確な文書化
  • テクニカルドキュメント(たとえば、データベース設計仕様)の生成- これらのドキュメントへの入力とドキュメントのテクニカルレビュー

1.3 テストの計画作業、モニタリング、およびコントロール

テストのモニタリングとコントロールについて、特に面白そうだったので抜き出してみた。

  • テストのモニタリングとコントロールは、通常、テストマネージャの担当であるが、テストアナリストは、コントロール を可能にするための測定を行う。
  • ソフトウェア開発ライフサイクル全体を通して、さまざまな定量的データを収集する必要がある。
    • たとえば、完了 した計画作業の割合、達成したカバレッジの割合、合格および失敗したテストケースの数などを収集する。それ ぞれのケースについて、ベースライン(参照標準)を定義し、このベースラインに関して進捗を追跡する必要が ある。
    • さまざまな追跡ツールに入力する情報を可能な限り正確にして、メトリクスに現実を 反映させることが重要である。
  • 正確なメトリクスを使用することにより、マネージャはプロジェクトをマネジメント(モニタリング)し、必要に応じて 変更を開始(コントロール)できる。
    • たとえば、ソフトウェアの特定の領域で非常に多くの欠陥が報告されている 場合、その領域に関してさらに多くのテスト作業が必要な可能性がある。要件とリスクカバレッジの情報(トレー サビリティ)を使用することにより、残りの作業に優先度付けを行い、リソースを割り当てることができる。根本原 因に関する情報を使用することにより、プロセス改善が可能な領域を判断できる。
    • データを正確に記録すること により、プロジェクトをコントロールすることが可能になり、正確なステータスの情報をステークホルダに報告でき る。
    • 過去のプロジェクトから収集したデータを計画作業で考慮することにより、プロジェクトをより効果的に 計画できる。正確なデータの使用方法は無数にある。
    • テストアナリストは、データが正確で、タイムリーであり、客観 的であるようにする必要がある。

つまり、テストアナリストの仕事は、

  • テストマネージャがコントロールを可能にするためのデータ収集を行う
  • 計測指標は正確にかつタイムリーに収集すること
  • 計測により、評価と予測が可能になる
    • 正確なステータスの情報をステークホルダに報告できる
    • 将来の予測ができる

テスト分析

  • テストベースの分析
  • テスト条件の識別

第7回Quesに参加して、テスト分析の概要について学んだ。

  • テストベースをもとに「テスト分析」を行ってテスト条件を作成する。 テスト条件をもとにして「テスト設計」を行ってテストケースを作成する。
  • テストベースは仕様書など。テスト条件はテスト観点。マインドマップなどを使ってまとめる。

2.2 テストの進捗モニタリングおよびコントロール

テスト進捗のモニタリングの対象には、次の 5 つの主要な要素がある。

  • プロダクト(品質)リスク
  • 欠陥
  • テスト
  • カバレッジ
  • 確信度合い
    • 主観的な報告になることが一般的

リスクベースドテストアプローチを使用している場合、テストアナリストは次の項目を追跡する必要がある。

  • テストにより軽減されたリスク
  • まだ軽減されていないと考えられるリスク

リスク軽減の追跡は、ツールテストマネジメントツールなど)を使用して行う。識別したリスクをテスト条件に対応付けし、テスト条件をテストケースに対応付 ける必要がある。このテストケースを実行して結果が合格になると、リスクを軽減できる。

2.4 リスクベースドテストにおけるテストアナリストのタスク

テストアナリストは、次のリスクベースドテストのタスクに積極的に関与する必要がある。

2.4.2 リスク識別

テストアナリストは、ユーザおよび他のド メインエキスパートと緊密に連携して、テスト中に対応する必要のあるビジネスリスクの領域を決定する必要があ る。 リスク識別は、可能な限り多くのリスクを識別することを意味する。

2.4.3 リスクアセスメント

リスクアセスメントでは、それぞれのリスクを分類して、それぞれのリスクに 関連する発生確率や影響を判定する。 リスクレベル = 発生確率 * 影響度(ビジネスリスク)

2.4.4 リスク軽減

テストはリスク軽減策の一つである。 テスト担当者は欠陥を見つけることにより、欠陥が認識されるようにし、リリース前に欠陥に対処する機会を提供 して、リスクを軽減する。テスト担当者が欠陥をまったく見つけなかった場合、テストされた特定の条件下でシス テムは正しく動作することが保証され、テストがリスクを軽減したことになる。

テストアナリストは、正確なテスト データ収集のための時機の調査、現実的なユーザシナリオの作成とテスト、および使用性調査の実践または 観察を行うことで、リスク軽減のオプションを決定することを支援する。

リスクのレベルもテストの優先度付けに使用する。テストに使用するデータの収集や、テストの実行順の決定を行う。

リスクベースドテストでは、その時点における残りのリスクレベルに ついてテスト担当者がマネジメントにレポートし、マネジメントでテストを延長するか、あるいは残りのリスクをユー ザ、顧客、ヘルプデスク/テクニカルサポート、運用スタッフに移転するかを決定できる。

3.4 経験ベースの技法

経験ベースのテストは、テスト担当者のスキルと直感、および類似のアプリケーションや技術での経験を活用す る。

  • メリット
    • 欠陥を見つけるのに有効
    • システムドキュメントが適切でない場合やテスト時間 が厳しく制限されている場合、またはテストチームがテスト対象のシステムに精通している場合には、経験ベー スのテストは、より構造化された方法よりも優れた代替策となることがある
  • デメリット
    • 特定のカバレッジを達成したり、再利用可能なテスト手 順を生成したりする場合は、他の技法ほど適していない
    • 詳細なテスト ドキュメント、高い再現性、またはテストカバレッジを精緻に評価する能力を必要とするシステムでは、不適切な ことがある