TopCoder Design Competitions require participants to design a software component. Starting from a requirements specification, they produce a full set of design documentation: UML class, sequence, and use case diagrams, and a component specification document, which contains algorithm descriptions, exception handling, and documentation.
Each competitor's submission goes through a review process that includes an initial screening and, if the submission passes screening, a full review by a three person Review Board. The competitors have a chance to appeal their review scores and, once all appeals are answered, the winner of the competition is announced. After the winner fixes any remaining problems with their submission, the competition ends and the design is prepared to become the basis for a future development competition.