カテゴリー
開発・Web制作

GitHub は Backlog の代替になるか

長らく Backlog を使っているのですが、個人的に進めていた Git の布教も進みつつありますし、GitHub の値下げもあったので GitHub へ移行ができるか検証しています。まずはそれぞれのサービスの違いをまとめてみます。

基本機能

機能BacklogGitHub
管理単位プロジェクトリポジトリ
課題管理○ 課題○ issue
カンバン○ ボード(1つ)○ Projects(複数)
CI×
ソース管理○ SVN, Git(複数)○ Git(1つ)
プルリクエスト
静的サイト作成ファイル, SVN, GitPages1プライベートの場合は有料
Wiki2プライベートの場合は有料
ファイルストレージ×
ガントチャート3有料×

機能のありなしを見ると、GitHub は GitHub Actions という CI 機能があるというのは大きいですね。対して Backlog はファイルストレージとガントチャートがあるという点が魅力でしょうか(個人的にはあまり使わないのでそれほどですが・・・)。

管理の単位でも大きな違いがあります。Backlog は案件など「大きなプロジェクト」が単位で、その中で複数のソフトウェアを SVN や Git で管理するイメージです。対して GitHub はソフトウェアありきで、その中で複数の「小さなプロジェクト」が動くイメージです。ですので、システム屋じゃない場合は Backlog を選択するのが妥当です。システム屋であっても1つの案件で複数の小さなシステムが回っている場合は、 Backlog の方が俯瞰的にプロジェクト全体を見渡せるのでリーダー視点では使いやすそうです。

GitHub はソフトウェア単体の課題管理、Backlog は案件全体の課題管理に特化してると言えます。

課題管理

機能BacklogGitHub
担当者
期限×
マイルストーン
タグ付けカテゴリLabels
テンプレート
課題状態○ 自由に増やせる△ Open, Close
属性追加4料金プランによる×
ファイル添付
コミットと連携
課題の関連付け親子課題、片方向リンク相互リンク

課題管理機能の違いも見てみます。

Backlog 無料版の課題編集画面
Github の issue 作成画面

GitHub は課題ごとに期限を設定できません。まあ、課題一つ一つに期限書くのって結構しんどいので、マイルストーンでざっくり管理するのも正解かもしれません。

課題の状態ですが、 GitHub は open か close の2択しかありません。Backlog は未対応、処理中、処理済み、完了の4種類が存在します(プランによって増やせます)。open は 処理中, close は 完了に対応するものと個人的には思います5Backlog の状態の使い方は諸説あります。未対応は課題が存在している以上対応中なんじゃないかと思うので個人的にはいらないかなと感じる部分です。処理済みはレビュー待ちとかで使います。GitHub のレビューはプルリクエストですることが多いので issues ではいらないかもしれません。と考えると open close だけで困ることはなさそうです(最悪ラベルで代替できそう)。

Backlog は課題の属性が多いので、DB っぽく使うことがあります。例えば、課題対応時間の予定と実績を人時で入れられるのでそれを元に生産性の評価をしたりとか、研修で課題を与えた時に誰がどの課題を完了しているかといった管理にも使います。Backlog は汎用的に使えるということですね。

対して GitHub は課題が存在しているか対応が終わったかという最低限の機能しかない印象です。その分利用目的が合致すれば、余計な機能がないので使いやすいとも言えます。

プルリクエスト

機能BacklogGitHub
レビュアー×
担当者
CI×
マイルストーン
タグ付け×
テンプレート×
ファイル添付
課題の関連付け
デフォルトブランチ設定×
ブランチの保護×

プルリクに関してはやはり GitHub が強いですね。特にプルリク作成後に自動でテスト走らせられるのは GitHub の強みです。Git のブランチに対して権限設定が細やかにできるので、レビュー文化を浸透させるには適切なツールだと思います。

Backlog プルリク追加画面
GitHub プルリク作成画面

まとめ

Backlog はプロジェクトマネージャー(スケジュールやコスト管理をする人、プロジェクトメンバーを評価する人)にとって使いやすいツール、 GitHub はソフトウェア開発チーム(実際にソフトウェアを作る人)にとって使いやすいツール、というように感じました。どちらがいいというより適材適所で使うのがよいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください