Nice discovery! In my experience very few people use ALAP tasks because they are tricky to manage, and don't always do what people expect. I'll bet even fewer people knew that an ALAP task will not go later than its deadline once you assign a deadline. But it makes sense, based on the following..
A deadline DOES affect a task in at least one way, even with the normal ASAP constraint, so your sources that said there is no effect were not quite right. The main effect has to do with slack and criticality. Microsoft lets the deadline override the normal definition of total slack and the critical path. If you have a task that is just meeting its deadline with no time to spare, you will see that the total slack is 0 and the task is critical, even if it is would not normally be critical, that is, even if it's chain is not pushing directly on the end of the project
When Microsoft first introduced this feature in MSProject 2000 I talked with one of the Microsoft programmers who designed this feature, and he said he assumed people would want any task missing a deadline to become critical. I complained that this violated the classic definition of what tasks are critical (the "long path" of tasks pushing on the end of the project) and I was disappointed that there was no check box to turn off this criticality change when a deadline is assigned
However, you can use this fact to do something very useful. Set a deadline on a task for, say 10 days *before* the task is expected to finish, with normal ASAP constraints in place, and you will see total slack goes negative. Now create a filter that searches for all tasks with total slack less than 0, and you have a nifty tool to trace the predecessors of a task, since most predecessors of the task in question will typically have negative slack as well. This ability to trace back all predecessors to a given task is a feature that Microsoft needs to add to Project, and hopefully will do some day. [As an aside, Jack Dahlgren, one of the MVPs who regularly contributes to this newsgroup, has created a VBA macro that will do the same thing even more reliably. See
www.masamiki.com]
Regards, David Hunsberger, MS Project Instructor,
www.it7.com