# Aggregation, orchestration and choreography composition patterns

*MuleSoft Integration Foundations Study Guide · Explain the common technical complexities and patterns in integration development · Last updated November 2, 2026 · https://www.certifyforce.com/study-guide/mulesoft-integration-foundations/technical-complexities-and-patterns-in-integration-development/aggregation-orchestration-and-choreography-composition-patterns*

How the three composition patterns place control: aggregation fans one request out in parallel and combines the results with Scatter-Gather, orchestration puts the logic in a central controller, and choreography lets each service know its own part with no coordinator.

- Certification: Salesforce MuleSoft Integration Foundations
- Exam section: Explain the common technical complexities and patterns in integration development
- Study guide: https://www.certifyforce.com/study-guide/mulesoft-integration-foundations

**Official exam objective:**

> Explain the differences between the aggregation, orchestration, and choreography composition patterns.

## What the exam expects

- Identify orchestration from a design where one central controller knows the business logic and the order of calls.
- Identify choreography from a design where services react to one another with no central orchestrator.
- Identify composition aggregation from a requirement to call several sources at once and return one combined result, and name Scatter-Gather as the Mule router for it.
- Explain why the three patterns are not interchangeable: each places the business logic somewhere different.

Key terms:
- **Composition pattern**: a way of combining several services into a higher-level service.
- **Orchestration**: a central controller couples the services and alone knows the logic and messaging sequence.
- **Choreography**: no central messaging engine; each participating service knows the logic, sequence and timing.
- **Aggregation (composition)**: one request fans out to several routes in parallel and the results combine into one event.
- **Scatter-Gather**: the Mule router that runs routes in parallel and combines their results.

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Orchestration control | A central controller couples the services | [Service orchestration and SOA](https://www.mulesoft.com/resources/esb/service-orchestration-and-soa) |
| Typical orchestrator | A central messaging engine such as an ESB | [Service orchestration and SOA](https://www.mulesoft.com/resources/esb/service-orchestration-and-soa) |
| Choreography control | No central messaging engine or orchestrator | [Service orchestration and SOA](https://www.mulesoft.com/resources/esb/service-orchestration-and-soa) |
| Scatter-Gather execution | Routes run in parallel, each on its own thread | [Scatter-Gather Router](https://docs.mulesoft.com/mule-runtime/latest/scatter-gather-concept) |
| Minimum routes | At least two, or the app does not start | [Scatter-Gather Router](https://docs.mulesoft.com/mule-runtime/latest/scatter-gather-concept) |
| Route failure | Router throws `MULE:COMPOSITE_ROUTING` and the flow branches to error handling | [Scatter-Gather Router](https://docs.mulesoft.com/mule-runtime/latest/scatter-gather-concept) |
| Choice router | Picks one of two or more routes | [Core Components](https://docs.mulesoft.com/mule-runtime/latest/about-components) |

## Check yourself

- Why does a Scatter-Gather with only one route stop the app from starting?
- When two Scatter-Gather routes change the same variable, what value remains?
- Why did ESBs become the usual tool for service orchestration?
- What does the For Each scope do with a collection?

## Sources

- [Service orchestration and SOA](https://www.mulesoft.com/resources/esb/service-orchestration-and-soa)
- [What is application orchestration?](https://www.mulesoft.com/resources/esb/what-application-orchestration)
- [Scatter-Gather Router](https://docs.mulesoft.com/mule-runtime/latest/scatter-gather-concept)
- [Core Components](https://docs.mulesoft.com/mule-runtime/latest/about-components)
- [Top five data integration patterns](https://www.mulesoft.com/integration/data-integration-patterns)
- [What are integration design patterns?](https://www.mulesoft.com/integration/what-are-integration-design-patterns)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 4 linked practice questions, and unlimited timed mock exams are included with the MuleSoft Integration Foundations pack (USD $19): https://www.certifyforce.com/practice-exams
