プロジェクト管理の選び方と使い方&プロジェクト管理×15
MOONGIFTではリーンソフトウェア開発を用いたプロジェクト管理のコンサルティングを承っております。リーンソフトウェア開発についてはLeanSoftware.jpを参考にしてください。お問い合わせ、詳細はinfo@moongift.jpまでご連絡ください。
システム開発を行う際などにプロジェクト管理という言葉がよく聞かれます。企業などで行われる開発プロジェクトなどでは大抵導入されており、進捗や課題を管理するのに用いられています。とはいえプロジェクト管理の目的はプロジェクトを成功させるための道具であり、プロジェクト管理を運用することではありません。意外とその点が理解されておらず、プロジェクト管理をメンテナンスするための工数が大きくかけられてしまっていたり、細かく管理することだけが目的化してしまっている現場もよく見かけます。
また最近ではかつてのウォーターフォール型の開発の他、アジャイル開発やリーンソフトウェア開発といった手法も出始めています。こうした開発手法の違いにあわせてプロジェクト管理を使っていくのも重要です。そこで今回は多数存在するプロジェクト管理ソフトウェアについてまとめ、その特徴を挙げていきたいと思います。
Webベース or ローカル型
まず大きく分けてWebベースで動作するものとローカルで動作するものに分かれます。最近はWebベースのものが人気が高くなっています。これはWebアプリケーションがもてはやされる例と変わらず、インストールが不要であること、インターネットを通じて複数の拠点間でデータを共有できること、ライセンスコストが一定である(これは違う場合もありますが)ということが挙げられます。対してローカル型の場合は、個々のマシンにインストールが必要であること、動作がWebアプリケーション型に比べると高速であること、インタフェースがリッチであることが特徴になります。最近では双方のいいとこ取りとして、データはオンラインに蓄積しつつ、インタフェースはローカルアプリケーションを通じて提供されるという形式も存在します。
ライセンスコストで見ると、Webアプリケーションの場合も人数を制限している場合があります。ただしWebアプリケーションの場合は元々複数人によるデータ共有やコラボレーションを前提としているため、一人で活用すると言うよりも複数人での利用が基本です。逆にローカルアプリケーションの場合は一人で使う形の場合も多々あります。これはプロジェクトマネージャがインストールしてデータ管理を行い、その結果をメンバーにレポートとして配布するようなプロジェクトの進め方の場合に便利です。特に外注を使っている場合はデータのメンテナンスを任せられない場合もありますので、データメンテナンスの入り口を統一したい場合は便利かと思います。
有償 or オープンソース/フリーウェア
有償なソフトウェアというのは、パッケージ/シェアウェア/ASPが挙げられます。オープンソースやフリーウェアの場合は無料で利用できるものが多くなります。プロジェクトが利益を生み出すものでない場合や、個人レベル、限られた少人数の場合はオープンソース・ソフトウェアのプロジェクト管理が便利です。すでに幾つか存在するプロジェクト管理ソフトウェアは有償レベルに達しているものもあります。ただしサポートがコミュニティベースになるために、操作が分かりづらかったり、バグによってうまく管理できない場合もあります。有償のソフトウェアの場合、そうした問題が発生した時のサポート体制があること、継続的なバージョンアップが臨めるのが利点です。
個人でローカルで使うレベルであればオープンソース・ソフトウェアがお勧めです。規模が小さいこと、セットアップのコストが小さいためです。インターネットを介して複数の拠点でデータを共有する必要がある場合は、ASP型がお勧めです。オープンソース・ソフトウェアでもいいのですが、サーバを設置したり設定を行う手間とコストを考えると、外部のサービスを使った方が素早く運用を開始できるメリットがあります。
アドオン or 専用
アドオンとは他のソフトウェアに付く形で提供されるプロジェクト管理です。たとえばCMSやグループウェアにプラグインや一機能として提供されるものがあります。情報の一元化という意味ではプラグインは悪くありませんが、管理する情報の体系が大きく異なる場合が多いためお勧めしません。なるべく専用のプロジェクト管理ソフトウェアを導入すべきです。グループウェアで管理されるデータは蓄積型のものが多いですが、プロジェクト管理は一過性のものが多いため、プロジェクトごとにリセットできる形式がお勧めです。
多機能 or シンプル
あまりシンプルなものもお勧めしませんが、多機能よりはよっぽども使いやすいと思われます。多機能なものというのは総じて使い方を覚えるまでの時間的工数が大きく、使われない機能がほとんどになるのでお勧めしません。オープンソース・ソフトウェアもこの傾向が強く、大勢のニーズを網羅的に集めてしまうと多機能で大がかりなものになってしまいます。そうすると画面も複雑になり、自分にとっては不要な機能ばかりになってしまいます。プロジェクト管理とはプロジェクト成功までのステップを管理するものになるので、成功するために必要とする機能だけに限定されるものを導入すべきです。
ウォーターフォール型 or アジャイル型
開発形態の違いはプロジェクト管理の選定に大きな影響を及ぼします。また自社サービスであるか受託であるか、外部のリソースが関わるか否かによっても選択肢が異なります。特にアジャイル開発向けのプロジェクト管理は複数出てきていますので、そのような開発スタイルを取る場合は特化したものがお勧めです。
複数プロジェクトの管理に対応したものもありますが、プロジェクト管理はその時々によって状況が変わりますので、プロジェクトの形態や人数によって選択すべきです。また関わる人も変わるのが一般的なので、統一されたプラットフォームではなく、多数の選択肢を覚えておき、
プロジェクト管理の主な機能
プロジェクト管理と一言で言ってもいろいろな機能が考えられます。主な機能として以下が考えられます。
- 人員管理
- マイルストーン
- 課題管理
- スケジュール/進捗管理
- タスク管理
- レポート
- リポジトリビューワー
- ファイル共有
- コンテンツ(Wikiなど)
個人的な優先順位として、必須と考えられるのは「人員管理」「マイルストーン」「タスク管理」となります。次に「課題管理」「スケジュール/進捗管理」「レポート」です。最後に「リポジトリビューワー」「コンテンツ(Wikiなど)」「ファイル共有」があります。最後の3つについては外部のサービスや手法があるため、プロジェクト管理に必須とはいえません。特にWebベースの場合でファイル共有を提供しているものは、検索がうまくできなかったり、バージョン管理されないことも多いのでリポジトリ上で管理する方がわかりやすいかと思います。
人員管理とはプロジェクトに携わる人を登録し、管理するための機能です。これはタスク管理と連携して作業を割り当てたり、課題管理の報告者や担当者の割り当てに使います。人員とは個人とは限らず、外注先の企業を登録する場合もあります。また逆にクライアント企業を登録するケースもあります。これはリスクテイカーをすべて含めておくべきです。マイルストーンは製品の水準を決められたスケジュールまでに達成するための目標であり、リリースのみならずαリリースする段階を決めたり、デバッグの完了時期を定めるのにも使えます。大枠でのスケジュールです。が、これを適切に定めておかないと作業工数の考え方およびリソースの割り当てがおかしくなってしまいます。闇雲に作業を増やしてしまったり、予定が延び延びになっているのに気づかないのもこのマイルストーンが適切でない場合がほとんどです。
最適なプロジェクト管理の使い方
あくまでも個人的な意見ですが、プロジェクト管理にて管理したい項目を挙げ、その機能だけを満たしつつ操作がスムーズなものを選ぶ必要があります。もちろんその際には開発形態に沿って考える必要があります。そしてプロジェクト管理はあくまでもプロジェクトの推進を円滑にするものだと考え、機能が絞り込まれているものを選択します。できればWeb APIを通じて外部アプリケーションと連携できるものがベストです。
機能が多くないプロジェクト管理であれば使いこなすのもさほど難しくはありません。またすべてをプロジェクト管理で行うのではなく、課題管理(バグ管理)は別ソフトウェアを使うようにするなど選択肢を幅広くすることでプロジェクト管理に縛られることがなくなります。
主なプロジェクト管理
あまりにも数が多いので、各提供形態や特化したものについて主立ったソフトウェアをリストアップしていきます。この他にも多数ありますので、自社のプロジェクトにあわせて選んでください。
ASP(クラウド)型
Project management, collaboration, and task software: Basecamp

