# Tuesday, March 09, 2004

While it is easy to see the benefits in the idea that services expose explicit boundaries, there is still some distance between this and understanding where service boundaries should be drawn and what it should look like.  A collection or recent posts from three Microsoft Architects highlight that services work best at the business level where they can share the same logical data model and single database engine.  It's nice to see the SOA discussion break through the academic debate to this practical guidance level.

Ramkumar Kothandaraman, a Solutions Architect on the .NET Enterprise Architecture Team, talks about  implementing the service-oriented tenet that services should have a clearly defined boundary when there are issues about searching or updating the shared data.  He proposes that it can be beneficial to share a database between related services and to expose these services as a collection or business services that share the same logical data model, rather than individual services. 

I believe this is similar to Pat Helland's session at the PDC where he spoke about business services encapsulating database-resident data and that each business services' data should live in a single database engine.  If the data can't fit into a single engine then look for ways to split it into two business services but don't have a service span database engines.  If the service needs to scale then consider partitioning the data between individual database servers rather than trying to merge and replicate.

Michael Platt, a UK-based Field Architect from Microsoft, shares the view that services need to be exposed at the business level.  He provides a useful, pragmatic definition of service oriented architecture as a model or abstraction of loosely coupled business-level functionalities or services.  I also enjoyed his reflections on a recent meeting discussing SOA:

There was a lot of discussion about what SOA was: explicit boundary’s, autonomous, etc which reminded me a lot of the COM definitions but with different words. Alas there was no discussion as to what a Service should look like, how big, what level of functionality etc; this was left as an exercise for the designer.

In terms of guidance on how to architect services, he mentions a story of the good old 'component oriented architecture' days where a client had 3000 components in a system, as a warning not to go overboard again.  Michael also invokes his 'First Law' as design guidance for a services which essentially says that that services should be coarse grained because of the huge communication and network stack they have to go through.

posted on Tuesday, March 09, 2004 12:57:20 AM (GMT Standard Time, UTC+00:00)  #   
Related posts:
Office Server 2007: Can it help me write less code?
Server-side Excel: changing the face of financial apps?
Ray Ozzie: Services Disruption and the need for 'Client Server Service Synergy'
DDD3: Deadline for speaker submissions extended until Monday
DDD III on Sat 3 June: Call for Speakers!
I can see clearly now: NUnitAddin and NCoverBrowser
Tracked by:
"canadian mortgage broker course" (Canadian mortgage broker course) [Trackback]
"albergo firenze" (albergo firenze) [Trackback]
"Buy cheap phentermine." (Cheap phentermine.) [Trackback]
"Phentermine diet pills." (Phentermine diet pills diet pills.) [Trackback]
"Tramadol quick." (Tramadol quick.) [Trackback]
"Brutal blowjobs." (Brutal dildos.) [Trackback]
"Rape stories." (Rape stories.) [Trackback]
"Vacanza toscana natura." (Vacanza toscana natura.) [Trackback]
"Porn rape thumbnails." (Porn rape thumbnails.) [Trackback]
"Tramadol hydrochloride." (Tramadol hydrochloride.) [Trackback]
"Generic cialis." (Generic cheap cialis.) [Trackback]
"Oral viagra." (Oral viagra.) [Trackback]
"Generic viagra is fake." (Effects generic side viagra.) [Trackback]
"Free young amateur hardcore porn rape bondage." (Free rape porn links.) [Trackback]
"Brutal bdsm torture." (Brutal bdsm bukakke.) [Trackback]
"Rape movies." (Rape movies.) [Trackback]
"Hydrocodone apap." (Hydrocodone apap fact sheet.) [Trackback]
"Krystal steal wallpaper." (Krystal steal wallpaper.) [Trackback]
"Phentermine 37.5 diet pills." (Phentermine diet pills.) [Trackback]
"Porn star chloe jones trial membership credit card." (Porn star chloe jones tri... [Trackback]
"Ricetta bimby." (Ricetta bimby.) [Trackback]
"Tera patrick videos." (Tera patrick free videos.) [Trackback]
"Annuncio incontri abruzzo." (Annuncio incontri abruzzo.) [Trackback]
"Free rape movies porn." (Free rape porn movies.) [Trackback]
"Porn rape videos." (Free rape porn videos.) [Trackback]
"Tramadol mastercard." (Tramadol mastercard.) [Trackback]
"Brutal anal dildo." (Brutal anal dildo.) [Trackback]
"Tramadol hci give for." (Tramadol hci.) [Trackback]
"Phentermine 37.5 mg." (Phentermine capsules 37.5mg without prescription.) [Trackback]
"Buy phentermine no rx." (Buy phentermine no rx.) [Trackback]
"Valium drug-interactions." (Valium as street drug.) [Trackback]
"Buy xanax cheap, overnight." (Xanax overnight.) [Trackback]
"Buy hydrocodone online without prescription." (Buy hydrocodone online without a... [Trackback]
"Cialis cheapest online prices." (Cialis online.) [Trackback]
"Annuncio lavoro offerta." (Annuncio lavoro offerta.) [Trackback]
"Tramadol hydrochloride." (Tramadol hydrochloride ac.) [Trackback]
"Phentermine hcl." (Is phentermine hcl safe to take.) [Trackback]
"Homeowner Insurance" (Homeowner Insurance) [Trackback]
"Black Jack" (Black Jack) [Trackback]
"Online Casino" (Online Casino) [Trackback]
"Buy ambien cod." (Buy ambien cod.) [Trackback]
"Buying viagra online." (Buying viagra.) [Trackback]
"What does valium look like." (Valium.) [Trackback]
"Homeowners Insurence" (Homeowners Insurence) [Trackback]
"Insurance Homeowners" (Insurance Homeowners) [Trackback]
"Hydrocodone without prescription." (Hydrocodone online.) [Trackback]
"Hydrocodone." (Buy hydrocodone.) [Trackback]
"Buy cialis online rx drugs." (Buy cialis online arizona.) [Trackback]
"I m going slightly mad - queen free mp3 download." (I m going slightly mad - qu... [Trackback]
"SlotsMachines" (SlotsMachines) [Trackback]
"Home Insurance" (Home Insurance) [Trackback]
"Codeine." (Extract codeine.) [Trackback]
"petite-lingerie fantasy" (petite-lingerie fantasy) [Trackback]