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

加美川 真由子

Lightning Review (以下、LR)開発チーム、入社3年目の加美川です。
世間はバレンタインデーですね!
美味しそうなチョコレートがたくさんお店に並ぶようになり、私もお昼休みに色々買ってしまいました。
もちろん、全部自分で食べました😋 美味しいから仕方ないですよね?

LR には、GitHub と SVN のリポジトリ内のフォルダとファイルの一覧や、ファイルのアウトライン解析など、構成管理システムで管理している成果物のレビューを簡単に開始する機能があります。
次のバージョンアップでリリース予定の LR2.5 では GitLab にも対応しますので、今回はその機能のご紹介です。
なお、GitLab の SaaS 版(GitLab をクラウドで利用している場合)・Self-managed 版(GitLab をオンプレミスで利用している場合)の両方でお使いいただけます。

GitHub や SVN を利用している場合と同様に、レビュー前にレビュー対象とする GitLab のリポジトリを登録しておきます。
RepositorySettingForGitLab

リポジトリを登録することで、リポジトリ内のフォルダやファイルを LR 上で一覧できるようになります。
レビュー対象のファイルまたはコミットをレビュー対象のドキュメントとして追加することもできます。
追加したドキュメントのリンクには、選択したコミット時点のファイルのURLが設定されており、そのURLのファイルをローカルにダウンロードしてアウトライン解析を自動で行うため、すぐにレビューを始められます。

AddDocumentFromRepositoryFileOrCommit

この機能の便利な使い方は、以前のブログでも紹介しています。ご興味があればこちらもチェックしてみてください。
Lightning ReviewでGitHubとSVNのファイルを選択してレビューを開始
GitHubとSVNのファイルの変更前後のコミットを選択してレビューを開始

今後は、GitHub や SVN に加えて GitLab の成果物も、LR から簡単にレビューを開始できるようになります。
LR 2.5 をリリースしたら、ぜひ使ってみてください!

箕浦 彩香

Lightning Review (以下、LR)開発チーム、入社4年目の箕浦です。
年末年始にしっかり食べて寝たら、2キロも体重が増えてしまいました
例年より皮下脂肪がしっかり付いた気がするので、ダイエット頑張らないとと毎日思っています…笑

さて今回は、次のバージョンアップでリリース予定の LR 2.5 に搭載される新機能「ScriptEditor」について紹介します!

新メンバ加入時にだけ行うレビューファイルのテンプレートへのメンバ追加、特定の案件でしか使わない特殊なフィルタや、品質分析のための一時的な指摘情報の集計といった、レビューファイルに対して年に数回あるだけの操作や一時的にしか使わない操作などで、手作業は面倒だから自動化したいと思ったことはありませんか?
自動化するための手段として、LRの拡張機能を自分で開発するという方法もありますが、頻繁に使わない機能を作成するにはハードルが高いかもしれません。

ScriptEditor では LR を操作するためのスクリプトの記述・実行ができるため、LRに関する面倒な手作業を、スクリプトを書くことでボタンひとつで実行できるようになり、業務を効率化できます。
LR の拡張機能で利用できるすべての API を ScriptEditor でも同様に利用でき、インテリセンスが効いて候補が表示されるため、APIに詳しくなくても、スクリプトの記述は簡単です。
さらに、スクリプトはテキストファイルであるため、作成したスクリプトをチームメンバと共有することも手軽にできます。

例として、プロジェクトで利用しているすべてのレビューファイルのテンプレートに、新しく業務配属されたメンバをメンバ一覧に一括で追加するスクリプトを実行する様子を示します。

ScriptEditorのデモのgif画像

上記の Gif 画像内で実行しているスクリプト("テンプレートファイルにメンバを一括追加.csx")を以下に示します。

// 以下に追加したいメンバ名を設定
var memberNames = new [] {"近藤"};

// 以下にメンバを追加したいテンプレートファイルがあるフォルダを設定
var templateFolder = @"C:\Git\XXX\Docs\エンジニアリング\Current\07_ピアレビュー\Templates";

var directoryInfo = new DirectoryInfo(templateFolder);
var files = directoryInfo.GetFiles("*.revx");
var service = App.GetReviewFileService();
foreach(var file in files)
{
var review = service.OpenReview(file.FullName);

foreach(var memberName in memberNames)
{
// メンバ追加
var newMember = review.ReviewSetting.AddMember(memberName);
newMember.Reviewee = true;
newMember.Reviewer = true;
newMember.Moderator = true;
}

// 保存して閉じる
service.SaveReview(file.FullName, review);
service.CloseReview(review);
}

ScriptEditor を利用すれば、お手軽に LR の操作を自動化できます!
LR 2.5 をリリースしたら、ぜひ使ってみてください!

角谷 健太

