1. A computerized system for developing software programs by conducting competitions using a communications server and a review board subsystem, the system comprising: a communications server for communicating as part of a first competition for a design of a software program a specification for the design of a software program to a first plurality of developers and for receiving from each of a subset of the first plurality of software developers, in response to the communicated specification, respective designs for the software program; a review board subsystem for facilitating a design review process for scoring each of the received designs using an electronic document scorecard and selecting one design from the received designs based at least in part on its score in the design review process; and wherein the communications server is also for communicating the selected design to a second plurality of software developers as part of a second competition for development of the software program designed in the first competition and receiving from each of a subset of the second plurality of software developers, in response to the communicated design, respective software programs; and wherein the review board subsystem is also for facilitating a software review process for scoring each of the received programs using an electronic document scorecard; and selecting one program from the received programs based at least in part on its score in the software review process.