ソフトウェア開発のいろいろ

ソフトウェア開発のいろいろなこと一歩引いた位置から

No.124 フェイルオーバー起動せず

 

 東証のトラブルの記者会見の対応は見事だったようで、日本中の発注者がこのレベルであれば、日本がIT後進国となることもなかったと思われるほどの内容でした。

 残念ながら、今の日本にはこのレベルの発注者はいないので、受注先の責任という言葉を吐いて、責任逃れする(と思われる)発注者が多いのではないかと思ってしまいます。

 さて今回のシステムのトラブルはフェイルオーバーが何かの理由で(設定のミスとも言われていますが・・・)動かなかったため、システムが止まりました。

 単独のシステムではMTBFを無限大にすることはできないので、デュプレックスシステム(で、あっていたと思います)で何かあったときは運用を肩代わりする代行システム(確か完全待機型だったかな)が動いて運用を続ける訳ですが、何かあって動かなかったということになりますでしょうか。

 トラブルが起きることは避けられないことを予見していて、その際にどうするかも決まっていて、その備えもしていて、それでもこの事態は起きたわけです。

 我々は人はミスをするという前提から逃れられません。そのミスの範囲を限定してしまうことも愚かな行為です。

 エンジニアである限り、人のミスとの戦いは避けられません。

 どんなバグでも何かしらのヒューマンエラーが介在して作りこまれます。
 それを人がチェックするのでは、そこにも人のミスが入り込むので、安心できません。

 どうするべきかを考えていくことは必要なリスク管理です。
 受容に至る前に、回避、転嫁、軽減の3ステップがあります。あきらめるのは最後です。エンジニアである限り、あがき続けないとなりません。

 それは決して簡単な道ではないのですが、そこを進むことができるものまた、我々だけなのです。

 挑み続けるすべての人にエールを送ります。
 共に頑張りましょう。