nerdexam
SOA

S90-09A · Question #20

Services A, B, and C are non-agnostic task services. Service A and Service B use the same shared state database to defer their state data at runtime. An assessment of these three services reveals…

The correct answer is B. The application of the Orchestration pattern will result in an environment whereby the Process. Option B is correct because the Orchestration pattern introduces a central orchestrator (a process-centric service) that coordinates Services A, B, and C, enabling the agnostic logic buried in each service to be extracted into separate, reusable agnostic services - resolving…

Advanced Service Design and Patterns

Question

Services A, B, and C are non-agnostic task services. Service A and Service B use the same shared state database to defer their state data at runtime. An assessment of these three services reveals that each contains some agnostic logic, but because it is bundled together with the non-agnostic logic, the agnostic logic cannot be made available for reuse. The assessment also determines that because Service A and Service B and the shared state database are each located in physically separate environments, the remote communication required for Service A and Service B to interact with the shared state database is causing an unreasonable decrease in runtime performance. How can the application of the Orchestration pattern improve this architecture?

Exhibit

S90-09A question #20 exhibit

Options

  • AThe application of the Orchestration pattern will result in an environment whereby the State
  • BThe application of the Orchestration pattern will result in an environment whereby the Process
  • CThe application of the Orchestration pattern will result in an environment whereby the
  • DNone of the above.

How the community answered

(18 responses)
  • A
    6% (1)
  • B
    56% (10)
  • C
    11% (2)
  • D
    28% (5)

Explanation

Option B is correct because the Orchestration pattern introduces a central orchestrator (a process-centric service) that coordinates Services A, B, and C, enabling the agnostic logic buried in each service to be extracted into separate, reusable agnostic services - resolving the reusability problem. Additionally, the orchestrator can absorb or centralize state management, reducing or eliminating the need for Services A and B to make costly remote calls to the shared state database separately, thereby addressing the performance problem.

Option A is wrong because the Orchestration pattern does not primarily address state repository architecture - that falls under patterns like State Repository or Service Data Replication, not Orchestration. Option C is incomplete as presented and does not describe a valid outcome of applying the Orchestration pattern. Option D is wrong because the Orchestration pattern does have a concrete, meaningful impact on this architecture.

Memory tip: Think of an Orchestration pattern as a "conductor" - the conductor (orchestrator/process service) tells each musician (service) what to do and when, so individual musicians no longer need to coordinate directly with each other or fetch shared resources independently, cutting down on communication overhead and freeing their unique skills (agnostic logic) to be reused elsewhere.

Topics

#Orchestration#Process Centralization#State Repository#agnostic service extraction

Community Discussion

No community discussion yet for this question.

Full S90-09A Practice