Some
of the most important SOA design patterns that we have successfully
applied in projects will be described in this article. These include the
Compensation pattern and the UI mediator pattern, the Common Data
Format pattern and the Data Access pattern. All of these patterns are
included in Thomas Erl's book, "SOA Design Patterns", and are presented
here in detail, together with our practical experiences. We begin our
"best of" SOA pattern collection with the Compensation pattern.
Compensation
is required in error situations in an SOA, as multiple atomic service
operations cannot generally be linked with classic transactions this
would violate the principle of loose coupling. An error situation of
this sort will occur, particularly if service operations are combined
into processes or new services during orchestration or by applying the
Composite pattern, and the transaction bracket has to be expanded as a
result. We need mechanisms to undo the effects of individual services
(the status changes in the overall system) and to ensure that a
consistent system state is maintained at all times, so as to preserve
system integrity. For the Compensation pattern, we would like to address
the following questions: Why is compensation important in relation to
SOA? How is the topic of compensation linked with the topic of
transactions? What are the challenges with regard to compensation...
Read the full article in the Service Technology Magazine or at OTN.
Share your comments and feedback on the Industrial SOA series by using the hashtag #industrialsoa.
Missed an article of the Industrial SOA series visit the overview at OTN.
SOA & BPM Partner Community
For
regular information on Oracle SOA Suite become a member in the SOA
& BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.
Blog Twitter LinkedIn Facebook Wiki Mix Forum
Technorati Tags: Industrial SOA,SOA,SOA Service Compensation,Community,Oracle SOA,Oracle BPM,OPN,Jürgen Kress