102
THE LAWS OF SOFTWARE PROCESS
detractors criticize. It was, and is, still highly front-loaded. However. the
Waterfall Model, when it worked, did so because the relative quantity of
knowledge already known was large when compared to the quantity of
knowledge discovered by qualifying the knowledge (proving that the
known knowledge does indeed do the job). Making this already-known
knowledge functionally executable was usually just a matter of implement-
ing it and we did not tend to find much that was unexpected when we
tested those kinds of systems. The reason is obvious in Orders of Igno-
rance terms: these systems did not contain much Second Order Ignorance.
Nevertheless, the Waterfall was never a linear model. It could not be, unless
absolutely no ...