We will plan by quickly making an overall plan, then refining it further and further on shorter and shorter time horizons—years, months, weeks, days. We will make the plan quickly and cheaply, so there will be little inertia when we must change it.
Planning is the process of guessing what it will be like to develop a piece of software with a customer. Some of the purposes of planning are to
Bring the team together
Decide on scope and priorities
Estimate cost and schedule
Give everyone involved confidence that the system can actually be done
Provide a benchmark for feedback
Let's review the principles that affect planning. (Some of them are general principles from Chapter 8, Basic Principles. Others are specific to planning.) ...