チームのPJ管理ツールとしてOpenProjectを導入してみた。

この記事はNTTテクノクロス Advent Calendar 2023 シリーズ2の22日目です。

NTTテクノクロスの飯山です。
普段はコールセンタCRMシステムの構築・保守をしています。

本記事は迷子になりがちなPJ管理ツール(WBSツール)についてチームへOpenProjetを導入、活用してみた結果を記載していきます。

PJ管理ツールの迷路にいる方、OpenProjectが気になっている方はぜひお読みください。

# はじめに

### OpenProjectとは
OpenProjectはオープンソースのプロジェクト管理ソフトウェアです。
今回は無料で利用可能な[コミュニティエディション](https://www.openproject.org/community-edition/)を利用しています。

https://www.openproject.org/

環境さえあれば、導入はとても簡単です。
今回はDocker-Composeを利用した構築を実施しました。
試しに使うだけならDocker-Composeでの構築は20分くらいでできますので気になる方はまずは一旦試してみるのもおすすめです。

https://www.openproject.org/docs/installation-and-operations/installation/



### 導入のきっかけ

導入のきっかけはPJ管理ツールとしてOpenProjectを入れよう！と言うものではなく、他の理由からでした。。

元々私の所属するチームでは週に1度チーム内のプロジェクト進捗報告会を実施しており、報告のプラットフォームとしてExcelを利用していました。

このExcelですが、運用していく中でいくつか課題があり何かいいものがあったら移行したいねとチームで話をしていたということがそもそもの背景となります。

その移行先としてOpenProjectを試してみたところ、報告を記載するプラットフォームとしても良いだけでなく、報告とPJ管理状況を一つにまとめることができそうだということで導入をしてみました。

# 導入過程(スケジュール)

前述したように進捗報告を記載するプラットフォームの移行先を探していましたが、私が現在所属しているチームは全体で20名ほど、アクティブなプロジェクトは十数個あるため、OpenProject良さそう！入れましょう！で導入ができる規模でもないため以下のような形で導入決定までを進めました。

チーム全体で利用するものであり、プロジェクト管理の基盤として使っていくことを想定していたので、導入の構想から、正式に導入するまでゆっくり時間をかけ、最終的には3ヶ月ほどかけました。

#### ①OpenProject構築~仲間集め(1~2週間)
1. 執筆者である私が社内にOpenProjectを構築して触ってみる
1. チーム内の新しいものや効率化に積極的な人に声をかけ触れてもらう

#### ②小規模でのお試し運用(1~2週間)
1. すでに触ったメンバのプロジェクト(2~3個程度)で試験的に進捗報告やPJ管理を行ってみる
1. 前項で得られて知見をもとに、移行先としてOpenProjectが良さそうだとマネージャへ相談する
1. マネージャも実際に触ってみてもらい、トライアルでチームに導入する許可をもらう

#### ③チーム全体へ導入~トライアル運用（1ヶ月）
1. チーム全体へOpenProjectの案内と、トライアル運用の説明を行い、触れてもらう
1. チーム全体で利用の振り返りを行い、課題・改善を取りまとめ運用のフィードバックを行う

#### ④導入効果測定~改善して運用（1ヶ月）
1. フィードバックを取り込んだOpenProjectを用いて追加でトライアル運用を行う
1. チーム全体で利用するツールとして利用していくかをチームメンバと合意をとる
1. 正式採用

### 導入の振り返り
今、振り返ってみると①と④が大事な過程だったなと思います。
①OpenProject構築~仲間集め(1~2週間)
まず、自分で動いてみるだけでなく周りで興味ありそうな人に声をかけ、周りを巻き込むことで導入に向けての話が一気に進んだなぁと思ってます。
一人で進めていると結局検討できるのが一人分の隙間時間で、一人分の見えている範囲だけになってしまいますが、早々に周りを巻き込むことで、巻き込んだ人が自分の隙間時間に検討を進めてもらえたため諸々が進みました。

④導入効果測定~改善して運用（1ヶ月）
チームに導入します！と言ってただ導入するだけだと結局、①~②までで考えた内容を展開して漠然と利用していくだけになり実際にチームメンバで使っていく上での不満や、個々人で得られたより良い使い方などの知見を集めることができず、せっかくの導入効果を満足に得られないのではないかと考えていました。
そこで１か月試験的導入をするので、皆さんで利用して課題やノウハウを共有する時間を１か月後に設けます。と導入当初から宣言をすることでチームメンバがその観点で踏まえた利用してもらうことができました。
この中ではツールの使い方だけでなく、記載内容や記載ルールなども話しました。
その結果、当初有志で検討した内容以上に良い使い方を考えることができました。


# 運用方法

実際にどのように運用しているかを記載していきます。
OpenProjectの公式ページには機能をわかりやすくまとめているサイトがあるので、こちらをベースに現在使っている機能と使い方を紹介します。

https://www.openproject.org/collaboration-software-features/

## 進捗報告用途

### 利用機能

- Project list

https://www.openproject.org/docs/user-guide/projects/#projects-list

プロジェクトの一覧を表示する目次のような機能です。
デフォルトだと、プロジェクトの名称とステータスが表示されているのみです。
今回の運用では表示項目をカスタマイズし、PJ個別の詳細状況も表示できるようにカスタマイズしています

- Project hierarchy

https://www.openproject.org/docs/user-guide/projects/#project-structure

プロジェクトに親子関係を持たせることができる機能です。
今回の運用では、続き物のプロジェクトや、顧客毎など、PLが管理しやすい単位で親子関係を持たせています。

- Project overview page

https://www.openproject.org/docs/user-guide/project-overview/#project-overview

プロジェクトの概要を表示するページです。
プロジェクトリストに表示される情報に加え、プロジェクト個別で情報を持つことが可能です。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/100966/b56f5f25-3dd9-324e-8802-ed48eba73c3b.png" width="150">

プロジェクトの進捗状況は前述のプロジェクト一覧にも表示することが可能ため、ここに進捗報告会用のプロジェクト状況を記載する運用をしています。

実際の画面をベースにしたざっくりとした解説画像です
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/100966/b528a6ca-5f05-c898-8bd5-6411f2252a4c.png)


