This document discusses using flows for service orchestration in Mule ESB. It defines a flow as a chain of message processors that enables automation of integration processes. Flows are valuable for simple integration tasks, scheduled data processing, connecting cloud/on-premise apps, and event processing involving multiple services. A flow has a message source, processors configured in XML using <flow>, and an optional exception strategy. Flows can be powerful when combined with expressions to perform sophisticated message processing. Private flows differ in that they are not accessible via endpoints and are only used internally within a Mule instance.