Statement that must be in a specific order
1. Organize code so that dependencies are obvious.
2. Name routines so that dependencies are obvious.
3. Use routine parameters to make dependencies obvious.
4. Document unclear dependencies with comments.
5. Check for dependencies with assertions or error-handling code.
Statments whose order doesn't matter.
1. Making code read from top to bottom.
2. Grouping related statments.