インシデント対応時の役割分担

前置き

前職で「インシデント等の発生時にリアルタイムに対応していくためのプラクティス」みたいなものを整えていた時期がある。
その時の話を思い出したので、先日、文章を練って今の会社にも展開してみた。
その中で、「(入門監視で触れられているような)対応をすすめる時の役割」というような話に触れている。

入門 監視 ―モダンなモニタリングのためのデザインパターン

入門 監視 ―モダンなモニタリングのためのデザインパターン

  • 作者:Mike Julian
  • 発売日: 2019/01/17
  • メディア: 単行本(ソフトカバー)

本の表現を使うと、「現場指揮官」「スクライブ」「コミュニケーション調整役」「SME」になるか。
個人的には、これらは馴染みのない言葉でもあったので、「現場監督」「書記」「ステークホルダ調整」「対応者」「調査者」というような表現を好んで使う*1

書籍中にも書いてあるとおり、 (複数の役割を)兼務すべきでない というのが肝になると考えている。
基本的には「うまくコミュニケーションが取れていれば、抜け漏れなく効率的な対応が進められる」ものかもしれない。だが、インシデント対応というのは突発的で無慈悲なものだ。事前のルール説明もなければ、ヨーイドン!で始まるものでもない。
自発的に集まったメンバーが、「たまたまソコに居合わせたから」という理由で巻き込まれ、対応を進めていくことも多いと思う。合理的な基準があって選定された、通常の「チーム」とは違うのだ。また、特に深夜帯など、対応時間の長期化などが起こるにつれて途中離脱するようなメンバーが居てもやむを得ない。
そうして、「インシデント時」のコミュニケーションパスの築き方は特殊になっていく。

言ってしまえば、このインシデント対応なるもの、「何が起きているか」「何をすれば良いか」を整理し「今やるべきこと」を共通認識とした上でコトにあたっていくゲームに思える。通常の開発サイクルと対比すると、「戦略」「兵站」 を起点としていないところに差異があるのではないか。
そのバラつきが、子供のサッカーの試合のような「皆がボールに群がっていく」状態を招く。疲弊が増し、解決が遠のいてしまう。
それを防ぐためは?まず、各々が「果たすべき役割」を念頭に入れる。その上で、必要な役割が満たされるよう全体としてのバランスを取る。そういう振る舞いができれば、「チーム」として組織的な動きが取りやすくなる。

その中でも「統制」を行う役割である「現場監督」が成否の鍵を握ると思っている。
「今わかっていること」を基にして、「やるべきこと」「それに取り組んでいる人」を明確にしていくことが「現場監督」の仕事だ。
体感として、この現場監督、4人以上*2で同時にコトに当たる際には急激に重要性が増す役割だと思う。とりわけ、対応者や調査者が「何をすべきかを明確にして」「自分の仕事に集中する」ための土台を作ってあげることで、スピードと質が安定するようにも思う。その逆は、「誰かがやっていると思って誰一人として修正パッチを書いていなかった」「限られた人数の内、数名が同じような調査を進めるべくして似通ったデータを出していた」という事態だ。これは単純に作業効率が悪いだけでなく、手を動かした人も疲弊するのでよろしくない。
そういうわけで、「自分は手を出さずに、やるべきことを整理して、ただひたすら他の人にタスクを依頼する人」の存在が大事になる。*3

ただ、今までそうしていなかった現場で、急に「まず役割を決めてコトに当たるようにしましょう」という流れを作っていくのは難しいのかもな、という感じもしている。
急に「ぼくがかんがえたさいきょうのさくせん」を提案した所で、まず多くの人にとって「理解してみよう」というところにまで行かないだろう。彼らは「今でも十分できているし、自分には関係のない話・面倒くさい決まり事ができるだけ」と考え、提案やその魅力に見向きもしれないかもしれない。(もし「興味を持って読んでくれる」なら、その時点で良いチームであるように思う。)
そういう状況を打破していく必要がある。課題としての認識を揃えたい。が、他人のマインドセットを変えるのは難易度が高い。「今でも出来てるし困ってないよ」と思っている人に「いや全然足りてないよ」と訴えるのは大変だ。

