Deal of The Day! Hurry Up, Grab the Special Discount - Save 25% - Ends In 00:00:00 Coupon code: SAVE25
Welcome to Pass4Success

- Free Preparation Discussions

Arcitura Education S90.09 Exam - Topic 4 Question 17 Discussion

Service A is a task service that is required to carry out a series of updates to a set of databases in order to complete a task. To perform the database updates Service A must interact with three other services, each of which provides standardized data access capabilities. Service A sends its first update request message to Service B (1), which then responds with a message containing a success or failure code (2). Service A then sends its second update request message to Service C (3), which also responds with a message containing a success or failure code (4). Finally, Service A sends a request message to Service D (5), which responds with its own message containing a success or failure code (6).You've been given a requirement that all database updates must either be completed successfully or not at all. This means that if any of the three response messages received by Service A contain a failure code, all of the updates carried out until that point must be reversed. Note that if Service A does not receive a response message back from Services B, C, or D, it must assume that a failure has occurred. How can this service composition architecture be changed to fulfill these requirements?
D) None of the above.
A) The Reliable Messaging pattern can be applied to guarantee the delivery of positive or negative acknowledgements. This way, Service A will always be informed of whether a failure condition has occurred with any of the database updates performed by Services B, C, and D . Furthermore, the Service Loose Coupling principle can be applied to ensure that the request and response messages exchanged by the services do not contain any implementation details that would indirectly couple Service A to any of the databases.
B) The Atomic Service Transaction pattern can be applied individually to Services B, C, and D so that each of these services performs its own database update within the scope of an atomic transaction. If anyone update fails, that change can be rolled back on that database. Furthermore, the Service Loose Coupling principle can be applied to ensure that Service A is kept out of the scope of the atomic transaction so that it is not negatively coupled to the proprietary database technologies that are required to enable the atomic transaction functionality.
C) The Compensating Service Transaction can be applied to Service A so that when any one response message containing a failure code is received by Service A, it can invoke exception handling logic that will log the failed database updates. The Service Loose Coupling principle can be further applied to ensure that Services B, C, or D are not indirectly coupled to the exception handling logic, especially if Service A requires additional access to Services B, C, or D in order to collect more information for logging purposes.

Arcitura Education S90.09 Exam - Topic 4 Question 17 Discussion

Actual exam question for Arcitura Education's S90.09 exam
Question #: 17
Topic #: 4
[All S90.09 Questions]

Service A is a task service that is required to carry out a series of updates to a set of databases in order to complete a task. To perform the database updates Service A must interact with three other services, each of which provides standardized data access capabilities. Service A sends its first update request message to Service B (1), which then responds with a message containing a success or failure code (2). Service A then sends its second update request message to Service C (3), which also responds with a message containing a success or failure code (4). Finally, Service A sends a request message to Service D (5), which responds with its own message containing a success or failure code (6).

You've been given a requirement that all database updates must either be completed successfully or not at all. This means that if any of the three response messages received by Service A contain a failure code, all of the updates carried out until that point must be reversed. Note that if Service A does not receive a response message back from Services B, C, or D, it must assume that a failure has occurred. How can this service composition architecture be changed to fulfill these requirements?

Show Suggested Answer Hide Answer
Suggested Answer: D

Contribute your Thoughts:

0/2000 characters
Regenia
7 months ago
None of the above seems too extreme; there's gotta be a better way!
upvoted 0 times
...
Lovetta
7 months ago
Wait, what if one service is down? How does that fit into the plan?
upvoted 0 times
...
Leontine
8 months ago
Compensating Service Transaction? Seems a bit complicated for this scenario.
upvoted 0 times
...
Annabelle
8 months ago
I agree, but the Atomic Service Transaction approach seems more straightforward.
upvoted 0 times
...
Miss
8 months ago
The Reliable Messaging pattern sounds solid for ensuring updates are acknowledged.
upvoted 0 times
...
Gracie
8 months ago
This seems like a straightforward question about the demo process. I'm pretty confident I can identify the two correct activities.
upvoted 0 times
...
Natalie
8 months ago
Whoa, I didn't even think about the security settings in IE. That's a good point, but I'm not sure if that's the best overall approach. Gotta think this through a bit more.
upvoted 0 times
...
Lauran
8 months ago
Hmm, I'm not entirely sure how to approach this one. I'll need to think carefully about the different aspects of compensation that individual contributors might be most interested in.
upvoted 0 times
...
Lynelle
8 months ago
Hmm, this is a tricky one. I'm not super familiar with the technical networking terms used here. I'll have to think it through step-by-step and see if I can eliminate some of the options.
upvoted 0 times
...

Save Cancel