In recent months after having struggled with the concepts of SOA I have finally come to the view that once I've cut through the hype the vision is simple - instead of building monolithic applications we should break them up into smaller services then aggregate these into a larger solution to meet the business need. When the business need changes we can use existing other services or create new ones and reaggregate. As similar requirements arise we can re-use services to meet the need. Of course the services may be applications or aspects of existing applications ion their own right.
This modular approach to development is a well proven approach, SOA is simpler expanding on this by using a service orientated modular approach. There is of course something still missing in this approach - what does the service aggregation? Well for me its BizTalk 2004 2004. BizTalk 2004 has all the functionality needed to meet this challange. It can consume or provide web services, it can transform and aggregate data/messages, it can provide complex Buisness Process management and on top of that it has superb monitoring and administration tools.
So the SOA saviour - BizTalk 2004 2004!