インベーダーゲームでもどうですか?
Archive for 7月, 2008
ここを見に来る人には、俺の後輩が少なからずいる。ちょっと思いだしたことがあるので、タイトルについて語りたい。というのも、トラブル対応の力が、最近のエンジニアは落ちている気がするからだ。虎の巻風に書く。
1.まず謝る
ここは日本だ。責任論の前にお客のトランザクションが止まっているならば、謝る。仮にお客が100%悪くても、謝って同じ船に乗り、トラブルの解決に向かう。費用の話は後ですること。
2.現象をタイムテーブルにまとめる
みんなが見えるところに、時系列で事実を書き、共通理解とすること。事実がぶれると見当はずれの対応をあちこちで取り始めて収束に向かわない。
3.回復手順書があるならば、まずやってみる
ヘンにトラブルの場所を、その場の勘で推測して回復処置をやらないこと。手順書を作った時は冷静な頭で時間をかけて作ったはずだ。まず、その手順を行うこと。勘で行うと、ますます傷口を広げる可能性のほうが高い。
4.パワーオンリセットから可能なら、やってみる
一見、ソフトウェアのトラブルに見えてもなんでも、電源を落とし、そこから回復処理をするということが最も回復の可能性が高い。
5.エラーメッセージを分担して調査する
ほとんどのエラーメッセージは最上位のプログラム(アプリケーション)から遡っていくことになろう。時間をもとに各コンポーネントの担当者が調査するしかない。金融機関ではそのために、トラブルが起きると全員がとにかく集合する。
6.原因がわかったら、とにかく今、治せることをする
抜本的対応は時間が絶対にかかる。代替手段で逃げられるだけ逃げ、トランザクションの続行を目指す。特異なデータゆえうまくいかないのであれば、手作業対応してでもシステムをへんにいじらない。
7.トラブルの原因報告と再発防止対応策を提出する
ここからは、ちょっと時間がかかる時の対応である。きちんとしたお客さんでは、この二点の報告書が出なければトラブル対応は終わったといわない。放置するベンダーが多いことに驚く。
お客の運用とは再発防止策の集合体だといっても過言ではないのに。
8.原因調査が長引いている時は定期的に報告
「進捗がないから報告しない」はダメ。開発元でプログラムの調査をしているならいるで、引き続き行っている、ということも立派な報告。
もし、調査時間が必要な場合はウソをつかずにどれくらい必要かを伝えること。一週間かかるところを「一週間です」というとお客は感情的に怒るかも知れない。しかし、一度怒られるだけですむ。「あと二日」「あと二日」「あと二日」と3回ウソをついてしまう結果になったら、お客の信頼を失う。
9.再発防止策が実効しているか定期的に調査
普段出入りしているお客に対して、そこまでやってこそベンダー
7、8、9の中で初めて誰の責任かの議論と、費用が発生したのであれば、その請求が行われる。
この項目を基本にトラブルの対応をすれば、取り返しのつかないことにはならないはずだ。銀行の勘定系のトラブルを切り抜けてきた私の経験則。
学生のころ以来で、改めて読んでみると「どうして早く読み返さなかったのかな」と思う。孫子とか韓非子とかマキャベリって、読んだ人の知性に応じて得るものがある本だと思う。
孫子の中のたとえ話で日清戦争の話が出ていた。ロシアと戦い辛勝した日本は国民が沸き返っている中、あえて終戦交渉に入った。為政者達はこれ以上の戦争をすると、泥沼化し負けることを知っていた。思うに内戦をし明治時代を作った人々だから戦争に勝つことも負けることも知っていたのではないだろうか。
その次の世代は第二次世界大戦でちょっと勝つと調子に乗ってどこまでも進み、敗戦。
なるほど。
今の日本も経済戦争という戦争で、敗戦に次ぐ敗戦をしてると思う。外国人を受け入れないというのも大きな理由だと思うし、なにより英語を話すということと欧米を手本にする、ってことは本質的に違う。
と、話が飛ぶけど、日本の英語教育が日本をダメにしてるひとつの原因だ、とは強く思う。次の質問に答えてみてください。
- あなた英語で白人と話すとき、ものすごい抵抗ないですか?
- 英語を間違えたらどうしようと思うあまり、アメリカ人のいうことはなんでも「YES!」と思いこんでいませんか?
- その心を日本国民のほぼ全員がもっている、ってことはおかしいと思いませんか?
- アメリカ人とイギリス人の話す英語だけが正しいと思っていませんか?
- どこでそんな心を植えつけられたかというと、中学、高校の英語教育じゃないですか?
己の弱さを克服できなけりゃ、孫子を読んでもその教えを守れない。
いつもは冷たい見方をしてしまうUNIQLOだけど、こればかりはすごいと思う。ほとんど言葉が使われていないので、世界中にわかる。すでに1億回以上見られているというBLOGパーツ。ダンスは100種類以上。「なんだろ?」と思わせるところから始める、ってビジネスの現場ではトリッキーだと思われ勝ちだけど、人を相手にする以上、王道なんだよなぁ。
気になるテクノロジーはフラッシュ。フラッシュはこれだけ多用されてるのに、いまいちIT業界では知名度がないように感じるけど。。。。なぜだろ?
入りました。
http://www.team-6.jp/
- 温度調節で減らそう
- 水道の使い方で減らそう
- 自動車の使い方で減らそう
- 商品の選び方で減らそう
- 買い物とごみで減らそう
- 電気の使い方で減らそう
を推進するんです。入るとき、どれをやるか選べるので1はパスした。夏に28度じゃ死んでしまう?。ゴメン。
他はやるぞー。みなさんも参加したらいかがでしょう?電気のスイッチ消したら、「お、チームに貢献したぜ!」と思えますからね。こういう緩い団体は参加してると楽しいですよ。
やっとメルマガも終わりそうでうれしい。
こんなサービスがいっぱい出てるのね。
http://www.mailpia.jp/service/personal/top.html
どういうことかというと、ブログを更新する度に飛ぶ、RSSをメールとして届けてくれるサービス。これでブログ記事をメルマガのように読めるわけですよ。
広告の量が減ってくれてるといいな。どこぞのメルマガはメルマガ内にも大量に広告。週一度、広告メルマガを送りつけてくるので、一切、取らないようにしてる。殿堂入り?そんなことが永遠に続くと安心してるようじゃーねぇ。。。
とある理由で今後の日本のIT業界ってどうなるかな?と考えた。
勝手なことをいってみる。
ここ10年以上、IT業界は人が増えすぎた、というのが長年いる俺の実感。
3Kとかいわれるくらいにまでなった。3、4年前から業界の人間は減り始めた。これからも人は減り続ける。理由は以下のとおり。
1. ローテクでは変化に追いつけなくなった
VB+ODBCって組み合わせって汎用機でPL/IとかCOBOLしか知りませんと、あまり変わらない。プログラムを書く人は仕様だけを気にすればいい。どんなクソプログラムでも機能すればOK。
だから、あまり知識のない人間でも書くことができた。人が増えた。
しかし、今時、中規模以上になるとVB+ODBCで書く奴はさすがにいない。Windowsサーバーを並べるより、Linuxを並べることが多いし、JavaやPHPで開発することが多い。この場合、サブシステムがなにかでひっぱるライブラリーが違うから、どうしても気にしなければ書けない。オブジェクト指向で設計されてると、どうしていいかリーダーがわからない。
テスト環境のサブシステムも自分のデスクトップに作っていくのが今時のプログラマーだ。それゆえ、できる人間は少ない。今はオフショアだなんだといわれているが、知識の豊かなプログラマーは必ず復権すると思う。
2. インフラも難しくなった
現場を知らないお客やマネージャにいいたい。RAID構成以降、サーバーの設定は飛躍的に難しくなっている。よくここに書くようにブレードサーバーの設定は素人にはできない。しかも失敗すると大容量のため、めちゃくちゃ時間がかかる。コンソールの集約、ボックス内に存在するLAN Switch, FC Switch、RAID設定などなど。あなたは「箱から出してラックに組み付けて、ボード挿したら終わりだろ」と思ってないか。
正直、多くのハードウェア設置業者が技術者不足で悩んでいる。これもそのうち、きちんと設置ができる賢いエンジニアが復権すると思われる。プログラマーより早く復権するだろう。オフショアが効かないからね。
3. 開発が大幅に減る
理由は2つ。ひとつは定常的なアプリケーションでパッケージを使わないのは、すでにユーザーの怠慢といわれるくらいの時代になった。経営者にウソの費用対効果を説明して、社員が使いやすいものを作るという時代は終わった。安くパッケージを入れて、文句をいう社員をクビにしたほうが維持費は安い。
一方、すでにIT部門のコストは経営会議にかかるほど膨れ上がっている。妥当性が「そもそも論から」問われている。IT部門を見る目は昔と反対にシビアなのだ。
もうひとつはsaas。セールスフォースがいい例だが、saasとはIT部門を必要としない。こういうと、IT部門の人間は「それはごく一部だ」という。そうじゃない。逆になると思う。パッケージを使うこととsaasを使うことは現場の本来の事業をしているエンドユーザーからすれば同じだ。今までIT部門に頼んでやってくれなかった、めちゃくちゃに費用がかかると脅された、彼ら彼女らは覚えている。それを信じられないくらい安く、すぐにやってくれるなら、身銭をきってでも、そちらを使う。しかもsaasの会社のスタッフはその業務だけにフォーカスしたプロだ。手ぶらで「なにを作りましょうか?」とはレベルが違う。
IT部門が必要とされるのは社としての基幹業務とパソコンやネットワークといったインフラの管理が主となると思う。
どちらにしても、開発案件、規模は減る。しかも高度化する。不勉強な人間には勤まらない。
4. 自分たちがなにしてるか、わかってないんじゃないだろうか
IT業界はゼネコン、と揶揄されて久しい。もともとIT(情報技術)を分かりやすくお客さんに展開することが付加価値であるビジネスモデルなのに、いまやお客もよく知っている技術を展開しようとする。
だから値引き合戦になって当然じゃないだろうか。営業が出来る手段がそれしかないからだ。新しい知恵を出すのはエンジニアの仕事だから。
ところが、この業界は不思議なほど営業もエンジニアのマネージャも勉強しない。なんとなく日々のオペレーションに流されていく。結果、ある日突然、お客の発注が途絶える。
昔、ほら吹きコンサルティング会社が「お客に最適なシステムを提案する」と言い切っていた。実態はwindows小僧の集団だったから、windowsのよさが最適だといえばよかった。しかし、このセリフ(マーケティング)を信じたお客がいかに多かったことか。客の心の琴線に触れたセリフだったのだ。この会社は、今も存続していられるくらいの顧客リストを掴んだ。
結論として、高度な専門技術をもった人たちが残り、ローテクは消え、利益率の低い大量開発は消え、ひとりあたりの生産性は高くなり、業界は適正規模になると思っている。
ただ、一言いっとくが、「IT業界が成熟産業」とはまったく思わない。そういう奴はITがディスプレイとマウスとキーボードだと思いこんでる素人だ。
アドレスバーに以下をコピペして実行すると、
javascript:document.body.contentEditable=’true’; document.designMode=’on’; void 0
どんな画面も編集可能になります。
もっとも、、、、セーブできないけど。

