マルチタスクの定義と考え方

マルチタスク」という言葉の定義と考え方について。


マルチタスクと聞いてどういう意味なのかあまり分かっていないまま「複数の作業を同時に実行すること」みたいな解釈をしたときに、マルチタスクをこなせる人間ってどういう人だろうと考えて、マルチタスクの定義をちゃんと知る必要があることに気付きました。



マルチタスク(wikiより引用)
マルチタスク (Multi Tasking) は、コンピュータにおいて複数のタスク(プロセス)を切り替えて実行できるシステムのことである。マルチプログラミング、マルチプロセスともいう。逆に、同時に一つのタスクしか実行できない方式をシングルタスクという。


元々はPC関連の用語みたいです。
残念ながらPC系には詳しくないので解釈を誤っているかもしれませんが、ここで言われるシングルタスクで複数のタスクを実行しようとすると、入力待ちや通信待ちの時間を経ながらCPUが計算を実行してタスクを順々に処理することになります。これをマルチタスクで行うと、入力・通信待ちの時間などCPUが計算を実行していない時間に別のタスクの処理を進めることによって全体の処理時間の短縮を図ることができるみたいです。
これを聞いてすぐに思い浮かんだ身近な例は料理でした。例えば(と言いながら料理の手順はあまり分からない…)、肉と野菜を煮込むのだが肉は野菜より長い時間煮込む必要があるというとき。もちろん、肉と野菜をカットしてから鍋に入れてじっくり煮込んでいくのを待つのも一つではありますが、肉をカットして鍋に入れて煮込んでいる間に野菜をカットして後から鍋に入れる方が作業としては効率が良いです。
つまり、マルチタスクというのは「作業の待ち・空き時間に別作業を組み込むことで作業全体から見た効率(主に作業時間)の改善を図ること」を指すのではないかと思います。


ここで、人間はマルチタスクをこなすことができるのかという話題についてですが、最初に私がなんとなく思っていた「複数の作業を同時に実行」をできるほど器用でないにしても「空き時間に別作業を組み込んで効率化」であればこなせると思います。というよりも、それが可能な作業をマルチタスク化して実行するのであり、作業の効率化が図れない作業はそもそもマルチタスク化しない方が効率的だと言えるので、マルチタスク化される作業は実現可能なものだけだと思います。
私が見聞きしたものだと「マルチタスクは個々の作業効率を落としている」「マルチタスクは効率的に業務をこなしている気分になって満足感を得ている」などという話がありましたが、複数作業があるときに何でもかんでもマルチタスク化すれば良いわけではないというだけの話だと思いますし、満足感に浸っているのは本質を見失っているという点で議論ができないような気がします。
また、作業を個々に行う方が質の高いものを生み出せることは多いと思いますが、そのように個々に丁寧に着手して質を上げる(落とさない)ことよりも時間など効率化が重視されたときにマルチタスクという手法が選ばれるものだと思いますので、ただ効率化ができるからマルチタスク化しようというのも少しずれた話だと思います。


では、マルチタスクをこなすにはどうすればよいのかというところですが、これは料理を見習えば良いのではないでしょうか。
料理のレシピを見ると「○○を作ります!では、まず最初に〜して、次に……して完成です!」という流れになっています。例えば(?)、鍋を作るにあたって必要な作業を分割していくと「肉を切る」「野菜を切る」「鍋を温める」「鍋で肉を煮込む」「鍋で野菜を煮込む」という作業があります。「鍋を温める」をしてから「肉を切る」「野菜を切る」では鍋が冷めてまた温める必要が生まれるかもしれませんし、「鍋で肉を煮込む」のには時間がかかると分かっていれば、作業の手順を「鍋を温める」「肉を切る」「鍋で肉を煮込む」「野菜を切る」「鍋で野菜を煮込む」という風に組み立てて時間短縮を図ることができます。


つまり、マルチタスクをこなすためには
・作業の完了地点を把握する
・完了地点までに必要な作業を最小単位で分割する
・分割した諸作業の作業順序を組み立てる
という3つのことが必要なのではないかと考えました。


実行して効率化の図れるものだけ実行するのがマルチタスクだと考えているため、上記の3つを自分で考えて行えばマルチタスクはできると思います。もちろん、人によってスキルは違い「肉を煮込んでいる間に野菜が切り終わらない・・・」という方もいると思うので、自分で考える(力量を把握している人が可能かどうかを検討する)ことは大事になるでしょう。


そういえば、マルチタスクで見聞したことの一つに「複数の作業を切り替えながら実行するので、切り替えるのにエネルギーがかかり、かえって効率が良くならない」という類の話も見ましたが、これは順序の組み立てができていないだけなのではないかと思います。
・作業A (a-1,a-2,a-3)
・作業B (b-1,b-2)
・作業C (a-1,a-2,b-1,a-3,b-2)
と書けばイメージがつきやすいかもしれませんが、マルチタスクは作業を細かい単位に分割してその順序を組み立てて単一の作業を順々に実行していくものだと考えると、切り替えにエネルギーを特別なエネルギーを使う必要はないという見方もできます。a-2からb-1に特別な切り替えが必要だと言うならa-1からa-2に向かう段階でも特別な切り替えが必要なように感じます。


質を落とさずに時間効率化ができるのが理想的な話ではありますが、実際は両者のトレードオフになる場面も多いでしょう。そこで少し気になるのは、「その場での結果を重視したら質を多少落としても効率化を図る方が良い」という判断ができたとして、そういう場面を多く経験した後に「時間をかけてもいいから作業の質を重視しなくてはいけない」場面が来たときに精度を落とさずに作業ができるものでしょうか。
質と時間のトレードオフとなるマルチタスクを続けて、それに慣れてしまったときの切り替えが上手にできるかどうかで言うと、なんとなく難しいのではないかと思い、上手に切り替えをするためには質を落として時間効率化を図るマルチタスクに慣れてしまうのは良くないのかもしれないと思いました。