割り込みは避けるのは難しい
タスク管理の一番の悩みどころは、「割り込みタスク」です。 他の人から急用を頼まれることもあれば、 今やっている作業とは別のことをやってしまう、 いわゆる「脱線」も、割り込みの一つです。
ここでは、その割り込みタスクを避ける方法については書きません。 ただ、割り込みタスクがしょうがないとしても、 割り込みのネスト、別の言い方をすると、 「割り込みの割り込み」はなんとでも避けるべきです。
脳が疲労する
なぜ避けるべきかというと、ものすごく疲労するからです。 作業中に割り込まれると、割り込まれる前の状態を脳が覚えようとします。 割り込みに割り込みが入ると、覚える状態が2つに増えます。 割り込みが増えるほど、覚える状態が増え、脳が疲労します。
ネストさせないための対策
以下の2つがあります。
- 「割り込みの割り込み」をメモだけにして、「元の割り込み」を完成させる
- 「元の割り込み」を含め、やることを洗い出し、整理する。
最初の方法は、「割り込みの割り込み」を一旦棚上げにし、 「元の割り込み」を終わらせることを優先させます。 ただ、忘れてしまっても意味がないため、「割り込みの割り込み」は、 メモしておきます。
しかし、「割り込みの割り込み」がいくつも出てきて、 頭が混乱してくることもあります。 そういうときは、まずやるべきことを洗い出し、 割り込みが入らないように整理します。
どちらを選ぶかは、脳の疲労状態で決めます。 作業に支障がなければメモするだけ、 混乱しているなら整理します。
参考文献
タスク管理の本ではないですが、「テスト駆動開発」にも記載されています。
No.1097あたり
この修正をいま行うべきだろうか。それとも待つべきだろうか。 教科書的な答えは「いま行っている作業を止めないために、修正は待つべき」 となる。ただ、個人的な回答をするなら「ちょっとした割り込みを楽しもう。 ただし、ちょっとしたものに限る」と言いたい。 そこに「割り込みにさらに割り込むことはしない」というルールも加えておこう (Jim Coplienがこのルールを教えてくれた)。