現在、多くの企業がプロジェクト管理にExcelを利用しており、手作業で進捗状況を管理している。日々の進捗状況をExcelに手動で入力することで、開発担当者には手間が掛かることに加え、入力された情報はあくまで開発担当者の“感覚”であり、“ごまかし”もできてしまう。“実績”をベースにしたプロジェクト管理を行うためには何が必要なのだろうか。
ビジネス環境が急激に変化する中で、ソフトウェア開発のトレンドは、ウオーターフォール型からアジャイル型へのシフトが進みつつある。しかし、国内の状況を見ると、いまだに多くの企業がウオーターフォール型での開発プロジェクトを展開しているのが実情だ。特に、受託開発をメインにしている開発企業は、長年の経験とノウハウを持つウオーターフォール型の開発手法が根付いてしまっており、そこから抜け出すのが難しくなっている。
では、なぜ今アジャイル開発が求められているのか。それは、ユーザー企業のビジネススピードに、もはやウオーターフォール型開発では対応しきれないものが増えてきているためだ。「例えば、1つの機能をウオーターフォール型で1年間かけて開発したものの、完成したときには、既にビジネス価値がなくなっている。また、ユーザー企業の仕様通りに開発し、リリースしたにもかかわらず、実際にはほとんどの機能が使われていないケースも珍しくない」と話すのはアトラシアン テクニカルマーケティングマネージャーの新村剛史氏。
これに対して、短いサイクルでプロジェクトを回すアジャイル型であれば、ユーザー企業のニーズや市場変化にも迅速かつ柔軟に対応できるのである。
「確かに受託開発では、全体の開発期間と工数が決まっているウオーターフォール型の方が見積もりを出しやすく、プロジェクトが進めやすい。しかし、ユーザー企業の意識は変わりつつある。少ない予算の中で新しいビジネスをスモールスタートで行う要請が増えてきている。その上、こういった場合、発注する側も『何ができたらゴールなのか』を決められないことが多い。ビジネスの状況は刻一刻と変わるからだ。ウオーターフォール型の開発だけではなく、短期間で必要な機能を柔軟に開発できるアジャイル開発が求められる」と、アトラシアン シニアエバンジェリストの長沢智治氏は訴える。
さらに、大きな課題となっているのが、開発プロジェクトの管理体制だ。現在、多くの企業がプロジェクト管理にExcelを利用しており、手作業で進捗(しんちょく)状況を管理している。日々の進捗状況をExcelに手動で入力することで、開発担当者には手間が掛かることに加え、入力された情報はあくまで開発担当者の“感覚”であり、“ごまかし”もできてしまう。“実績”をベースにしないと、Excel上の計画自体を見直し更新するコストばかりが増え、「管理のための管理」になってしまう。
また進捗会議の際には、プロジェクトマネジャーは開発メンバーの進捗状況を把握するだけでかなりの時間を取られてしまい、開発現場が抱える本当の課題が見えないまま開発が進んでいくリスクも多い。
「こうした課題にまだ気付けていない企業が多い。『会議が長くて大変だ』と言うが、それが当たり前と思い込み、“問題”であることを認識すらしていない企業もある」(新村氏)
この結果、予定していた納期に間に合わなかったり、ソフトウェアの完成度が低かったりと、さまざまなトラブルにつながることになる。「ビジネスとソフトウェアが直結している昨今、ソフトウェアとその管理体制に問題があると、ビジネス自体が危なくなるという事態が生じる」(長沢氏)
もちろん、ユーザー企業側でも、こうした“感覚”ベースのプロジェクト管理の課題を理解していないわけではない。最近では、アジャイル開発を支援するさまざまなプロジェクト管理ツールが提供されており、“実績”ベースの管理を検討する企業も増えてきている。その中で今、注目度が急上昇しているのが、アトラシアンが提供するプロジェクト管理ツール「JIRA Software」だ。
JIRA Softwareは、ソフトウェア開発の計画から追跡、リリース、レポートまで、プロジェクト管理の一連の工程をカバーしており、実績ベースで全て管理できる点が大きな特長となっている。
「JIRA Softwareでは、ソフトウェア開発のタスクや課題ごとにチケットを作成し、進捗をリアルタイムに管理できる。プロジェクトリーダーは、作成したチケットに開発担当者を割り当て、担当者はそのタスク内容に応じた作業を行い、成果物と共に登録する。従来のExcelによる管理のように、『0〜100%』といった進捗状況を手動で入力する必要はなく、チケットに成果物があるかないか、実績ベースで明確に進捗を把握できる」(新村氏)ともに
具体的には、「カンバンボード」の画面から「誰が、どのチケットを担当しているのか」「どれだけのチケットが、どのステータスにあるのか」といったリソース状況や進捗状況を一目で確認することができる。
カンバンボードは、「作業前」「進行中」「レビュー中」「レビュー済み」「完了」のステータスに分かれており、プロジェクトマネジャーがチケットを作成すると「作業前」に表示される。開発担当者が割り当てられたチケットは、開発者がブランチを作成すると「進行中」に自動的に切り替わる。担当者ごとの作業が進むと、順次「レビュー中」「レビュー済み」「完了 リリース」へとステータスが進んでいく。
新村氏は、JIRA Softwareの導入によって、開発プロジェクトの見える化ができる点を次のように強調する。
「今までのExcelをベースにした進捗会議では、全体の進捗状況を確認するのにかなりの時間を取られていたが、JIRA Softwareでは、カンバンボードを通じて、プロジェクトリーダーから開発担当者、運用担当者までチームのメンバー全てが、プロジェクトの進捗状況をリアルタイムに共有できる。これにより、進捗会議の時間を有効活用し、各タスクで発生している課題の確認や改善策の提案など、開発の質を高めるための議論を行うことが可能になる」(新村氏)
さらに、JIRA Softwareの大きな特長として、アトラシアンが提供するナレッジ管理ツール「Confluence」、Gitリポジトリ管理ツール「Bitbucket」、継続的インテグレーション/デプロイツール「Bamboo」とシームレスな機能連携を実現している点も見逃せない。
例えば、発注側のユーザー企業やプロジェクトマネジャーはConfluenceを活用して開発するソフトウェアに必要な機能一覧や課題を作成し、その画面からJIRA Softwareにチケットを発行できる。「特に、受託開発企業が多く使うExcelとの親和性を高めるために仕方なくExcelで要件を記入しているユーザー企業には好評だ。ConfluenceでJIRA Softwareの進捗情報などを確認することができ、ツールを切り替える必要がない」(長沢氏)
またBitbucketと連携することで、開発者はJIRA Software上からのブランチの作成、ソースコードのバージョン管理やプルリクエスト(レビュー依頼)、レビュー内容の管理を適切に行える。
リリース担当者はBambooを利用することで、開発した内容を把握した上で、レビューが終わり完成したソースコードをデプロイ可能かどうかの判断を安心して行えるのである。
この他に、チャットツールの「HipChat」とも連動しており、各チケットにチームメンバーとやりとりしたチャットの内容などを保存できる。これにより、開発中にどんなことが起こったのかを事実ベースで記録していくことができ、万が一、レビューに失敗した場合や、最終的にリリースできなかった場合にも、その理由を的確に追跡することが可能となっている。
長沢氏は、JIRA Softwareを中核とした各種ツールの連携によって、開発プロジェクトの迅速化、および生産性向上を図ることができる点について、次のように補足する。
「Excelは言うまでもないが、多くのプロジェクト管理ツールは、プロジェクト管理のための機能に特化しているため、他のツールと組み合わせて使いたい場合は、他のツールをその都度立ち上げて作業をする必要があるなど、『コンテキストスイッチング』が発生する。
もちろん、JIRA SoftwareもGitHubやJenkinsと連携することはできるが、JIRA Softwareをベースにした、これらのツールであれば、発注側からプロジェクトマネジャー、開発担当者、レビュワー、リリース担当者まで、プロジェクトメンバー全てが、それぞれのツールで統合したインタフェースの中でプロジェクトを迅速に進めることができる」
またJIRA Softwareは、10種類以上の充実したレポート機能を備えており、発注側のユーザー企業やプロジェクトマネジャーによる開発プロジェクトやチームの分析にも役立てることができるという。
例えば、「バーンダウンチャート」では、最初に見積もったタスク数が、プロジェクトの進行とともに減っていく状況を確認できる。
もし、これが増えてしまった場合、後からタスクが追加されことになり、当初の見積もりが甘かったことが分かる。アジャイル開発で使われる「相対的見積もり」もベロシティレポートから分析することが可能だ。チームごとに、相対的見積もりが何ポイントであるかが明確に分かるため、開発能力に合った要件を適切に割り当てることができる。「このチームが、どのくらいの要件をこなせるのか」が分かることで、要件の優先順位の見直しや要件の再構成など対策が立てやすくなる。
「JIRA Softwareなどの実績ベースの管理ツールを導入したプロジェクトでは、実績が明確になることで、よく『心が折れた』話を聞く。また、プロジェクトマネジャーがよく課題に挙げる『チケットの粒度をどうするか』という問題も、見積もりの甘さに起因する場合が多い。もちろん、開発現場によって粒度は変わるものだが、現実を一度認識し、実績ベースでチケットを分割するなど粒度を次第に調整していくことで、見積もりの甘さを改善していくことができる」(新村氏)
さらに「Portfolio for JIRA」という、要件、チームリソース、リリース日と実績のデータを基に計画の遂行を予測して示してくれるアドオンもある。「ウオーターフォール型と異なり、アジャイルなプロジェクトだと先が見えない」とよく言われるが、将来を予測してみせることもできるのだ。
冒頭からアジャイル開発の必要性を述べたように、JIRA Softwareのアジャイル開発における有効性を紹介してきたが、JIRA Softwareはアジャイル開発だけで使うのではなく、ウオーターフォール型の開発でも使える。この点について、長沢氏は次のように付け加える。「ウオーターフォール型で開発してきたような大規模案件でもタスクを『カンバンボード』で把握できた方がユーザー企業は分かりやすくプロジェクトマネジャーも見通しを立てやすい。厳密なカンバン方式ではなくとも、ツールとしては十分に使える。実際にウオーターフォール型開発でもJIRA Softwareを使う事例は多い。必要ならガントチャートのアドオンもある」
このように、JIRA Softwareおよびアトラシアンが提供するさまざまなツールによって実績ベースでプロジェクトの全てを管理することは、プロジェクト管理におけるさまざまな課題を解決し、コストを削減するための一助になるはずだ。
「『知らない』では済まされないことを知ることができる。JIRA Softwareが提供する機能はシンプルで開発者やプロジェクトマネジャーに負担を掛けることはない」(長沢氏)
「開発担当者にとっては、日々の煩わしいExcel入力作業がなくなり、本業である開発業務に専念できる。また、実績が明確になることで、開発者は自分がやっていることに自信が持てる」(新村氏)
今プロジェクト管理に課題を抱えているという企業は、JIRA Softwareの導入を試してみてはいかがだろうか。
Copyright © ITmedia, Inc. All Rights Reserved.
提供:アトラシアン株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2016年3月31日