Answer to Question 12C-1

You write software by successive refinement by setting a small, testable goal, writing software to achieve that goal, testing whether the software achieves that goal, and fixing the software if necessary before moving on to the next goal.