37signalsが提供するプロジェクト管理です。世界中で使われているため、Web APIを使ったマッシュアップが多数存在します。マイルストーン、Todo、スケジュール、ファイル共有、ノートなどが主な機能になります。リポジトリは提供されていません。
どこでもプロジェクト管理バックログ

日本製のプロジェクト管理です。ガントチャート、課題管理、バーンダウンチャート、ファイル共有、Wiki、モバイル対応がメイン機能です。Subversionリポジトリも提供されていますので、一元的にデータを集中管理できるようになっています。
SaaS型プロジェクト管理サービス:Zoho Projects

http://www.zoho.jp/service/zoho-projects.html
Zoho Projectsはマイルストーン、タスク管理、タイムシート、フォーラムと言った機能があります。ドキュメントをオンラインで編集(Zoho Writer/Sheet/Show)できるのが特徴です。アップロードしたファイルは独自のバージョン管理がされます。MS Projectで作られたプロジェクトファイルをインポートできる機能があります。
ローカル型
Microsoft Office Project 2007

http://office.microsoft.com/ja-jp/project/
もっとも有名な商用プロジェクト管理ソフトウェアです。スケジュール管理、レポート作成、財務管理、ガントチャートといった機能があります。メンバーが自分のステータスを管理すると言うよりも、プロジェクトマネージャが上層部への報告書を含めてレポーティングするために利用すると言った雰囲気です。使いこなせないソフトウェアとしてもよく知られています。
OpenProj

