On a high level, most typical applications consist of workflows that process tasks. If we use an analogy to help understand this, then the application would be an organisation such as a fast-food restaurant, the workflows are teams, such as the team that takes an order, prepares it then brings it to the customer, and the steps are the individual team members performing their respective jobs.
This article will compare two approaches for managing the flow of tasks through a workflow: service orchestration vs service choreography.
When a service receives a task, it will acknowledge receipt and begin processing the task.
When the service completes the task, it will broadcast that fact, and the next step in the workflow will retrieve and process the task.