As SOA (along with Web Services) is one of my favourite topics, I think it prudent to define a starting point with my first post. (Actually this is not exacly my first “post”, since I used to have some of the following information on my web site, yet I cleaned that part just recently.) I should point out that this post refers to conceptual things rather than implementation or other topics.
Now, the usual starting point would be to come up with a definition. Another one. Adding to the not so tiny number of already existing definitions… . No way! If you need a definition I recommend Reger Sessions ObjectWatch Newsletter #45: “What is a Service-Oriented Architecture (SOA)?” (October 7, 2003, http://www.objectwatch.com/newsletters/issue_45.htm), which also does away with some misconceptions.
Anyway, the starting point for me lies a little earlier than the term “SOA”. It’s got to do with the “S” in SOA: Pat Hellands work on “Autonomous computing: Fiefdoms and Emissaries” (2002, Microsoft Webcast, http://microsoft.com/usa/Webcasts/ondemand/892.asp — and I could not find it, the link is broken. I know that there are also PPTs from Pat about this topic, yet I couldn’t find any of them publicly available either. If anyone knows some links, please tell me!)
The value of this work lies in doing away with classic (read clients/server like) patterns of data exchange.
Also dating earlier than the term “SOA” is another issue of Rogers newsletters: “The Software Fortress Model: A Next Generation Model for Describing Enterprise Software Architectures” (#36, 17.11.2001, http://www.objectwatch.com/newsletters/issue_36.htm). OK, I know, the link is also broken. But I sent Roger an email asking when/whether it will work again and he has also written a book about that topic [UPDATE]It took but a weekend and #36 was online again :-D. Thanks, Roger! [END UPDATE].
The reason I think this a valuable work is that it defined the landscape of systems/services at the advent of SOA. Many of the issues with implementing a SOA can be understood better with the SFM in mind.
What a starting point. Based on information I cannot deliver :-(… . But it gets better.
Again it was Pat Helland who brought up Metropolis, “A metaphor for the evolution of information technology into the world of service-oriented architectures.” (04/2004, http://www.architecturejournal.net/2004/issue2/aj2metrop.aspx, there was more information on his personal web site, yet since he kind of went out of business, his site is down. What a pity.)
Speaking of evolution, I see Metropolis as the evolution of Rogers SFM in a SOA world where the various services work together and become a living, almost kind of social, interacting eco system.
And back to Roger (it’s like ping pong, isn’t it ;-)): He just published a white paper about “A Better Path to Enterprise Architectures” (04/2004, http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/sessfin00.asp, or on his website). He also uses the “analogy of an enterprise architecture to a city plan”, but he takes it further and examins how to evolve the enterprise (rather than the single service) without loosing control.
Well, that’s it so far. These two guys have done tremendous work to describe the large, interdepended, and grossly complex eco systems that we as developers and architects have to deliver, maintain, evolve, and master. To my relief so far, the reality today is (mostly) still some iteratations behind these prospects. However – as Roger pointed out with his examples of failures – this may be the case because we (as an industry) couldn’t yet deliver this vision of eco systems.
That’s all for now folks,