Users sometimes schedule delivery of an email for a later date or time.
For Outlook 2000, there were two different options: Deferred Send (Outlook handles it) and Deferred Delivery (the Exchange server handles it). If a message is configured for Deferred Send, it will stay in the user's Outbox until the scheduled time. Outlook then submits the message to the Exchange Information Store and the message is delivered. If a message is configured for Deferred Delivery, Outlook will immediately submit the message to the Exchange Information Store and the Exchange server will hold the message until the scheduled time. With Deferred Send, Outlook must be running to send the message and the user can edit or remove the message before it's delivered. With Deferred Delivery, Outlook does not have to be running and the user cannot edit or remove the message before it's sent.
Microsoft merged the two features together for Outlook 2003/2007. The only option available in these versions is "Do not deliver before". If this is configured the message will stay in the user's Outbox, but Outlook does not need to be running to deliver it. By keeping it in the Outbox, the user is able to edit or remove the message before it's sent. However, if the user is configured for Exchange Cached Mode, Outlook MUST be running for delivery of message to occur. http://support.microsoft.com/?kbid=918824 says this behavior "by design".
On a side note, the message will show as Received in the Inbox at the delayed send time (say, 8:00am today). When you open the message, the Sent time will be the time the sender clicked the Send button (say, 5:00pm yesterday). This prevents a user from scheduling an email the night before saying, "I'm in the office this morning like you requested, but I'm going home now."