JIRAをアジャイルな開発環境でどのように使うか

GitLabをアジャイルな開発環境でどのように使うか のJIRA版です。前提などはそちらをご覧ください。
今回もTODOプロジェクトを通してJIRAがどのような機能をもっているか確認していきます。

JIRAの各機能の紹介

Project

プロジェクトを作ります。テンプレートがたくさんあるのですがScrumを選びます。Project typeでTeam-managedか、Company-managedかありましたが今回はTeam-managedを選びます。
 
最初の設定でBitbucketとConfluenceをつなげることができます。ソースコードとドキュメント管理が一体になっています。逆にAttlassian製品以外の連携(例えばGitHub)だと連携される機能が弱くなります。

Epic

最初にEpicを作成しました。

Issue

BacklogにIssueを追加します。Roadmapの + ボタンからBacklogが追加されます。
 
Issueにはタイプがあり、デフォルトではEpic, Bug, Story, Task, Subtaskの種類がありました。
 
IssueにはAssigneeを追加したり、Story pointを振ったりできます。さらにIssueに子Issue(Subtask)を紐付けることができるので以下のように作りました。

Sprint

スクラムのイテレーションであるSprintにIssueを追加します。ドラッグ&ドロップでIssueをスプリントに追加しスプリントを開始(Start sprint)します。
 
Sprintが開始されました。
 
SprintにはSprint Goalも設定できます。
 

開発

Issueから直接ブランチを作成できます。Atlassian製のBitbucketと連携しているのでスムーズです。なおブランチに日本語名がまぜたくない場合は、Issueキーであるというブランチをつくれば大丈夫です。
Bitbucket側でIssueが参照できます。
 
マージするとIssueを閉じることができます。
 
なおBurndownチャートはProject settings→Features→ReportsでOnにすれば以下のように見れます。
 

Roadmap

ロードマップをみると反映されています。
 
各種フィルタがありCustomize your view on the roadmapに詳しく書いてあります。

まとめ

JIRAを使うとプロダクト開発がどうなるか見てきました。Scrumに特化しているので非常に洗練された体験ができました。Atlassian製品との連携もよかったです。ぜひどこかのプロジェクトで使ってみたいものです。
ただ、複数のプロダクトを持つなどGitLabのケースであったGroupとSub groupを使うような階層構造がなかったので、1プロダクト1Projectで運用する想定なのかなと感じました。どのようにスケールするチームに対応させたらいいかは調べた中では見えないところでした。

参考

JIRAの価格

あとがき

JIRAを使って感じたこと

  • Scrumに特化したプロジェクトが作れるのでテンプレートのままプロダクト開発に使える
  • Issueをクリックしたら右ペインで開くなど編集が非常にしやすい。いちいちページロードしないので思考が中断されない。

RoadmapとAdvanced Roadmap

実際に関わっているプロジェクトのデータをいれてみたらRoadmapでは足りないことがわかりましたが、PremiumにはAdvanced Roadmapsというのがあります。こちらはProjectをまたいで、Timelineのような形でIssueがみえ、まさに求めているものでした。