Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
レビューってなんなの〜レビューに対する5つの誤解〜 / 5 misconceptions ab...
Search
nihonbuson
PRO
August 17, 2021
Technology
3
1.6k
レビューってなんなの〜レビューに対する5つの誤解〜 / 5 misconceptions about software review
nihonbuson
PRO
August 17, 2021
Tweet
Share
More Decks by nihonbuson
See All by nihonbuson
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
330
クラシフィケーションツリー技法
nihonbuson
PRO
1
86
意外と知らない状態遷移テストの世界
nihonbuson
PRO
1
710
「品質のつくりこみ」と「リリース後に行うとよいテスト活動」を体験する
nihonbuson
PRO
1
260
ホリスティックテスティングの右側も大切にする 〜2つの[はか]る〜 / Holistic Testing: Right Side Matters
nihonbuson
PRO
0
1.7k
テストを実施する前に考えるべきテストの話 / Thinking About Testing Before You Test
nihonbuson
PRO
18
3.6k
テストコードにはテストの意図を込めよう(2025年版) #retechtalk / Put the intent of the test 2025
nihonbuson
PRO
17
3.5k
ソフトウェアテスト 最初の一歩 〜テスト設計技法をワークで体験しながら学ぶ〜 #JaSSTTokyo / SoftwareTestingFirstStep
nihonbuson
PRO
6
1.1k
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB #JaSST #JaSSTTokyo / Readable test code
nihonbuson
PRO
14
25k
Other Decks in Technology
See All in Technology
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
130
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
740
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
210
Cloud Runでコロプラが挑む 生成AI×ゲーム『神魔狩りのツクヨミ』の裏側
colopl
0
130
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
130
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
180
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.4k
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
530
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
260
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
150
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
120
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
760
Typedesign – Prime Four
hannesfritz
42
3k
Speed Design
sergeychernyshev
33
1.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
GitHub's CSS Performance
jonrohan
1032
470k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
Faster Mobile Websites
deanohume
310
31k
Tell your own story through comics
letsgokoyo
1
810
Transcript
レビューって なんなの? 〜レビューに対する 5つの誤解〜 ブロッコリー (@nihonbuson)
自己紹介 • 風間裕也(ブロッコリー) • @nihonbuson • 社外活動 ◦ JaSST Review実行委員長
◦ WACATE実行委員 • 執筆活動 ◦ 『テストコードの注入から始める レガシーコードのリファクタリング』 ◦ 『Agile Testing Condensed』翻訳 ◦ 『Testing in DevOps』翻訳
執筆or翻訳した書籍 Agile Testing Condensed Japanese Edition テストコードの注入から始める レガシーコードのリファクタリング A Practical
Guide to Testing in DevOps Japanese Edition 執筆 翻訳 翻訳
自己紹介 • 風間裕也(ブロッコリー) • @nihonbuson • 社外活動 ◦ JaSST Review実行委員長
◦ WACATE実行委員 • 執筆活動 ◦ 『テストコードの注入から始める レガシーコードのリファクタリング』 ◦ 『Agile Testing Condensed』翻訳 ◦ 『Testing in DevOps』翻訳
ソフトウェアレビューに対する誤解 1. レビューはテストではない 2. レビューは、お硬いミーティングである 3. 知識をたくさん持っている人だけがレビュアーになる 4. QAはインプットを得るために 設計のレビューに参加する
5. レビューの唯一の目的は、説明した内容で実装したら 動かないような欠陥を指摘することである
誤解1 レビューは テストではない
レビューはテストの1つ by JSTQB テスト対象のコンポーネントやシステムを実行することは、 動的テストと呼ぶ。 テスト対象のコンポーネントやシステムを実行しない場合は、 静的テストと呼ぶ。 このため、テストは要件、ユーザーストーリー、ソースコード などの作業成果物をレビューする活動も含む。 出典:http://jstqb.jp/dl/JSTQB-SyllabusFoundation_Version2018V31.J03.pdf
誤解2 レビューは、お硬い ミーティングである
よくあるレビューのイメージ • 会議室に集まる • 声の大きい人が 威張り散らす • ドキュメント作成者が 萎縮する •
他の人は発言しないので つまらなくなる いらすとや1、2
開催形式 • インスペクション …最も公式的なレビュー • チームレビュー …チームで実施 • パスアラウンド …成果物を配布、回覧 • ラウンドロビンレビュー…全員が順番に司会者と レビュアーになる
• ピアデスクチェック …熟練者のレビュアーと実施 • ウォークスルー …参加者が質問やコメント • ピアレビュー …作成者以外と気軽に行う • アドホックレビュー …近くの同僚に声をかける • ペアプログラミング …他者視点を取り入れる 参考:SQuBOK策定部会(2014) 『ソフトウェア品質知識体系ガイド -SQuBOK Guide-(第2版)』オーム社
日々の相談もレビューの1つ • 「ちょっとこの部分が分からないんだけど」 • 「この部分を見てくれない?」 • 「この部分、チームでモブワークしよう!」 いらすとや
誤解3 知識をたくさん 持っている人だけが レビュアーになる
知識がないと発言できない? ドキュメント 作成者 Aの方針で実装します 開発者 知識が無いから 何も発言できないけど この方針で実装すれば 良いのね、了解
レビューは指摘だけでなく質問も! ドキュメント 作成者 Aの方針で実装します レビュアー これって他の実装方針は無いの?
作成者が自分で気付くかもしれない ドキュメント 作成者 Bの実装方針やCの実装方針があって…あれ? もしかしたらCの実装方針の方が良いかも?
他の開発者にとって学びになるかもしれない ドキュメント 作成者 Bの実装方針やCの実装方針もあったが、 リスクXがあるから、Aの実装方針で実装します 開発者 なるほど!だからAの 実装方針にしたのね!
誤解4 QAはインプットを 得るために 設計のレビューに 参加する
QAは聞いているだけ? ドキュメント 作成者 この部分は◦◦なので、△△の考え方を用いて ◇◇の方針で実装して… QA 詳細はよくわからないけど、 この情報をテストの時に 活かそう
QAの見え方をどんどんフィードバックしよう ドキュメント 作成者 QA この部分は、別の画面★★が影響しそうだけど 関係ないんですかね? この部分は◦◦なので、△△の考え方を用いて ◇◇の方針で実装して…
QAもどんどんフィードバックした例 https://speakerdeck.com/nihonbuson/example-mapping https://speakerdeck.com/nihonbuson/tddbc-2020-online-lt https://speakerdeck.com/nihonbuson/testing-is-the-creative-activity
誤解5 レビューの唯一の目的は、 説明した内容で実装したら 動かないような欠陥を 指摘することである
顧客が本当に必要だったもの http://ntd.way-nifty.com/blog/2005/05/post_80fd.html
レビューで話すこと • もしも設計書作成者が こんな認識を持っていたら…
レビューで話すこと(欠陥の指摘) レビュアー これだと、実装しても 何も動かないのでは?
レビューで話すこと(PLとの認識の差異) レビュアー 木に板がぶら下がってる 状態にしたかったのでは?
レビューで話すこと(顧客との認識の差異) レビュアー 顧客は、3枚の板が ぶら下がっている状態を 欲しがっていたのでは?
レビューで話すこと(本当に必要だったもの) レビュアー 本来は、揺れて遊ぶものが 欲しかったのでは?
レビューで話すこと(本当に必要だったもの) レビュアー 本来は、揺れて遊ぶものが 欲しかったのでは? レビューでは この質問を 目指したい!
レビューで話すこと(こんな質問でもOK) レビュアー そもそも今回はどんな物が 欲しかったんでしたっけ?
まとめ
まとめ • レビューもテストの1つ • 日々の相談もレビューである ◦ モブワークもレビューの1種 • 知識を持っていなくても質問することが価値になる •
QAもインプットする(ただ聞く)だけでなく、 一緒にレビューに参加してフィードバックしよう • レビューは欠陥の指摘だけでなく、 「本当に必要だったもの」に立ち返るためでもある
宣伝
レビューで話すこと(本当に必要だったもの) 「顧客が本当に必要だったもの」を 見つけ出すのは難しい…。
「本当に必要だったもの」を見つけるきっかけ(宣伝) • JaSST Review'21は10月22日開催! • 今回のテーマは 「価値を実現するためにレビューができること」 • 事例投稿も募集中!(8月30日締め切り) ◦
「日々の会話でこんな工夫をしたら、 本当に必要だったものを見つけられたよ!」報告 ◦ その他、レビューに関することなら何でも!
「本当に必要だったもの」を見つけるきっかけ(宣伝) • JaSST Review'21は10月22日開催! • 今回のテーマは 「価値を実現するためにレビューができること」 • 事例投稿も募集中!(8月30日締め切り) ◦
「日々の会話でこんな工夫をしたら、 本当に必要だったものを見つけられたよ!」報告 ◦ その他、レビューに関することなら何でも! レビューの分野は 新規性しかない! 論理的な結果よりも、 実際に行った事例重視!
おしまい