Designing Applications with MSMQ: Message Queuing for Developers