Effective Code Review for
  Agile Java Developers




 Wojciech Seliga & Sławomir Ginter
                                 ...
An Evil Plan




               Picture courtesy of Helico
                       CC BY 2.0
What
 code review
has to do with
     Agile
Picture courtesy of Cat and Girl
       CC A-NC-SA 2.5
style/conventions

  design
               reusable components

APIs
                do's and don'ts

                    ...
Mentoring junior developers

                                          Non-intrusive
                                     ...
Sharing good engineering practices




Picture courtesy of Hey Paul / CC BY 2.0
Picture courtesy of Jordan Miller / CC 2.5
Photo Courtesy of U.S. Army
Picture courtesy of tinyfroglet / CC 3.0
Preparation is difficult
             selecting the code
             organizing reviewers
             booking conference...
synchronized meetings




                        de-focusing
Picture courtesy of gadl / CC BY-SA 2.0
Risk of animosities
No concrete measureable
        results




                 Picture courtesy of aussiegall / CC BY 2.0
Successful code review

Lightweight - simple & flexible process

Asynchronous

Continuous

Efficient tool support

Diff-or...
Time for a longer demo




          +
Agile code review misconceptions
a fanatic bug-hunt
false confidence about
no bugs left
tracking results of every
single c...
The greatest initial Enemies

Rigid Process
Metrics
Micro-management




But teams evolve...
                      Picture...
Some rules of agile code review
                                          everyone can join review
                       ...
Unexpected advantages
Facilitation of distributed
teams

Collaboration on low level
design

Easier to introduce
than pair-...
Code Review vs. Pair Programming

         verification            creation
      later            sharing              no...
Picture courtesy of Kevin Dooley / CC BY 2.0
About us




wojciech.seliga@spartez.com                                  slawomir.ginter@spartez.com




                ...
Q&A




      Picture courtesy of Mykl Roventine / CC BY 2.0
Thank you
JDD Effective Code Review In Agile Teams
Upcoming SlideShare
Loading in...5
×

JDD Effective Code Review In Agile Teams

1,460

Published on

Presentation about effective code review for agile developers.
Slides were used during sessions at Agile2009 in Chicago and JDD09 in Krakow.

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,460
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
46
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

JDD Effective Code Review In Agile Teams

  1. 1. Effective Code Review for Agile Java Developers Wojciech Seliga & Sławomir Ginter Tag cloud generated with Licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. http://www.wordle.net/
  2. 2. An Evil Plan Picture courtesy of Helico CC BY 2.0
  3. 3. What code review has to do with Agile
  4. 4. Picture courtesy of Cat and Girl CC A-NC-SA 2.5
  5. 5. style/conventions design reusable components APIs do's and don'ts Picture courtesy of mil8 / CC BY 2.0
  6. 6. Mentoring junior developers Non-intrusive Asynchronous Less frustration / interruption for senior devs Picture courtesy of eddidit / CC BY 2.0
  7. 7. Sharing good engineering practices Picture courtesy of Hey Paul / CC BY 2.0
  8. 8. Picture courtesy of Jordan Miller / CC 2.5
  9. 9. Photo Courtesy of U.S. Army
  10. 10. Picture courtesy of tinyfroglet / CC 3.0
  11. 11. Preparation is difficult selecting the code organizing reviewers booking conference room scheduling printing ... Picture courtesy of jfdervin / CC BY-SA 2.0
  12. 12. synchronized meetings de-focusing
  13. 13. Picture courtesy of gadl / CC BY-SA 2.0
  14. 14. Risk of animosities
  15. 15. No concrete measureable results Picture courtesy of aussiegall / CC BY 2.0
  16. 16. Successful code review Lightweight - simple & flexible process Asynchronous Continuous Efficient tool support Diff-oriented whenever applicable Transparent and persistent
  17. 17. Time for a longer demo +
  18. 18. Agile code review misconceptions a fanatic bug-hunt false confidence about no bugs left tracking results of every single comment expecting hard metrics Picture courtesy of Juria Yoshikawa / CC BY-SA 2.0
  19. 19. The greatest initial Enemies Rigid Process Metrics Micro-management But teams evolve... Picture courtesy of tms. / CC BY-NC-ND 2.0
  20. 20. Some rules of agile code review everyone can join review & comment everyone can modify the scope of the review everyone can invite other people everything is public across the company it's about learning, it's not about blaming Picture courtesy of PantoDX / CC BY 2.0
  21. 21. Unexpected advantages Facilitation of distributed teams Collaboration on low level design Easier to introduce than pair-programming Time-zone difference may help you Knowledge Base Picture courtesy of david.nathan.cox / CC BY 2.0
  22. 22. Code Review vs. Pair Programming verification creation later sharing now knowledge ”repression” & ”prevention” asynchronous responsibility synchronous distributed improved quality co-located lower barrier higher barrier collaboration extensive intensive permanent volatile
  23. 23. Picture courtesy of Kevin Dooley / CC BY 2.0
  24. 24. About us wojciech.seliga@spartez.com slawomir.ginter@spartez.com Tag clouds generated with http://www.wordle.net/
  25. 25. Q&A Picture courtesy of Mykl Roventine / CC BY 2.0
  26. 26. Thank you
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×