Including a formal design step in your development process can bring a number of benefits.
Each of these benefits is discussed in greater detail in the following sections:
There are other ways to achieve each of these benefits, but none besides a formal (but lightweight) design step that seems to achieve them all.