この記事ではゲーム開発におけるタスク管理の方法とツールについて解説します。
ここでは、すぐにでも始めやすい「アナログ」での方法と、「デジタル」での方法を紹介しています。
目次
タスク管理を行うメリット
まずタスク管理を行うメリットです。個人的には大きく分けて以下の3つと考えています。
- 1. プロジェクトの全工程で行う作業が明確になる
- 2. 優先してやるべき作業が見つかる
- 3. 悩む時間が減る
1. プロジェクトの全工程で行う作業が明確になる
やるべき作業をすべて洗い出すことで、プロジェクト全体でやるべきことが明確になって、見通しがよくなります。
2. 優先してやるべき作業が見つかる
タスクを実行するにあたって大切となるのは「優先順位」です。
例えば、ゲーム開発の序盤は「ゲームとしての面白さを成立させる」のが最優先課題なので、洗い出した作業のうち、それを実現させるために最も必要な作業を優先して行います。
この優先順位をつけるためには、やるべきタスクの洗い出しを行い、それを管理することが前提となります。
3. 悩む時間が減る
タスクリストを用意しておくことで、作業に取り掛かるときにどの作業を行うかを悩む時間を削減できます。
個人的には、作業開始時には「軽め」のタスクを消化し、それにより作業をする勢いがついたら「重い」タスクに取り掛かる、というのが無理なく作業を行える方法としてオススメです。
タスク管理の流れ
まずはタスク管理の大まかな流れについてです。
- タスク(やるべきこと)をリストアップする
- タスクに優先順位と工数を設定する
- マイルストーンを設定する
これができたら、各種ツールでタスクと進捗を管理します。ただ「②タスクに優先順位と工数を設定する」については、割り出しに時間がかかるので、ひとまず「何を優先して行うか」だけを考えるだけでも良いかもしれません。
タスク管理ツール(アナログ編)
まずはタスク管理をアナログなツールで管理する方法です。
チェックリストを作る(100円ノートにタスクを書き出す)
コンビニや100円ショップで買えるノートやレポート用紙に、タスクを書き出します。
- プレイヤーの移動処理を作成
- プレイヤーから弾を発射する
- 敵に弾が当たるようにする
- 敵に接触したらプレイヤーは死亡する
このように書き出し、完了したらチェックマークを入れたり、線を引いて消します。
- (済)
プレイヤーの移動処理を作成 - (済)
プレイヤーから弾を発射する - 敵に弾が当たるようにする
- 敵に接触したらプレイヤーは死亡する
単純なタスク管理ですが、無計画に作業を行うよりは効率的に作業することができます。
この方法をデジタルで行う場合は、スマートフォンに標準で入っているリマインダーアプリやメモ、またはWorkFlowyなどのアウトラインプロセッサを使うのが良いと思います。
付箋とタスクボードを使う
100円ショップなどで買える付箋にタスクを書き出し、机や壁にそれを貼り付けます。そして完了したらゴミ箱に付箋を捨てます。
これだけの管理ならチェックリストと変わらないのですが、タスクボードを使うとより管理しやすくなります。
ホワイトボードやコルクボードなどを用意して、それに付箋を貼り付けます。カテゴリとして「ToDo(これからやること)」「Doing(進行中)」「Done(完了)」という3つの分類にわけることで、タスクの進行状況が明確になります。
写真で使っているホワイトボードは以下のものを使用しました。90×60とサイズが大きい割に値段も安くてとてもお得です。
ただこれはかなり大きめのサイズなので、まずは100円ショップで売っているホワイトボードで試してみてからが良いと思います。
タスク管理ツール(デジタル編)
アナログのメリットは「始めやすい」ということですが、長期間の管理をする場合にタスクが積み重なって管理が難しくなるデメリットがあります。またチーム開発する場合には、デジタルの方が管理しやすいです。
Trello
Trelloはシンプルで使いやすいタスク管理ツールです。
先程紹介したタスクボードでタスク(カード)を管理できます。
基本的な機能だけであれば無料で使うことができるので始めやすいツールだと思います。タスクの中にチェックリストを作ることができるので、複雑なタスクも管理しやすいです。
有料との違いはボード数の制限ですが、「Todo」「Doing」「Done」の3つであれば使い切ることはなさそうです。
私はもう少し複雑な管理を好むので合わなかったのですが、通常のタスク管理の用途であればこれで十分そうです。
Redmine
個人的なおすすめがRedmineです。環境を作ることさえできれば無料で使えます。さらにカスタマイズも自由にできます。
私の一番のお気に入りはタスクをどこまでも階層化できるところです。
管理がやや複雑になりますが、これを作るとタスクの状況がわかりやすいので、個人的にお気に入りのタスク管理です。
また登録したタスクに「対象バージョン(そのタスクを行うバージョン)」を設定することで進捗率を自動で算出してくれるのも良いと思っています。
ただ Redmineの問題点は環境の構築です。Ruby、MySQLなどセットアップがかなり大変です。そのため今のプロジェクトでは、Planioというサービスを使用しています。アカウントを作成するだけで使え、1プロジェクト2ユーザーまでなら無料で使えます(初期設定だと有料プランに設定されているので、無料プランへの変更が必要)
ただ無料プランだと1プロジェクトしか使えないので、次回は ConoHa VPS を借りて Redmineサーバーを立てようかな……と考えています。(自分でサーバーを立てればプロジェクト数は無制限)
メモリ1GBプランなら月あたり800円程度で借りられるのでアリかな……と思っています。(Planioの有料プランは最安値でも 月2500円ほど)
Backlog
日本で一番使われているらしいプロジェクト管理システムです。
インディーゲーム・サバイバルガイドの著者の一條さんが使用しているらしく気になったので調べてみました。
Redmineを使う場合、カスタマイズ前提なのですが、これであればタスクボードやガントチャート、バーンダウンチャート(チケットの消化状況を確認するもの)、通知機能など数多くの機能が最初から用意されています。
有料プランのみ(月額2640円〜)とそれなりのお値段ではありますが、すでに事業として成立している方であればサーバーをメンテナンスするコストがお金で削減させられるので、時短ツールとして良さそうな印象です。
まとめ
最後にタスク管理を行うデメリットを書いておきます。
タスク管理を行うデメリット
タスク管理を行うデメリットとしては、「開発に慣れていない人」はタスク管理を行うこと自体が大きな手間となってしまうことです。本来の目的であるゲーム制作が最優先ですので、まずは「日々のタスクを書き出してから作業を開始する(チェックリストを作る)」から始めてみるのが良いかもしれません。
また「作ったことがないゲームジャンル」や「完成形が明確でない」場合には、タスクの洗い出しが難しいです。
その場合は最初に時間をかけて細くタスクを洗い出すよりも、大きなタスクを定義して、その子タスクとしてタスクを日々開発をしながら追加していくのがよかったりします。(作りながらでないと見えてこないことがゲーム制作ではよくあります)
参考資料
以下、タスク管理を学ぶのにオススメな(わかりやすい)ページをリンクしておきます。