JIRA のグループとプロジェクト ロール

2011/09/22

Go2Group 丹羽です。今回は、アトラシアン社の課題管理システム JIRA のプロジェクト ロールについてご説明したいと思います。プロジェクト ロールは、JIRA を初めて使う方にはすこしわかりにくい概念で、「グループと何が違うのですか?」「プロジェクト ロールを利用するメリットは何ですか?」というご質問をよくいただきます。これから、その点についてお話を進めたいと思います。

エンタープライズの開発とアクセス コントロール

オープンソースの開発プロジェクトでは、「プロジェクトの状況はすべてのユーザーに等しく共有されている」というのが「常識」です。しかしながら、本社、グループ会社、協力会社などがチームを組んで開発を行うのが一般的なエンタープライズでは、「どのユーザーがどんな挙動を行えるか」という権限コントロールが重要になります。

最近の課題管理ツールの多くはこのような要求に対応しており、グループを設定する事でそれぞれのグループに属するユーザーに異なった権限を付与する事ができます (当然ながら、この機能は JIRA にもあります)。

ところが、問題となるのは、エンタープライズでは多くのプロジェクトが同時並行で運用されており、ユーザーはプロジェクトごとに異なったアクセス権限を持つのがむしろ普通である、ということです。

例えば、ユーザー A さんはプロジェクト 1 ではリーダーなのでプロジェクトに関するすべてのアクションを行えるが、プロジェクト 2 では課題を閲覧したり、作成したりするだけ。プロジェクト 3 は、外部の協力会社と行っているものなので、そもそもアクセス自体できてはいけない。

言葉にすると複雑ですが、こういった状況はエンタープライズの開発で日常的に起こっているはずです。JIRA では、権限スキームという概念があり、プロジェクトの中で誰が何をできるかを規定できます (逆に、この機能がないと、プロジェクトの数だけ課題管理サーバーを運用するはめになります)。

JIRA の権限スキームと問題点

ゴートゥーグループ ブログ : JIRA の権限スキーム画面

上図は権限スキームのスクリーンショットです。たくさん設定できる項目がある事がお分かりいただけると思いますが、これでも一部です。権限スキームを作成し、どのグループが何をできるかを指定し、それをプロジェクトと関連づければ、前節で述べたような要件は解決できる事になります。

ところが、ここにも問題があります。例えば JIRA に 100 個のプロジェクトがあり、それぞれが異なるアクセス権限を必要とする場合、権限スキームを 100 個作らなくてはなりません (ちなみに、私がお客様からお伺いした経験から申し上げますと、100 個のプロジェクトはむしろ少ない方です)。

初期のバージョンの JIRA には、このような問題があったのです。

プロジェクトロールの活用による効率的な運用

そこで、最近のバージョンの JIRA では、別の考え方が導入されました。それは、「権限スキームの数は最小限にしておき、誰がどんなグループに属するかをプロジェクトごとに決める」というものです。

プロジェクト 1 のプロジェクト ロール

ゴートゥーグループ ブログ : サンプル プロジェクト 1 のプロジェクト ロール

プロジェクト 2 のプロジェク トロール

ゴートゥーグループ ブログ : サンプル プロジェクト 2 のプロジェクト ロール

上の 2 つのプロジェクトはどちらも同じ権限スキームを利用していますが、それぞれのプロジェクト ロールに参加しているユーザーが異なっています。

プロジェクト 1 では、プロジェクトの「管理者」ロールに、JIRA 全体の管理者と、jiro さんが参加しています。また、「開発者」ロールには、社内の開発者グループに加え、”external-developers” という外部の開発者グループが加わっています。「ユーザー」ロールにも、”external-testers” という、テスターのグループが含まれています。

一方、プロジェクト 2 は社内だけのプロジェクトです。従って、ロールに外部の開発者やテスターは含まれていません。また、プロジェクトの管理者に、jiro さんの代わりに hanako さんがアサインされているのが分かるかと思います。

このようにして、権限スキームの数を最小限にしながら、ロールによってプロジェクトごとに権限をコントロールする事が可能になります。

まとめ

これまで、既存の JIRA にあった権限の考え方とその問題点、そしてプロジェクト ロールの意義についてご説明をしてきました。

今回のお話は「権限」が中心でしたが、実は同じ考え方は「通知スキーム」にも利用できます。通知スキームは、JIRA にイベントが発生した際に、誰に通知メールが送付されるかを定義できるものですが、これもプロジェクトの数だけ設定していては大変です。通知スキームも、プロジェクト ロールとの組み合わせで、最小限の数を作成するだけで済みます。

プロジェクト ロールは、JIRA で管理するプロジェクトの数が多くなればなるほど効果を発揮します。是非、ご活用ください!

Tags: ,

       

最新情報をチェック!

弊社およびアトラシアン社製品に関する最新情報は以下の各種チャンネルからお受け取りいただけます。

RSS フィード ゴートゥーグループ Twitter ゴートゥーグループ Facebook ページ ゴートゥーグループ YouTube チャンネル