20141105 俺のコードレビュー(lightning talk) #devraku

39
コードレビュー CODE REVIEW 及部敬雄 @TAKAKING22 TAKAO OYOBE 2014.11.5 俺のコードレビュー勉強会

Upload: takao-oyobe

Post on 20-Aug-2015

1.599 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: 20141105 俺のコードレビュー(lightning talk) #devraku

俺のコードレビューC O D E R E V I E W

及部敬雄@TAKAKING22 TAKAO OYOBE

2014.11.5 俺のコードレビュー勉強会

Page 2: 20141105 俺のコードレビュー(lightning talk) #devraku

コードレビューしてますか?

Page 3: 20141105 俺のコードレビュー(lightning talk) #devraku

コードレビューの目的は?

Page 4: 20141105 俺のコードレビュー(lightning talk) #devraku

品質の担保認識合わせ教育

Page 5: 20141105 俺のコードレビュー(lightning talk) #devraku

Really?

Page 6: 20141105 俺のコードレビュー(lightning talk) #devraku

品質の担保

認識合わせ

教育

- CI、静的解析、テスト …

- コード規約、ペアプロ …

- ペアプロ、家でやれy …

Page 7: 20141105 俺のコードレビュー(lightning talk) #devraku

品質の担保

認識合わせ

教育

- CI、静的解析、テスト …

- コード規約、ペアプロ …

- ペアプロ、家でやれy …

コードレビューじゃなくても できる方法はある

Page 8: 20141105 俺のコードレビュー(lightning talk) #devraku

品質の担保認識合わせ教育

偉い人が見るため

偉い人が知るため

