ソフトウェア開発ツール

試してみたいコードレビューツール8選

何時間もコードを書き続けるだけでも大変ですが、そのコードのミスを自分で確認し続けるのはさらに負担が大きく、効率的とも言えません。

では、その負担をどう減らせばよいのでしょうか。頼るべきはチームメイトです。プロジェクトに新しい視点が入ると、仕上がりは大きく変わります。ソースコードレビューとは、まさにそのための作業です。

コードレビューツール

コードレビューとは何か。ピアコードレビューは、コードのエラーを減らし、品質を高め、適切なガイドラインに沿っているかを確認するための信頼性の高い方法です。

オンラインでのコード共同作業は人間の開発者同士で行うものですが、レビュー担当者が品質保証をさらに深めるために役立つコードレビューツールもあります。ここでは、あなたとレビュー担当者が試せる、安全なコードレビューソフトをまとめました。

ただしリストに入る前に、まずコードレビューがどのように行われるのかを整理しておきましょう。

コードレビューの進め方

経験豊富なレビュー担当者は、コードレビューの過程でいくつかの手法を使います。

手法

説明

「インスペクション」

少し堅い言葉に聞こえるかもしれませんが、これは初期のコードレビューで使われていた用語です。考案者のMichael Faganによって名付けられたこの手法は、複数の人と複数の段階を使い、印刷したコードとレビュー担当者自身の知識だけで1行ずつ確認するため、形式的なレビュー方法とされています。

変更ベースのコードレビュー

よりシンプルな手法で、コードベースに加えられた変更点に焦点を当てます。レビュー担当者は、多くの場合ソフトウェアツールを使ってレビューを進めます。

オーバー・ザ・ショルダー

オーバー・ザ・ショルダー方式では、別の開発者がコード作成者の「肩越しに見る」形で、コードを書いているところを確認します。

回覧方式

レビュー担当者のチームを関与させ、管理システムがメールでコードをメンバーに回し、すぐにレビューしてもらう方法です。

コードレビューをさらに強化する方法

同僚のコードに編集やコメントを入れることは有益ですが、それだけでは説明の余地があまり残りません。コードを書いた本人が学べることが少なくなり、開発者としての成長にもつながりにくくなります。

私たちは、ビジネス向け動画ホスティングプラットフォームを構築する中で、このことを身をもって学びました。チームがリモートで働いているため、完了したコードレビューごとに文脈を伝えることが欠かせませんでした。編集内容を説明し、時間を節約する最も良い方法は、レビューを進めながらPC画面を録画することだとわかったのです。

そこで私たちはScreenRecを作りました。ScreenRecなら、画面を簡単に録画し、レビュー内容を同僚に順を追って説明できます。コードレビューが終わったら、安全な視聴リンクを作成者へ送るだけで録画をすぐに共有できます。ぜひ試してみてください

コード品質

おすすめコードレビューツール7選

コードレビューの基本を押さえたところで、試してみたいおすすめコードレビューツールを見ていきましょう。

1. Gerrit

オンラインでのコード共同作業

Gerritは、GITバージョン管理システムの上に構築されたオープンソースツールです。Gerritの大きな利点は、複数のレビュー担当者が1つのプロジェクトに同時に取り組めることです。

各メンバーは、コードベースに加えられたすべての変更をリアルタイムで確認できます。コメントや議論のためのプラットフォームもあり、レビューの全段階で共同作業しやすい設計です。

独自機能

  • Git対応のSSHサーバーとHTTPSサーバー
  • サーバーサイドプラグインを提供

価格

無料

2. Phabricator

コードレビューの進め方

Phabricatorは、いわゆるオールインワン型のコードレビューツールです。オープンソースアプリで、共同作業者がコードレビューソフト内で作業しやすくなっています。レビューそのものに加えて、議論機能、計画ツール、コードテスト、さらには循環的複雑度のような複雑度指標まで扱えます。レビュー担当者が求めるものの多くを備えたツールです。

