does not include formal reviews. PairProgramming
, and impromptu informal reviews as part of team play are all part of XP.
s are run all the time, reviewing the code with machine precision, and helping the developers go very rapidly and confidently.
s review the entire system with machine precision, providing confidence to the customers.
means that over time all eyes see most all the code.
means that in troubled parts of the system, a new team takes over.
These, and the many other XP practices, have been sufficient so far to provide the quality that has been needed. XP is based on simplicity and we never add additional process elements unless we need them.
If quality defects of any kind were slipping through the process, an ExtremeProgrammingMaster
would then (and only then) devise something to catch them. She would follow the steps in ImprovingExtremeProgramming
points out that InformalReviews
could facilitate more people seeing more of the code. PairProgramming
and CollectiveCodeOwnership are
a very active form of InformalReviews
projects have observed no need to improve this area.
On the whole I'm a big fan of reviews. I push them with most clients I work with. From my observation C3 is full of reviews, through its practices of group design reviews with CRC cards, PairProgramming
, and Refactoring. It does not seem to me that adding further reviews would add much.
I haven't seen C3 in person, but the DoIt team uses these practices aggressively. Back in the days when I worked on that team <sentimental sniff> we used to think of PairProgramming as 'real time code review' -- BillBarnett
However Kent did do reviews in the earlier stages. I'd be interesting in knowing what people (Ron, Kent, other C3ers) think of that now. Do they feel it was not worthwhile, or worthwhile then but not now?
However this observation does not dim my liking of reviews. I usually work with non-XP clients. Without a strong use of PairProgramming
and Refactoring I wouldn't be comfortable without some form of review process. To me it isn't a case of reviews vs XP, it's more a case of how
XP does reviews.
See also my thoughts on RefactoringReviews
The place (or, rather, lack of one) for inspections in XP came up at a recent ExtremeTuesdayClub
, see http://www.xpdeveloper.com/cgi-bin/wiki.cgi?CodeInspection