-
SOA Service Granularity
November 12, 2011
SOA Business
-
Interestingly, one of the most debated SOA architectural aspects
(at least in architecture
and development teams) is the granularity
of a SOA Service. In the past year, I’ve tried a few different
strategies with customers and fellow architects to describe the
appropriate SOA service granularity. I started out saying “a SOA
service must be coarse grained”. “How large grained?”, many would ask.
“Very coarse grained”, I would answer. Then I would say; “definitely
not fine grained”.As you can see, this is a pretty poor definition. So, I thought about
it and discussed it with Danny
Malks and tried to make it more SOA-like. So, I started talking
more about SOA services as business services and
thus having business service
granularity. Sounds a bit subtle, but has a strong intent. As I
mentioned in a prior blog, we want SOA to take a top-down (problem to
architecture to solution) approach. This means that the business unit
(user) drives the requirements and essentially (but, not directly) the
service granularity. So, one way to think about a SOA business
service is to be able to put it in business speak. For example, we may
talk about the Insurance Quote
Service and Inventory
Service. We can talk to business people about services using
this granularity and not get into tech speak. Notice that we refer to
the services as nouns, not verbs. I’ve seen many services defined by a
verb, such as Add Employee Service. Focusing
on the actions (verbs) rather than the service (nouns) creates fine
grained services and should be avoided.
















Recent Comments