When you do daily builds, a practice I think is essential for high quality software development, it is important to make sure the build is so complete and easy to find that the test team and sales force can choose what version, and when, to install by them selfs.
It is an accepted truth that the longer you wait to fix an error the more expensive it gets. If the test team can verify a fix the day after it is checked in to the source repository instead of waiting for the next sanctioned release both the feed back loop and cost gets smaller.
For this to work all of the organization has to work in union to keep the daily build complete. It will not work if someone is working by him self and checking in bad code because he ‘knows’ there is a long time until the next release. If the development is done for a customer that expects to see continuous progress it is extra bad if someone is checking in bad code. It is a problem that is not solved with unit testing since the result of those is easily manipulated by the rouge developer.
Everyone has to work together to make each and every daily build ready for release.