独自機能

  • 別ソースから読み取るためにリポジトリをプロキシ可能
  • レビュータスクの割り当てや変更・追加内容の確認に使えるワークボードを搭載
  • チャット機能

価格

無料、または1ユーザーあたり月額$20

3. Atlassian Crucible

コードレビュープロセス

このWebアプリケーションは、ピアレビューだけでなくコードそのものの改善に重点を置いています。トラッキング機能により、ユーザーはあらゆるコードの変更や共同作業者が行ったその他の操作を追跡できます。さらにレポート機能もあり、レビュー担当者は自分の編集内容について説明を書き残せます。

独自機能

  • Webベース
  • 軽量で、形式的なコードレビュー手法を採用
  • インラインでの議論

価格

5ユーザーまで$10

4. Review Assistant

ピアコードレビュー

Review Assistantは、開発プロセスからレビューまでチームを整理して進めるのに役立ちます。コードにコメントし、修正し、確認するというわかりやすい流れに沿って作業できます。さらに、各メンバーが行った作業について詳細なレポートも提供します。シンプルながら、レビュー業務をしっかり支えてくれるアプリです。

独自機能

  • Visual Studioと連携
  • カスタマイズ可能なワークフロー
  • コード内での議論

価格

3ユーザーまで無料、または10ユーザーで$349.95

5. Reviewable

安全なコードレビュー

Reviewableは、全員が状況を把握しやすくするタイプのアプリです。管理作業を抑えながら、完全にカスタマイズ可能なロジックで、レビューが本当に完了したタイミングを判断しやすくします。すっきりしたユーザーインターフェイスにより、作業内容も整理しやすくなっています。

独自機能

  • GitHub専用
  • 差分確認がしやすい左右並びのレイアウト
  • コード内の議論を追跡し、解決するまで見失わないようにします

価格

無料、または10ユーザーで月額$39

6. ReviewBoard

ソースコードレビュー

シンプルなものを探しているなら、ReviewBoardが向いています。豪華な機能は省き、レビューを完了するために必要なエディターとコメント機能に絞っています。それでも必要な仕事はこなし、構文ハイライトによって読みやすさも少し高めてくれます。

独自機能

  • モックアップ、画像、PDFファイルもレビュー可能
  • 課題トラッカーを搭載
  • コメントがコードの横に表示されます

価格

セルフインストールは無料、RB Hostingでは10ユーザーで月額$29

7. JArchitect

ソースコードレビュー

Javaコード専用に作られたJArchitectは、コードベースを詳細に分析し、想定されるエラーや改善が必要な箇所をまとめたレポートを送ります。コードクエリ、課題管理、トレンド監視などの機能により、開発者が後から問題やストレスに直面しにくくなるよう支援します。

独自機能

  • 進捗を最新状態で追跡できる高度なビルド比較とコード差分
  • 80種類以上のコード品質指標
  • 技術的負債の自動見積もり

価格

ライセンスとサブスクリプションで推定$500以上(実際の価格は個別見積もり)

8. Codementor

ピアコードレビュー

ライブの1対1コードレビューセッションを希望するなら、Codementorが向いています。審査済みメンターが12,000人以上おり、経験豊富な開発者とつながって、リリース前にコードをレビューしてもらえます。

独自機能

  • 審査済みメンターの大規模コミュニティが、ライブ1対1セッションでコードレビューを提供
  • 組み込みのメッセージングツールを提供
  • コードを保護するためのNDAオプション

価格

メンターによって異なりますが、通常は15分あたり$10から

まとめ

質の高いコードレビューは、必ずしも難しいものではありません。コードレビューツールとScreenRecを使えば、プロジェクトを確認し、丁寧に説明し、議論する流れを作りやすくなります。長期的にコーディングスキルを高める選択肢も豊富です。もしかすると、あなた自身が近いうちにソフトウェア品質保証(SQA)の頼れる存在になるかもしれません。

参考情報と関連資料

Twitter
Facebook
Linkedin

お見逃しなく

新着記事、ウェビナー、その他のお知らせを受け取れます。