DCSIMG
April 2007 - Posts - Udi Dahan - The Software Simplist

Udi Dahan - The Software Simplist

For more information, visit www.UdiDahan.com - my main blog.

April 2007 - Posts

Service Component Architecture, Service Data Objects, and my bus

There’s been quite a flurry of activity around Service Component Architecture (SCA) and Service Data Objects (SDO) in the non-Microsoft community. These specs have been sent for OASIS ratification and have garnered support from the Open Service Oriented Architecture (OSOA) organization - a collaboration of a dozen top software vendors including IBM.

I’ve been getting some questions on how these upcoming standards correspond to what I’ve been describing about SOA. Specifically, how does SCA relate to the Business Components and Autonomous Components I podcasted about.

First of all, I’d say that the SDO thing is, in my opinion, “much ado about nothing”. These are “merely” the messages that are sent between services. We don’t need further standardization there, if the WS-Splat has taught us anything it’s that more is definitely not better.

In terms of SCA, it’s components seem to correspond to the Service Layer of an Autonomous Component.

What does all this have to do with Web Services? Well, in both the SCA/SDO case and in my ESB/SOA case, we add constraints and guidelines on top of the generic ways WSDL has been mangled by the tooling.

In all cases, we still need to discuss what makes a good contract - what is good message design. I’ll be dealing with that in the next coming days.

More information:

Info from IBM on SCA.
Info from IBM on SDO.

How to structure .NET Solutions and Components - Podcast

Hello World, and welcome to “Ask Udi”, the podcast where listeners get their questions on IT Architecture answered. This is your host, Udi Dahan, bringing you the cold, hard facts you need to make decisions about SOA, Web Services, Domain Driven Design, Object Relational Mapping, Smart Clients – well, you get the picture. If it’s IT, it’s fair game. I am “The Software Simplist”, helping you Keep It Simple.

This week’s question comes from Mike who asks:

Hi Udi,

I was wondering if you could help me out or point me in the right direction. I’ve been programming on the .Net framework for several years now and want to move towards an architecture role. Additionally, I have been reading up on WCF and related .Net 3.0 technologies, but have more questions than answers.

1. Do you have guidelines/best-practices for how to structure a .Net solution and related assemblies? Also, guidelines as to how to factor the various namespaces and what goes where would be helpful.

2. How should components be factored, i.e. one component to an assembly or multiple components to an assembly? I’ve read several different articles that go back and forth, but never really got a straight answer.

3. How do components relate to services from an SOA perspective?

4. Does application scope/size impact the decision to use SOA? And,

5. Do you have any resources that I could use to learn more about SOA and .Net?

I appreciate the help and any answers that you can provide.

Mike

Get it here.

Additional References

Dependency Injection Tools:

Podcasts:

Want more? Go to the “Ask Udi” archives.