書評「ソフトウェアテスト293の鉄則」

書評「ソフトウェアテスト293の鉄則」

Cem Kaner (著), James Bach (著), Bret Pettichord (著), テスト技術者交流会 (翻訳), 日経BP社

カテゴリ:テスト

概要

ソフトウェアテストに多年携わってきた著者たちが、自らの経験から得た、ソフトウェアテストを成功に導くための教訓を、293個の鉄則としてまとめた。
テストの思考法、テスト技法、テストの自動化、バグの報告の仕方、テストのドキュメント、プログラマとのコミュニケーション、テストプロジェクトのマネジメント、テスト担当者としてのキャリアプラン、テスト戦略の立て方など、幅広いノウハウを一冊にまとめる。初心者よりも、一定のテスト経験を経た、中堅からベテラン、管理者層に、多くの気付きが得られる本として薦めたい。

本書の使い方

テーマごとの章建てとなっており、読み手の興味関心に応じてどこからでも読むことが出来る。通読する学習のための書籍というより、むしろテストに関して悩んでいるときのヒント集、として使うと多くの気付きが得られるだろう。
またいくつかのテーマを取り出し、チームメンバー数人でディスカッションすることも薦めたい。

何を学べるか

第1章 テストという仕事
テストの役割とはいったい何なのか。 テストの役割は相対的なものであり、プロジェクトの全員と話し合っておくべきであると著者は説く。様々な角度からの「テストの役割」についての定義や心得、考察を紹介する。

第2章 実践的テスト担当者の思考法
テスト担当者の思考法は独特であり、テストを専門にしている人にとっては、テストとは自らの認識論の実践である、と著者は説く。本章では読者の知性をトレーニングすることを目的として、様々なテスト担当者の思考法や認識論を紹介する。

第3章 テストの技法
何をもとにテストケースを作り、どのようにテストを進めればよいのか。本章ではまずソフトウェアテスト全体のフレームワークを提示し、読者のテスト全体像の理解を促す。また代表的なテスト技法を紹介する。

第4章 バグの報告
テストの結果を、きちんと伝え、読み手が理解できる形にするためには、どのように書けばよいのか。本章ではバグを報告書にまとめる際のポイントや、陥りがちなトラブルを回避するためのコミュニケーションのノウハウを紹介する。

第5章 テストの自動化
テストの自動化は必ずしもうまくいくとは限らない。自動化で得られるメリットと、メンテナンスなどにかかるコスト面でのデメリットを折り合わせることは容易ではないからである。自動化を成功させるためのポイント、考え方、注意点などを紹介する。

第6章 テストドキュメント
テストにおいて使用されるドキュメントにはどのようなものが必要なのか。代表的なテストドキュメントであるIEEE829テストドキュメント標準の有用性を詳細に分析しつつ、テストの現場において必要なドキュメントの考え方や、テストドキュメントの要件定義のノウハウなどを紹介する。

第7章 プログラマとの協同作業
プログラマとテスト担当者は時として、コミュニケーションがうまくいかない場合が多い。お互いが、スムーズに業務を行い、相互に尊敬しあう信頼関係を築くための、コミュニケーションの考え方やヒントを紹介する。

第8章 テストプロジェクトのマネジメント
テストプロジェクトは、前工程であるプログラムの開発プロジェクトに大きく依存しており、プログラムの開発が遅れると、そのしわ寄せを受け、到底実現できないテスト計画を余儀なくされる。本章では、実際のテストプロジェクトに働く政治力学と、そのコントロールの方法、またプロジェクトを効率化する具体的なヒントを紹介する。

第9章 テストグループのマネジメント
テストプロジェクトのマネージャとして、チームメンバーをマネジメントする際のポイントを紹介する。評価・採用の仕方、育成やトレーニング、モチベーションの維持など、広くテストの「人」に関わる部分について考察する。

第10章 ソフトウェアテストにおけるキャリア
ソフトウェアテスト担当者として、キャリアを積むにはどうすればよいか。キャリアプランの考え方、求人情報への目配り、履歴書の書き方、面接時の心得や条件交渉のポイント、またスキルアップや資格取得など、様々なアドバイスを紹介する。

第11章 テスト戦略の立案
テスト戦略とは、テスト設計をどのような方針で行うかの指針であり、テストの目的を達成するために、実際何を行うべきかを考えることである。テスト計画の成功は、テスト戦略の巧拙にかかっている。本章では、テスト戦略を立てる上でのヒントを紹介する。

付録 ソフトウェアテストに対するコンテキスト駆動型アプローチ
筆者たちが設立したソフトウェアテストのコミュニティグループである「コンテキスト駆動会派」の紹介を行う。会の基本原則、参加主要メンバーなどを紹介する。