- 上原 正吉
- 株式会社アースリンクネットワーク
- Webプロデューサー
対象:システム開発・導入
- 清水 圭一
- (IT経営コンサルタント)
- 清水 圭一
- (IT経営コンサルタント)
テストファースト
DotNet Frameworkにおけるテスト手法として、弊社では
テストファーストを推奨している
間違いやすいのがテストを先に始めるのではなく、
テストを優先した開発ということである。
微妙な言葉の違いかもしれないが意識の問題である。
実際テストを初期の段階で行いもする。
またこういった開発手法のことを
テスト駆動開発 (test-driven development)略して(TDD)
と言う。
これは、プログラム開発手法の一種で、多くのアジャイルソフトウェア開発手法でもちいられている。
その中でも、エクストリーム・プログラミング(XP)において強く推奨されている手法である。
通常のテストと「テストファースト」の違い
テストファーストの開発では、
1、まずテスト仕様を考えます。
2、そしてそれをテストケースとして落とし込みます。
3、次にテストを実行しレッドランプを確認します。
(ここの段階でテストがパスしていないか、「テストのテスト」です)
4、そして、プログラムを組み。
5、テストを実行して、すべてがグリーンランプになるまで繰り返します。
テストファーストのツールでは大概、信号機の色になぞらえて、
グリーン、レッドと言います。
(英語では信号機の「青」は「グリーン」です)
今までのテストに対する考え方は
「プログラムに対するバグ検査」
であるのに対し、テストファーストは
「仕様どおりに動くように確認しながらコードを書き進めていく」
という大きな違いがあります。
それぞれが、担当する個所の動作を、確認しつつコーディングすることで、仕様どおりのソフトウェアが保証できる。
これはパズルに例えると、
手に取ったピース(機能)を順々にはめていく方法
と
まずは枠組みのピースだけ取り出して、
枠を固めてしまい、その後中を完成させていく方法
との違いににていると思う。
どちらのほうが効率的かは明白であると思います。
仕様変更が起こった場合は
では「仕様変更(枠組みの大きさが変わった)が起こった場合にはどうすればいいのか」といった疑問が浮かんでくると思う。
それを解決(もしくは問題が小さい内に解決)する手法が、
さきほどもでてきていた、エクストリーム・プログラミング(XP)だ
具体的な話は次回詳しく説明します
☆QuickRec--メール・電話・FAXをお客様情報と一緒に全部まとめて一元管理
電話を自動録音することによりトラブルを未然に防ぎます
http://www.quickrec.com/
システム開発のご相談、ホームページ作成なら
アースリンクネットワークへ
http://www.eln.ne.jp