Projects are scheduled from the project start date. Initially you set the project start date and project planned end date manually. Once you start adding tasks:
The earliest start date for any task in the project determines the entire project's start date.
The latest end date for any task in the project determines the entire project's planned end date.
You can manually maintain an actual end date for the entire project without being constrained by any tasks.
When working with task date ranges, you'll notice that:
The start date and end date of a new task defaults to either its parent task, if it has one, or to the start date and planned end date for the entire project.
Manually changing the start date of a task causes the task end date to shift, preserving the same duration for the task.
Manually changing the end date of a task causes the task duration to change, preserving the start date of the task.
Making tasks dependent enables you to shift the dates for an entire series of tasks at one time. See Adding Task Dependencies. Dependencies also enable you to schedule backwards if you like, from the last task in a series of tasks to the first task in that series.
When working with the date ranges of parent tasks and child tasks:
Parent task date ranges cannot be adjusted manually. The date range for a parent task is determined by the date ranges of its child tasks. The same is true for multiple levels of parent tasks.