Recently i was doing a project which had the incredibly short duration of eight days. This amongst other things meant there is no time for re-writes, big changes in the interface etc. So one major issue is to keep the client satisfied with the result without allowing big changes to be introduced in the requirements.
The way we approached this was to give the client a demonstration at the development station every few days. This worked like a charm, not only did we prevent having to change things during the project, but also the client was immensly happy with seeing the progress and was suddenly very motivated to sell it to the users.
Its always nice to see people being enthousiastic about a project.