I finally figured out how to create a schedule that you can build in reverse so you know when you need to start!
Step 1: Change new tasks to Auto Scheduled
Step 2: Show the constraint column in the table view part (this is so you have quick access to the type of constraint on each task)
Step 3: Create a milestone task with a “Must finish on” constraint set to the date you want the project to end.
Step 4: Build the project in reverse, adding tasks above the final milestone and adding dependencies as you normally would. (make sure you have a proper chain from the last task to the first task) Make sure that all the tasks you are adding have the “As late as possible” constraint.
Now, if all your tasks are set to “as late as possible” and you have a milestone that “must finish on” a set date, you can adjust the duration of any task and it will move all of the earlier tasks backwards!
Note: this post was originally published back on 2014-07-23 but it has been one of my most popular posts based upon my google analytics so on 2018-09-17 I updated this post with images to help make it more clear.
Say thanks in the comments if this helped you!