Software Quality
Code Review
Milan Hradil
The Value you'll get today
What is code review
Misconceptions
Benefits
How to start with code review
Hands on ...
Do we need improve software quality?
Who is using Code Reviews?
Raise your hand!!!
Code Review
A junior or simply not-so-good programmer presents his work for review to an experienced colleague,
receives excellent suggestions within one hour,
and another hour later all suggestions are implemented and the code transforms from nasty to near-perfect.
Code Review
Code Review
- Review of non-trivial code takes a long time.
- Becomes harder to do a quality review as the time needed for the review increases.
- More time spent in review leads to poorer reviews, creating a downward spiral leading to deadlock.
Code Review
Solution?
Code Review
Consider Agile approach!
Code Review
Make code reviews:
small
and have the entire team in charge of making, accepting and implementing generated suggestions
Code Review
Misconceptions
A bug hunt
Code review won't guarantee you've found all the bugs
A blame game
When you focus on finding deficiencies in people rather than the code
Code Review
What reviews provide?
Functionality (defects in the code)
Maintainability (easy to understand)
Security
Reliability (fault tolerance)
Code Review
Why reviews are valuable?
Engineers like to take vacation
New employees want to be productive quickly
Nobody likes bugs
Team culture evolves
Make better estimates
Code Review
But code reviews take time!
When done right, code reviews actually save time in the long run.
Code Review
How to start?
Keep it lightweight
Encourage asynchronous reviews
Share interesting findings, constructs, design decisions
Small and frequent over large and rare
Concentrate on the code and conversation
Hands on ...
software quality - code review
By Milan Hradil
software quality - code review
- 430