We extend and customize reusable and open software.
Some Implications of Bazaar Size
Third Draft. Aug 11, 1998 Copyright 1997-1998, Forrest J. Cavalier, III Mib Software
All rights reserved. Comments welcome!
3. Alternate Debugging methods
There are alternative debugging methods which might be used to counter a small "effective working size."
Alternatives
I outline extending two established defect detection and removal methods to the bazaar style model. This permits adapting the bazaar model to a small set of developers (even in-house corporate and contract programmers) or to help ensure software quality before release to customers.
That these do not advocate a single "gateway" person or small group to perform the activities, not even the project leader. This maintains the "bazaar" aspect of the development as much as possible.
[My thoughts on the required activities are still being formed and detailed. I only present an outline here. - Forrest, 10/08/97]
Bazaar style code review
Volunteer code reviewers. Work independently, but pair up to reach agreement by
email. Then report back to the main list with findings, defect fixes, etc. Tricky
integrations can have multiple code reviewer pairs, or more than two, or a single
"responsible" person who is very familiar with the code.
If code reviewers do not report back, then other code reviewers can be recruited
or assigned. The open market of the bazaar model which is successful in generating
enhancements is not going to be as effective at motivating code reviewers. Better
"top level" motivation and organization is probably necessary.
It is not necessary to have the same code reviewers for successive reviews. Code
reviewers can come and go.
Any tools or methods could be used to do the code review, but the Mib Software
unified source utility can effectively be used to show multiple versions (and the results of
multiple merges) for code inspection and discussion.
Concentrating on only the changed sections is most effective, but inspecting
patches or context diffs is not always as effective as looking at full or unified sources.
Bazaar style unit testing
Make sure the software is easily unit tested, (configuration, compile time options, etc)
Make the unit test cases and software, instructions available to all bazaar developers.
Encourage the use of the unit testers to verify all new code and defects.
Function/Unit tester software can be acquired/developed using the bazaar model.