Colombo, Sri Lanka
21-05-2010
Dehiwala, Sri Lanka
21-05-2010
Colombo 05, Sri Lanka
24-07-2010
Colombo, Sri Lanka
16-06-2010
SOA Building Blocks

by Nuwan Bandara

Introduction

As many other architectural patterns SOA is also composed with a set of building blocks. These elements decides the nature, granularity and other quality of services in a SOA infrastructure. This article is dedicated in describing these fundamental elements of the Service Oriented Architecture.

How it all started

As I've talked about in the introductory article, the requirements of large enterprises creates needs to connect and communicate with heterogeneous information systems, and then the concept of SOA was born. But it never got popular for the increased complexity it introduced to the existing IT infrastructure. With the bloom of web services, the complexity was considerably reduced and large companies tried to benefit from it. Then came the need for information communication among these services and the scalability factor. The enterprises needed to do more with these service data, they wanted to transform them from one format to another, log them, mediate them and audit them. Hence integration solutions came into being. With successful integration still these information systems and data flows needed to be managed or rather governed. So the need for sound governance frameworks emerged. That described the building blocks of an entire Service Oriented Infrastructure.

  • Compose (Services)
  • Connect (Integration)
  • Govern (Governance)

These three concepts being the pillars of any SOA, sub elements like, platform neutral presentation, portlets, portals, security paradigms and deployment architectures make it a complete enterprise ready IT suite in one way or another.

Compose

Compose is SOA means writing services. Write services in any language / platform you prefer and expose them to the outer world. If you do want to learn more about web services, concepts behind and how to compose [1],[2],[3] will guide you. Hence I do not intent to explain about web services and how to write them. However there are few key elements needed to be discussed with regard to service composition. Security, Service Orchestration, Choreography and coupling are some of those key elements.

For those who know about web services, know how much security is important when it comes to communication via SOAP. Hence the confidential data services needed to be properly secured. And when its utilized by a SOA, entire infrastructure wide security paradigm is needed. We will discuss amount SOA and web services security in a separate article, for there are a lot of points to be brought out and discussed.

Orchestration and Choreography is all about atomic and composite services, how composite services will be created from atomic services. Service orchestration and choreography talks about how one service will act according to the results of another service, and engage in a complex business activity. Rule based languages like BPEL (Business Process Execution Language) are important in such scenarios.

Coupling is also an important factor in service composition, loose coupling or right granularity of service coupling is discussed in many literature related to SOA. Hence in my next article I will discuss about Orchestration, Choreography and coupling in more detail.

Happy New Year !!

Previous Article


No votes yet

Post new comment

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.