Tbpgr Blog

Ruby プログラマ tbpgr(てぃーびー) のブログ

問題を抽象化フローにすることで大きな粒度の問題を1つずつクリア可能にする

大きな粒度の問題を1つずつクリア可能にするための手順を整理します

手順

  1. 細分化
  2. 概念化
  3. 可視化
  4. 現在地の確認
  5. 1つずつ達成していく

サンプル

SIer の下請けを脱出したい人の例で考えてみます。

細分化

問題を細分化します。

  • 多忙過ぎて時間がない
    • 稼働を減らしてもらう
    • 自発的に休む
  • 相談相手がいない
    • 友人を頼る
    • 勉強会などでつながりを増やす
    • インターネットでつながりを増やす
  • どんなところを選んだらいいか分からない
    • 自分が企業に求める条件を整理する
      • 自分のやりたいことを把握する
      • 自分のできることを把握する
      • 必要な収入を把握する
    • 自分が企業に求める条件に一致する企業を探す
  • どうやって転職したらいいか分からない
    • 転職方法にはどのような種類があるか調べる
    • 自分の転職先にあったルートを選択する
    • 入りたい企業の採用要件を見る
    • その企業がその枠を募集している背景に関る情報を探す
    • 採用要件の裏にある「今人が欲しい具体的な理由」を推測する
    • 企業が人を欲しい理由を元に、欲しい人の条件を満たす方法を調べる
    • 不足している条件を一つずつ満たす
  • 転職活動をする

実際は人によってより細かい項目や全く別の項目があると思います。
また、細分化しきれない場所があれば、それは新たな知識を仕入れたり、
人に相談することで解決する必要のある箇所でしょう。

概念化

細分化した問題を一定の粒度で概念化します。

  1. 時間の確保
  2. 相談相手の確保
  3. 条件の設定
  4. 転職方法の調査
  5. 転職対策の実践
  6. 転職活動の実施

この際にリストアップした詳細情報から
何を満たせば、その概念の部分をクリアしているかを明確にします。

可視化

f:id:tbpg:20180308165348p:plain

現在地の確認

例えば、

  • 時間は十分にある
  • 条件は明確にしてある
  • しかし、転職先の選び方などの転職方法が分からない

のような状態だとします。

f:id:tbpg:20180308165357p:plain

ここでは相談相手をみつけることと、
転職方法そのものをWebや相談相手と話して理解していくことが必要だとわかります。

1つずつ達成していく

  1. 相談相手の確保
  2. 転職方法の調査
  3. 転職対策の実践
  4. 転職活動の実施

を順次すすめていきます。

まとめ

大きな課題を大きなままにしておくと、
現在地、達成度が不明瞭になりやすいです。
すると長期的な動機を保つのが難しくなります。

また、プレゼンや他人に何かを説明する際などに
大きめの粒度で説明したいときも使いやすいです。
大きな施策を細かい粒度で全て説明したら相手は眠くなってしまいます。

ストーリーを作り、中ボスを配置し、重要アイテムを取ってクリアする。
そんなイメージで抽象化フローづくりを楽しむといいかもしれません。