別のアプローチを考えてみる。
なぜ「明確な役割分担」が必要なのだろう?抽象化して言えば、中身や動き方がどうであれ「俯瞰して統率のとれた動きが取れるようになる」という状況が生み出せれば良い。すなわち、そのポイントさえ抑えられれば、「人に対して1:1で役割を設ける」こと自体は重要ではないのかもしれない*4。誰か特定の「現場監督の人」がいなくても、「現場を俯瞰して見ようとする意識」が、そこにいる人達の中にあれば状況が改善できる。
これを、「個々人がバラバラに動きながら協調できるようになるか」という方向性で、何か良い実践方法はないのだろうか・・・?
そんな事をふと思ったので、考えてみようかなぁというのが本記事の目的です。

うまくやるコツ

ここからが本題。
「1人1人が気をつけていれば複数人が協働しやすくなるかも」というポイント、ひいては「最終的に目指すべき「統率の取れた行動」のもたらす効果を体感しやすくなるかも」という行動のヒント的なものを考えてみます。

「これをやります」を明言してから行動をする

時間も人でも切迫している中で「作業が被る」のは、勿体ないなぁ〜と。あと、単純に「うわ〜〜それ今、俺もやってた〜〜」ってなった時に疲弊感が出ますよね。
「現場監督が居ない」という状態、「各人が自律的に動いている」と言い換えれば聞こえは良いのですが「個々人がバラバラに見たい情報を見ながら別々に判断している」とも言えます。
そうした中で事故を防ぐには、「いかに情報を可視化して判断材料を平等に確保するか」というのが大事になりそうです。

この「○○します」宣言があると、「どの作業が進行していて(=自分や他人がやらなくて良くて)」「誰に聞けば情報がとれて」「誰がbusyになっていて」という情報が揃う事になります。
たった一言で結構な密度のある判断材料です。
また、積極的に「自分がどうにかしないと」という気持ちで動いている人たちなので、「○○さんが□□をやってくれている」という状況を見て取れば、恐らく「次に何をすればいいかな」を考えて穴を埋めに行くことも出来るのではないでしょうか。

そうやって、「○○やりますね!」「じゃあ僕は☓☓やります!」なんてコミュニケーションが連鎖していくと動きやすいし、「ちゃんとコトが進んでいそうだな」という安心感にもつながったいrと、雰囲気が良くなると思います。

「今どうなっているかを整理してみましょう」と(定期的に)声をかける

「被り」については、これで対応できました。次は「漏れ」にも対応する必要があります。
それに効くのが「今わかっていること・完了していること・わからないこと・行う必要があること」を整理して、現状と方向性を明確にするという行動です。
(よくある就活のワークショップのような)一般的な議論と同じようなイメージを持ってください、つまり「ちょっと場が荒れてきたので一旦話を整理しませんか?」というアレです。

インシデント対応は、刻一刻と状況が進展していくものです。それは「調査や対応ができたから」という要因もあれば、「更に状況が悪化したから」「別の問題が併発したから」という要因もあります。また、「とりあえず止血するための一次対応」と「しっかり根本的に問題を取り除く恒久対応」を区別して考える必要もあります。
すなわち、「足場が安定しない上に、ゴールが2つある」みたいなもんです。*5

ということで、「自律的に動いている個々人」に対して、鳥の目を提供しましょう。
端的に言えば「アレどうなったんだっけ」と「ソレもやらないとだね」という意識が揃えばOKです。また、並べてみることで見落としにも気づきやすくなるはず、という期待もあります。

## 分かっていること
- hogeテーブルにおかしなnullデータが作られている
- fuga APIに機械的なアクセスがきており不完全なリクエストになっているのが原因

## やること・やったこと 
- [x] hoge更新バッチ止める @aaaさん
- [x] fugaへのbotアクセスをBANする @aaaさん
- [ ] hogeテーブルのnullデータのせいで他に変なデータとか出来てないか調べる @bbbさん
- [ ] ↑おわったらデータ復旧できるか検討 @誰か
- [x] 緊急メンテモードにする @cccさん
- [ ] fuga API直す(request validation) @誰か

