「ソフトウェアテストの教科書 [増補改訂 第2版]」批判 〜1章 ソフトウェアテストとは〜

はじめに

本記事は「ソフトウェアテストの教科書 [増補改訂 第2版]」という本について、ひとりのDirty Tester目線で批判する記事です。

本書はソフトウェアテストを勉強する上で入門書として紹介されることが多いですが、私の観測範囲内では批判的な意見を持っている人をよく見ます。

私もそのうちの一人です。

本シリーズでは具体的にどこが、どのように疑問を持つかを明らかにします。
それによって以下の効果を望みます。

  • 初学者の人が批判的な視点でこの本を読み、テストエンジニアとして成長する

  • この批判によって、より有益な第3版となって世に出る

  • 本当に「ソフトウェアテストの教科書」に相応しい書籍になる

一章 ソフトウェアテストとはへのクダ

ソフトウェアとはコンピュータが理解できる命令形式(プログラミング言語)で記述された「コンピュータを動作させるためのプログラム」であり、「命令文をコンピュータに実行させたい順番に並べて記述した文章」ともいえます

ソフトウェアテストの教科書 [増補改訂 第2版]p3

前者はコードの説明だし、後者はインタプリンタの話をしている?
前者の定義は「等」がないのが結構問題じゃないですか?

ソフトウェアテストとは、欠陥を取り除いて、ユーザーの要求を満たす、品質の良いソフトウェアを作ること

ソフトウェアテストの教科書 [増補改訂 第2版]p4

ソフトウェアテストが作ることなんですか???あとで知れるみたいなので楽しみです。

本書では「誤動作の原因がソフトウェアにあることが特定されたもの」を欠陥と定義しています

ソフトウェアテストの教科書 [増補改訂 第2版]p5

誤動作の定義してください

クロスビー氏は「品質とは要求を満たすことである」と定義しています。 
ワインバーグ氏は「品質は誰かにとっての価値である」と定義しています。

ソフトウェアテストの教科書 [増補改訂 第2版]p9

これら2つの定義から、品質の良いソフトウェアとは「ユーザーの要求を満たし、ユーザーに価値を提供するソフトウェアである」ということが言えます。p9

ソフトウェアテストの教科書 [増補改訂 第2版]p9

混ぜないで欲しいです。またユーザーどこから来たのかきちんと明示すべきだと思います。特にワインバーグの定義と真逆のこと言ってるから読み直して欲しいです。

当たり前品質とは、ユーザーの「基本要求」を満たす品質です 

ソフトウェアテストの教科書 [増補改訂 第2版]p11

基本要求なんて言葉あったんですか?(まじで知らない)

基本品質

ソフトウェアテストの教科書 [増補改訂 第2版]p11

基本要求から基本品質に入れ替わってませんか?

Validation(妥当性確認)とは、ユーザーの要求どおりにソフトウェアが作成されているか確認することです。

ソフトウェアテストの教科書 [増補改訂 第2版]p13

暗黙の要求ってことも書いた方が良さそうです。

すべての欠陥は「Verificationで見つかる欠陥」と「Validationで見つかる欠陥」のいずれかに大別できます

ソフトウェアテストの教科書 [増補改訂 第2版]p13

例えば静的解析で見つかる欠陥はどっちなんだろう?
ていうか、本著の定義では見つかるのは不具合と欠陥なのではないですか?

Verificationで見つかる欠陥とは「モノクロコピーを指定したのに、カラーコピーされてしまう」といった欠陥です。 

ソフトウェアテストの教科書 [増補改訂 第2版]p13

これは本書における欠陥とは限らないですし、本書における不具合ではないですか?

総括して

本当に言いたいことはこの章以降の話で、結構用語の定義がおざなりになっていないか?という不安を持ちました。
また、「テストをすること」という意識に目が向きすぎて、「品質」や「欠陥」の定義が都合のいいように歪められ、使われていないか?という懸念を持ちました。

初学者はあまり深く考えないと思いますが、テスターの倫理観として、この辺の定義をおざなりにすることはあまりいいとは思えませんでした。

この記事が気に入ったらサポートをしてみませんか?