システム思考とデバッグ思考
両方を持つことで、複雑な問題に強くなれる。
システム思考とは
システム思考(=全体の構造・フィードバックループを捉える考え方)は、個々の事象でなく要素間の関係・フィードバックループ・構造全体を見る。売上低下を「営業のせい」と断定せず、製品→マーケ→CS→営業→リピートのループで捉える。対症療法でなく、構造的なレバレッジポイント(=てこの支点となる箇所)を探す。
デバッグ思考とは
デバッグ思考(=仮説→最小実験→更新を高速に回す考え方)は、現象を精密に観察し、仮説を立て、最小の実験で検証し、結果から仮説を更新する。推測で結論に飛びつかず、原因を二分探索(バイナリサーチ)で絞り込み、このループを速く回す。
二つを組み合わせる
組み合わせることで、全体の構造を読んで「あたりをつけ」、ピンポイントで検証できるようになる。全体だけ見ると行動できず、局所だけ見ると的外れな場所を直してしまう。
出典・参考
- 書籍:Thinking in Systems: A Primer —— Donella H. Meadows(Chelsea Green Publishing、2008年)
- 書籍:The Fifth Discipline: The Art & Practice of The Learning Organization —— Peter M. Senge(Doubleday、1990年)
- 書籍:The Pragmatic Programmer —— Andrew Hunt & David Thomas(Addison-Wesley、20周年記念版、2019年)—— デバッグ思考の章
- 書籍:Debugging: The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems —— David J. Agans(AMACOM、2002年)
- 論文:"The Scientific Method in Software Engineering" —— Knuth D.E., "Literate Programming"(Stanford、1992年)