OpenProjはWindows/Mac OSX/Linux用のプロジェクト管理ソフトウェアで、MS Projectのファイルを閲覧、編集できるのが特徴です。ガントチャートやPERT図、WBSなど多彩なグラフが描けるのも特徴となっています。予算の関係上、全員にMS Projectをインストールできない場合にオープンソース・ソフトウェアのOpenProjで代わりに利用するという方法も可能になります。
開発マイルストーン

http://zudajijp.web.fc2.com/km/
開発マイルストーンはガントチャートを引くためのソフトウェアです。MS Excelを使っているのが特徴です。表に対して工数や日数を入れていくだけでガントチャートが自動的に描画されます。MS ProjectのXMLファイル読み込みに対応しています。複数人での利用ではなく、プロジェクトマネージャが進捗を管理するのに使うのが良さそうです。小規模なプロジェクトや、プロジェクト管理を使いこなすほどの工数がかけられないプロジェクトで使えるはずです。
echo - スポーツのような、チームワークを。

echoはAdobe AIR製のプロジェクト管理で、データはechoが提供するサーバ上に保存します。特にチームプレーを重視しており、タスクをプロジェクトメンバーに割り当てたり、そのフィードバックを行うことができます。特に面白いのは最終的にプロジェクトが遂行された時にその通知ができることです。それによって自分の関わったプロジェクトがどのような結果を迎えたか分かるようになります。
Web型
The Trac Project

Pythonで作られた本格的Webベースプロジェクト管理ソフトウェアです。タイムラインやロードマップ、リポジトリブラウザ、チケット管理、Wikiといった機能があります。Tracにインスパイアされて作られたソフトウェアは多く、その意味でWebベースのプロジェクト管理の基本ともなっているソフトウェアです。Pythonということもあって設置が若干面倒なのが難点です。社内であればWindows用のインストーラを使うのが便利です。
Redmine - Overview - Redmine

RedmineはRuby on RailsによるTracを目指して開発が開始したプロジェクト管理です。Railsの生産性の高さよって、現在では多彩な機能を備えたプロジェクト管理になっています。課題管理、ガントチャート、カレンダー、ニュース、ファイル管理、Wiki、フォーラム、タイムトラッキング、リポジトリ連携、LDAP対応といった機能があります。
candycane on CakePHP

candycaneはRedmineのPHP版を目指すソフトウェアです。CakePHPを使って開発されています。機能的にはRedmineとさほど変わりませんが、まだ実装されていない機能もあるようです。Railsの場合別途Webアプリケーションサーバを用意する必要があって設置までの敷居が高いですがCakePHPであればすぐに使えてレンタルサーバでも動作できます。そうした点がcandycaneの利点といえそうです。
activeCollab - Project Management and Collaboration Tool

activeCollabはPHPで作られたソフトウェアで、ファイル共有、タイムトラッキング、カレンダー、チケットなど多彩な機能を実装しています。オープンソース・ソフトウェアとして提供する一方、ASP版も提供しているのが特徴です。自社でサーバを立てたりする手間を省く上でも、このようなASPはメリットとなりそうです。
IceScrum - Your open source agile tool

