出来るはずだからやれという体育会系気質がシステム開発をぶち壊す

例の統合についての記事が追記されてた。

記述が十分ではなく誤解を招き申し訳ありません。そもそも私が意図していたのは、トラブルが人命に関わるレベルの世界(医療、鉄道・航空管制、自動車制御系など)ではバグの発生を極限にまで減らすことに相当努力しているということは、こういった巨大システム統合においてもなし得る事ができるのではないか、という点でした。

障害発生が「当たり前」という銀行システム統合、本当にそれでいいの?:情報インフラ24時 眠らないシステム:オルタナティブ・ブログ

行員にいびられながら必死にテストをこなしてきた開発要員涙目wこんなこと言われたら一斉にメンヘラーになってしまいそうですね。
現在の銀行システムのように、行内でも多数のシステムが組み合わさっているだけでなく、多くの対外システムも含めた膨大な接続バリエーションがある巨大システムでは、鉄道や航空管制、ましてや医療機器のように、ある程度閉じたシステムとは大きく異なった難しさがあります。
そして、このような「相当努力すればバグを極限まで減らせる」という認識の下、(本質的には)無駄なテストを数多くこなすことになり、肝心の部分に時間と頭を裂く余力はなくなっていきます。
ましてやシステム統合なんて後ろ向きのシステム開発なんですよね。つまり、既存のシステムを何年も掛けてただ繋ぐだけ。本当は、新システムを作りたい。
だから、この記事で意図している目的そのものが現場の感覚からするとナンセンスで、これだけの批判が来るのです。銀行TOPとか金融庁はこう考えているかも知れませんし、コンサルとしてはターゲットはそこなんでしょうから、立場的には間違っていませんが、こういった意見が更なるシステム障害を生む土壌を育むわけですね。
大体、東京三菱なんて障害出すとベンダーが怒られるどころか「このロジックを作った奴は誰だ!」ってやられるらしいですよ。で、偉い人の前で小一時間問い詰められるという…。犯人探しがシステム開発において間違った責任の取らせ方であり間違ったプロジェクト運営方法であることなんてもうだいぶ前から常識だと思うのですが、未だに旧態依然としている。この話を聞いたのは数年前だから変わってるかもしれませんが。
もちろん、極限までバグを減らそうとするのは良いことだと思いますし、予算と時間があるならばテストをきちんと行うのも大切です。ただ、ミッションクリティカルな部分ならともかく、膨大なバリエーションを要求する対外接続の部分は限界があります。どうしても複数ベンダーになりがち(これは内も外もね)なこともあってテスト内容も統一し切れません。そこにいくら金を使うかよりもどう運用するかのプランの方が大事です。

もちろんバグをゼロにすることが現実的な選択肢ではないことも理解していますし、そのためにBCPが重要であることも強く認識しています。だから、三菱東京UFJさんの場合、どれだけしっかりとしたBCPが立てられていたか、これが重要だと考えています。

うん、じゃあプロジェクトメンバーのスキル偏差は気にしなくて良いですね。だから、じゃなくて、前の論旨とは関係ない別の問題ですね。

今回のトラブルは対外インターフェースにおける疎通確認テストに含まれる内容だと思いますが、インターフェースの仕様が誤っていたために起きた事件を想定したBCPが非常に事後対応的だったので、もう少し事前にリスクを世間(一般消費者)に示すアプローチをとった方が良かったのではないかと思っておりました。
例えば、メガバンクのシステム統合規模であれば、全国の金融機関に接続失敗時のオペレーションを何パターンか伝えておき、それを店頭や各種提携コンビニ、駅などに周知させるなど、それだけでも世間から見た障害時の影響というのは変わってくるのではないでしょうか。

疎通確認テストをそんなレベルでやるってことはないと思うんだけど。あくまで業務バリエーションじゃないでしょうか。あと、世間に対して「障害が起きるかも知れないので注意してね」というアナウンスをするというのは金融庁の方針に反していると言うか「障害が起きることを想定するならリリースを認めない!」って言われてしまって終わりでしょう。こういう政治向きも含めてシステムの効率化の足を引っ張っていますが、その根底にはやはり「頑張れば障害はゼロに出来る」という発想があるのです。

正直な感想を言うと、今回は「変更したところに対するテストが不十分」というちょっとお粗末な問題だと思います。だから、これをどうすれば防げたのか、という議論は十分にする価値のあるものだと思います。だからといって、それをもって「極限までバグを減らすためには」という議論にできるとは思えません。後でだったら何でも言えるんですけどね。本当にクリティカルな部分では「障害が起こっても上手くバックアップすればよい」という論調にならない限り、第二第三の障害は避けられないように思います。