問題先送りツールは完璧に作るな

昔客先で、開発屋さんが作った「客にそんな運用させられるかハゲ」的な運用マニュアルを見た。私はその客先で発生していた超トラブル*1の、対応のための応援に行っていた。まさかそんな運用をSEが了承しているとは露知らず、マニュアルを渡されて客先に説明に行かされることになった。
仕様書を見てあぜんとした。具体的な仕様はこうだ。
IBMフォーマットのFDをユーティリティソフト*2で読み込んで、そのデータを任意のディレクトリに保存し、保存したファイルをFFFTPで特定サーバの特定ディレクトリを指定して送信する」
この作業を情報システム部の人にやってもらうなら、まだ話はわかるのだが、やってもらうのはパソコンのパの字もしらないような、50代の現場叩き上げの方だった。
「任意の」とか「指定して」とかいう言葉がある時点で、運用を始めれば、ちがうサーバに送っちゃったとか、取り込みに失敗したことに気付かずに昨日のファイルを送ったとか、間違って送ったまま気付かずにFD内データを上書きしちゃったとか、そういったトラブルが発生することが目に見えている。
これ以上トラブルを増やしたくないので、SEに相談し、FDデータ取込からFTP送信まで、一括で行うためのバッチを私が急遽作りこんで、その使用方法を手順書として客先に渡して、なんとか事なきを得た。
まあ、これが問題の先送りであることはわかっていたので、SEに「このバッチで問題が起こっても知らないよ」「できるだけ早くこのバッチの代替手段をつくってね」といって、応援は終わった。それが2004年の3月のことだ。
そして2011年、なんとそのバッチはまだ客先で生き残っており、現役で全く問題なく動作していた。さすがに、バッチを動かすためのPCは寿命を迎えており、交換となった。しかし、2011年はFDの死んだ年でもある。当然FDD搭載のPCなんてものはなくなっており、USB-FDDがわずかながら市場に残っているという状態であった。それならということでUSB-FDDで試したところ、USB-FDDをユーティリティが認識してくれない。何とかしてくれと、SEに泣きつかれたがどうすることもできない。
なぜ問題先送りツールが7年間も稼働していたのかといえば、このツールが全く不便さを感じさせないものであったからであろう。FD入れてバッチ実行でほぼ確実に終了。取り込み時やFTP送信で問題があれば警告を出してくれる。とりこんだデータはバックアップもしてくれる。バックアップは2カ月で消してくれる。至れり尽くせりだ。
ということで、ここから得た教訓は「問題先送りツールをつくる場合は、不便さを残しておけ」ということだ。たとえば、無駄に「OK/CANCEL」ボタンが大量に出る(しかもCANCELがデフォルト)とか、ツールの実行工程を複数に分けるとか、とにかく使う人にめんどくささを感じてもらわないと、問題先送りツールは生き残り続けて、思わぬタイミングで解決不能な問題を引き起こすということだ。
その後どうなったのか知らないが、おそらくFDとりこみのユーティリティの最新版を高いお金を出して購入したんじゃないだろうか。

*1:この月の残業時間は180時間

*2:文字コード変換もやってくれる