本機能のきっかけとなったIssueはこちらです。
A better way to work w Epics
Epic機能について良い議論が行われていました。
ZenHubの最新バージョン2.16.11で追加されたEpic機能について説明したいと思います。
ZenHubとは
ZenHubって何?という方は@GeckoTangさんのZenHubとはという記事を見てみて下さい。
GitHubを拡張するプロジェクトマネジメントツールです。
エピックとは
エピックって何だ?という方はAtlassianの
エピック、スト-リー、バージョン、そしてスプリントを読んでみてください。
これらは、アジャイルでスコープとスケジュールを適切に管理し、動くソフトウェアを提供し続けていくエンジンとなります。
ZenHubのEpic(エピック)とは
簡単に言うとGitHubのIssueをまとめられるものです。
この機能を活用するとGitHubの情報の構造は次のようにすることが出来ます。
プロジェクト (repository) > リリース (milestone) > 機能 (label) > エピック (Epic) > ストーリー (issue) > タスク (tasklist)
Issueを最小作業単位、ユーザーに価値を提供する単位として利用します。
今までは、大きな作業群であるエピックはユーザーストーリーとは別のIssueとして管理しなければなりませんでした。(チームそれぞれでやり方は違ったと思います)
その問題をZenHubの機能によって解決することができるようになりました
以下ZenHubのEpic機能を紹介します。(2016年4月4日時点)
エピックの作成
Issue作成画面にいくと、 Create an epic ボタンが追加されていることが分かります。(これだけ分かりやすかったら多くの人が気付いたことでしょう、しかし特別なアナウンスはまだ行われていません。1)

Create an epic ボタンを押すとエピック作成画面に遷移します。
特にチュートリアルがあるわけでもなく簡素な説明が表示されるので、 Got it! を押します。

右側にIssue一覧が表示されます。

チェックボックスを選択すると、左側のEpicのリストにチェックした該当Issueが追加されます。

左下の Create Epic ボタンを押してエピックの作成は完了です。
GitHubのIssueページにEpicの項目が追加されていることが分かります。

IssueをEpicに変換することもできる!
Issue右側のサイドバーからIssueをEpicに変換することも出来ます。

確認が出るのでOKを押します。

変換するとIssueにEpic用の項目が追加され、Epicラベルも追加されます。(ここでEpicラベルを外しても、ZenHubはこのIssueをEpicとして認識します。)

エピックの検索
BoardsからEpicを確認すると、 Filter by this topic ボタンが表示されています。
このボタンを押すとEpicに属するIssueのみを表示することが出来ます。

エピックの更新
エピックは更新も行なうことが可能です。更新画面でチェックを付けて Update Epic ボタンを押すだけです。

当然エピックには複数リポジトリのIssueを含めることが出来るのでとても便利です。

エピックの削除
Delete this Epic を押すと、エピックを削除することが出来ます。
Issueの紐付けがなくなり、Epicラベルが外されます。
ただ、ログとしてどのIssueをEpicに入れていたかは残るので安心です。
まとめと感想
- ZenHubにEpic機能が追加されました
- Epic機能はGitHubでの開発の在り方を変えてくれるでしょう
- ZenHubのブラウザサポートが広がり、モバイルのサポートも追加されると期待しています
株式会社ookamiではライブ共有型スポーツアプリPlayer!を開発しています。
スポーツが好きな人、エンジニアリングが好きな人、ZenHubについて色々と教えてくれる方は@nafu003まで連絡頂けると泣いて喜びます。
-
記事は4日未アナウンス時点で作成したためこのような表現となっていますが、2016年4月5日1:30(JST)頃にメールでアナウンスされました。 ↩