- Check MP3 score in subversion.
- Start MP4 Photoscoop or work on pair programming task if you missed last week's lab.
Peer Code Review
Last week you learned about Pair Programming. Another important development technique is a Code Review by your peers. And that's what we'll do in today's section.
Following is the code review process:
- The lab assistants will assign each pair to work with another pair (i.e. 4 people sit together around one workstation.)
- Take turns carefully reviewing each pair's work. You should take 10 minutes per pair. You need to discuss, provide tips, provide constructive criticism and ideas, and discuss the following: (Keep this list open during your code review)
- What does the modified game do? (i.e. Please demo your program)
- Who did what in the code? What did each person do as the driver or navigator?
- Do the pair programmers understand the Pair Programming methodology and did they follow it?
- What was hard? Which parts took the most brainpower?
- What was unexpected? What took longer than expected and why?
- What went wrong? What did you have to debug and fix?
- Code clarity: is the code well documented and formatted (properly indented)? (Hint: Eclipse can indent for you - right click Source->Format.)
- Lessons learned: If you wrote it again, how would you write it differently?
- Feature/Bug: If you had more time, what would you work on next?
- If you have extra time you can:
- Ask harder questions about how the code works.
- Try to improve the code.
- Discuss how to break up the code into static class methods.
- Discuss if the code used more methods how you could create automated unit tests (similar to the MP?) to verify the code worked properly.
To be sure to get points, read the following carefully:
- Check that the @author line has the list of authors' netids.
- Typos/not committing your file mean no points for the author and/or reviewer, so you will want to check your netid carefully for typos in your own work and also the code that you review.
- @reviewed netid,netid <-- the list of netids of code reviewers on the same line!
- Commit this changed file back to subversion!
- Be sure to follow the instructions exactly, e.g. '@reviewed' not '@ reviewd'
Pair Programming Projects FAQ
- Yes, you need to be a team member; it's a required part of the course.
- No, you cannot work alone; being a computer scientist means working with others.
- Yes, it's graded for lab achievement points this week.
- This project is different from the MPs. The MPs define specific programming objectives. Being a computer scientist means being able to create things and work with others. This is the main purpose of the pair programming project.
This week: Pair-Programming Projects Show-And-Tell #1
- We will ask you to:
- present your team of two
- show your improved game
- present the code changes you made
Completion of the Show-And-Tell will add 15 percentage points to your quiz scores. (e.g. Suppose the sum of your quiz scores to date is 270% out of 300%, you could potentially be bumped up to 285%/300%). The theoretical limit on quiz scores is now 315% out of 300%. Cool, huh?!