HISTORYOFSOFTWARETESTING
HISTORYOFSOFTWARETESTING
(C) K. Tatsumi2010(C) K. Tatsumi 201015
2. 論証指向の時代 (1957年~1978年)
テストのコミュニティの開始
• Debugging Techniques in Large Systems シンポジウム(1970年)
• 最初のテストのシンポジウムの開催(1972年6月)
The Computer Program Test Methods Symposium
• 最初のテストの書籍
Hetzel(Ed.), "Program Test Methods," 1973
テスト技術の研究の拡大
• 最初のテストケース設計の理論付け
Goodenough, Gerhart, "Toward a Theory of Test Data Selection," 1975
• テスト・ワークショップの開始 (現在のISSTAの源流)
Software Testing and Test Documentation Workshop, 1978
<参考>1973年, Wulfの品質属性の定義, Boehmらの品質モデル
(2/2)
論証指向デバッグ指向
評価
指向
破壊
指向
予防指向
1950 1980 19901960 1970 2000 2010
16.
HISTORYOFSOFTWARETESTING
HISTORYOFSOFTWARETESTING
(C) K. Tatsumi2010(C) K. Tatsumi 201016
3. 破壊指向の時代 (1979年~1982年)
テストとは、エラーをみつけるつもりでプログラムを実
行する過程(テストの成功とはエラーを見つけること)
Myers, "The Art of Software Testing," 1979
テストでは、経済学的・心理学的な観点が大切
• 投資対効果の最大化を目的とすべき
(限られたテストで検出できるエラー数を最大に)
• 『完全なテストは不可能であるから、いかなるプログ
ラムのテストも不完全にならざるを得ない。だから、
作戦としては、この不完全さをできる限り減らすこと
であることが明らかである。』
⇒ これが、きちんとテスト設計することの意味であり、
テスト設計技法の目的
1950 1980 19901960 1970 2000 2010
論証指向デバッグ指向
評価
指向
破壊
指向
予防指向
17.
HISTORYOFSOFTWARETESTING
HISTORYOFSOFTWARETESTING
(C) K. Tatsumi2010(C) K. Tatsumi 201017
4. 評価指向の時代 (1983年~1987年)
ソフトウェアのライフサイクルを通じた評価活動の中
にテストが位置付けられた時代
FIPS 101 (米国標準局(NBS)規格), 1983
"Guideline for Lifecycle Validation, Verification, and
Testing of Computer Software"
• ライフサイクルの中で、解析、レビュー、テストの活動
を統合する方法論、各フェーズのVV&T技法
⇒ ソフトウェアの品質は単一の技法で保証できる
ものではない。個々のプロジェクトで吟味して
選んだ技法群を使うことにより品質のよい
ソフトウェアの開発が可能になる
1950 1980 19901960 1970 2000 2010
論証指向デバッグ指向
評価
指向
破壊
指向
予防指向
18.
HISTORYOFSOFTWARETESTING
HISTORYOFSOFTWARETESTING
(C) K. Tatsumi2010(C) K. Tatsumi 201018
5. 予防指向の時代 (1988年~)
ソフトウェアライフサイクルと並行して進められる予防
指向のテストプロセス
テスト方法論STEP (Systematic Test and Evaluation Process)
Hetzel, "The Complete Guide to Software Testing 2nd Ed.," 1988
• ソフトウェアライフサイクルと並行してテスト活動を実施
• テスト計画の立案、テストの設計、テストのメトリクスの収集方法、
リスク分析法などから構成
現在の“Wモデル”につながる考え方
<補足> Hetzelは既に1973年の"Program Test Methods"で
「テストは設計とコーディングの全プロセスにおいて
計画されなければならない」
と書いている。
1950 1980 19901960 1970 2000 2010
論証指向デバッグ指向
評価
指向
破壊
指向
予防指向