SOA Design & Architecture Lab - S90.09 Exam Practice Test

Service A is an entity service that provides a Get capability that returns a data value that is
frequently changed.
Service Consumer A invokes Service A in order to request this data value (1). For Service
A to carry out this request, it must invoke Service B (2), a utility service that interacts (3.4)
with the database in which the data value is stored, Regardless of whether the data value
changed. Service B returns the latest value to Service A (5), and Service A returns the
latest value to Service Consumer A (6).
The data value is changed when the legacy client program updates the database (7). When
this change happens is not predictable. Note also that Service A and Service B are not
always available at the same time.
Any time the data value changes. Service Consumer A needs to receive it as soon as
possible. Therefore, Service Consumer A initiates the message exchange shown in the
Figure several times a day. When it receives the same data value as before, the response
from Service A is ignored. When Service A provides an updated data value, Service
Consumer A can process it to carry out its task.

Because Service A and Service B are not always available at the same times, messages
are getting lost and several invocation attempts by Service Consumer A fail. What steps
can be taken to solve this problem?
Correct Answer: B
You are told that in this service composition architecture, all four services are exchanging
invoice-related data in an XML format. The services in Service Inventory A are
standardized to use a specific XML schema for invoice data. Design standards were not
applied to the service contracts used in Service Inventory B, which means that each
service uses a different XML schema for the same kind of data. Database A and Database
B can only accept data in the Comma Separated Value (CSV) format and therefore cannot
accept XML formatted data. What steps can be taken to enable the planned data exchange
between these four services?
Correct Answer: A
Service Consumer A sends a message to Service A.
Before the message arrives with Service A, it is intercepted by Service Agent A (1). which checks the message for
compliance to Policy A that is required by Service A.
If the message fails compliance, Service Agent A will not allow it to proceed and will instead write the message contents to a
log. If the message does comply to the policy, it continues to be transmitted toward Service
A, but before it arrives it is intercepted by Service Agent B (2), which validates the security
credentials in the message header. If the security credential validation fails, the message is
rejected and a runtime exception is raised. If the security credentials are validated, the
message is sent to Service A.
Upon receiving the message, Service A retrieves a data value from a database and
populates the message header with this data value (3) prior to forwarding the message to
Service B.
Before the message arrives at Service B.
it is intercepted by Service Agent C (4) which checks the message for compliance with two policies: Policy B and Policy C.
Policy
B is identical to Policy A that was checked by Service Agent A.
To check for compliance to Policy C.
Service Agent C uses the data value added by Service A.
If the message complies with both of the policies, it is forwarded to Service B (5), which stores the message contents in its own database.

You are told that Policy B and Policy C have changed. Also, in order to carry out the
compliance check of Policy C, Service Agent C will now require a new data value from the
Service B database. How can this service composition architecture be changed to fulfill
these new requirements?
Correct Answer: A
Service Consumer A sends a message to Service A (1), which then forwards the message
to Service B (2). Service B forwards the message to Service C (3), which finally forwards
the message to Service D (4).
Services A, B, and C each contain logic that reads the content of the message and, based
on this content, determines which service to forward the message to. As a result, what is
shown in the Figure is one of several possible runtime scenarios.

Currently, this service composition architecture is performing adequately, despite the
number of services that can be involved in the transmission of one message. However, you
are told that new logic is being added to Service A that will require it to compose one other
service in order to retrieve new data at runtime that Service A will need access to in order
to determine where to forward the message to. The involvement of the additional service
will make the service composition too large and slow. What steps can be taken to improve
the service composition architecture while still accommodating the new requirements and
avoiding an increase in the amount of service composition members?
Correct Answer: A