Lightning Review (以下、LR)開発チーム、入社2年目の角谷です!
今更感がありますが、最近になってリングフィットアドベンチャーを買いました。
毎朝30分ほどやっているのですが、起きてすぐやると体がポカポカするのでいい感じですね💪
ちなみに身体がなまりになまっていたので、毎日筋肉痛と戦っています。イテェ~!

今回は、次のバージョンアップでリリース予定の LR 2.5 に搭載される新機能「LRMerge」について紹介します!

Gitにレビューファイルを格納する場合、複数のユーザーが同じレビューファイルに対して編集してコミットします。
その際にコンフリクトが発生すると、手動で解消してからコミットし直す手間がかかっていました。
LRMergeを利用することで、そのような手間を解消し、他の格納物と同じ管理ができるようになります!

レビューファイルに対するマージツールとして Git に LRMerge を設定すると、レビューファイルがコンフリクトした際に自動でマージを行います。
例えば、Git に格納されたあるレビューファイルに対して、AさんとBさんがそれぞれ指摘を1件追加してコミットした場合、LRMerge がAさんとBさんのそれぞれの編集後のレビューファイルをマージし、最終的に2件の指摘が追加されたレビューファイルをコミットします。
複数のユーザーが同じレビューファイルを編集してコミットしても、それぞれのユーザーの変更を自動でマージできるため、手動で解消する手間なく Git 上のレビューファイルを編集できます。

LRMergeのデモのgif画像

また、同じ指摘の同じフィールドに対してコンフリクトが発生した場合は、自身または相手の変更を採用し自動で解消します。
コンフリクトをどのように解消したかは、以下のようなマージ実行時のログで確認できるため安心です!

LRMergeのログの画像

以上のように、LRMerge を利用すればレビューファイルを手間なく Git 管理できます。
LR 2.5が登場したら、ぜひ使ってみてください!

小島 優介

Lightning Review 開発チームでプレイングマネージャーをしている小島です。

私事ですが、IT技術者向けの月刊誌「Software Design」で連載記事を執筆しています。
連載のテーマ名は「ハピネスチームビルディング」で、チームの皆が主体性を発揮して成長するための様々な知見を紹介しています。
2022年4月号から連載していまして、半年分の記事をWeb上でも公開しました。
以下の記事タイトルの中に、もしも興味のあるものがあれば、読んで参考にしていただけると幸いです。

  1. リモートワークのつらさを共感して楽しいに変える
  2. メンバー間で活発に議論する朝会にしよう
  3. ファシリテーターを皆に任せて楽しい振り返りに
  4. コーチングプログラミングで楽しく成長する
  5. 分報で各自の作業を可視化して皆で協力し合う
  6. 新しいものを試行する風土を作る

ちなみに本誌掲載時は、下図のように楽しそうな雰囲気のイラスト付きでカラー掲載してもらってます。
素敵なイラストをご用意してくださった編集部の方々に感謝です。

software-design

新美 真

Lightning Review(以下、LR)開発チーム、入社6年目の新美です!
11月に入ってあったかいものがおいしい時期になりましたね。
こんな時期には、やはりラーメンが食べたくなってしまいます🍜
寒くなくても週3で食べてしまうんですけどね……

今回は、LRを活用してレビューアへの相談事項を管理するTipsをご紹介します。

レビューで見てほしいポイントは独力では作り込めなかった、あるいは不安なポイントであると思います。
そんなポイントをレビューで相談できるようにLRを活用しましょう。
作り込みの最中でもLRを利用して不安なポイントを保存しておけば、よりレビューアの知識を引き出せるレビューとなるはずです。

たとえば、外部仕様の作り込みで不安なポイントを指摘にします。
具体的には、ダイアログのテキストボックスにおいて不適切な文字列を入力された場合に、ダイアログのOKボタンを無効にするか、OKボタンを押下したあとにエラーダイアログを表示すべきかで悩んだとします。
その場合に上記のような不安なポイントを指摘として登録することで、レビューの場ではどのような考え方や判断をして、どちらを採用すると良いのかをレビューアに聞くことができます。

consultation

そして、レビューアに聞いた方針を元に、レビューイがその方針とした理由とともに修正内容を記し、修正済みにステータスを遷移させます。

modified

レビューアは修正内容を確認し、レビューイの理解度も確認した上で確認済みにステータスを遷移させられるため、指導も指摘修正も、どちらも確実にやり切れます。

上記をヒントにしていただき、相談事項をLRでレビューアと共有すれば自分の不明点も解消でき、より質の高いレビューにつながると思います。

実際、私はレビューア・レビューイの両方の立場となった経験がありますが、レビューのポイントを絞って集中して議論できるため、とても効果的に感じました。

ぜひ、試してみてくださいね!