Correct Answer: D
When you need to run the long-term workflows, you should use the Azure Durable Functions. The Durable Function is an extension of the Azure Functions. The function provides a cost-effective serverless approach for running stateful long-running, complex workflows.
The Durable Function can chain, orchestrate, and coordinate the functions. This Azure service manages the state. Therefore, the developers do not need to write the code to manage the state for long-running functions. There are three Durable Function types: Client, Orchestration, and Activity.
The Durable Functions implement several common workflow patterns: Function chaining — execution of the multiple functions in a specific order
Fan out/fan in — a run of the multiple functions in parallel till every function finishes its execution
Async HTTP APIs — coordination of the long-running operations with the external clients
Monitor — a recurrent process until specific conditions are met
Human interaction — a combination of human interaction with automated processes
Aggregator — an aggregation of the several data streams from different data sources and possibly during long time periods into one function.
Option D is correct because the Human interaction pattern is a combination of human interaction with automated processes, like waiting for the document approval from a person. This pattern involves four functions:
A request for approval task
An assignment of the task to the person
A process of approval
An escalation process
For more information about Durable functions, please visit the below URLs:
https://docs.microsoft.com/en-us/learn/modules/create-long-running-serverless-workflow-with-durable-functions/3-design-a-workflow-based-on-durable-functions
https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview?tabs=csharp