レビューで理解を深められルカ!?

夏本番!暑い日が続きますね。ハンディファンが手放せません。🌞
7月からGRANDITの課題を進めている島田ですが、最初の感想は正直…

難しい!規模が大きい!

です。

初めての課題は何をすればいいのかわからず、似ている機能の真似をして製造を進めました。
しかし、ここ最近はどの部分でどのような処理をしているのか、内容を理解しながらコーディングができています。

処理を追えるようになってきた理由は、レビューにあります。
製造が一通り完了すると、チューターの方にコードレビューをしていただきます。今回はレビューの様子をご紹介したいと思います。

レビューとは

工程ごとの成果物(資料やソースコード)を元にレビューを行い、おかしいところがないかチェックする作業のことです。早期に仕様・設計の誤りや製造のミスを発見し、手戻りを少なくすることが目的です。

GRANDIT研修の最終的な目標は「開発プロジェクトに参加し、プログラマとして業務を行うことができるレベルに達すること」です。
そのため、新人の課題レビューはGRANDITの中身を理解し、製造方法を習得することが目的です。成果物の確認だけでなく、プログラミング作法やエビデンスのとり方など、細かいところまで教えていただきます。

レビューの種類

ウォークスルー
開発者と複数の関係者でレビューをする方法。問題点の検出に専念する短時間集中型のレビュー手法*です。

インスペクション
あらかじめ参加者の役割を決め、モデレータと呼ばれる開催責任者が会議の進行を取り仕切ります。*

ラウンドロビン
参加者が持ち回りで会議の進行を取り仕切ります。*

上記3つが代表的なレビュー方法です。複数人で行うのが一般的ですが、現在の課題レビューは新人1人に対してチューターの方1人で実施していただきます。
コードの修正がある場合はペアプログラミングで進めることもあります。

また、新人全体で行うレビュー会もあります。課題ごとにレビューイ(レビューを受ける人)を決めて行います。

レビューの進め方

STEP
課題概要の説明

チューターの方に今回の課題の内容を伝えます。

STEP
ソースコードの説明

自身が修正を加えた部分を中心に処理の説明をしていきます。「この関数はどのような役割をしているのか」・「どこで呼び出されているのか」など、修正箇所が影響を及ぼす範囲まで網羅して説明をします。
言葉にして説明していくため、理解度が低い部分が明確になります。デバック・ツールを駆使して、一緒にコードを追っていきます。

STEP
テスト仕様書の確認

正しいテスト項目が実施されているかの確認をしていきます。
自分で洗い出した項目に過不足がないかチェックしていただきます。この時にエビデンスに必要なデータのパターンのヒントもいただけます。

STEP
テスト結果・エビデンスの確認

バグはないか・エビデンスが正しくとれているのか確認していただきます。
エビデンスとは、テストをきちんと行ったという証明になるドキュメントです。
「きちんと証拠になっている」かつ「第三者が見やすい」エビデンスをとれるようにすることが課題です。

STEP
修正

この作業が一番重要です。レビューで指摘された部分を修正し、必要であれば2回目・3回目とレビューを重ねていきます。

レビューで学んだこと

いちばんはやはり、「GRANDITの内部の動きについて」です。GRANDITは大きなシステムのため、新しい発見の毎日です。まさにこのブログのテーマ、宇宙を探検しているような気分です。👩‍🚀👽
また、「製造・テストの方法」も一から学びます。
開発経験が豊富なチューターの方から直接アドバイスを受けられるため、良いコーディングスタイルや設計原則などを学びます。
ただ動くコードではなく、読みやすくより動作が軽いコードを書けるようにしていきたいです。

今後の目標

1,レビュー前の準備
課題の概要・書いたコードの理解が浅い・修正箇所が多いと、レビューの時間は延びてしまいます。自分の進捗に遅れが出るだけでなく、チューターの方・チームで行う場合はチームメンバの予定に影響を及ぼします。
調べ物は事前に行い、話す内容はある程度まとめておきます。この作業を効率化し、製造に時間を割けるようにしたいです。

2,エビデンスのとり方
提出する相手や所属するプロジェクトにより、適切なエビデンスのとり方が異なります。
特にデータベース関連のエビデンスは手間がかかり、データの受け渡しの流れを理解していないと意味のないデータを取ってしまいます。誰が見てもわかるエビデンスをとることが今後の課題です。

課題をこなしていくにつれ、レビュー後の修正箇所は少なくなっていますが、まだまだ仕様やバグを見落としていることがあります。
レビューを受けたらそのままではなく、振り返って身につけたり、同期に共有することでアウトプットしたりして、スキルを身につけ成長していきたいです!

参考:*)株式会社ウィネット情報処理教育研究会,「マネジメントと情報化」, 株式会社ウィネット,2020年12月,12ページ

夏の任務は、肌を太陽から守りきること!⛱️

この記事を書いた人

生まれも育ちも埼玉の島田琉夏です。
埼玉コンピュータ&医療事務専門学校出身です。
趣味はエレクトーンと趣味探し。
優しい先輩と頼もしい同期と共に日々奮闘中です!