システム構築には、大きく分けて4つのリスクがある。すべてのフェイズを通じて存在するそれらのリスクを正しく認識しなければ、システム開発は失敗に終わるだけだ。それらリスクへの対処法を紹介する。
システム構築は、成功率が30%といわれるほどリスクの高い投資である。そのリスクに無頓着で、業者に任せっきりにするのは、保険に入らずに車を運転するのと同じくらい危険だ。システム構築における主なリスクは、「認識的リスク」「人的リスク」「技術的リスク」「組織的リスク」である。
それぞれのリスクは、単独ではなく複合的に襲ってくることが多いので、常にリスクに対してアンテナを高くし、コスト・納期・品質に与える影響度と発生確率によって優先順位を付け、各リスクに応じて早めに対策を打つ必要がある。それには、間接的な情報だけに頼らず、3現(現場、現物、現実)主義を尊重することだ。例えば、現物を見て品質に対するリスクを知ることで、コスト・納期に対するリスクが分かる。これは、コスト・納期の進ちょく報告を見ているだけでは決して分からない。レビューなどで現物をチェックしてこそ見えてくるリスクだ。
「一年の計は、元旦にあり」──この1年を幸せに過ごせるように、リスクについて考えてほしい。
システム構築は、認識に始まり認識に終わる。いろいろな段階で、“認識を誤る”“勘違いする”というリスクがある。「目的を誤認する」「要件を誤認する」「要求事項を誤認する」「伝える相手を誤認する」「聞く相手を誤認する」「進ちょく状況を誤認する」「問題の本質を誤認する」。これはシステム構築が、人の認識のうえに成り立つものであり、「形」を成さないという本質的な宿命を負っていることによる。
そもそもの目的を誤認しているのでは、それ以降の認識が正しいか否かを議論しても意味がない。まさかと思われるような目的の誤認がシステム構築では起こり得る。例えば、顧客管理システムといっても、その思い描く目的は十人十色。誰もが認識できるような「形」として表現することはできない。
そこで、早期に誤認を発見し見当違いのシステムが構築されるのを防ぐには、誰もが分かる地図を用意することと、適切なチェックポイントでそれまでに通過した道と進行方向が正しいことを確認しながら進むしかない。地図としては戦略マップや経営戦略・業務モデルなどを使い、関係者全員が5W2Hに沿って情報の流れを認識でき、シンプルな表記法であることがミソだ。
また、誤認を起こさないためには、『聞き間違いは、いう側の恥』ということわざを関係者全員が肝に銘じておくことも重要だ。特に、システム構築を依頼した業者の知識を当てにして、「暗黙の了解」や「一を聞いて十を知る」のようなスタイルでは、誤認のリスクが高くなる。結局、思ってもいないようなシステムが構築されてしまい痛い目に遭う。
もし、誤認を発見したら、徹底的に議論する。なぜ? を5回繰り返して、問題の本質をえぐり出す。一見遠回りで時間がかかるようだが、関係者全員のベクトルが一致すれば、チームは自然と良い方向へ向かう。
逆に、目先のコスト・時間を惜しんで誤認を放置すれば、後になればなるほど、その悪影響は計り知れないものとなって襲い掛かってくる。世のシステム構築の70%が、目的や要件の誤認が主因でコスト2倍、期間2倍の失敗に終わっている。システム構築において、認識的リスクは、危険度最大級のリスクだ。
システム構築において認識的リスクはこのように重要・重大だが、正しく認識するのも誤認するのもすべては「人」だ。コンピュータは正直なので、決して誤認しない。コンピュータに誤認させているのも、やはり「人」が誤認し、誤認に基づいて指示をしているからにほかならない。システム構築が、極めて労働集約的な作業である以上「人」は、大きなリスク要因である。
人的リスクには、質的なリスクと量的なリスクがある。さらに、質的リスクには、技術的能力と人間性(コミュニケーション能力や行動力など)に分かれる。技術的能力と人間性では、人間性のリスクがより影響が大きい。特に、問題が起きたときに人間性が弱いと、技術だけをよりどころに解決しようとする傾向があり、これは非常に危険である。むしろ、コミュニケーションの問題としてとらえ解決を図れる人の方が、たとえ技術的能力が不十分であってもリスクは低い。技術的能力は他人が補強することもできるが、人間性は簡単に強化することが困難だ。
とはいえ技術的能力も、人によっては生産性が10倍以上も差があり、コスト・納期に対する影響は小さいとはいえない。ソフトウェア工学なるものも存在するものの、ソフトウェア開発の現場はいまだに金型もプレス機械も使用せずに自動車を造っているような超属人的職人主義の世界だ。部品を組み合わせてシステムを構築する方法も考案されているが、部品を作るのも職人芸、部品を組み合わせるのも職人芸である。開発作業のすべてがエンジニアの認識の上に成り立っており、個人の認識的リスクにさらされているのである。そのため、認識が異なるとうまくいかない。
もちろん優秀な“職人”はいるが、そうした技術的能力の高い作業者を確保するのは、なかなか難しい。そこで、平均的な作業者の生産性をできるだけ高く維持する方法を考えることになるが、それにはモチベーションや士気などのメンタルな部分や、適切なツールの使用、方法論や標準の整備などが必要になる。
ここでの人的リスクは、リーダーの人間性である。チームのモチベーションや士気は、リーダー次第といっても過言ではない。
技術的能力のリスクに伴い発生するのが、量的なリスクだ。平均的な能力の作業者集団に作業の遅れが生じると量的なリスクとなって表れてくる。能力の高い作業者を投入できれば、量的リスクを回避することもできるが、実際には難しい。システム構築で厄介なところは、量的なリスクを量的に解決することが簡単ではないという点だ。やはり、システム構築が、人の認識の上に成り立つものであるが故に、追加投入された作業者に目的や要件を正しく認識させることに時間がかかる。これをいい加減にして作業をさせると、今度は認識的リスクが大きくなり、誤認による欠陥が多発してさらに作業が遅れるという悪循環に陥る危険がある。
Copyright © ITmedia, Inc. All Rights Reserved.