大規模なシステム・トラブルが頻発している。記者は,今年4月以降に続発したみずほ銀行の一連のトラブルや,昨年9月に東京証券取引所で発生したシステム・ダウンなどを取材し,「日経コンピュータ」誌やIT Proを通じて報道してきた。

 こうした事件の取材を続けるなかで,あることに気づいた。トラブルの当事者となった企業の多くが,その原因として「テスト不足」を挙げている,ということである。実際,「テストでバグを発見できなかった」と指摘する新聞や雑誌の記事も数多く目にした。

 だが,そもそも「テスト不足」とはどういうことなのか。そして,なぜ「テスト不足」が起きたのか。

 記者はこうした疑問を解くために,ユーザー企業やベンダーを取材して回った。その結果,各社の言う「テスト不足」の意味は,大きく二つに分けることができた。

 その一つは,「開発の遅れなどによって,計画したテストを稼働期日までに実施しきれなかった」というものである。ある企業のシステム担当者は,「3カ月でWebシステムを開発しなければならない場合,要件定義や設計が遅れると,テストに割く時間がほとんどなくなってしまう」と,頭を抱える。

 もう一つの意味は,本来実施すべきテストを準備していなかった,というものだ。「基幹系システムの機能の一部を手直ししたら,まったく関係ない機能に不具合が発生した」といったトラブルは,この意味のテスト不足に起因することが多い。肥大化した基幹系システムを修正する場合のテスト方法を,企業が正しく理解していないわけであり,ある意味で“時間切れ”のテスト不足よりも深刻と言える。

 これでは,いくらテスト期間を長くとっても,有効なテストを実施したことにはならない。テストを的確に実施するには,十分な知識とスキルが不可欠だ。システムの要件定義や設計に知識とスキルが求められることと,まったく同じである。

テストが「不足」する三つの理由

 では,なぜこのようなテスト不足が起きるのだろうか。多くの企業の担当者から話を聞くなかで,三つの原因が浮かび上がってきた。これらを自動車の運転にたとえてみよう。

 第一の原因は「走行ルートの無視」だ。テストの実施基準や品質管理基準を設けているにもかかわらず,それを守らなかった,というミスである。例えば「プログラムをたった数行修正しただけだから,テストやレビューは不要だろう」という油断がこれに当たる。たとえ自動車の走行ルートを定めても,それを守らなければ,目的地にたどり着けるかどうかはドライバーの腕に左右されてしまうのだ。

 第二は「走行ルートの設定ミス」である。的確なテストや品質管理の仕組みを理解していなかったり,準備していなかった,というケースが該当する。例えばERPパッケージ(統合業務パッケージ)を使ったシステム構築では,自前でシステムを構築する場合と比べて,テストの手順が大きく異なることを知るべきだ。走り出す前に最適な走行ルートを決めなければ,目的地にたどり着けない可能性さえある。

 「現在地の見失い」が第三の原因である。テストの進ちょく状況を管理できないことを指す。いくら綿密にテスト計画を立てても,予期せぬバグや仕様変更によって計画通りにテストを実施できないことは多い。ある企業への取材では,「テスト担当者がバグを発見してから,その情報が開発担当者に伝わるまでに1週間もかかる」という,ちょっと信じられない証言も飛び出した。テストの消化状況を常に把握して,臨機応変にテスト担当者を変更したり増減することは,テストを完遂するうえで不可欠である。

トラブル件数の8割削減に成功

 テスト不足は,こうしたさまざまな原因で発生する。この問題を解決しない限り,システム・トラブルの芽を摘み取ることはできない。こう考えてテストへの取り組みを大幅に見直し,大きな成果を上げる企業も出てきた。

 例えば,東京海上火災保険は昨春から,プログラムをたった1行修正するだけでも,必ずテストやレビューを実施することをルールとして義務づけた。さらに,テストの計画・実施段階でユーザー部門を巻き込んだり,システム開発を担当する子会社に「品質管理部」を新設するなど,全社規模でトラブル撲滅に取り組んだ。その結果,1年間に発生したシステムトラブルの件数を,前年比で8割も削減することに成功したという。

 東京海上の担当者は,「システム設計の段階からテスト計画の策定に取りかかることが何よりも重要だ」と強調する。「システムを設計するときが,もっとも頭をつかう。そのときに,合わせてテスト・ケースを考えていくのが,効率的」と話す。

 もちろん,「テストだけでトラブルを減らそうとするのは本末転倒。システム設計の段階で品質を高めるように努力すべきだ」という意見もある。だが,バグのないシステムを作ることは不可能だ。トラブルの芽を摘み取るうえでテストが果たす役割は大きい,と言わざるを得ない。

 的確なテストを実施することは,ますます難しくなりつつある。悩みを抱えている企業も多いはずだ。そこで記者は,上記の東京海上のほか,セブン-イレブン・ジャパン,東レ,ミノルタ,JTBといった各社の取り組みを中心に,日経コンピュータの7月29日号で「テスト」を特集として取り上げた。ご意見,ご感想をいただければ幸いである。

(大和田 尚孝=日経コンピュータ)