With messaging software, developers can build communication into their applications using a variety of message exchange patterns and a range of qualities-of-service.