Right now I am listening to the new Alter Bridge album blackbird. While listening I am reviewing a whitepaper created by our architect team (I’m one of them) at Inter Access about SOA. In a previous post I mentioned that we are busy creating a SOA Framework. In this whitepaper we start with what we think SOA is by means of a definition. This definition will be explained in the paper and SOA principles and characteristics are outlined.
A principle is a working entity, which is expressed as characteristic through design and realization. This is what we see as a principle so SOA characteristics like layering, autonomous, service based authority, vendor independent, versioning, auditablility, standard compliant and legacy friendly. These are some of characteristics we think apply to SOA and come forth from principles used during design of SOA and can be noticed when SOA is realized. When reviewing each characteristic I stopped at the last one in the paper: legacy friendly. SOA is legacy friendly, because there are still applications and systems that cannot directly be approached by services. Today there is technology present to expose legacy systems through services. Microsoft for instance has Host Integration Server to accomplish this (see my previous post).
I was thinking this characteristic through and thought about the first LEAP session about decoupling systems. During the first leap session we had to work out a case for a fictional bank. The case was around a process of getting a mortgage. The assignment was to automate mortgage appliance process and make applying for it more available through the web. We as a group of 8 participants of LEAP (numerous groups are formed during LEAP to work on cases from real situations Microsoft came across) came to a solution, where we used BizTalk to automate the process and HIS to integrate with the existing legacy systems like (IBM AS/400). After presenting our case solution to another group, we listen to Microsoft solution. This solution moved all logic from legacy systems into BizTalk and AS/400 was only used as a form of data store (Why not replace it completely with SQL Server 2005 to act as a data store?). So there solution was not legacy friendly at all, while SOA should just accomplish this so investments made in the past are not wasted. It also contradicts in my view there concept of expose/compose/consume model. Exposing legacy systems, packed apps, line of business systems is the core for a SOA applying Microsoft concept of expose/compose/consume. So legacy friendly is a important characteristic in my humble opinion for SOA and good argument towards the business.
Well that is for now I will listen so more to Alter Bridge, if you like good rock music have a go and listen to it. I recommend the song coming home and one by one.