With the constraint the task always shows in the schedule as ending by the
required date, even if it is physically impossible for it to really happen
that way. Using a deadline lets the task fall in the schedule where ever
the predeccessor links and resource availability will drive it, showing you
where you're really going to find it happening if you try to do the work
according to the present plan. It also gives you a red flag to tell you
when you're missing your required finish date and letting you know you'd
better rework the plan to fix it. IMHO, the deadline is a better way to go
since it gives you a more dynamic model to predict the consequences of the
various decisions you might make. I already know what my requirements are -
I'm using the software to give me a model that tells me if the plan as I've
currently conceived it or as it's progressing with the work that's been done
so far, is going to be successful in achieving them or not.