偉い人が新人を…(ry

まさか…

Page 9: 20141105 俺のコードレビュー(lightning talk) #devraku

品質の担保認識合わせ教育

した気になってる

あるいは…

した気になってる

した気になってる

Page 10: 20141105 俺のコードレビュー(lightning talk) #devraku

コードレビューの儀式化

Page 11: 20141105 俺のコードレビュー(lightning talk) #devraku

コードレビューは問題解決の一手段

でしかない

Page 12: 20141105 俺のコードレビュー(lightning talk) #devraku

隣のコードレビューを そのまま真似しても

効果はあまり出ないかも

Page 13: 20141105 俺のコードレビュー(lightning talk) #devraku

なぜなら…

成功した事例には、 コンテキストや制約が存在し、それがあなたのチームに 当てはまるとは限らないから

よそはよそ、うちはうち

Page 14: 20141105 俺のコードレビュー(lightning talk) #devraku

http://www.pakutaso.com/20120806242post-1877.html

うわ… うちのコードレビュー 効果なさすぎ…?

こうならないために どうすればいよいのか?

Page 15: 20141105 俺のコードレビュー(lightning talk) #devraku

パターンランゲージ

http://books.rakuten.co.jp/rb/12432779/

Page 16: 20141105 俺のコードレビュー(lightning talk) #devraku

パターン=再現可能な解決策

http://www.slideshare.net/kawaguti/20111207-u

Page 17: 20141105 俺のコードレビュー(lightning talk) #devraku

パターンは組み合わせ可能

http://www.slideshare.net/kawaguti/20111207-u

Page 18: 20141105 俺のコードレビュー(lightning talk) #devraku

組み合わせて意味を持つ

http://www.slideshare.net/kdmsnr/fearlessjourneypostudy

Page 19: 20141105 俺のコードレビュー(lightning talk) #devraku

まとめると、

http://www.slideshare.net/kdmsnr/fearlessjourneypostudy

•事例だけでは役に立たない •事例からパターンに落とす •パターンを組み合わせて適用する •組み合わせることで効果が出る

Page 20: 20141105 俺のコードレビュー(lightning talk) #devraku

つまり、

http://www.slideshare.net/kdmsnr/fearlessjourneypostudy

•自分のチームの問題・課題を見える化 •事例からパターンに変換する •パターンを取捨選択する •パターン組み合わせて実施する点ではなく、

線・面で問題解決する

Page 21: 20141105 俺のコードレビュー(lightning talk) #devraku

実はぶっちゃけ…

パターンってうさんくさくて あんまり好きじゃなかった

Page 22: 20141105 俺のコードレビュー(lightning talk) #devraku

実はぶっちゃけ…でも教科書通りじゃ うまくいかねーんだよ いろいろ考えてやろうぜ ってことを代弁してくれてて ちょっと好きになった

Page 23: 20141105 俺のコードレビュー(lightning talk) #devraku

持って帰って欲しいもの

コードレビューパターン

Page 24: 20141105 俺のコードレビュー(lightning talk) #devraku

Pull Request問題コンテキスト

レビューのログを残したい

解決制約

人によって残し方が バラバラでレビューがつらい

Gitの使い方を覚える必要あり Pull Requestを用いる

Page 25: 20141105 俺のコードレビュー(lightning talk) #devraku

レビューコンテキスト問題コンテキスト

レビューの目的と観点を 明確にしたい

解決制約

レビューの目的が不明確で 必要な準備が不足している 観点がつかみにくい

時間がかかる レビューの最初に レビューコンテキストを 説明してからレビューを開始

Page 26: 20141105 俺のコードレビュー(lightning talk) #devraku

チームレビュー問題コンテキスト

レビューの質をあげたい レビュワーを増やしたい

解決制約

つまらない指摘が多くて レビューに 改善が盛り込めない

時間がかかる チームレビューを導入し、 全員がレビュワーになる (レビュワーの観点を知る)

Page 27: 20141105 俺のコードレビュー(lightning talk) #devraku

レビューカウント問題コンテキスト

レビュー施策の効果を 計測したい

解決制約

改善策はやっているが 客観的な効果計測が できていない

レビューカウントが多いから といって質が悪いとは 一概には言えない

1つのチケットにかかった レビュー回数をハンコで 計測して見える化

Page 28: 20141105 俺のコードレビュー(lightning talk) #devraku

レビューの見える化問題コンテキスト

一日のレビュー状況と偏りを 見える化したい

解決制約

自己中心的なレビュー予約が 増えてレビュワーの作業時間 が逼迫する

変更の際は変更コストが発生 かんばん&付箋でレビューを 見える化して朝礼で確認

Page 29: 20141105 俺のコードレビュー(lightning talk) #devraku

レビュー時間の固定化問題コンテキスト

レビュー調整のコストを 下げたい

解決制約

レビュワーが忙しく レビュー時間の調整に時間が かかってしまう

レビュワーの作業時間が 不確定

レビュータイムを朝夕に設けて 必要な人がその枠を予約する

Page 30: 20141105 俺のコードレビュー(lightning talk) #devraku

今紹介したのは、 自分の現場で実際にやっている コードレビューパターンの一例です。 今日たくさんパターンの原石が 見つかると思うので、 それを組み合わせて自分のチームの 改善に活かしてください。

Page 31: 20141105 俺のコードレビュー(lightning talk) #devraku

俺のコードレビューC O D E R E V I E W

Page 32: 20141105 俺のコードレビュー(lightning talk) #devraku

今のチームにとって 必要なコードレビューを

やっている

Page 33: 20141105 俺のコードレビュー(lightning talk) #devraku

今のチームにとって 必要なコードレビューを

やっている

ぶっ壊したい!!

Page 34: 20141105 俺のコードレビュー(lightning talk) #devraku

チェック 確認

学び

こうじゃなくて、

Page 35: 20141105 俺のコードレビュー(lightning talk) #devraku

学びチェック 確認

こうなるように

Page 36: 20141105 俺のコードレビュー(lightning talk) #devraku

コードレビューで もっとわくわくできるハズ

Page 37: 20141105 俺のコードレビュー(lightning talk) #devraku

コードレビューで もっと上を目指せるハズ

Page 38: 20141105 俺のコードレビュー(lightning talk) #devraku

コードレビューは必要なのか?

Page 39: 20141105 俺のコードレビュー(lightning talk) #devraku

お前のコードレビューはどうだ?