こんばんは
今日は障害や不具合が起きた時に、その対応で一番大切なことが何かを説明します。
何が大切だと思いますか?
実は一番大切なことは、
「不具合を再現すること」
これだけです。
これができたなら、不具合の50%は解決したようなものです。
これができなければ不具合は100%解決できません。
時には不具合の再現は簡単なことがあります。
でも時には不具合の再現ができないことがあります。
そういう時にはどうしたらいいのでしょうか?
不具合が発生した条件になるべく状態を近づけることです。
データベースのコピーがもしできるなら、社内や、お客様の許可を取って、開発環境へコピーしましょう。
どのユーザが?
ブラウザは何?ブラウザのバージョンは?
WINDOWS? Mac? スマフォ?
時間は?国は?
どういう手順で、不具合が発生した?
不具合は何度も発生している?
聞けるものは全て聞きましょう。
そしてなるべく、その環境に近づけて、再現するのです。
聞けなかった条件の部分は自分の頭を働かせて、シナリオを作ります。
今回起きた不具合は、こういう条件で、ああいう条件で、どういう条件で起こりえるだろうか?
あらゆるシナリオを組み立てて、不具合を発生させるのです。
不具合が確実に発生できたなら、あとは不具合を解消するだけです。
不具合の解消の仕方はまた別の機会で説明します。
この不具合の解消したならば、その対応をした時と、しなかった時で
不具合が発生する、発生しないことの両方を確かめましょう。
それでこそ初めて、今回の対応が不具合を解消したことが証明されるのです。
これは、不具合を再現でき、発生条件を特定できた時の話です。
もし、不具合を再現できなかったら?どうしましょう?
ここは交渉が必要になってきます。
まず許されるなら、次に不具合が発生するまで待ってもらいましょう。
そして、次に不具合が発生した時に、どういった条件で発生したかを特定できるための準備をしましょう。
やれることは何個かあります。
不具合が怪しそうな、ところにログを埋める。
不具合が発生した時に、すぐに調査できる体制を整える。
これは社内の人や、お客様にも手伝ってもらえるなら、手伝ってもらいましょう。
ここで不具合が特定できず、原因不明だった時に何が大事かを教えましょう。
進んでいる感を出すことです。
不具合が特定できず、行き詰っているところを見せてはいけません。
何か時間の経過とともに、次のステップへ進んでいる感を見せることです。
次に不具合が起きた時に、不具合の特定に何か繋がる、ヒントが出ていくるかもしれない。
もし出てこなくても、不具合の発生原因を狭めることができる。
という風に思わせることです。
実際そうであればなお、いいです。
行き詰っていることを見透かされないようにすることですし、
そうであってはいけません。
1ミリでもいいので、少しずつ不具合の原因を追い詰めていくのです。
ちょっとずつ不具合の特定の話になってきましたね。
これは次回にお話をします。
今回は、不具合発生時に一番大切なことを伝えました。
不具合を再現する!!!
これが一発でできる?
もしそうだとしたら、ハッピーですし、そうでなければあなたはすごい能力を持っているかもしれません。
ではでは、またー