The client and development team agree on a detailed scope, timeline, and total cost before the project starts. Work proceeds according to this plan, with payment usually tied to specific milestones.