ソフトウェアテストは知的創造行為そのもの
GooGleで "ソフトウェア技術" を検索してみると、 約 395,000 件がヒットしました。それではということで "テスト技術" を検索してみると、約 39,800 件がヒットしました。ソフトウェア技術の約10分の1です。それでも以前よりはかなりテスト技術のヒット件数が増えたように思います。これにはJSTQBテスト技術者資格認定に関するページの増加が大きく影響しているようです。
今でもテストは新人が最初に担当する「易しい」作業と見られる風潮が強いようですが、実際には奥の深い難しい作業です。ソフトウェア開発のVモデルにあるように、テストはソフトウェア開発の半分の工程を占める重要な作業です。
ソフトウェア開発者の生産性には数倍の個人差があるといわれていますが、テスト担当者の生産性についても数倍の個人差があると私は感じています。かつて「ソフトウェア工場」という言葉が使われ、ソフトウェア開発から属人性をできるだけ排除し、「工場」の作業員と同様に同じレベルのプログラムをプログラマーに生産させようとする考え方が現れた時代がありました。今、そういう考え方をする人はほとんどいないでしょう。ソフトウェアシステムはそれほど単純ではないからです。
巨大なソフトウェアシステムは、人類が創造するものの中で最も複雑なものだといわれています。このことに異論をはさむ人は少ないと思います。そのようなシステムを構築するには、人並み外れて優れた少数のエンジニアの存在が欠かせません。そして担当する部分の難しさに応じたレベルのエンジニアが必要となります。「工場」で同じ製品を毎日作り続けるような作業とソフトウェアの開発は大きく異なる性質を持っています。
ソフトウェア開発プロセスの標準化は必要ですが、標準化の枠外にエンジニアの「創造性」が存在します。創造性自体は標準化できないものです。ソフトウェアは創造性の産物でもあります。このことはソフトウェアのテストについてもいえます。
ソフトウェアをテストする方法には無限ともいえる方法があります。その中から最も適切な方法を見つけ出し、テストを設計することは知的創造行為そのものといえます。そうして作られたテスト設計仕様書、テストケース仕様書をもとに実際にテストを実施することも知的創造行為といえます。仕様書にすべてを記述することは不可能です。テスト担当者は仕様書をもとにテストを行なう中で仕様書にはかかれていない事項で不具合を見つけだすことが多いものです。
テスト担当者は、自身のレベルに応じた複雑さのテスト対象をテストすることになります。テスト担当者が仕様書には書かれていない不具合を1つ見つけ出すとき、1つの創造行為を行なったといえるのです。
今後、ますますテストの重要性は増してくるでしょう。それとともにテスト技術者の社会的地位向上がもたらされることを願ってやみません。
今でもテストは新人が最初に担当する「易しい」作業と見られる風潮が強いようですが、実際には奥の深い難しい作業です。ソフトウェア開発のVモデルにあるように、テストはソフトウェア開発の半分の工程を占める重要な作業です。
ソフトウェア開発者の生産性には数倍の個人差があるといわれていますが、テスト担当者の生産性についても数倍の個人差があると私は感じています。かつて「ソフトウェア工場」という言葉が使われ、ソフトウェア開発から属人性をできるだけ排除し、「工場」の作業員と同様に同じレベルのプログラムをプログラマーに生産させようとする考え方が現れた時代がありました。今、そういう考え方をする人はほとんどいないでしょう。ソフトウェアシステムはそれほど単純ではないからです。
巨大なソフトウェアシステムは、人類が創造するものの中で最も複雑なものだといわれています。このことに異論をはさむ人は少ないと思います。そのようなシステムを構築するには、人並み外れて優れた少数のエンジニアの存在が欠かせません。そして担当する部分の難しさに応じたレベルのエンジニアが必要となります。「工場」で同じ製品を毎日作り続けるような作業とソフトウェアの開発は大きく異なる性質を持っています。
ソフトウェア開発プロセスの標準化は必要ですが、標準化の枠外にエンジニアの「創造性」が存在します。創造性自体は標準化できないものです。ソフトウェアは創造性の産物でもあります。このことはソフトウェアのテストについてもいえます。
ソフトウェアをテストする方法には無限ともいえる方法があります。その中から最も適切な方法を見つけ出し、テストを設計することは知的創造行為そのものといえます。そうして作られたテスト設計仕様書、テストケース仕様書をもとに実際にテストを実施することも知的創造行為といえます。仕様書にすべてを記述することは不可能です。テスト担当者は仕様書をもとにテストを行なう中で仕様書にはかかれていない事項で不具合を見つけだすことが多いものです。
テスト担当者は、自身のレベルに応じた複雑さのテスト対象をテストすることになります。テスト担当者が仕様書には書かれていない不具合を1つ見つけ出すとき、1つの創造行為を行なったといえるのです。
今後、ますますテストの重要性は増してくるでしょう。それとともにテスト技術者の社会的地位向上がもたらされることを願ってやみません。