「リスク分析」という言葉をよく聞くようになりましたが、実際に行うプロジェクトは少ないのではと思います。リスクの洗い出しと対処策の検討を、身近な例と対比しながら考えます。
10年以上前から「リスク分析」という言葉をよく聞きますが、実際にリスク分析を実施しているソフトウェア開発プロジェクトはほとんどないのではと思います。
まず、「リスク」の定義ですが、これは「将来、起こりうる可能性のある良くない事」です。既に発生している「良くない事」は「問題」で、ただちに対処しなければなりません。「卵のままの問題」がリスクであり、リスクに対して保険をかける、あるいは、「卵」がかえらないようにするのがリスク管理です。
「保険をかける」と言うからにはお金と時間が必要となりますが、ソフトウェア開発プロジェクトでの「保険」は、それほどコストや時間はかかりません。リスク管理で最も重要なことは、「どんなリスクがあるか、事前に分析する」こと、そして「各リスクに対し、対策法を考えておく」ことです。
例えば「エース級のエンジニアがある日突然プロジェクトを辞める [1] 」、「リリース後に重大バグが発生する」「開発コストを極端に少なく見積もった」「同業他社がまったく同じ製品を1年早くリリースした」「共同開発プロジェクトで、他社が開発したプログラムとのインタフェースが違った」などは、プロジェクトに致命的な損害を与えます。
このようなリスクをすべて洗い出し、それに対処できるよう、事前に対応策を考えておくことがリスク管理の最重要ポイントです。今回は、身近な例と対比をしながらリスク管理の概要について考えます。
[1] 筆者がボストン支社に駐在していた頃のお話。当時、毎週金曜日の10時から、プロジェクト・マネージャが集まって進捗会議をしていました。
ある時、会議で隣に座ったデイヴィッドさんが、「コーディングは1日遅れているけれど、土日に出勤して遅れを取り戻します」と発言して2時間経った昼飯の直後、デイヴィッドさんの部屋の前を通ると、ドアが開けっ放しになっていて、中でデイヴィッドさんが段ボール箱に荷物を詰めていました。
足を止めて、「なんだか引っ越しするみたいですね」と冗談のつもりで言ったところ、「そうだよ、ここを辞めて別の会社へ行くんだ」と穏やかな表情で言われて、「さっきまで、進捗会議に出ていたのに……」とものすごくビックリしました。
その2時間後にヒューマン・リソース(人事部)から一斉メールが来て、「デイヴィッドは新しい可能性を求めて出発することになりました(日本なら、「卒業しました」でしょうね)」と明るい文調で書いてあり、開発のキー・パーソンが突然、辞めるなんて、アメリカでは日常茶飯事なのかと驚きました。
ある日、NASAの緊急発表で「3年以内に3%の確率で隕石が降ってくる」という予報があったら、皆さんはどんな対策を取りますか。隕石が落下すると、周辺地域は壊滅的な被害を受けます。隕石以外でも、「地震が来る」「ゴジラがやってくる」でも構いませんが、どうしますか。
3%を高いと思うか、低いと思うかはその人次第です。ある人は、「隕石関連のいろいろな問題に対処できるように計画を立てておく」と万全の対策を取るでしょうし、「隕石なんて降ってくるわけがない! たったの3%だよ。何も対策をしなくていい」という人もいるはずです。
この隕石落下のように、「将来起こる可能性のある問題」が「リスク」です。リスクに敏感な人は、あらかじめ「食料を備蓄する」「シェルターを作る」「家族の緊急避難先を決める」などの対策を取り、何が起こっても問題なく対処します。一方、何も対策しない人は、いざとなった時に慌てふためいて、悲惨な結果に至ります。
リスクに対し、事前に対策するのはよいことですが、リスクは「問題」の「卵」であり、「卵」がかえらないことがあります。これは、非常に喜ばしいことなのですが、その場合、事前に計画していた対策がすべて無駄なります。
例えば、隕石の対応処置として2000万円もかけてシェルターを作っても、実際に起こらなければただの物置部屋になってしまいます。隕石は極端な例ですが、昔から私達は様々なリスクと向き合ってきました。次の章では、昔起こった大きなリスクについて振り返ります。
Copyright © ITmedia, Inc. All Rights Reserved.