Re: Inspections Was: RE: [AM] ANN: Mashing Deadly Myths

"Scott E. Preece" <[email protected]> Tue, 24 Feb 2004 16:40:55 -0600 (CST)
Newsgroups gmane.comp.programming.modeling.agile
Message-ID <[email protected]>
| From: "J. B. Rainsberger" <[email protected]>
| Tiseo, Paul wrote:
| > JB:
| > 
| > OTOH, the ugliness of pair programming is that ten people who don't
| > know the answer to a specific problem individually, also don't know
| > it collectively.  
| 
| I disagree: collective knowledge is greater than the sum of individual 
| knowledge, because a group can form new connections by sharing ideas 
| that an individual simply does not do (or at least, not as quickly).
---

If the question is "How can we X?", I agree that collective insight is
greater than the sum of the parts.  Similarly, if the question is one
where the answer relies on deduction from known facts, the group's
greater pool of facts may well do more-than-linearly better than the
average member of the group.

On the other hand, if the question is "Does the compiler automatically
promote type A to type B?", then either somebody in the group knows the
answer or nobody does.  Adding people does increase the probability that
somebody will know the right answer, but only linearly.

Defect identification is usually more like the latter process than the
former - it's about right/wrong rather than better/worse, intuition, or
deduction.

There IS a group effect in inspections - the group, together, often does
find defects that no individual had found in preparation, presumably
because one person's issue leads another person to think about another
aspect of the code. However, total effectiveness is still far less than
linear in the number of inspectors involved. You usually see diminishing
returns - the first inspector finds n defects, the second finds some of
those n plus some additional defects, and so on, with the number of
additional defects per inspector dropping off steadily (probably more
than linearly). Fagan used those numbers in saying that recommending
4-6 inspectors as the best tradeoff between effectiveness and
efficiency.

It also isn't clear that having both pairs of eyes looking at the code
together is more effective at defect removal than having one write it
and the other read it after the fact.  As mentioned in a previous
posting, the reported numbers for defect reductions from using pair
programming are toward the low end of typically reported numbers for
single-reader inspections.  This wouldn't be surprising - the single
inspector has no other opinion to defer to, a member of a pair may not
raise an issue because she thinks the other member knew what she was
doing.  If you've got two people working together and they have
different answers to a given question, there's a non-zero probability
that the one favoring the wrong answer will convince the one who
actually knew the right answer, rather than vice versa.

scott
-- 
scott preece
motorola urbana design center (il67), 1800 s. oak st., champaign, il  61820  
e-mail:	[email protected]	fax:	217-384-8550
phone:	217-384-8589	cell: 217-433-6114	pager: [email protected]

For more information about AM, visit the Agile Modeling Home Page at www.agilemodeling.com
--^----------------------------------------------------------------
This email was sent to: [email protected]

EASY UNSUBSCRIBE click here: http://topica.com/u/?bUrKDA.bWnbtk.Z2NtYS1h
Or send an email to: [email protected]

TOPICA - Start your own email discussion group. FREE!
http://www.topica.com/partner/tag02/create/index2.html
--^----------------------------------------------------------------