March 6, 2009

SOA by Examples

SOA is a buzz word that have been round for some time, but when you search for information about SOA it is hard to find hands on information what SOA really is and also examples of SOA. The lack of concrete example is a problem for us practical people which tend to learn new thing by examples and not read abstract theories about new technology. We do that but not before we got a god grasp of what we are learning. It is with that background I decided to write this blog.

Before going through examples, let us look what does SOA promises us, i.e. the goals of SOA:
The reuse of existing system, when building new application.

So how do we do that?
Encapsulate existing system with a fronting API and build the rest of the functionality as reusable services/components.

Enough with theory, now lets take some examples.

In this example the business case is to create a new application that can place customer orders, but with the criteria to reuse existing back-end solutions.

The SOA solution is built of the following reusable block
  • Basic Data Service - CRUD operations.
  • Composed Services - business logic.
  • Process Services – complex business logic.
Another example is a unified patience journal system.
An additional example could be Package Tour Operation containing the following services:
  • Flight Booking
  • Hotel Booking
  • Car Rental
  • Event Booking.
What is imported when talking about SOA is not to get stuck which techniques to use, but to focus on which service to use and what to fill them with, so they are reusable.