何が分からないのか分からない問題

LABO

はじめに

私はプログラミング経験ほぼゼロでIT業界に入りました。
入社当時は聞くことなすこと初めてづくしで、ものすごく戸惑った経験があります。
まさに「何が分からないのか分からない」の毎日でした。
同じような経験、同じような状況に置かれている人は結構いるのではないかと思います。
今でもしょっちゅう「何が分からないのか分からない」状態に陥っていますが、そんなとき使っている具体的な解決方法を紹介します。
もし途方に暮れているのなら試してみる価値はあるかもしれません。

分割統治法の紹介

試行錯誤を繰り返しているある日、一つの方法を知り問題の整理整頓が比較的スムーズに出来るようになりました。
分割統治法」と言う方法です。

簡単に言えば問題を細かく細かく砕いて、自分で分かるレベルまで問題をかみ砕いて、 かみ砕いた後に一つずつ片付けていくことで最終的に大きな問題を片付けると言う方法です。
最大のメリットは俯瞰で見ると難しい問題がズームアップしていくとそうでもないことの集合だと気づける場合があることです。

そして、分割した内容と進捗を確認するために、私はMindMapと言うツールと組み合わせています。

何かやばいけど、何がやばいの?

いろいろな「何が分からないのか分からない」はありますが、今回は業務で発生したA君のケースを例にします。

ある日一本の電話が入りました。
「検索したらかれこれ30分位ぐるぐるしっぱなしなんだけど」
ぐるぐるとはウェブで実行中に出している動いてますよ画像のあれです。

さて、担当していたA君はフリーズして受け答えが出来ていません。
一先ず調べるからと言う事を伝えて電話は切ってもらいました。
A君はピクリとも手が動きません。
A君の頭の上にぐるぐるがみえます。

ここから先はA君と一緒に問題を解決して行った過程を例にします。

問題解決のゴール

まず先に最終目標を中心に据えることにしています。
「A君、どうなれば一件落着?」

これがゴールかな

じゃぁ頭の中を全てアウトプットしてみよう

一先ずAの頭の中で考えていること、何かやれそうなことを全部吐き出してもらう。
「じゃぁ、一先ずぐるぐるする原因で考えられる物をちょっとあげてみようか」

A君「オペレータが全件検索とかしてるかも」
「後は、プログラムが悪いかも」

「そうだねぇ、他には環境もあるかもね。
ネットワーク遅延とか、サーバの負荷とか上がってない?他にもちょっと考えられる事ありそう」

「もうちょっと掘り下げてみようか」
そして出来たのがこれ(ちょっと小さくなってきたので拡大して見てください)

じゃぁ行動のインプットとして使おう

ひとまず行動を起こせそうなのは
・オペレーションを聞くこと
・リモートでサーバに入って簡単な確認をすること
行動に移してもらう。
行動を起こすことで以下の様な状態になりました。

さらに残った問題を分割してみよう、そして行動を起こそう

回答待ち時間などにさらに、まだ行動が起こせなそうな問題を分割しては掘り下げ手を繰り返していきます。
ちなみに赤字の部分、分からないことを人に聞くというのも立派な行動です。
今回は先に手を貸してしまいましたが、分析した問題で他に自分の気がついていない問題が無いかと知っていそうな人に問うのも立派な行動です。
とにかく一つ一つ行動を起こしては小さな問題をクリアしていきます。
そうして繰り返して行きついたのがこんな感じでした。

ここまで来ると、もう後は行動あるのみです。
仕様調整もうまくいきオペレータにも納得してもらいました。
結局私のサポートした環境周りは取り越し苦労というか、余り役に立たなかったのですが、こんな視点での調査もあると言うことは分かってもらえたみたいです。

分割統治法の不得意分野

もちろん万能ではありません。
この方法は正に今問題が起こっている場合や、問題が明確な場合に有用です。
逆に膨大な情報から、問題を浮かび上がらせる様な場合には向きません。
そんなとき私が使っているのは別の方法(KJ法もどき)です。

分解することの副作用

実は知ってた

最終的にできあがったマインドマップをみると、A君の弱かった環境周りの話以外は意外と自分で答えを持っていたと言うことが分かります。
これは解決の糸口さえあったら自分で出来ていたっていう気づきにもなります。
そして、自分で解決できなかったところも分かるので弱点が分かるようになります。
どこから手を付けて良いか分からなかった問題も、一先ず手が動かせることによってちょっと前進する様になります。

くさい物には蓋が出来なくなる

本当は何をしなければならないのか知っているんだけど、嫌なことに目をつぶっていることが分かると言う事です。
そして、そこに目をつぶっている以上問題が解決しないと明示される事です。

特に多いのがお客さんへの確認です。
お客さんとやりとりするというのが苦手な人に多い気がします。
答えはお客さんしか持っていないのに。

分からないことをごまかせない

アウトプット(今回はマインドマップ)する事で、解決には必要なことなのにぼんやりとしたまま進めている事に気づけるようになります。
そして一個もマインドマップの枝が伸ばせないところは分かっていないので手を付けていないところです。
私の口癖は「もやっとしている事を全部なくせ」です。

他のケース

今回のケースの他にもあると思います。
基本的な考え方は同じなのでどんな問題にも使えます。

特に若手技術者から多い
・コンパイルエラーでました問題
・何か動かないです問題

等など、機会があれば解決サンプル例をまとめてみたいと思いますが基本は同じです。

さいごに

私の入社当時から比べると取り巻く環境は激変しています。
当時はプログラムも環境も選択肢は非常に少なかったしできることも限られていました。
今の若手技術者は当時と比べると、覚えなければならない基礎知識の量も大幅に増え、増えた分だけ問題は複雑化しています。
その為問題が突きつけられたときにただ呆然としてしまう気持ちはとても分かります。
ただ、問題を細かく分解して自分で何とか出来るレベルまで分解してしまえば後は行動あるのみです。

さいごのさいごに(蛇足)

長文をここまで読んで頂き有り難うございました。

実は分割統治法と言う名前を知ったのは使い始めてからかなり後です。
何をきっかけに始めたかというと、昔々「出直しといで!」と言う漫画です。
その中で家出をした女の子が先生の家に行くのです。

先生が「こうなったら良いなって事を全部書き出して」って言うのです。
女の子は色々書き出します。
夢物語みたいな物も含めて。
そして先生は「その中で一番今できそうなことをがんばってごらん」って言うのでした。
かくして、女の子はその後あこがれのニュースキャスターになったのでした。

これって今考えると頭の中を全てアウトプットして、次の行動のインプットに変える作業を再帰的にしているんじゃない?とあるとき思い立ったわけです。
これを自分流に練っていたら「それって分割統治法ってやつじゃない?」ってとある人から教えてもらったのです。
結局、車輪の再発明だったわけですが、この車輪の再発明ってやつも悪くないと私は思っています。

私の行動原理を形成してくれた大半は漫画とゲームです。
漫画とゲームのなかで「お?」っと思ったことを、ちょっとだけ自分用にアレンジしてみる。
そんなことで世の中にはいろいろと気づきの種が転がってるんじゃないかと思っています。
そして気づきの種は自分の好きな物の中に多い気がしています。


コメント

タイトルとURLをコピーしました