Thus, software’s advantage comes from the rapidity of the software development cycle—the process of moving from concept to prototype and the process of finding and correcting errors. If engineers never made mistakes, the costs of achieving a complex design in hardware and software might be comparable.

