The prototype model requires building a prototype before developing actual software to test requirements and functionality. A prototype is a crude initial version that can help identify needed changes before significant resources are spent. Key steps are gathering requirements, building the prototype, user evaluation, and refinement. Advantages include reduced risk of incorrect requirements and early error detection, while disadvantages include potential for the prototype to become the final product and requiring extensive customer involvement.