## プロジェクト管理用途

- Gantt charts

https://www.openproject.org/docs/user-guide/gantt-chart/

よくあるガントチャートを作成するツールとなります。
WBS管理ツールだけあって、Excelマクロで作るものに比べて、「あ、すごい親切」と感じる機能が多くあります。

- Work packages

https://www.openproject.org/collaboration-software-features/#:~:text=%E3%83%90%E3%82%B0%E3%81%AA%E3%81%A9)%20%E3%81%A7%E3%81%99%E3%80%82-,%E3%82%82%E3%81%A3%E3%81%A8%E8%A9%B3%E3%81%97%E3%81%8F%E7%9F%A5%E3%82%8B,-%E9%96%A2%E4%BF%82%E3%81%A8%E9%9A%8E%E5%B1%A4

ガントチャートの1行と1:1対応する項目ページです。
タスクの詳細や状況などを記入することができます。

WBS作成時にWork Packageを作成し、動きがあれば担当者が適宜状況を記入する運用をしております。
こちらについてもよくある使い方かなと思いますので詳細は上記リンクでご確認いただければと思います。

- Relations and hierarchies

https://www.openproject.org/docs/user-guide/work-packages/work-package-relations-hierarchies/#work-package-relations

Work Package(タスク)に親子関係・前後関係を定義できます。
詳しくは上記リンクをご確認いただけrばと思います。

個人の感想ですが、関係性を順守した制約・変更チェックをOpen Projectが実施してくれるため、タスク変更時の考慮漏れなどが防げ大変助かってます。


## 導入効果

### よかったこと

- Excelに比べて使いやすく、安定した進捗共有プラットフォームとして使うことができてた。
- WBS管理やタスク管理に特化したツールを使うことで、チームとして統一したPJ管理の仕組みを持つことができた。
- チーム全体を巻き込むことで導入前後でプロジェクト管理・報告の質が統一・向上した。

### 課題・今後

- プロジェクトの形態に合わせた管理・報告テンプレートづくり
現在も取り掛かってはいますが、プロジェクトの管理方法やマネージャ向けの報告がプロジェクトごとに統一されておらず記載粒度や内容に差があるため、必要な情報が管理できていない、逆に過剰に記載されているということがあります。
ここはツールを利用してチーム全体の習熟度を高めていくことで将来的に改善していきます。

- WBSの出力方法
公式サイトに、PDF出力やエクセル出力はありますがどちらも実態としてはWBSの項目部分のみを出力し、ガントチャート部分を出力してくれない仕組みとなっています。

https://www.openproject.org/docs/user-guide/work-packages/exporting/

顧客やステークホルダーに進捗を報告するためにはタスクと、そのガントチャートが見えることが理想なのですが、今のOpenProjectでは実施することができません。

今後のアップデートに期待しつつ、今はcsvを取り込んだらグラフを描画できるエクセルマクロ構築やツール開発を考えています。


# 終わりに

ここまでお読みいただきありがとうございました。

明日のNTTテクノクロスアドベントカレンダーは@uehajさんです。
お楽しみに！