こんな感じでしょうか・・・
必要に応じて「やってみたがハズレだった」というアクションについても、情報の解像度を高めるために併記しても良いと思います。
また、Slack上で展開している場合には、投稿をpinしてスレッドを活用していくと情報の集積に便利です。

(敢えて)他の人に作業を依頼してみる

第一義として「ボールが転がって誰も拾わないくらいなら手が空いていそうな人にやってもらお」なのですが、あえて「声の掛け合い」を行うことにはそれ以上の意味があるのかな〜と思っています。

  • 作業内容・意義のWチェックになる
    • 依頼者(自分)と被依頼者が、どちらも同じ事に納得していないと行動がズレるはずなので
  • 「他の人の姿を視界に入れる」という意識付けになる

副次効果として望めるのは、この辺りでしょうか。
人に「お願いする」というのは、慣れていない人にとっては大変なことだったりします。まして「みんな焦っている」状況下に置いては、より「無駄なことを増やしたくないな」というバイアスが働きそうです。
リラックスするためにも、「一緒に動いている感」があると良いですよね。そのためにも、「お願いされて取り組む」という状態を増やしたり、「お願いしあってコトを動かす」人を増やしたりするのは意味があるかな〜と思います。

怒らない

怒るな!!!!!!!!!
あと偉そうにもするな!!

「早くしてください」とか「何が言いたいのか分かりません」とか、そういうの。他人を挑発したり咎めても得はないですので、特に「ストレスが掛かっていてるし焦っている」みたいな状況において、周りを萎縮させるのはとても悪手になります・・・
こういう時だからこそ丁寧目な物の言い方を心掛けようね。

締め

「理屈より先に納得感を醸成する」みたいなのが出来ると強いというか、納得しやすいのかな〜〜っていうのと向き合いがちな今日このごろ。
「必要性から公式が導き出される」べきであって、「名前のついた公式や定理があるから覚えよう、従おう」だと、一緒に動いてもらえるのはごくごく一部の人に限られるのではないか。

ということで、前々に自分が感じたり考えたりして練り上げた「体系」を、自ら再び観察してみる作業をしてみた。
どうにか力を合わせたい部分については、押し付けがましくして感情的な反発を生みたくはないもの。なので、自然と「そういうやり方」を持ち込み、披露できると上手くいく可能性があるのかもしれない・・?「チーム全体を変えるには」 という命題に対して、遠回りではあるが、まず自分の行動を見せることによって何かの気付きを産み落とせる方法を考えるというアプローチもありかもな、と。

人が動かないのはどこまでも自分の仕事の甘さということで。逆にいえば、周りが(気持ちよく)動けるような影響を与えるのは、良い仕事だ。
そういう仕事をできると良い。

*1:SMEの働きを、対応者と調査者を分けている。調査者は、現状分析(根本原因の究明だったり、ボトルネックの発見だったり、実施したワークアラウンドの効果を速報したり)を行うことで現場監督や対応者の働きを支援するような役割を期待するもの

*2:2人なら恐らく協調しながらお互いに手を動かす感じになる気がする。3人でも、まぁ多分やっちゃって良い気はする。ヒト次第コト次第ではある

*3:特に「人が出入りする」という状況を前提にした時には、「いま来た人をすぐに稼働させられるようにする」といった場面で効果が高いと思う。進行状況のサマリーを取っている書記(の記録)と協力しながら、「何が起きていて今コレが欲しいから、あなたにお願いしていいですか」というコミュニケーションを取る役として振る舞う。

*4:流動的な状況の中で「お互いの役割が行ったり来たりする」のは難易度が高いわけで、もし「役割分担の重要性」が浸透してるなら、その時はきっぱり「役」を決めたほうが良いなぁとは思うけれど

*5:まずはどんな手を使っても一次対応を完遂する、その後に恒久対応というのが鉄則。ただ「もっと良い方法」を考えないようにする〜というのは意外と難しかったりもするものです