見出し画像

バグはテストじゃ見つからない

システム開発における重要な工程にテストがあります。作成されたシステムが仕様通りに動作するか確認する重要なプロセスです。

ところで、テストって何を確認していますか?
テスト工程の分類は色々ありますし、会社によっても定義はさまざまだと思います。例をあげると
UD(単体テスト)であれば仕様通りにプログラムが動作することを確認する。
結合テスト、組合せテストであれば、システム間のインターフェースを含め複数のプログラムが連携して正しく動作することを確認する。
UAT(ユーザ受け入れテスト)や、総合テストはシステム要件(仕様)通りにシステムが動作することを確認する。

そう考えると、何れのテストも仕様通りにシステム(プログラム)が動作することを確認するものなので
要件定義書(業務要件)や、設計書のバグ(誤り)をテストで摘出するのは難しいのです。

私の所属する会社は、金融機関のシステム子会社なのですが、昨今の金融業務の高度化により内製開発を諦めパッケージシステムを導入したり、システム開発を外部のベンダに依頼することが多くなりました。

このような状況の中で、要件定義書の作成や、外部設計工程での検討をおろそかにしておくと、UAT(ユーザ受け入れテスト)のような最終工程で手痛いしっぺ返しを喰らうことになります。
考えてみると当たり前の話なのですが、上流工程をおろそかしにて、不具合はテスト工程で摘出をしようなんてことを考えて最終工程に至って仕様変更、バグの嵐で大炎上するプロジェクトを何度も見てきました。

これを読んで頂いた、あなたのプロジェクトは大丈夫ですか?


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