IceScrumは特にアジャイル開発に対して特化したプロジェクト管理です。機能をノート形式で記述し、スプリントにおけるバックログを管理し、ロードマップやリリースプランを通じてプロジェクトを管理します。テストやビルド結果の管理も行えます。そうした機能はアジャイル開発に沿ったものであり、そのノウハウを含めてIceScrumを通じて習得が可能になります。
Teambox | Project collaboration

TeamboxはBasecampに似たインタフェースを持ったプロジェクト管理です。バージョンアップによってTwitter的なつぶやき機能が増えたり、フォーラム、タスクリスト、ファイル共有など便利な機能が増えています。企業内での利用よりも、個々人に独立があるプロジェクトに対して使えそうです。Basecampは有償ですが、その前に試してみたいという時にも良さそうです。
9arrows.com

9arrows.comはWebベースのシステムとAdobe AIRベースのデスクトップクライアントを組み合わせて使うプロジェクト管理です。タスク管理、カレンダーが基本で、WBSをメインに使っていくようになっています。オープンソースのダウンロード版とASP版とが提供されています。
TeamTrick: Scrum on Rails

TeamTrickはアジャイルのスクラム開発に特化したプロジェクト管理です。スプリントごとのバックログ、そのバーンダウングラフが描けます。ストーリーの定義をはじめ、アジャイル開発でよく聞かれる手法がTeamTrickには詰まっています。そうしたナレッジを習得しつつ、アジャイル開発型に移行したいと言った時にも役立つソフトウェアです。
まとめ
エンタープライズ向けで見た場合、ターゲットになるのはMS Projectのようです。ただし実際に使っている(または使った)ことがある人たちの中では使いこなすのが難しい、2割も使えないといった意見も聞かれます。そのため、MS Projectを使いつつも諦めかけているユーザを捉まえるのがエンタープライズ向けプロジェクト管理の特徴といえそうです。
TracやRedmineといった軽量なプロジェクト管理の場合は機能を絞り込みつつもプロジェクトのステータスを管理するには十分な機能を要しているといえそうです。こうしたソフトウェアは使い勝手と個人の好みによって選択肢が分かれるかと思います。またWeb APIを提供している場合はすでにコミュニティベースで幾つかの補助ソフトウェアがある可能性もありますので、そうした補助ソフトウェア(携帯やiPhoneなど)によって魅力が増すかもしれません。
開発形態についてはRedmineでアジャイル開発を行うというのは決して不可能ではありません。ただし使わない機能であったり、別なソフトウェアを混ぜる必要が生じますので、それを避けるためにはアジャイル専門のソフトウェアを使うのが良いのではないでしょうか。
プロジェクト管理を用いない開発は失敗するリスクが高まりますが、がちがちに固めてしまうと柔軟性を失って失敗する可能性があります。特に仕様書を含めて内容を固めずに柔軟性を残したいならば、プロジェクト管理もまた、締め付けすぎないものを選択する必要があります。
MOONGIFTではリーンソフトウェア開発を用いたプロジェクト管理のコンサルティングを承っております。リーンソフトウェア開発についてはLeanSoftware.jpを参考にしてください。お問い合わせ、詳細はinfo@moongift.jpまでご連絡ください。
はじめまして!
ゾーホージャパン株式会社、Zoho事業の清水と申します。
弊社の提供するクラウド型プロジェクト管理サービス「Zoho Projects」をご紹介いただきありがとうございます!
こうして一覧していただくと、世の中にはたくさんの便利なプロジェクト管理ツールがあるのですね~。自分達にあったものを選ぶのが大変ですねっ。
最近生まれ変わった「Zoho Projects」の特徴は、メンバー間のコミュニケーションを円滑にする機能が充実しています。チャットやTwitter風のステータス表示など、メンバーの様子がいつでも見えてやりとりができるので楽しいですよ。ご紹介いただいたように、他のZohoサービスとの連携も大きな利点です。APIも公開しています。1プロジェクトまで無料なので、たくさんの方にお試しいただきたいです。ありがとうございました!
ゾーホージャパン 清水