たまにはプログラムとバグの話(その4)

で、記者発表でこんな事を軽々しく言っちゃって良いの?とちょっと怖かったのが、ここ

「バグを減らす努力をすると同時に、障害が発生してからすぐに対応する体制作りも必要」と力説した。「現在はシステム障害が起きたら原因が判明するまでシステムを停止する決まりになっている。今後は、障害の兆候があったら、その部分除去して取引を続けられるようにしなくてはいけない」という。

東証のシステム障害、設定ミスをテストでも見抜けず

バグを減らす努力も、障害が発生してからすぐに対応する体制作りも重要です。これは間違いがありません。でも、これは根性論の類で、限界があるという事は上で書いたとおりです。

そして、何よりも怖いのが、いざという時に全部停止しなくて済む体制作りというのが、システムの修正で実現する内容であれば、それは新しいトラブルの種をプログラム中に蒔く作業でもあります。この問題は仕様を策定するときの根幹に関わる部分でして、どの単位でシステム停止の連鎖を切るのか決めたら、その間でのデータの連携をやめなければなりません。この変更により、このシステム全体で出来る事・できない事が変わってしまうということです。現に稼働中のシステムに対してこんな問題を今更議論しても始まらないという事です。本気でやったら、それこそプログラム全部チェックしなければなりませんし、力技でチェックして修正箇所を特定したとしても、あまりにも膨大な量になってしまいパッチレベルで対処するのは現実的ではないという事にもなりかねません。そして、それらを全てやっても、実際に部分的にダウンした時に、本当に残りが動くのか良くわからんという事になります。

もう1点は、ダウン部分を除去して残りを稼動させた時、業務的にどういう影響を及ぼすのか良くわからない点です。独立した簡単な業務であれば、そんな心配する必要は無いのですが、今回のように「金融派生商品」市場と「現物」市場の場合、両者の市場は金融機関の中でつながっているので、どちらか一方が停止してどちらか一方が稼動するという事が、そもそもどういう問題を生じるのか。ちょっと想像が難しいのではないかという事です。この辺上手く説明できませんが、2つの市場はお互いにお互いの動向のフィードバックを受ける事で安定している面もあります。そのため、どちらか一方では成り立たないか、ボラティリティーが極端に増す可能性があるということです。

この辺、現実にどうなのかわかりませんが、金融のプロの方ならある程度想定できる問題もあるのではないでしょうか。そして「より大きな問題を避けるために、市場を全部閉鎖する」対応が必要なケースがあり得るのではないかと想像した次第です。これを、システムの都合なんかじゃなくて、金融市場を運営している主体として、しっかりと事前に想定しておく事が、危機管理なのではないかと思います。

世の中、「システムの事」だと思考停止しちゃう人が本当に多いのですよ。そして、何が問題なのか良くわかっていない偉い人が軽々しくカッコウつけて「対応策はこれこれ!」と発言した瞬間に、現場で「無理無理!絶対無理!」と叫んでいる人もきっといるであろう事も良くある話なのであります。

← 「へぇ」と思ったらクリックを!