This document discusses using CQRS, EVS, and an ESB to build distributed enterprise applications, using a shipment management application as an example. It describes the patterns, including using CQRS to separate reads from writes, an event store to record changes as events, and an ESB to facilitate communication between services. Technologies used include ASP.NET, RabbitMQ, and a sharded MongoDB cluster to store domain data, views, events, and metadata for subscriptions and metrics. The solution aims to handle high throughput from many agencies while maintaining data availability and partitioning data across the MongoDB shards.