Archive for the 'Software Architecture' Category


Service Oriented Architectures

Posted by Phadrus00
In Software Architecture
21Aug 07

Recently I spent some time in a room with some very smart people discussing what SOA means to our company.  The questions that first emerged was how do we define SOA beyond a string of technologies like REST, SOAP, XML, JSON, POX, WS-*, etc.

 It turns out that defining SOA is pretty hard and “The Industry” has not really agreed upon a common definition.  We have a number of attributes that we associate with Service Oriented offerings but we don’t have a definitive “Litmus Test” for it.

This is not surprising as “Object Oriented” never had a completely settled defintion and many different experts debated what were the set of properties that defined a truly “Object Oriented” language/application/environment, etc.

 SOA does have some key characteristics though:

  1. It supports heterogenous applicaitons – Applications that are comprised os several different technologies / languages. 
  2. It encourages Componetization of functions – Developers are pushed towards making compoenents that have clean interfaces and not relying on Global Address Space (because it does not exist!)  and thus the resulting Components are typically more reusable and discreet.
  3. It can be deployed across several different transportation layers – Although really HTTP is the most dominant form, it could be SMTP, it could be TCP, it could be Jabber! 
  4. XML is going to be used – F’get about it!  No matter what you use, even REST, XML is going to play a role in the component conversation.

I have been reading a great book that focusses on REST and it’s approach to Web Services which I can highly recommend called RESTful Web Services.  Catchy Title huh!  It is from O’Reilly Press and as is the case with almost everything from that organization it is very well done.   


Subscribe to RSS

Syndicate