メインコンテンツまでスキップ

レビューファイルを高速に読み取り可能なライブラリ「LightningReview-ReviewFile」の紹介

角谷 健太

Lightning Review(以下、LR)開発チーム、入社2年目の角谷です!
10月に入ってから非常に寒くなりましたね🥶
私は年がら年中羽毛布団で寝ているのですが、ついに毛布を引っ張り出しました!
これから本格的な冬にかけて、1枚ずつ布団及び毛布が追加されていく予定です。

今回は、レビューファイルを高速に読み取り可能なライブラリ「LightningReview-ReviewFile」をご紹介いたします!

LRでレビューを実施すると、".revx"という拡張子のファイルに、レビュー記録として指摘や修正状況などが保存されます。
通常、このレビュー記録の情報を取得するには、LRでレビューファイルを開く、またはLRに同梱されたピボット分析ツールが必要です。
しかし、独自の集計ツールを用意して、大量のレビューファイルに対して集計したり、品質分析を自動化したい、といった要望もあると思います。
そんな時に使えるのが、「LightningReview-ReviewFile」です。
例えば、これを使って作成したプログラムを、毎晩自動実行するように設定しておくことで、社内で日々行われている100以上のレビューを対象としてデータ収集し、

  • レビューの指摘が日々どれだけ検出されているかをモニタリング
  • 予定に対して遅れているレビューが無いかをモニタリング

なんてこともできるようになります!

「LightningReview-ReviewFile」はLR開発チームがメンテナンスしているオープンソースソフトウェアです。
このライブラリは、主にレビューと指摘に関する情報を取得でき、1000ファイルのレビューファイルの読み込みが数秒程度と非常に高速に処理が可能です。

具体的には、以下の2つのライブラリがあります。

また、上記のライブラリをコマンドプロンプトやPowerShellから簡単に利用できるコマンドラインツール「ReviewFileToJsonCLI」を公開しています。
こちらは、このリンクからダウンロードできるzipファイルを解凍して、格納されたexeファイルを実行するだけで利用できます。

それでは、「ReviewFileToJsonCLI」の実際の利用例をご紹介します。
このツールでは、フォルダ内に複数格納されているレビューファイルに登録されたレビューや指摘のデータを、JSON形式で出力できます。
下のgif画像では、Windows のコマンドプロンプトにて Lightning Review のファイルが複数格納されたフォルダを指定して実行することで、output.jsonというファイルを出力しています。

output

JSON形式で出力したoutput.jsonは、Excelの機能を利用して表形式に変換できます。
下のgif画像では、上で出力したoutput.jsonをExcelで表に変換して表示しています。
レビューファイルが保持しているそのままのデータを一覧に表示できるため、その後はお好みの形に合わせて分析できます。
このように、JSONファイルを入力に、どの機能に重大度の高い不具合が集中しているか、Excelや独自ツールで分析できます。
取得できるデータはこちらを参照ください。

data_transform

上記はコマンドラインツールを通してレビューのデータを取得する例ですが、「LightningReview.ReviewFile」および「LightningReview.ReviewFileToJsonService」ライブラリはNuGetパッケージとして公開しているため、ご自身で作成したプログラムから直接利用できます!

ライブラリは随時更新しており、つい最近、LR2.0に対応するためにバージョンアップしました(私が担当しました!)。
ぜひ、使ってみてくださいね!